Collection of BCH reusable addresses specs and drafts.
Start reading at the main proposal, which contains links to other documents in relevant sections.
Collection of BCH reusable addresses specs and drafts
License: MIT License
Collection of BCH reusable addresses specs and drafts.
Start reading at the main proposal, which contains links to other documents in relevant sections.
Thanks for all the hard work
@GitCash send @imaginaryusername 2 bucks please!
When a multisig input is used to generate a stealthy transaction, there are serious issues due to the ability for co-signers to re-sign, replace other signers, etc.
Let's say you have a 2-of-3 multisig with pubkeys A, B, C, and the plan is that B and C shall sign. This means that B is the first signer, and B key is used to generate addresses.
Once B or C has signed the transaction, however, then A can come along with a signature and the final transaction will be signed by A, C, or A, B. Now B's pubkey is not the first, and may be not involved at all.
If the recipient directly scans this tx (regardless of prefix matching), they won't detect the payment since they'll be deriving based on A key instead of B.
Solutions?
The hash of an input is dependent on all the signatures. So the very last signer is the one who determines the prefix, and must perform proper grinding. And even once the multisig coordination process is finished, someone could maliciously re-sign the transaction to change its prefix.
Solutions?
The diffe-hellman shared secret process is designed that you can only compute the result if you know at least one of the private keys involved. If Alice owns the 'main key', how can she convince her cosigner Bob that the derived addresses are correct for the intended reusable address recipient, without revealing her private key? She might give them a fake value for the shared secret hash, in which case they would be sending money to wrong addresses (not findable by the intended recipient) and money could be lost.
Solution!
Currently the spec uses version byte to indicate a testnet paycode, which is incongruous with how we do cashaddrs.
Shouldn't we just use paycodetest:
prefix instead?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.