notes-computer-bitcoinMeshNetworking

You could use bitcoin to pay nearby computers to provide you with internet access via mesh networking.

This means that you could also make money yourself just by providing networking services to other computers.

How it could work:

Each packet could come with a promise to pay a 'bounty' if it reaches its destination. The packet contains one cryptographic key needed to unlock the bounty, but two keys are needed. The second key is sent by the receiving computer when it receives the packet. The second key is propagated backwards along the path that the packet took. When each intermediate node gets the second key, it can now unlock a bitcoin transaction to transfer a small amount of BTC from the sender to itself.

As the packet is sent along, each intermediate node subtracts some money from the promised bounty, claiming that portion of the bounty for itself in the event that the packet reaches its destination. The node has an incentive not to subtract too much, because if the packet never reaches the destination it will never get any money at all.

Some packets can also be 'COD', meaning that the transmission is ultimately funded by the receiver, not the sender.

To encourage speed, we could specify that the end recipient can refuse delivery (and refuse to pay) if the packet in question has already arrived from another route (or because it took so long that the sender resent it). This would require two steps in transmission, though ("Do you want packet 1234?" "No, I already have it").

Q: What if the receiver refuses to send the second key? A: The intermediate nodes could keep a list of cheaters and not send to them anymore. Only last intermediate node can be sure that the receiver is a cheater though (and even then, only if we assume no network errors in between the last intermediate node and the receiver); the others don't know if the packet just never got there at all, or if the receiver cheated (you could have the last intermediate node broadcast 'they cheated!' back through the chain but that seems to be asking for trouble...).

Implementation details: Instead of actually substracting arbitrary amounts of money from the bounty, you could divide the bounty into 100 little bounties, and the intermediate nodes can mark some of these as 'claimed'. Or, better, just delete them from the message, so that no one else further along can try to claim them. The guys before them in the path have seen them, but those guys will be after them in the reverse path so its okay (of course with collusion there could still be problems there but again, although there will be a small number of cheating nodes, there won't be too many because then traffic to those nodes would dry up; perhaps a public key identification system for nodes is needed so that you can have external reputation services).

Once you're doing this, may as well also sell compute power, producing a 'bitcoin grid'...

i still think it would be better to replace bitcoin with something that auctions mining compute power to solve any submitted NP problem