Published on: 2015-03-19T20:08:25+00:00
The proposal suggests implementing the use of CurveCP to enhance privacy and reduce leaks in the Bitcoin network. It proposes that Bitcoin nodes should be able to establish authenticated connections with trusted peers via CurveCP, ensuring that transactions are only broadcasted to these trusted peers. This, however, may result in reduced privacy for users who are unaware of how to use CurveCP or unable to determine the trustworthiness of their peers.To select trusted peers, a web of trust could be utilized, although caution must be exercised as mistakes can easily occur. Establishing a connection using CurveCP requires both parties to know each other's long-term public key, which can be stored in a structure similar to a Freenet node reference. Users would generate their node references through an API command and save them in the ~/.bitcoin/curvecp directory.While this approach may not directly improve privacy, it can be beneficial for whitelisting purposes, allowing trusted nodes to be subjected to fewer Denial of Service (DoS) constraints. The proposal also highlights that it can function independently of Tor usage; however, separating transaction submission from normal node functionality would significantly enhance privacy. In this scenario, the transaction submitter would connect to a few nodes through Tor, drop off the transaction, and then disconnect. This process would not advertise itself as a hidden service and should utilize a different Tor circuit compared to the node connections.Another aspect proposed is the implementation of Freenet's "Darknet" technique in Bitcoin. This involves enabling Bitcoin nodes to establish authenticated connections with trusted peers using CurveCP, ensuring that nodes with at least one CurveCP peer only broadcast their transactions to those specific peers. Similar to the previous proposal, the use of CurveCP requires both sides of the connection to possess knowledge of each other's long-term public key.To establish a secure connection between nodes, users would generate their node references using an API command and exchange these files, storing them in the ~/.bitcoin/curvecp directory with a .ref extension. CurveCP connections would take place on a separate port, designated by -bind_curvecp, -port_curvecp, and -externalip_curvecp, rather than sharing the same port as regular TCP connections.This proposal can work alongside or independently of Tor usage. Currently, configuring a node to anonymously submit transactions to the network requires making the node non-listening, thereby preventing it from contributing to the network. However, the proposal aims to allow nodes to be listening nodes while maintaining privacy regarding their own transactions. Additionally, CurveCP connections can be established between full nodes and Simplified Payment Verification (SPV) nodes, allowing transactions originating from SPV peers to be routed as if they originated from the full node.
Updated on: 2023-08-01T12:10:24.839942+00:00