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);
答案 0 :(得分:7)
String-to-key(S2K)说明符用于转换密码短语字符串 到对称密钥加密/解密密钥。它们分两种使用 地方,目前:加密私钥的秘密部分 私钥密钥,并将密码转换为加密密钥 对称加密的消息。