summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl-Johan Alm <karljohan-alm@garage.co.jp>2020-03-05 15:30:21 +0900
committerKarl-Johan Alm <karljohan-alm@garage.co.jp>2020-03-05 16:40:57 +0900
commit8381ca0e14cc736f8a9dc119b2c3d7dd384344ff (patch)
treeed9294f005a91fbc9abb55953b48d05b40f4a3e4
parent0042dec548f8c819df7ea48fdeec78af21974384 (diff)
downloadbips-8381ca0e14cc736f8a9dc119b2c3d7dd384344ff.tar.xz
bip-325: genesis block/message start
The genesis block is made static, and the message start is made dynamic based on the sha256d of the block script.
-rw-r--r--bip-0325.mediawiki20
1 files changed, 20 insertions, 0 deletions
diff --git a/bip-0325.mediawiki b/bip-0325.mediawiki
index 51ec634..c0db46d 100644
--- a/bip-0325.mediawiki
+++ b/bip-0325.mediawiki
@@ -57,6 +57,26 @@ The <code>modifiedMerkleRoot</code> hash is obtained by generating the merkle ro
A block is considered fully validated if the above commitment is found, and its solution is valid. It is recommended that this verification is done directly before or after the witness commitment verification, as the data required to do both is approximately the same.
+== Genesis Block and Message Start ==
+
+The genesis block is the same for all signet networks, whereas the message start is defined as the first four bytes of the sha256d of the challenge script as a single data push (see below).
+
+=== Genesis Block ===
+
+* Time stamp: 1534313275
+* Nonce: 100123
+* Difficulty: 1e2adc28
+
+The resulting genesis block hash is 0000032d7f67af9ec7b7152aea0fe7c95b9804ff973265e252f245e0ae61799d, and the block hex is 0100000000000000000000000000000000000000000000000000000000000000000000003ba3edfd7a7b12b27ac72c3e67768f617fc81bc3888a51323a9fb8aa4b1e5e4a3bc3735b28dc2a1e1b8701000101000000010000000000000000000000000000000000000000000000000000000000000000ffffffff4d04ffff001d0104455468652054696d65732030332f4a616e2f32303039204368616e63656c6c6f72206f6e206272696e6b206f66207365636f6e64206261696c6f757420666f722062616e6b73ffffffff0100f2052a01000000434104678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5fac00000000.
+
+=== Message Start ===
+
+The message start is defined as the first four bytes of the sha256d of the challenge script, as a single push (i.e. prefixed with the challenge script length). Example:
+
+* Challenge script = 512103ad5e0edad18cb1f0fc0d28a3d4f1f3e445640337489abb10404f2d1e086be43051ae
+* Sha256d(len || challenge script) = sha256d(25512103ad...51ae) = 7ec653a59b1912f9db10da2c461ed827d48f9404d5ef0346a6c94aadd4203646
+* First four bytes = the message start = 7ec653a5
+
== Compatibility ==
This specification is backwards compatible in the sense that existing software can use Signet out of the box.