0

サイズが 1/4 MB の暗号的に安全なランダム データ ファイルを生成する必要があります。どうすればこれを行うことができるかについてのアイデア。任意のライブラリ/API が利用可能です。私はCrytoの初心者なので、ガイドしてください。

このデータ (gen) は、ヘッダーに次の使用上のコメントがある C プログラムへの入力である必要があります。

crypto_prg g gfile sfile pfile mfile < gen: gen によって決定されるコードを生成します。コードを gfile (7k)、sfile (53k)、pfile (4k)、mfile (82k) に書き込みます。時間がかかります。エンコードには mfile が必要です。デコードには gfile sfile pfile が必要です。gen は、およそ 4 分の 1 メガバイトのランダム データである必要があります。十分なランダム データがないと、コードの生成に失敗する可能性があります。その場合、crypto_prg は警告します。

この場合、「gen」を生成する必要があります。どうやってやるの。初心者なので教えてください。

ありがとう!

4

3 に答える 3

3

Java では、SecureRandomを使用して暗号的に安全なデータを生成できます。データを 1 回だけ生成する必要がある場合は、次のように簡単に使用できます。

RandomDataGenerator.java

public static void main(String args[]) {
    SecureRandom random = new SecureRandom();
    byte bytes[] = new byte[262144]; // Number of bytes in 0.25MB
    random.nextBytes(bytes);

    try {
        FileOutputStream fos = new FileOutputStream("random.data");
        fos.write(myByteArray);
        fos.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

これを機能させるのに問題がある場合はお知らせください。

于 2013-04-03T19:40:41.400 に答える
0

これを *NIX ベースのシステム (Linux、OSX、Android) で実行している場合は、特殊ファイル /dev/urandom から必要な数のバイトを単純に読み取ることができます。

参照: https://security.stackexchange.com/questions/3936/is-a-rand-from-dev-urandom-secure-for-a-login-key

于 2013-04-06T02:59:44.707 に答える
0

*NIX からは、よりもむしろ , を使用する必要/dev/random/dev/urandomあります。ランダムは低速ですが、より安全です。

まだ LinuxAPGでは、デフォルトでインストールする必要があります。次のようなものを試してください:

apg -a 1 -n 12 -m 16 -x 20 -M sncl

最後に、次を使用できますPWGen(デフォルトではインストールされません):

Cdt
于 2014-07-17T23:16:11.577 に答える