6

s2kアルゴリズムの定義は何ですか?たとえば、「PBKDF2(SHA-1)」はs2kアルゴリズムです。

s2kを参照するBotanコードは次のとおりです。

  AutoSeeded_RNG rng;

  std::auto_ptr<S2K> s2k(get_s2k("PBKDF2(SHA-1)"));
  s2k->set_iterations(8192);
  s2k->new_random_salt(rng, 8);

  SymmetricKey bc_key = s2k->derive_key(key_len, "BLK" + passphrase);
  InitializationVector iv = s2k->derive_key(iv_len, "IVL" + passphrase);
  SymmetricKey mac_key = s2k->derive_key(16, "MAC" + passphrase);
4

1 に答える 1

7

String-to-Key(S2K)指定子は、パスフレーズ文字列を対称鍵暗号化/復号化鍵に変換するために使用されます。これらは現在、秘密鍵リング内の秘密鍵の秘密部分を暗号化するためと、パスフレーズを対称的に暗号化されたメッセージの暗号化鍵に変換するための2つの場所で使用されています。

ソース(詳細を含む):http ://sunsite.icm.edu.pl/gnupg/rfc2440-3.html

于 2010-05-16T21:10:34.560 に答える