Explain more details about the burn address
This commit is contained in:
@@ -24,7 +24,17 @@
|
||||
#include "cc/CCinclude.h"
|
||||
#include "sietch.h"
|
||||
|
||||
// this is the address for pubkey = 0x000000000000000000000000000000000 (33 bytes)
|
||||
// This is the address for pubkey = 0x000000000000000000000000000000000 (33 bytes)
|
||||
// Funds sent to a burn address can never be spent because the pubkey is invalid
|
||||
// because it is not a point on the elliptic curve we use (secp256k1, like all other
|
||||
// Bitcoin-derived codebases). secp256k1 is defined by the equation y^2 = x^3 + 7 .
|
||||
// Using pubkey=0 also implies privkey=0 and the (pubkey,privkey) pair are the same
|
||||
// as the (x,y) pair in the equation. If you plug in (0,0) to the equation you get
|
||||
// 0^2 = 0^3 + 7 or 0=7 which is false. This means that (0,0) is not a valid point
|
||||
// on the secp256k1 curve. Therefore there is no valid signature to spend the funds
|
||||
// sent to the burn address, because a valid signature must use a valid point on the
|
||||
// elliptic curve being used. For these reasons, we can prove that the burn address
|
||||
// receives funds which can never be spent.
|
||||
#define BURN_ADDRESS "RD6GgnrMpPaTSMn8vai6yiGA7mN4QGPVMY"
|
||||
|
||||
int32_t hush_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestamp);
|
||||
|
||||
Reference in New Issue
Block a user