-
Notifications
You must be signed in to change notification settings - Fork 171
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Using ION on other blockchain implementation #274
Comments
https://github.com/transmute-industries/sidetree.js ^ Has code for Sidetree on Ethereum and Amazon QLDB (basically a ledger abstraction). The storage interface can also be replaced... we created |
As @OR13 referenced, there are other Sidetree implementations that use a different blockchain and/or different storage layer than ION. ION specifically chose bitcoin as its blockchain layer. If you are looking to plug-in your own implementation of blockchain layer using the reference Sidetree core implementation, you can do so by implementing the blockchain REST API as defined in the reference implementation design doc, feel free to open discussions/issues directly in the sidetree repo if that's the case, as they would be Sidetree questions, not ION specific.
You can follow the install guide or Docker instructions to setup an ION node on your local machine. Microsoft runs a public ION node for ION DID resolution (as well write with some proof-of-work requirements), here is an example resolution request. |
Hello there,so if I just want to build a single sidetree node without blockchain and ipfs. This node will implement the workflow of sidetree protocal, like what to do when CRUD instructions comes. And add a mongoDB without ipfs behind the sidetree node. is it viable just using ion-tools. I will try to implement the rest things like interact with mongoDB. |
So far as I understand sidetree protocal, it contains sveral separated clucsters and every cluster can be run separatedly. which means if I run a single sidetree node, it can still CRUD DIDs, But when they trying to interact with bitcoin-net work and ipfs, it raises errors. |
We have a "test sidetree" method that uses in memory for both storage and
ledger interfaces. Sounds like you may want to start with something like
that, then replace the in memory interfaces with whatever long term storage
or ledger you plan to use.
…On Fri, Jun 10, 2022, 5:14 AM SpencerChou ***@***.***> wrote:
So far as I understand sidetree protocal, it contains sveral separated
clucsters and every cluster can be run separatedly. which means if I run a
single sidetree node, it can still CRUD DIDs, But when they trying to
interact with bitcoin-net work and ipfs, it raises errors.
Now I want to make the sidetree node not to interact with bitcoin-network
and ipfs. When CRUD DIDs, it interact mongoDB straightly. Each component is
pluggable.
If I want to achieve this goals, which part of the code or markdown should
I learn.
—
Reply to this email directly, view it on GitHub
<#274 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB7JLMDK5HEPSLSV673OKLLVOMIQ5ANCNFSM5YKCIHCQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@SpencerChou I wrote documentation for something similar, which is how to set up a local-only Ion Node using Regtest. Alternatively you could use something like |
Thanks very much, this helps a lot!! it will be better if there is a way to build two-node blockchain-network using docker. After reading a lot docs, I didn't see any example to show how a third-party app to use sidetree to verify one's DID, all examples are about CRUD. So how does the sidetree node and a user-client to confirm an identity? what;s the content client send to the sidetree node? |
With CRUD :) Specifically I make a public and a private key. When I create a DID specifically what i'm doing is publishing the public key. I send a create operation, and my DID is I can then send that credential to someone, and they say "hey, this credential was signed by |
So, in ion application practice. the VC is the payload of the SignJWS method? the third-party app will receive the jws(or jws and the unsingned payload/VC?) and then using resolve method to get your public-key with the DID_uri. |
A JWS is not a Verifiable Credential, but specific shapes of JWTs (which build on top of JWS) are. In sidetree JWS are used to sign the updated that are signed by the DID Controller. Adding those updates up yields the latest DID Document. The Ledger protects their order The Storage protects and makes available the update content. |
As I mentioned above, the payload part is the VC? the payload should be structured JWT? And the signed with privatekey and send to the third-party app both your DID , JWT(unsigned), and JWS. And the app using your public key to decode JWS and compare it to JWT?
I still not get it how a user and app to confirm identity using sidetree, specifically using ion-tools. |
Adding @dangodb who is the author of
I believe VC is out of context of
Mostly correct, except:
|
@SpencerChou, also to answer your earlier question:
If you were to do this using reference Sidetree Core implementation, in addition to replace the blockchain layer as already mentioned, you also need to replace the storage layer, ie. CAS (Content Addressable Storage) layer. The way to do so is to implement the I will encourage again to ask generic Sidetree questions like this one directly in the Sidetree repo because not all Sidetree experts monitor this ION repo! |
Adding @csuwildcat who I think Henry meant to mention earlier. |
I ask some questions in sidetree repo. Can someone give me advice and answer, please |
I am thinking about using the ION.js and other stuff on other blockchain network like fabric-hyperledger.
which means maybe we need to build a IPFS cluster and mongodb cluster ourselves. I am reading the sorce-code trying to find the part of this, but I did not find it.
So, I was wondering how to setup such a experimental environment. Is there any advices
The text was updated successfully, but these errors were encountered: