so no one will hear where your money is going

so no one will hear where your money is going

The phrase “silent payments” seems to fit perfectly in the context of Bitcoin, given that people often associate this currency and its network with anonymity or privacy. In this case, silent payments is the name of a new scheme for making transactions with BTC that promises improvements in privacy.

Silent payments could be compared to sending messages via smoke signals, as some Aboriginal tribes did in the past. In a reality where silent payments are smoke signals, the equivalent of traditional payments would be cards.

Letters, as well as transactions in Bitcoin, are sent directly from one address to another; while, with smoke signals, as with silent payments, the message is published in plain sight, but it could only be deciphered by the people or the recipient to whom it is addressed.

The silent payment protocol in Bitcoin it seeks to evade the direct interaction between the address that sends a transaction and the one that receives it; for this reason, the transaction does not travel directly from the sender to the receiver, but must be detected and decoded by the recipient.

Behind the curtain of silent payments in Bitcoin

Developer Ruben Somsen, the brain behind the idea of silent payments in Bitcoin, it explains in its GitHub repository the processes that are carried out when effecting a transaction of this type.

Ruben Somsen is constantly working on the repository of this proposal to improve the privacy of transactions in Bitcoin. Source: RubenSomsen/Silent_Payments.md / GitHub.

First of all, it is worth mentioning that this payment mechanism makes use of the ECDH Key Exchange protocol (Diffie-Hellman Key Exchange with Elliptic Curve, according to its acronym in English).

Advertising

This is an anonymous scheme in which cryptography is used and which it allows its participants to establish a shared secret. This tool is extremely useful in these cases, because it works as a kind of key that only the parties involved in the transaction are aware of.

When making a transaction using the scheme presented by Somsen, the first step is taken by the receiver, which generates an address for silent payments in Bitcoin. The sender then creates a shared secret using the ECDH protocol, the receiver’s silent payments address public key, and a input (inbound transaction) that you have chosen to make the payment.

The shared secret allows the issuer to make modifications to the silent payment address. However, only the receiver can spend the balance contained in this address. To have access to the payment, it is necessary that the recipient detects it after having scanned the transactions made in the Bitcoin transaction book.

Silent payments, but somewhat problematic

There are several problems present in the execution of silent payments in Bitcoin. Some have potential solutions, but not definitive due to lack of practicality or efficiency.

A long, very long, treasure hunt

One of the main problems is the long time it would take the receiver to scan all the unspent transactions (UTXO) on the network to detect the payment due to you.

Among the possible silver solutions to this problem is to scan only transactions that use taproot. This would shorten the search tremendously, since the adoption of taproot is still negligible.

However, it is expected that little by little the use of taproot will become more widespread among bitcoiners, which would resurface scanning problems in silent payments.

Thin clients or wallets could not easily use this method due to the difficulty of scanning transactions in the Bitcoin transaction book, as read in the repository.

It should be noted that the use of taproot for this type of transactions is highly recommended, as it is one of the most recent improvements made to the Bitcoin protocol and optimizes its privacy and efficiency.

The best option provided by Somsen to the presented problem is to use all the inputs involved in the transaction, and not only one of them, at the time of modifying the address of the silent payment. This halves the effort required in the search, although it poses a new setback if you want to use tools like CoinJoin to hide the origin of BTC payments.

Silent payments take the edge off CoinJoin

The way the tool protocol works CoinJoin is by nature incompatible with silent payments.

This is because CoinJoin takes care of hiding the input of the transactions so that the recipient of the payment and the other participants do not know from whom it comes. Silent payments, on the contrary, reveal the input. Fortunately, there is a solution for it too.

In order for the participants of an operation with CoinJoin not to be able to find out where the silent payment included in the transaction came from, it is necessary to resort to a blinding scheme.

This type of scheme is able to hide the silent payment input. In this way, the problem of silent payments with CoinJoin is solved, but its cost implies that the complexity of the operation at the programming level increases considerably.

While silent payments represent an interesting improvement to Bitcoin, there are other similar initiatives that have been promoted before.

One of them is SNICKER, introduced by developer Adam Gibson several years ago and which specifically focuses on improving privacy when using CoinJoin. Another initiative is Wormhole, proposed by the developer Max Hillebrand, and which also focuses on improving privacy among users participating in operations with CoinJoin.