note is stream cipher encrypted with symmetric key
key, derived from shared key1.
key = hash(sharedSecret, ephemeralKey)
publicKey is recipient public key. based off diffie-hellman shared secret.
Note = (sn, value, tokenId, spendHook, data, , , memo)
|sn||serial number sampled at random|
|spendHook||coin related contract|
|data||data used by the coin contract|
|value commitment blinding term|
|token commitment blinding term|