"ランダム" 128バイト鍵を生成する必要があります(ランダム性の強さは現時点では重要ではありません)。私は次のコードでJavaScriptでこれを行う:私はPOSTを経由してPHPスクリプトにこのキーを送信すると、しかしJavascriptとPHPでは文字エンコーディングが異なりますか?
var buffer = "";
for(var i=0; i<128; i++)
{
buffer += String.fromCharCode(Math.round(Math.random()*255));
}
、私は私のキーに特定の文字が同じエンコーディングを持っていないことがわかります!例えば、私がJavascriptでòのエンコーディングを出力すると、私は254を取得しますが、同じ文字はPHPで195のエンコーディングを持ちます。
A-Z、a-z、および0-9などの特定の文字は、JavascriptとPHPの両方で同じエンコードを使用します。
文字コードを出力するには、Javascriptの.charCodeAt()メソッドとPHPのord()関数を使用します。
文字エンコーディングが異なる理由を誰かが私に説明できると思っていました。ありがとうございました!
、 '127'は、PHPのバイトのcharという概念のために作業するのが最も簡単なはずです。 – alex