In the above section, we limited ourselves to the use of a single coprocessor. Such an approach has architectural elegance, but is also necessarily limited by the resources available to the coprocessor. How can we scale?
It is easy to imagine networking secure coprocessors, since auctions are often hierarchical, this is a natural step. An auction in a limited geographical area (a county) results in a single winner (or, in the case of multiple goods be auctioned, is winners.) The winner(s) compete in a larger nationwide auction, and the winner(s) of that auction compete in an international auction.
A particularly intriguing feature of such auctions is that they can provide for
powerful time-fairness - using clock synchronization, each bid can be time
stamped. The final auctioneering secure coprocessor waits until the auction end
time plus the maximum possible clock skew among the secure coprocessor plus the
maximum possible latency in the network. Clearly, the final auctioneering
coprocessor would receive all valid bids by this time. Because bids were
timestamped by a secure source, only valid bids could be accepted. This has
important implications for online stock markets.
With computer-assisted trading, it appears that without
secure time stamping bidders who were on the antipode of the secure market would
have bids delayed by at least one second - and typically far more because of
transmission delays and speed of light considerations. But with timestamping we
could release continuous auction information to bidders and sellers and also
fairly consider bids and asks at the coprocessor by using the timestamp data.