v1.2.4: bugfix RSA swapped n and e values (private key)
This commit is contained in:
parent
b5c919b557
commit
81780e5ab1
|
@ -9,6 +9,11 @@ SSH.parse = function (opts) {
|
||||||
var ssh = SSH.parseBlock(pub);
|
var ssh = SSH.parseBlock(pub);
|
||||||
if ('OPENSSH PRIVATE KEY' === ssh.type) {
|
if ('OPENSSH PRIVATE KEY' === ssh.type) {
|
||||||
ssh = SSH.parsePrivateElements(ssh);
|
ssh = SSH.parsePrivateElements(ssh);
|
||||||
|
if (7 === ssh.elements.length) {
|
||||||
|
// RSA Private Keys have the `e` and `n` swapped (which is actually more normal)
|
||||||
|
// but we have to reswap them to make them consistent with the public key format
|
||||||
|
ssh.elements.splice(1, 0, ssh.elements.splice(2 ,1)[0]);
|
||||||
|
}
|
||||||
if (opts.public) {
|
if (opts.public) {
|
||||||
ssh.elements = ssh.elements.slice(0, 3);
|
ssh.elements = ssh.elements.slice(0, 3);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "ssh-to-jwk",
|
"name": "ssh-to-jwk",
|
||||||
"version": "1.2.2",
|
"version": "1.2.4",
|
||||||
"description": "💯 SSH to JWK in a lightweight, zero-dependency library.",
|
"description": "💯 SSH to JWK in a lightweight, zero-dependency library.",
|
||||||
"homepage": "https://git.coolaj86.com/coolaj86/ssh-to-jwk.js",
|
"homepage": "https://git.coolaj86.com/coolaj86/ssh-to-jwk.js",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
|
|
Loading…
Reference in New Issue