2010-05-16 37 views
5

Định nghĩa của thuật toán s2k là gì? Ví dụ: "PBKDF2 (SHA-1)" là một thuật toán s2k.Thuật toán s2k là gì?

Dưới đây là một số mã Botan nó liên quan tới s2k:

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); 

Trả lời

7

Chuỗi-to-key (S2K) specifiers được sử dụng để chuyển đổi chuỗi mật khẩu vào khóa mã hóa/giải mã đối xứng-key. Chúng được sử dụng ở hai địa điểm , hiện tại: để mã hóa phần bí mật của khóa cá nhân trong khóa riêng tư và để chuyển đổi cụm mật khẩu thành khóa mã hóa cho thư được mã hóa đối xứng.

Nguồn (có thêm chi tiết): http://sunsite.icm.edu.pl/gnupg/rfc2440-3.html

Các vấn đề liên quan