Hancock is a C-based programming language developed by AT&T specifically for data mining telephone and Internet records. AT&T's software is used to discover what the company calls "communities of interest" -- social networks of people who call each other. The software was developed in the late 1990s for lead generation and to detect customer fraud. For example, if a new account is linked to the same phone numbers that a disconnected user called, the suspicion may be that the customer has fraudulently obtained service without paying an outstanding bill.
According to a 2004 paper published in ACM Transactions on Programming Languages and Systems, AT&T's programs mine calling card and long distance records, IP addresses and Internet traffic dumps. The paper also reports that Hancock makes it possible to track the movements of mobile users as they move from one cell to another.
A number of issues have arisen over the threat such data mining poses to customer privacy. In October, 2007, it was reported that the FBI had requested telephone company records for "communities of interest." Under the Patriot Act, the FBI was making that request without the need for a warrant. In some cases, the agency sought records for what was called the "second generation," defined as not only everyone who called a suspect individual but also all the people in the callers' communities.
The FBI's request became public knowledge when Verizon reported it in a letter to a congressional committee. Verizon said that the company does not collect that kind of data. Later that same month, Andrew Appel of the Freedom to Tinker Web site discovered a 2001 paper documenting how AT&T's technology was used.