[tor-dev] [RFC] Proposal for the encoding of prop224 onion addresses
Vi Grey
vigrey at riseup.net
Sun Feb 5 02:14:00 UTC 2017
> Here is the suggested scheme:
>
> onion_address = base32(version + pubkey + checksum)
> checksum = SHA3(".onion checksum" + version + pubkey)
Wouldn't SHA3 be computational overkill if we're just worrying about the
checksum making sure the .onion address wasn't mistyped? My suggestion
would be to use something like this for the checksum:
checksum = HMAC-CRC32(".onion checksum", version + pubkey)[2:]
(with the HMAC key as its first argument)
HMAC-CRC16 could be used as well instead of a truncated HMAC-CRC32, but
CRC16 is a lot less standard than CRC32.
Also, should we consider including a Version option eventually in the
ADD_ONION control port command when using a KeyBlob? It wouldn't matter
much for this new version and probably wouldn't matter much for a while,
but it might be good to keep this in mind for the future.
More information about the tor-dev
mailing list