Dist.ribut.us

From Adam Colton
Jump to navigation Jump to search

Technical Papers

See DHT

Important Concepts

  • NAT Traversal
  • Crypto
    • Symmetric
    • Hashing
    • Asymmetric
      • Key Exchange
      • Signing
      • RSA
      • Elliptic Curve
  • DHT
  • Consensus
    • Paxos
    • PBFT
  • Erasure Codes
  • Merkle Tree
  • Block-chain

Dining Bloom Filters

This is still very rough.

A combination of the dining Cryptogrphers with a Bloom filter (and a sort of Paxos phase). Nodes are paired up in groups and each group establishes a shared key. So given A,B,C,D,E; A ends up in AB, AC, AD, and AE and if the the filter array is supposed to be 100 bits long, the shared key for each will be 25 bits. Each node figures out the bits they want to write and writes them as in DC. Then everyone either signs or rejects the whole thing. Now someone can look for a hidden signal in the message.

This has the DC weakness that a malicious node can make writes that will falsely flip bits. I think there's two ways to handle this. One is to have everyone involved sign the output. I'm not sure about the other - I think we can set a limit on the number of bits you can flip and just include enough bits that even if you attack all the bits you can, the odds of corrupting a message are low. And the sender of the message you corrupted can just send in the next round.

The output is like Cherry Ripe. A seemingly meaningless jumble of bits. But the probability of the bits lining up with resource hash is very, very low. So if that happens it means someone probably requested that resource.

Crypto

https://github.com/kevinburke/nacl