mirror of
https://github.com/fluencelabs/js-libp2p-crypto
synced 2025-06-13 03:01:24 +00:00
feat: add exporting/importing of non rsa keys in libp2p-key format (#179)
* feat: add exporting/importing of ed25519 keys in libp2p-key format * feat: add libp2p-key export/import support for rsa and secp keys * chore: dep bumps * chore: update aegir * refactor: import and export base64 strings * refactor: simplify api for now * chore: fix lint * refactor: remove extraneous param * refactor: clean up * fix: review patches
This commit is contained in:
@ -63,6 +63,26 @@ describe('secp256k1 keys', () => {
|
||||
expect(id).to.be.a('string')
|
||||
})
|
||||
|
||||
it('should export a password encrypted libp2p-key', async () => {
|
||||
const key = await crypto.keys.generateKeyPair('secp256k1')
|
||||
const encryptedKey = await key.export('my secret')
|
||||
// Import the key
|
||||
const importedKey = await crypto.keys.import(encryptedKey, 'my secret')
|
||||
expect(key.equals(importedKey)).to.equal(true)
|
||||
})
|
||||
|
||||
it('should fail to import libp2p-key with wrong password', async () => {
|
||||
const key = await crypto.keys.generateKeyPair('secp256k1')
|
||||
const encryptedKey = await key.export('my secret', 'libp2p-key')
|
||||
try {
|
||||
await crypto.keys.import(encryptedKey, 'not my secret')
|
||||
} catch (err) {
|
||||
expect(err).to.exist()
|
||||
return
|
||||
}
|
||||
expect.fail('should have thrown')
|
||||
})
|
||||
|
||||
describe('key equals', () => {
|
||||
it('equals itself', () => {
|
||||
expect(key.equals(key)).to.eql(true)
|
||||
|
Reference in New Issue
Block a user