1
0
mirror of https://github.com/bitcoin/bips.git synced 2025-05-12 12:03:29 +00:00

BIP 158: Specify endianness of block hash to k conversion.

This commit is contained in:
Jim Posen 2018-08-27 21:41:24 -07:00
parent ab53d7dcfa
commit fc511f11c6

View File

@ -280,7 +280,7 @@ following items for each transaction in a block:
* The scriptPubKey of each output, aside from all <code>OP_RETURN</code> output * The scriptPubKey of each output, aside from all <code>OP_RETURN</code> output
scripts. scripts.
Any "nil" items MUST NOT be included into the final set of filter elements. Any "nil" items MUST NOT be included into the final set of filter elements.
We exclude all <code>OP_RETURN</code> outputs in order to allow filters to We exclude all <code>OP_RETURN</code> outputs in order to allow filters to
easily be committed to in the future via a soft-fork. A likely area for future easily be committed to in the future via a soft-fork. A likely area for future
@ -303,11 +303,12 @@ setting <code>M=1.497137 * 2^P</code> is close to optimal
Empirical analysis also shows that was chosen as these parameters minimize the Empirical analysis also shows that was chosen as these parameters minimize the
bandwidth utilized, considering both the expected number of blocks downloaded bandwidth utilized, considering both the expected number of blocks downloaded
due to false positives and the size of the filters themselves. due to false positives and the size of the filters themselves.
The parameter <code>k</code> MUST be set to the first 16 bytes of the hash of The parameter <code>k</code> MUST be set to the first 16 bytes of the hash
the block for which the filter is constructed. This ensures the key is (in standard little-endian representation) of the block for which the filter is
deterministic while still varying from block to block. constructed. This ensures the key is deterministic while still varying from
block to block.
Since the value <code>N</code> is required to decode a GCS, a serialized GCS Since the value <code>N</code> is required to decode a GCS, a serialized GCS
includes it as a prefix, written as a <code>CompactSize</code>. Thus, the includes it as a prefix, written as a <code>CompactSize</code>. Thus, the