Schmidt on Nostr: How Pedersen Commitments Work In Monero, Pedersen Commitments are a core component to ...
How Pedersen Commitments Work
In Monero, Pedersen Commitments are a core component to hide transaction amounts while still allowing for cryptographic verification that no coins are created or destroyed in a transaction.
A Pedersen Commitment to a value v (the amount) with a random blinding factor r is:
C = v ⋅ H + r ⋅ G
C: The commitment
G, H: Generator points on the elliptic curve (with H unrelated to G)
v: The amount (hidden)
r: A random blinding factor (also hidden)
This commitment is:
Hiding: You can’t determine v from C without knowing r
Binding: You can't change v later without altering the commitment
Published at
2025-06-02 16:17:28 UTCEvent JSON
{
"id": "f169dd228f8a46dd0caba3a0ddc4ae5f457f87c27351850efa4a99a674fac626",
"pubkey": "0d7ceca9e000e711e263bc14a2216ab74968a9e903eba214a714300adede5a20",
"created_at": 1748881048,
"kind": 1,
"tags": [
[
"r",
"https://image.nostr.build/c1476cb82232effd4df70826e829920cae84d0d82031a0396eaf8aeae0e79f8a.jpg"
],
[
"monero",
"883BZxHRmFiAoNuGmLX9quYDUMiqCwh7zPXEwpeqq8EU3MNNDSZmgJ9epV4GJrUWwcMJio1NUgYKo13bW3bTuTUiNrdmcXi",
"1.0"
],
[
"imeta",
"url https://image.nostr.build/c1476cb82232effd4df70826e829920cae84d0d82031a0396eaf8aeae0e79f8a.jpg",
"m image/jpeg",
"alt Verifiable file url",
"x 913db2aaae3cb545b4f02898d776f5d52f652292ce7a23ad4f84e69ed9fce7b4",
"size 2284",
"dim 398x88",
"blurhash H05E$[ay00xuWBRjxuM{~q%MfQRjj[WBayayj[t7",
"ox c1476cb82232effd4df70826e829920cae84d0d82031a0396eaf8aeae0e79f8a"
]
],
"content": "How Pedersen Commitments Work\n\nIn Monero, Pedersen Commitments are a core component to hide transaction amounts while still allowing for cryptographic verification that no coins are created or destroyed in a transaction. \n\nA Pedersen Commitment to a value v (the amount) with a random blinding factor r is:\n\nC = v ⋅ H + r ⋅ G\n\nC: The commitment\nG, H: Generator points on the elliptic curve (with H unrelated to G)\nv: The amount (hidden)\nr: A random blinding factor (also hidden)\n\nThis commitment is:\n\nHiding: You can’t determine v from C without knowing r\nBinding: You can't change v later without altering the commitment https://image.nostr.build/c1476cb82232effd4df70826e829920cae84d0d82031a0396eaf8aeae0e79f8a.jpg",
"sig": "cbe9a3e19f47d987c797dfd853679bd52bb782b3aeb9e57c7184257d9e4476146c0e85f0afaed19fefcc08564735de858d084c62210c71cc273b2f19590707f1"
}