⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pk_filts.cpp

📁 含有多种公开密钥算法、多种块加密、多种数据流加密、多种HASH函数、多种CheckSum校验、多种MAC校验等几十种加密算法的程序
💻 CPP
字号:
/************************************************** PK Filters Source File                         ** (C) 1999-2002 The Botan Project                **************************************************/#include <botan/pk_filts.h>namespace Botan {/************************************************** Append to the buffer                           **************************************************/void PK_Encryptor_Filter::write(const byte input[], u32bit length)   {   buffer.append(input, length);   }/************************************************** Encrypt the message                            **************************************************/void PK_Encryptor_Filter::end_msg()   {   SecureVector<byte> encrypted = cipher->encrypt(buffer, buffer.size());   send(encrypted, encrypted.size());   buffer.destroy();   }/************************************************** Append to the buffer                           **************************************************/void PK_Decryptor_Filter::write(const byte input[], u32bit length)   {   buffer.append(input, length);   }/************************************************** Decrypt the message                            **************************************************/void PK_Decryptor_Filter::end_msg()   {   SecureVector<byte> decrypted = cipher->decrypt(buffer, buffer.size());   send(decrypted, decrypted.size());   buffer.destroy();   }/************************************************** Add more data                                  **************************************************/void PK_Signer_Filter::write(const byte input[], u32bit length)   {   signer->update(input, length);   }/************************************************** Sign the message                               **************************************************/void PK_Signer_Filter::end_msg()   {   SecureVector<byte> signature = signer->signature();   send(signature, signature.size());   }/************************************************** Add more data                                  **************************************************/void PK_Verifier_Filter::write(const byte input[], u32bit length)   {   verifier->update(input, length);   }/************************************************** Verify the message                             **************************************************/void PK_Verifier_Filter::end_msg()   {   if(signature.size() == 0)      throw Exception("PK_Verifier_Filter: No signature to check against");   bool is_valid = verifier->valid_signature(signature, signature.size());   send((is_valid ? 1 : 0));   }/************************************************** Set the signature to check                     **************************************************/void PK_Verifier_Filter::set_signature(const byte sig[], u32bit length)   {   signature.set(sig, length);   }/************************************************** PK_Verifier_Filter Constructor                 **************************************************/PK_Verifier_Filter::PK_Verifier_Filter(PK_Verifier* v, const byte sig[],                                       u32bit length) :   verifier(v), signature(sig, length)   {   }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -