From 114ed229d36733df108808df2a45f7822b643306 Mon Sep 17 00:00:00 2001
From: Justus Ranvier <justusranvier@riseup.net>
Date: Mon, 22 Jun 2015 07:19:30 -0500
Subject: Correct serialization

Since the length of the data encoded by base58check affects the version
byte needed to produce a desired leading character, fix the length of
the payment code at 80 bytes, and correct the version byte to 0x23
---
 bip-0047.mediawiki | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

(limited to 'bip-0047.mediawiki')

diff --git a/bip-0047.mediawiki b/bip-0047.mediawiki
index ab005b4..fd89297 100644
--- a/bip-0047.mediawiki
+++ b/bip-0047.mediawiki
@@ -33,9 +33,7 @@ Each level has a special meaning, described in the chapters below.
 
 ===Purpose===
 
-Purpose is a constant set following the BIP43 recommendation to: the ASCII value of "47" with the most signifigant bit set to indicate hardened derivation (0x8000002F). It indicates that the subtree of this node is used according to this specification.
-
-Hardened derivation is used at this level.
+Purpose is a constant set to 47' (or 0x8000002F) following the BIP43 recommendation. It indicates that the subtree of this node is used according to this specification.
 
 ===Coin type===
 
@@ -64,13 +62,13 @@ A payment code contains the following elements:
 * Byte 2: sign. required value: 0x02 or 0x03
 * Bytes 3 - 34: x value
 * Bytes 35 - 66: chain code
-* Bytes 67 - 79: optional. reserved for future expansion
+* Bytes 67 - 79: reserved for future expansion, zero-filled unless otherwise noted
 
 ====Base58 Serialization====
 
 When a payment code is presented to the user, it SHOULD be presented encoded in Base58Check form.
 
-* The version byte is: 0x37 (produces a "P" as the first character of the serialized form)
+* The version byte is: 0x23 (produces a "P" as the first character of the serialized form)
 * The payload is the binary serialization of the payment code
 
 ===Protocol===
@@ -211,8 +209,8 @@ A recipient specifies their preference for alternate notification by setting the
 A recipient prefers to receive notifications via Bitmessage indiates this preference by:
 
 * Setting bit 0 of the features byte to 1
-* Appending a byte containing the desired Bitmessage address version to the payment code at byte 67
-* Appending a byte containing the desired Bitmessage stream number to the payment code at byte 68
+* Setting byte 67 of the serialized payment code to the desired Bitmessage address version
+* Setting byte 67 of the serialized payment code to the desired Bitmessage stream number
 
 The sender uses this information to construct a valid notification Bitmessage address:
 
-- 
cgit v1.2.3

