LegReq / artifacts

Artifacts that illustrate Earth Program use cases and solutions
0 stars 0 forks source link

Switch keys to secp256k1 #3

Open jandrieu opened 2 years ago

jandrieu commented 2 years ago

@wip-abramson Can we generate a bunch of key pairs for secp256k1 instead of the ed25519 curve? Just replace all the existing keys with secp versions.

wip-abramson commented 2 years ago

Sure, this is easy enough. Are JSON Web Keys (.jwk) files okay?

wip-abramson commented 2 years ago

So I created a branch feature/secp-keys which contains a new folder keys in it.

This folder has keys for each of the actors in .jwk format. Which looks like this:

{"kty":"EC","crv":"secp256k1","x":"5lqgcTPez3h4xtPtDN-H6-IDlrk8Ea4zPebgdBIKH1g","y":"BWBKVbVwCQLM4FAVgO4V-azr6AZojBpG4JQ9tALisYk","d":"XdnnfcT-U7iR_KvCq3FHqi-a87ErzvH4cIg3XieFcns"}

The (x,y) values define a point on a curve (public key). The d value is the private key.

I also used the didkit to generate DIDDocs for each of these keys. These are currently under the keys folder too.

Take a look. Let me know what you think. We can always refactor the structure later.