mirror of
https://github.com/fluencelabs/js-peer-id
synced 2025-07-04 00:31:44 +00:00
Compare commits
13 Commits
Author | SHA1 | Date | |
---|---|---|---|
d2894bfa32 | |||
c3e3b70d09 | |||
f08866047d | |||
a3fe1a2f03 | |||
0acc572fd3 | |||
8c49610dff | |||
e1ffe9bba5 | |||
e59010b439 | |||
60b1c09665 | |||
b28b8ef693 | |||
961b218a53 | |||
0642070fdd | |||
a2afb2aeea |
14
package.json
14
package.json
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "peer-id",
|
||||
"version": "0.8.2",
|
||||
"version": "0.8.5",
|
||||
"description": "IPFS Peer Id implementation in Node.js",
|
||||
"main": "src/index.js",
|
||||
"bin": "src/bin.js",
|
||||
@ -34,14 +34,16 @@
|
||||
},
|
||||
"homepage": "https://github.com/libp2p/js-peer-id",
|
||||
"devDependencies": {
|
||||
"aegir": "^10.0.0",
|
||||
"aegir": "^11.0.1",
|
||||
"chai": "^3.5.0",
|
||||
"dirty-chai": "^1.2.2",
|
||||
"pre-commit": "^1.2.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"libp2p-crypto": "~0.8.0",
|
||||
"multihashes": "~0.3.3",
|
||||
"async": "^2.1.4"
|
||||
"async": "^2.2.0",
|
||||
"libp2p-crypto": "~0.8.7",
|
||||
"lodash": "^4.17.4",
|
||||
"multihashes": "~0.4.5"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -51,10 +53,10 @@
|
||||
"David Dias <daviddias.p@gmail.com>",
|
||||
"David Dias <mail@daviddias.me>",
|
||||
"Friedel Ziegelmayer <dignifiedquire@gmail.com>",
|
||||
"Greenkeeper <support@greenkeeper.io>",
|
||||
"Prashanth Chandra <coolshanth94@gmail.com>",
|
||||
"Richard Littauer <richard.littauer@gmail.com>",
|
||||
"Stephen Whitmore <stephen.whitmore@gmail.com>",
|
||||
"greenkeeperio-bot <support@greenkeeper.io>",
|
||||
"nginnever <ginneversource@gmail.com>",
|
||||
"npmcdn-to-unpkg-bot <npmcdn-to-unpkg-bot@users.noreply.github.com>"
|
||||
]
|
||||
|
@ -91,7 +91,6 @@ class PeerId {
|
||||
}
|
||||
|
||||
exports = module.exports = PeerId
|
||||
exports.Buffer = Buffer
|
||||
|
||||
// generation
|
||||
exports.create = function (opts, callback) {
|
||||
@ -219,6 +218,12 @@ exports.createFromJSON = function (obj, callback) {
|
||||
}
|
||||
}
|
||||
|
||||
exports.isPeerId = function (peerId) {
|
||||
return Boolean(typeof peerId === 'object' &&
|
||||
peerId._id &&
|
||||
peerId._idB58String)
|
||||
}
|
||||
|
||||
function toB64Opt (val) {
|
||||
if (val) {
|
||||
return val.toString('base64')
|
||||
|
@ -2,7 +2,10 @@
|
||||
/* eslint-env mocha */
|
||||
'use strict'
|
||||
|
||||
const expect = require('chai').expect
|
||||
const chai = require('chai')
|
||||
const dirtyChai = require('dirty-chai')
|
||||
chai.use(dirtyChai)
|
||||
const expect = chai.expect
|
||||
const crypto = require('libp2p-crypto')
|
||||
const mh = require('multihashes')
|
||||
const parallel = require('async/parallel')
|
||||
@ -23,15 +26,25 @@ describe('PeerId', () => {
|
||||
|
||||
it('create a new id', (done) => {
|
||||
PeerId.create((err, id) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(id.toB58String().length).to.equal(46)
|
||||
done()
|
||||
})
|
||||
})
|
||||
|
||||
it('isPeerId', (done) => {
|
||||
PeerId.create((err, id) => {
|
||||
expect(err).to.not.exist()
|
||||
expect(PeerId.isPeerId(id)).to.equal(true)
|
||||
expect(PeerId.isPeerId('aaa')).to.equal(false)
|
||||
expect(PeerId.isPeerId(new Buffer('batatas'))).to.equal(false)
|
||||
done()
|
||||
})
|
||||
})
|
||||
|
||||
it('throws on changing the id', (done) => {
|
||||
PeerId.create((err, id) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(id.toB58String().length).to.equal(46)
|
||||
expect(() => {
|
||||
id.id = new Buffer('hello')
|
||||
@ -57,7 +70,7 @@ describe('PeerId', () => {
|
||||
|
||||
it('Recreate from a Public Key', (done) => {
|
||||
PeerId.createFromPubKey(testId.pubKey, (err, id) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(testIdB58String).to.equal(id.toB58String())
|
||||
done()
|
||||
})
|
||||
@ -65,12 +78,12 @@ describe('PeerId', () => {
|
||||
|
||||
it('Recreate from a Private Key', (done) => {
|
||||
PeerId.createFromPrivKey(testId.privKey, (err, id) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(testIdB58String).to.equal(id.toB58String())
|
||||
|
||||
const encoded = new Buffer(testId.privKey, 'base64')
|
||||
PeerId.createFromPrivKey(encoded, (err, id2) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(testIdB58String).to.equal(id2.toB58String())
|
||||
done()
|
||||
})
|
||||
@ -79,10 +92,10 @@ describe('PeerId', () => {
|
||||
|
||||
it('Compare generated ID with one created from PubKey', (done) => {
|
||||
PeerId.create((err, id1) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
|
||||
PeerId.createFromPubKey(id1.marshalPubKey(), (err, id2) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(id1.id).to.be.eql(id2.id)
|
||||
done()
|
||||
})
|
||||
@ -91,9 +104,9 @@ describe('PeerId', () => {
|
||||
|
||||
it('Non-default # of bits', (done) => {
|
||||
PeerId.create({ bits: 1024 }, (err, shortId) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
PeerId.create({ bits: 4096 }, (err, longId) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(shortId.privKey.bytes.length).is.below(longId.privKey.bytes.length)
|
||||
done()
|
||||
})
|
||||
@ -102,9 +115,9 @@ describe('PeerId', () => {
|
||||
|
||||
it('Pretty printing', (done) => {
|
||||
PeerId.create((err, id1) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
PeerId.createFromPrivKey(id1.toPrint().privKey, (err, id2) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(id1.toPrint()).to.be.eql(id2.toPrint())
|
||||
done()
|
||||
})
|
||||
@ -118,26 +131,14 @@ describe('PeerId', () => {
|
||||
|
||||
describe('fromJSON', () => {
|
||||
it('full node', (done) => {
|
||||
PeerId.create({bits: 1024}, (err, id) => {
|
||||
expect(err).to.not.exist
|
||||
PeerId.create({ bits: 1024 }, (err, id) => {
|
||||
expect(err).to.not.exist()
|
||||
|
||||
PeerId.createFromJSON(id.toJSON(), (err, other) => {
|
||||
expect(err).to.not.exist
|
||||
expect(
|
||||
id.toB58String()
|
||||
).to.equal(
|
||||
other.toB58String()
|
||||
)
|
||||
expect(
|
||||
id.privKey.bytes
|
||||
).to.deep.equal(
|
||||
other.privKey.bytes
|
||||
)
|
||||
expect(
|
||||
id.pubKey.bytes
|
||||
).to.deep.equal(
|
||||
other.pubKey.bytes
|
||||
)
|
||||
expect(err).to.not.exist()
|
||||
expect(id.toB58String()).to.equal(other.toB58String())
|
||||
expect(id.privKey.bytes).to.eql(other.privKey.bytes)
|
||||
expect(id.pubKey.bytes).to.eql(other.pubKey.bytes)
|
||||
done()
|
||||
})
|
||||
})
|
||||
@ -145,16 +146,16 @@ describe('PeerId', () => {
|
||||
|
||||
it('only id', (done) => {
|
||||
crypto.generateKeyPair('RSA', 1024, (err, key) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
key.public.hash((err, digest) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
|
||||
const id = PeerId.createFromBytes(digest)
|
||||
expect(id.privKey).to.not.exist
|
||||
expect(id.pubKey).to.not.exist
|
||||
expect(id.privKey).to.not.exist()
|
||||
expect(id.pubKey).to.not.exist()
|
||||
|
||||
PeerId.createFromJSON(id.toJSON(), (err, other) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(
|
||||
id.toB58String()
|
||||
).to.equal(
|
||||
@ -168,9 +169,9 @@ describe('PeerId', () => {
|
||||
|
||||
it('go interop', (done) => {
|
||||
PeerId.createFromJSON(goId, (err, id) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
id.privKey.public.hash((err, digest) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(
|
||||
mh.toB58String(digest)
|
||||
).to.be.eql(
|
||||
@ -203,7 +204,7 @@ describe('PeerId', () => {
|
||||
|
||||
it('missmatch private - public key', (done) => {
|
||||
k1.public.hash((err, digest) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(
|
||||
() => new PeerId(digest, k1, k2.public)
|
||||
).to.throw(
|
||||
@ -215,7 +216,7 @@ describe('PeerId', () => {
|
||||
|
||||
it('missmatch id - private - public key', (done) => {
|
||||
k1.public.hash((err, digest) => {
|
||||
expect(err).to.not.exist
|
||||
expect(err).to.not.exist()
|
||||
expect(
|
||||
() => new PeerId(digest, k1, k3.public)
|
||||
).to.throw(
|
||||
|
Reference in New Issue
Block a user