libp2p/js-libp2p-crypto

Key Conversion

开放

#177 创建于 2020年6月9日

 (0 条评论) (0 个反应) (0 位负责人)TypeScript (49 个派生)auto 404
help wantedkind/enhancementstatus/ready

仓库指标

星标
 (79 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

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.

贡献者指南