Ed said:
I think not. How many bills are out there? According to the US Treasury it is about 16 billion. Eventually they would get a hit, then what, recover a $20 bill?
Is that ANY kind of bill, or just $20 bills? It doesn't really matter....
16 billion sounds like a lot. Lets allow a generous 128 bits per bill serial number, and assume no compression. 256,000,000,000 bytes of data. I could store all of those serial numbers on the computer right in front of me, right now. Add the ATM/store number. Let's give 52 more bits for that. 180 bits. 360,000,000,000 bytes of data. I need to buy one more hard disk for my RAID 0 array. Or wait one year for 400GB drives to appear.
Using one T3 connection (45mbps each), bridged to my network port, all of those bills could be scanned and sent to
my personal computer every day, and stored.
86400(seconds in one day) / (16,000,000,000(bills) * 180(bits/bill) / 45,000,000(bits/second)) = 1.35 times per day. Allows for some protocol overhead.
Assign banks a scheduled reporting time, and I personally could receive bank notes and unique accounts associated with each bill for every note in existance, EVERY DAY. If I bought 14 of these desktop machines, I could probably keep up with the storage demands, then processing them through the remaining two weeks. Building a grid with more machines, I could do the comparisons.
Now think what a big, expensive SMP computer with a lot of network and CPU bandwidth and very high speed storage could do, compared to what's on my desktop. For one thing, a
Sun Fire E25K Server could fit all of those serial number/account pairs into RAM at the same time, and have 72 processors concurrently sharing that memory and working away at elements of the problem, including where the money is going at the same time. With multiple T3 connections, they could update the image multiple times a day.
Now think what 14 of
these could do.
You think the "billion here, billion there, pretty soon we're talking real money" government can't afford 14 such machines? A hundred? And do you think they lack access to better, more interesting hardware?
Heck, even *I* could write the software to process the data into useful results. It's not rocket science. Tally, sort, report. The seemingly time-consuming part would be matching up transactions, but that's just another set of binary searches against data sorted by bills. Produce a sorted list of dollars that were taken by accounts. Produce a sorted list of dollars that were received from accounts. A sorted list of accounts that received dollars. Ship it our for mix&match. The various results comming in could also be pre-sorted, per bank. Keep track of that, too.
Another thing that makes this easier is that most results will be regionally based. You get money from an ATM, and most of it will be spent in the same town. The money that travels is much more "interesting".