A computer-implemented method, comprising: generating, by a sender node associated with a sender of a transaction, a transaction commitment value T by committing a transaction amount t of a transaction with a commitment scheme based on at least a transaction blinding factor r_t; sending, by the sender node, the transaction amount t, the transaction blinding factor r_t, and the transaction commitment value T to a recipient node associated with a recipient of the transaction for the recipient node to verify the transaction and encrypt the transaction blinding factor r_t and the transaction amount t with a second key of a symmetric key pair; obtaining, by the sender node from the recipient node, an encrypted combination of the transaction blinding factor r_t and the transaction amount t; generating, by the sender node, a first key of the symmetric key pair; decrypting, by the sender node, the encrypted combination with the generated first key to verify the transaction blinding factor r_t and the transaction amount t in the encrypted combination; obtaining, by the sender node from the recipient node, a recipient signature SIGB representing the recipient's agreement to the transaction; generating, by the sender node, a sender signature SIGA representing the sender's agreement to the transaction; generating, by the sender node, an updated version of the transaction comprising the encrypted combination, the transaction commitment value T, the sender signature SIGA, and the recipient signature SIGB; and submitting, by the sender node, the updated version of the transaction to one or more blockchain nodes of the blockchain for adding to the blockchain. generating, by a sender node associated with a sender of a transaction, a transaction commitment value T by committing a transaction amount t of a transaction with a commitment scheme based on at least a transaction blinding factor r_t; sending, by the sender node, the transaction amount t, the transaction blinding factor r_t, and the transaction commitment value T to a recipient node associated with a recipient of the transaction for the recipient node to verify the transaction and encrypt the transaction blinding factor r_t and the transaction amount t with a second key of a symmetric key pair; obtaining, by the sender node from the recipient node, an encrypted combination of the transaction blinding factor r_t and the transaction amount t; generating, by the sender node, a first key of the symmetric key pair; decrypting, by the sender node, the encrypted combination with the generated first key to verify the transaction blinding factor r_t and the transaction amount t in the encrypted combination; obtaining, by the sender node from the recipient node, a recipient signature SIGB representing the recipient's agreement to the transaction; generating, by the sender node, a sender signature SIGA representing the sender's agreement to the transaction; generating, by the sender node, an updated version of the transaction comprising the encrypted combination, the transaction commitment value T, the sender signature SIGA, and the recipient signature SIGB; and submitting, by the sender node, the updated version of the transaction to one or more blockchain nodes of the blockchain for adding to the blockchain.