paritytech / substrate

Substrate: The platform for blockchain innovators
Apache License 2.0
8.39k stars 2.65k forks source link

Messaging protocol between did's? #8648

Open SachinSWN opened 3 years ago

SachinSWN commented 3 years ago

I have forked and implemented substrate blockchain and i want to know whether it does have inbuilt messaging protocol between two account id? Like one account want to send a message to other (something like aries have for hyperledger indy)?

burdges commented 3 years ago

Are you asking about encrypting completely off-chain messages, but obtaining key material from account keys? If so, https://eprint.iacr.org/2011/615 argues this basically works, but any extra protocol one adds risks breakage. As HDKD always creates risks, and is ubiquitous in blockchains, I'd suggest authentication and maybe encrypting hello messages with on-chain keys, but then use ephemeral keys wherever possible, also for forward security.

You're maybe after state channels, meaning messages occur off-chain, but represent state evolution so if one party does not evolve the state correctly then the other party disputes on-chain. We want state channels because they're pretty useful for games, but they require encoding this off-chain state transition into an validation procedure for handling disputes on-chain. We're a ways off on parathreads, but Ink parachains could support state channel disputes too, not sure which happens sooner. And full parachains can do this too of course.

As you said DID, there are many ethical problems with the user oriented DIDs proposed by W3C and maybe Hyperledger. And hopefully legal problems for them sooner rather than later. It's all fine for business-to-business use cases of course. It's also fine for people being "public figures" to influence on-chain governance, meaning linking account balances with off-chain discussions, which is what most folks care about right now. Yet, you'll end up with racist, classist, etc. results if you let people to prove they have a job, degree, etc., which is the W3C's stated goal. As a relatable example, we do not want a world in which few people take a year off from work because applying for a job too often requires proof that you currently have a job. :(

SachinSWN commented 3 years ago

No, wat i need is a peer to peer offchain meassging mechanism through two account

stale[bot] commented 3 years ago

Hey, is anyone still working on this? Due to the inactivity this issue has been automatically marked as stale. It will be closed if no further activity occurs. Thank you for your contributions.