Author: CJP 2016-06-26 11:53:11
Published on: 2016-06-26T11:53:11+00:00
A developer is about to implement an encryption layer for Amiko Pay and has questions regarding the Bolt for encryption. The developer likes the design of the encryption layer as it is generic and simple, making it easy to analyze. One question is whether a node can use different public keys for different links, which could be good for privacy but may not solve the deniability problem. The developer wonders about the degree to which communication truly looks like random data or can be distinguished from it and how to protect against timing analysis that could reveal the size of messages being sent. The developer also asks how the authenticate message is distinguished from other messages and suggests including something like a signature of the sessionpubkey, signed with the node_id key to prevent MITM attacks. Additionally, the developer is unsure about what stops a MITM attacker from duplicating or removing messages and whether there is a certain state preserved between encryption/authentication of different messages. Lastly, the developer asks about the meaning of the ack field in the authenticate message and its usefulness since data streams in both directions are asynchronous.
Updated on: 2023-05-23T22:46:09.690537+00:00