Socket
Socket
Sign inDemoInstall

libp2p-secio

Package Overview
Dependencies
Maintainers
1
Versions
36
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

libp2p-secio - npm Package Compare versions

Comparing version 0.3.0 to 0.3.1

dist/index.js.map

8

lib/handshake/exchange.js

@@ -53,5 +53,6 @@ 'use strict';

var selectionOut = Buffer.concat([session.proposal.out, session.proposal.in, session.local.ephemeralPubKey]);
var epubkey = session.local.ephemeralPubKey;
var signature = session.localKey.sign(selectionOut);
var signature = new Buffer(session.localKey.sign(selectionOut), 'binary');
log('out', { epubkey: epubkey, signature: signature });
return pbm.Exchange.encode({ epubkey: epubkey, signature: signature });

@@ -61,7 +62,6 @@ }

function verify(session, exchangeIn) {
log('2.1. verify');
log('2.1. verify', exchangeIn);
session.remote.ephemeralPubKey = exchangeIn.epubkey;
var selectionIn = Buffer.concat([session.proposal.in, session.proposal.out, session.remote.ephemeralPubKey]);
var sigOk = session.remote.permanentPubKey.verify(selectionIn, exchangeIn.signature);

@@ -68,0 +68,0 @@

@@ -7,2 +7,3 @@ 'use strict';

log.error = debug('libp2p:secio:error');
var read = require('async-buffered-reader');

@@ -19,13 +20,14 @@ var etm = require('../etm');

session.secure = duplexify(w, r);
session.secure.write(session.proposal.randIn);
// read our nonce back
session.secure.once('data', function (nonceOut2) {
read(session.secure, 16, function (nonceOut2) {
var nonceOut = session.proposal.nonceOut;
if (!nonceOut.equals(nonceOut2)) {
return cb(new Error('Failed to read our encrypted nonce: ' + nonceOut + ' != ' + nonceOut2));
var err = new Error('Failed to read our encrypted nonce: ' + nonceOut.toString('hex') + ' != ' + nonceOut2.toString('hex'));
log.error(err);
return cb(err);
}
log('3. finish - finish');
log('3. finish - finish', nonceOut.toString('hex'), nonceOut2.toString('hex'));

@@ -32,0 +34,0 @@ // Awesome that's all folks.

@@ -72,3 +72,5 @@ 'use strict';

_this.handshake(function (err) {
if (err) return dp.emit('error', err);
if (err) {
dp.emit('error', err);
}

@@ -78,3 +80,5 @@ // Pipe things together

_this.secure.pipe(reader);
dp.uncork();
dp.resume();
});

@@ -96,2 +100,3 @@ };

dp.cork();
dp.pause();

@@ -98,0 +103,0 @@ return dp;

{
"name": "libp2p-secio",
"version": "0.3.0",
"version": "0.3.1",
"description": "Secio implementation in JavaScript",

@@ -28,9 +28,10 @@ "main": "lib/index.js",

"dependencies": {
"async-buffered-reader": "^1.2.1",
"debug": "^2.2.0",
"duplexify": "^3.4.3",
"length-prefixed-stream": "^1.5.0",
"libp2p-crypto": "^0.4.0",
"libp2p-crypto": "^0.5.0",
"multihashing": "^0.2.1",
"node-forge": "^0.6.39",
"peer-id": "^0.6.6",
"peer-id": "^0.6.7",
"protocol-buffers": "^3.1.6",

@@ -42,6 +43,8 @@ "readable-stream": "1.1.13",

"devDependencies": {
"aegir": "^3.0.4",
"aegir": "^3.1.0",
"bl": "^1.1.2",
"chai": "^3.5.0",
"multistream-select": "^0.9.0",
"pre-commit": "^1.1.3",
"run-parallel": "^1.1.6",
"stream-pair": "^1.0.3"

@@ -48,0 +51,0 @@ },

@@ -57,5 +57,6 @@ 'use strict'

])
const epubkey = session.local.ephemeralPubKey
const signature = session.localKey.sign(selectionOut)
const signature = new Buffer(session.localKey.sign(selectionOut), 'binary')
log('out', {epubkey, signature})
return pbm.Exchange.encode({epubkey, signature})

@@ -65,3 +66,3 @@ }

function verify (session, exchangeIn) {
log('2.1. verify')
log('2.1. verify', exchangeIn)

@@ -74,3 +75,2 @@ session.remote.ephemeralPubKey = exchangeIn.epubkey

])
const sigOk = session.remote.permanentPubKey.verify(selectionIn, exchangeIn.signature)

@@ -77,0 +77,0 @@

@@ -7,2 +7,3 @@ 'use strict'

log.error = debug('libp2p:secio:error')
const read = require('async-buffered-reader')

@@ -19,15 +20,14 @@ const etm = require('../etm')

session.secure = duplexify(w, r)
session.secure.write(session.proposal.randIn)
// read our nonce back
session.secure.once('data', (nonceOut2) => {
read(session.secure, 16, (nonceOut2) => {
const nonceOut = session.proposal.nonceOut
if (!nonceOut.equals(nonceOut2)) {
return cb(
new Error(`Failed to read our encrypted nonce: ${nonceOut} != ${nonceOut2}`)
)
const err = new Error(`Failed to read our encrypted nonce: ${nonceOut.toString('hex')} != ${nonceOut2.toString('hex')}`)
log.error(err)
return cb(err)
}
log('3. finish - finish')
log('3. finish - finish', nonceOut.toString('hex'), nonceOut2.toString('hex'))

@@ -34,0 +34,0 @@ // Awesome that's all folks.

@@ -62,3 +62,5 @@ 'use strict'

this.handshake((err) => {
if (err) return dp.emit('error', err)
if (err) {
dp.emit('error', err)
}

@@ -68,3 +70,5 @@ // Pipe things together

this.secure.pipe(reader)
dp.uncork()
dp.resume()
})

@@ -86,2 +90,3 @@ }

dp.cork()
dp.pause()

@@ -88,0 +93,0 @@ return dp

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc