Socket
Socket
Sign inDemoInstall

ecdsa-sig-formatter

Package Overview
Dependencies
1
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.0.5 to 1.0.6

18

package.json
{
"name": "ecdsa-sig-formatter",
"version": "1.0.5",
"version": "1.0.6",
"description": "Translate ECDSA signatures between ASN.1/DER and JOSE-style concatenation",

@@ -36,11 +36,11 @@ "main": "src/ecdsa-sig-formatter.js",

"bench": "^0.3.6",
"chai": "^3.4.1",
"coveralls": "^2.11.6",
"elliptic": "^6.1.0",
"eslint": "^1.10.3",
"eslint-config-brightspace": "^0.1.0",
"istanbul": "^0.4.2",
"jwk-to-pem": "^1.2.4",
"mocha": "^2.3.4"
"chai": "^3.5.0",
"coveralls": "^2.11.9",
"elliptic": "^6.3.1",
"eslint": "^2.12.0",
"eslint-config-brightspace": "^0.2.1",
"istanbul": "^0.4.3",
"jwk-to-pem": "^1.2.5",
"mocha": "^2.5.3"
}
}

@@ -110,3 +110,3 @@ 'use strict';

function reduceBuffer(buf) {
function countPadding(buf) {
var padding = 0;

@@ -120,19 +120,5 @@ for (var n = buf.length; padding < n && buf[padding] === 0;) {

--padding;
if (padding < 0) {
var old = buf;
buf = new Buffer(1 + buf.length);
buf[0] = 0;
old.copy(buf, 1);
return buf;
}
}
if (padding === 0) {
return buf;
}
buf = buf.slice(padding);
return buf;
return padding;
}

@@ -149,6 +135,10 @@

var r = reduceBuffer(signature.slice(0, paramBytes));
var s = reduceBuffer(signature.slice(paramBytes));
var r = signature.slice(0, paramBytes);
var s = signature.slice(paramBytes);
var rPadding = countPadding(r);
var sPadding = countPadding(s);
var rLength = r.length - rPadding;
var sLength = s.length - sPadding;
var rsBytes = 1 + 1 + r.length + 1 + 1 + s.length;
var rsBytes = 1 + 1 + rLength + 1 + 1 + sLength;

@@ -173,8 +163,17 @@ var shortLength = rsBytes < MAX_OCTET;

signature[offset++] = ENCODED_TAG_INT;
signature[offset++] = r.length;
r.copy(signature, offset);
offset += r.length;
signature[offset++] = rLength;
if (rPadding < 0) {
signature[offset++] = 0;
offset += r.copy(signature, offset);
} else {
offset += r.copy(signature, offset, rPadding);
}
signature[offset++] = ENCODED_TAG_INT;
signature[offset++] = s.length;
s.copy(signature, offset);
signature[offset++] = sLength;
if (sPadding < 0) {
signature[offset++] = 0;
s.copy(signature, offset);
} else {
s.copy(signature, offset, sPadding);
}

@@ -181,0 +180,0 @@ return signature;

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc