我正在尝试使用以下功能使用私钥对文件签名:
void Signer::SignFile(const std::string& file)
{
CryptoPP::RSASS<CryptoPP::PSSR, CryptoPP::Whirlpool>::Signer signer(rsaPrivate);
// Encrypt and write
FileSource ss1(file.c_str(), true,
new SignerFilter(rng, signer,
new FileSink(file.c_str(), true)
, true));
}
因此,我的目标文件被签名覆盖。为什么会这样呢?显然,我想将其附加到文件中,这就是为什么我还为“ putMessage”添加了一个额外的“ true”参数的原因。
FileSource ss1(file.c_str(), true, new SignerFilter(rng, signer, new FileSink(file.c_str(), true), true));