Author: Rusty Russell 2015-12-15 02:30:52
Published on: 2015-12-15T02:30:52+00:00
Olaoluwa Osuntokun explains Sphinx, a protocol for onion routing with extremely small mix-headers. If we assume a maximum diameter of 20 hops and a 16-byte MAC, then a full onion blob weighs in at only 705 bytes, which is four times smaller than the current proposal. Alice computes all the blinding factors and shared secrets upfront to create the mix-header for each hop using the derived hop shared secret to derive subsequent decryption and MAC keys. The formula for computing the size of a mix header for a given hop count and security parameter is (ignoring the final message size): p + (2r + 2)s, where p = public key size (in bytes for DH each hop), r = the max number of hops, and s = symmetric key size (in bytes). The original version of Sphinx was designed with anonymous mailing in mind, so the final mix-header to the destination node includes a final destination email-address (k-bits), and an Identifier (k-bits) used to generate reply messages back to the sender. If we remove these from the mix-net, we save 2k-bits arriving at a new formula to compute the mix-header size: p + (2rs). With this size reduction, the base64 encoding of a mix-header for two hops can fit entirely into a tweet. Olaoluwa Osuntokun, Tadge Dryja, and Joseph Poon are planning on publicly releasing their in-progress implementation of Lightning at the end of December.
Updated on: 2023-05-23T21:55:28.522200+00:00