本文整理汇总了C++中PK_Signer::sign_message方法的典型用法代码示例。如果您正苦于以下问题:C++ PK_Signer::sign_message方法的具体用法?C++ PK_Signer::sign_message怎么用?C++ PK_Signer::sign_message使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PK_Signer
的用法示例。
在下文中一共展示了PK_Signer::sign_message方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: return
SecureVector<Botan::byte> ne7ssh_keys::generateRSASignature (Botan::SecureVector<Botan::byte>& sessionID, Botan::SecureVector<Botan::byte>& signingData)
{
SecureVector<Botan::byte> sigRaw;
ne7ssh_string sigData, sig;
sigData.addVectorField (sessionID);
sigData.addVector (signingData);
if (!rsaPrivateKey)
{
ne7ssh::errors()->push (-1, "Private RSA key not initialized.");
return sig.value();
}
PK_Signer *RSASigner = get_pk_signer (*rsaPrivateKey, "EMSA3(SHA-1)");
#if BOTAN_PRE_18 || BOTAN_PRE_15
sigRaw = RSASigner->sign_message(sigData.value());
#else
sigRaw = RSASigner->sign_message(sigData.value(), *ne7ssh::rng);
#endif
if (!sigRaw.size())
{
ne7ssh::errors()->push (-1, "Failure while generating RSA signature.");
delete RSASigner;
return sig.value();
}
delete RSASigner;
sig.addString ("ssh-rsa");
sig.addVectorField (sigRaw);
return (sig.value());
}
示例2: DER_Encoder
MemoryVector<byte> EAC1_1_ADO::make_signed(PK_Signer& signer,
const MemoryRegion<byte>& tbs_bits,
RandomNumberGenerator& rng)
{
SecureVector<byte> concat_sig = signer.sign_message(tbs_bits, rng);
return DER_Encoder()
.start_cons(ASN1_Tag(7), APPLICATION)
.raw_bytes(tbs_bits)
.encode(concat_sig, OCTET_STRING, ASN1_Tag(55), APPLICATION)
.end_cons()
.get_contents();
}