3

According to this comment, which reads:

@kenshi84 I now agree with JollyMort's idea that we should not allow integrated subaddresses and should not allow multiple integrated addresses in a multiple destination payout, because we're likely to choose to deprecate txextra payment IDs altogether, in favor of placing payment ids and other payment metadata into the range proof using monero: URIs.

payment ID information would ideally be included in the range proof instead.

Can someone please explain the technical method by which this can be completed successfully? What are the advantages of using this method over the current txextra method? Are there any disadvantages?

3

Can someone please explain the technical method by which this can be completed successfully?

The range proof requires generating a lot of random values in the process. Nothing would change security-wise if that data was not entirely random and carried some encrypted payload instead.

What are the advantages of using this method over the current txextra method?

The main one is that you wouldn't be able to tell whether a given TX contains a message nor what its length is. It's like steganography. With the payment ID, it's simple to tell whether or not there's a message. If we wanted to allow arbitrary length of payment ID, you could also tell the length unless we force some padding to nearest 256 bits or whatever.

Another advantage is that we use the bandwidth which has to be used anyway so that message is not inflating TX size. Few kB of covert data could have many useful applications we haven't even thought of yet.

For example, you could make a shop where the act of payment is also an order. You embed your return (monero) address, shipping address, item no., qty, size, color etc... all in the TX. Only the recipient can see this, and send the order. For anyone looking, it's just another TX on the blockchain.

Are there any disadvantages?

Maybe some, but not really significant, IMO. Sometimes you want the possibility to leave a message on the blochchain out in the open, to be easily read. Maybe it could be achieved with range proofs as well, but then you'd have to reveal some secret info by other means in order for anyone to be able to decrypt the message.

Another disadvantage is that range proofs could be pruned eventually so those messages may not be readily available permanently.

Also, the amount of data you can store is limited, but then again you could chain multiple TX-es. It's not like we're seeing TX-es with 10s of kB in TX-extra, anyway.

In conclusion, with sub-addresses alone, most common payment-ID use-case (telling incoming TX-es apart) could be entirely replaced by sub-addresses with another advantage of support for sending to multiple sub-addresses in the same TX.

Public messaging would remain as an use-case of "legacy" 256-bit payment ID, while stealth payment ID could be replaced by range proof messaging unless you want the message to be kept in the blockcain forever for which you could still use the TX-extra.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.