「ボタン」を使用してファイルを暗号化および復号化しようとしています (AES 256)。ライブラリの Qt への統合は正常に完了しました。このチュートリアルのようにインターネットで見つけた多くの例に従いましたが、次のようになりました
error:
class Botan::S2K' has no member named 'set_iterations'
チュートリアルが作成されたボタンのバージョンが古く、使用しているバージョン (1.10.5) に互換性がないことがわかりました。
私の質問は:
新しいバージョンのチュートリアルはどこにありますか? 存在しない場合、以前のバージョン (1.8 または 1.9) の Windows インストーラーはどこからダウンロードできますか?
これまでの私のコードは次のとおりです:(暗号化)
string file = "...";
string fileEncrypted = "...";
Botan::LibraryInitializer init;
string passphrase = "password";
AutoSeeded_RNG rng;
S2K* s2k = get_s2k("PBKDF2(SHA-256)");
s2k->set_iterations(4049);
SecureVector<byte> key_and_IV = s2k->derive_key(48, passphrase).bits_of();
SymmetricKey key(key_and_IV, 32);
InitializationVector iv(key_and_IV +32, 16);
std::ifstream in(file, std::ios::binary);
std::ofstream out(fileEncrypted, std::ios::binary);
Pipe pipe(get_cipher("AES-256/CBC", key, iv,ENCRYPTION),new DataSink_Stream(out));
pipe.start_msg();
in >> pipe;
pipe.end_msg();