I had a tough time interpreting "serialization of the public key", which is hashed to get the extended key identifier. Since the very next section is "Serialization format [for extended keys]" I thought that I was supposed to use the serialization of the /extended/ public key. Then I noticed "ignoring the chain code", so I tried skipping that part of the extended key serialization. Then I realized that what was meant was "the `K` half of `(K, c)`".
I mistakenly inferred from the following clause that a parent extended
public key plus a child private key would be equivalent to knowing the
extended *child* private key---meaning that the *parent* private key was
still secure:
> knowledge of the extended public key + any non-hardened private key
> descending from it is equivalent to knowing the extended private key
This patch's addition of the word "parent" (twice) removes the ambiguity
and may help other readers draw the correct inference that the parent
private key is no longer secure in this case.
I also changed "+" to "plus" to avoid confusion with the actual
mathematical operations used in this BIP.
This came up on the mailing list.
yyyy-mm-dd (ISO 8601) is the internationally accepted format for numeric
dates. This commit changes all BIPs to use that instead of dd-mm-yyyy.
It also updates BIP 0001 to prescribe the new format.