/* amper5and / secrets.js https://github.com/amper5and/secrets.js/ sssファイルの照会 使い方 node sssDecode ファイル名 ファイル名 ・・・ */ var fs = require('fs'); var secrets = require('./secrets'); var argv = process.argv.map(function (val) { return val; }); if(argv.length<3){ console.log("ファイルの指定がありません。"); return; } //sssファイルの読み込み var shares=new Array(); for(var i=2;i<argv.length;i++){ var d=fileGetContents( argv[i] ); shares.push(d); } //読み込んだん分散情報からsssオブジェクトを生成 var newShare = secrets.newShare(1, shares); //分散情報からテキスト情報の復号 var comb = secrets.combine( shares ); //hex stringをテキストに変換 comb = secrets.hex2str(comb); console.log( "秘密情報は\n"+comb ); //ファイル読み込み function fileGetContents( filename ){ var fs = require("fs"); var fileContent = ""; var stat = fs.statSync(filename); var fd = fs.openSync(filename, "r"); var bytes = fs.readSync(fd, stat.size, 0, "utf8"); fileContent += bytes[0]; fs.closeSync(fd); return fileContent; }