|
|
@ -9,6 +9,11 @@ SSH.parse = function (opts) { |
|
|
|
var ssh = SSH.parseBlock(pub); |
|
|
|
if ('OPENSSH PRIVATE KEY' === ssh.type) { |
|
|
|
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) { |
|
|
|
ssh.elements = ssh.elements.slice(0, 3); |
|
|
|
} |
|
|
|