libp2p/js-libp2p-crypto

Key Conversion

Ouverte

#177 ouverte le 9 juin 2020

 (0 commentaire) (0 réaction) (0 personne assignée)TypeScript (49 forks)auto 404
help wantedkind/enhancementstatus/ready

Métriques du dépôt

Stars
 (79 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

This library appears to have support for RSA, Ed25519 and Secp256k1 + NIST Curves.

When integrating with existing systems, developers are likely to encounter at least 3 formats for these keys...

hex / base58 / binary encoded keys, JWK and PEM.

AFAIK, PEM is already supported.

It would be useful to be able to convert between all popular formats using a friendly interface.

Here is a terrible example of handling this for secp256k1:

https://github.com/transmute-industries/did-key.js/blob/master/packages/did-key-secp256k1/src/keyUtils.test.ts

In addition, it might be desirable to support did:key within this library directly, because of its reliance on https://github.com/multiformats/multicodec/blob/master/table.csv#L81

https://github.com/w3c-ccg/did-method-key

This would allow for js-libp2p-crypto to be the single crypto dependency for systems like did:peer which upgrade from did:key: https://github.com/openssi/peer-did-method-spec

although support for did:key representations of js-libp2p-crypto might be better handled at another layer.

Guide contributeur