ssh-fingerprint.js/bin/ssh-fingerprint.js

22 lines
563 B
JavaScript
Executable File

#!/usr/bin/env node
'use strict';
var fs = require('fs');
var path = require('path');
var sshtojwk = require('../index.js');
var pubfile = process.argv[2];
if (!pubfile) {
pubfile = path.join(require('os').homedir(), '.ssh/id_rsa.pub');
}
var buf = fs.readFileSync(pubfile);
var pub = buf.toString('ascii');
// Finally! https://superuser.com/a/714195
sshtojwk.fingerprint({ pub: pub }).then(function (fing) {
var kty = ('RSA' === fing.kty ? 'RSA' : 'ECDSA');
console.info((fing.size*8).toString(), fing.fingerprint, fing.comment, '(' + kty + ')');
});