[Bitcoin-development] Identity protocol observation

Daniel Lidstrom lidstrom83 at gmail.com
Thu Oct 3 09:35:30 UTC 2013


The location of a tx in the blockchain can be encoded in n=log2(h)+log2(t)
bits, where h is the block height, and t is the number of transactions in
the block.  Currently h~250,000 and t~500, so n~27.  A CVC phoneme encodes
~10.7 bits *, so a transaction today can be located in the blockchain with
3 of these, e.g. reb-mizvig.  This is reasonably short, readable and
memorable.

The identity protocol Jeff Garzik is working on will link a public key
fingerprint to a miner sacrifice transaction.  This tx could in turn be
uniquely described with a short name as above.  Associating this name with
the public key becomes secure once the tx is sufficiently buried in the
blockchain.  In the identity protocol, lightweight clients check the
validity of a sacrifice tx by checking that its merkle path is valid.  But
this path encodes, via the ordering of the hashes at each level, the
location of the transaction in the block, so the lightweight client can
verify the sacrifice tx's short name using only the information he already
has.

Some more random names:
vec-halhic
wom-vizpyd
guv-zussof
jog-copwug
seg-rizges
jyg-somgod
pax-synjem
zyg-zuxdyj
gid-mutdyj
rel-hyrdaj

Sources of inspiration:
urbit.org
https://en.bitcoin.it/wiki/Identity_protocol_v1

* This is somewhat restricted: I disallowed q for obvious reasons and k
because it conflicts with c, and c looks much softer and less like
Klingon.  H is allowed for the first consonant, but not the second, and x
is allowed for the last one, but not the first one.  Y is a vowel, but not
a consonant.  Maybe these weren't quite the right choices.  Paint away!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20131003/d22dc584/attachment.html>


More information about the bitcoin-dev mailing list