2017-01-11 8 views
0

私はbase32 npmパッケージに問題がありました。私は一般的な機能をテストするための最小限のスクリプトを構築しましたが、私はまだ間違いがあります。私はここで盲目的に何かを逃しているのですか?npm base32が機能しません。それは私のコードですか?

'use strict'; 
 
     
 
const base32 = require('base32'); 
 
const crypto = require('crypto'); 
 
     
 
let val = ""; 
 
let encoded = ""; 
 
let decoded = ""; 
 

 
for(let i = 0; i < 3; i++) { 
 
    //Generate a random string 
 
    val = crypto.randomBytes(64).toString('hex'); //or base64 instead of hex 
 
    //endode it in base32 
 
    encoded = base32.encode(val); 
 
    //decode it again. 
 
    decoded = base32.decode(val); 
 
      
 
    //val and decoded should be equal now 
 
    if(decoded !== val) { 
 
    console.log('FATAL ERROR ' + i); 
 
    console.log('val: ' + val); 
 
    console.log('enc: ' + encoded); 
 
    //The console output of decoded looks like binary rubbish 
 
    console.log('dec: ' + decoded); 
 
    }  
 
}

今、すべてのランダムな値は "ヴァル" につながると異なっている "デコード"。彼らは同じではありませんか?間違いはどこですか?

+1

Bahどのような愚かな間違い!!!もちろん、それはデコードする必要があります= base32.decode(エンコード); 質問を削除するにはどうすればよいですか?これをオンラインにする必要はありません^^ –

答えて

0

エンコードされた値をデコードする必要があります。

decoded = base32.decode(encoded); 
+0

ありがとうございます。本当に間違ったミスだった... –

関連する問題