Skip to content
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

support for deterministic secp256k1 key (part 2) #835

Open
lemoustachiste opened this issue Aug 5, 2024 · 0 comments
Open

support for deterministic secp256k1 key (part 2) #835

lemoustachiste opened this issue Aug 5, 2024 · 0 comments

Comments

@lemoustachiste
Copy link

My last issue (#825) was marked as completed here as it could have been linked to the did:webs implementation, and I cannot reopen and add to it.

After more research on the matter, I'm pretty sure the issue lies with Keri, and probably with my own understanding of the architecture required to achieve a proper JWK representation of my keys.

First I have noticed that the incept command does not allow for specifying the type of key and defaults to Ed25519 as invoked from here: https://github.com/WebOfTrust/keripy/blob/main/src/keri/app/cli/commands/incept.py#L167 which cascades all the way down to this default:

def incept(self, icodes=None, icount=1, icode=coring.MtrDex.Ed25519_Seed,

I was able to fix that by allowing specifying icode to the incept args.

But that seems to be only one part of the issue and I think my problem lies earlier in the process.

If I understand the concept correctly the salt is the same as a seed, which I am expecting, either correctly or not, to be the same BIP-32 seed I am deriving from my mnemonic.

However it seems that I am stuck on getting the right format. If I use the Salter class with a raw of my seed, it comes back prefixed by 0A (Salt_128), and not what I would suppose should be J (ECDSA_256k1_Seed). And I cannot specify a code as only Salt_128 is supported (

if self.code not in (MtrDex.Salt_128,):
).

Am I wrong in trying to use the Salt to init my Keri config as presented in this guide: https://github.com/peacekeeper/did-webs-iiw37-tutorial?tab=readme-ov-file#create-aid?

Could someone break down the process of action so I can get my expected secp256k1 key representation within the KERI infrastructure?

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant