LiquidWorm
Администратор
AT&T Invents Programming Language for Mass Surveillance
[hl='C']
#include "ipRec.hh"
#include "ihash.h"
hash_table *ofInterest;
int inSet (ipPacket_t * p)
{
if (hash_get (ofInterest, p->source.hash_value) == 1)
return 1;
if (hash_get (ofInterest, p->dest.hash_value) == 1)
return 1;
return 0;
}
void sig_main (ipAddr_s addrs < l:>,
ipPacket_s packets < p:>)
{
/* code to set up hash table */
ofInterest = hash_empty ();
iterate
(over addrs) {
event (ipAddr_t * addr) {
if (hash_insert (ofInterest, addr->hash_value, 1) < 0)
}
}
/* code to select packets */
iterate
(over packets
filteredby inSet)
{
event (ipPacket_t * p)
{
printPacketInfo (p);
}
};
}[/hl]
Повеќе: http://blog.wired.com/27bstroke6/2007/10/att-invents-pro.html

From the company that brought you the C programming language comes Hancock, a C variant developed by AT&T researchers to mine gigabytes of the company's telephone and internet records for surveillance purposes.
An AT&T research paper published in 2001 and unearthed today by Andrew Appel at Freedom to Tinker shows how the phone company uses Hancock-coded software to crunch through tens of millions of long distance phone records a night to draw up what AT&T calls "communities of interest" -- i.e., calling circles that show who is talking to whom.
The system was built in the late 1990s to develop marketing leads, and as a security tool to see if new customers called the same numbers as previously cut-off fraudsters -- something the paper refers to as "guilt by association."

This one reads in a dump of internet headers, computes what IP addresses were visited, makes a record and prints them out, in less than 40 lines of code.
[hl='C']
#include "ipRec.hh"
#include "ihash.h"
hash_table *ofInterest;
int inSet (ipPacket_t * p)
{
if (hash_get (ofInterest, p->source.hash_value) == 1)
return 1;
if (hash_get (ofInterest, p->dest.hash_value) == 1)
return 1;
return 0;
}
void sig_main (ipAddr_s addrs < l:>,
ipPacket_s packets < p:>)
{
/* code to set up hash table */
ofInterest = hash_empty ();
iterate
(over addrs) {
event (ipAddr_t * addr) {
if (hash_insert (ofInterest, addr->hash_value, 1) < 0)
}
}
/* code to select packets */
iterate
(over packets
filteredby inSet)
{
event (ipPacket_t * p)
{
printPacketInfo (p);
}
};
}[/hl]
Повеќе: http://blog.wired.com/27bstroke6/2007/10/att-invents-pro.html