algos.cpp

来自「含有多种公开密钥算法、多种块加密、多种数据流加密、多种HASH函数、多种Chec」· C++ 代码 · 共 92 行

CPP
92
字号
// this file is public domain#include <botan/config.h>#include <string>using namespace Botan;struct algorithm   {      algorithm(const std::string& t, const std::string& n,                u32bit k = 0, u32bit i = 0) :         type(t), name(n), filtername(n), keylen(k), ivlen(i) {}      algorithm(const std::string& t, const std::string& n,                const std::string& f, u32bit k = 0, u32bit i = 0) :         type(t), name(n), filtername(f), keylen(k), ivlen(i) {}      std::string type, name, filtername;      u32bit keylen, ivlen, weight;   };extern const std::string END = "END";algorithm algorithms[] = {   algorithm("Block Cipher", "Blowfish", 16),   algorithm("Block Cipher", "CAST-256", 16),   algorithm("Block Cipher", "CAST-128", "CAST5", 16),   algorithm("Block Cipher", "CS-Cipher", 16),   algorithm("Block Cipher", "DES", 8),   algorithm("Block Cipher", "DESX", 24),   algorithm("Block Cipher", "TripleDES", 24),   algorithm("Block Cipher", "GOST", 32),   algorithm("Block Cipher", "IDEA", 16),   algorithm("Block Cipher", "Lion(MD5,ISAAC)", "Lion(MD5,ISAAC,65536)", 16),   algorithm("Block Cipher", "Lion(SHA-1,SEAL)", "Lion(SHA-1,SEAL,65536)", 20),   algorithm("Block Cipher", "Luby-Rackoff(SHA-1)", 16),   algorithm("Block Cipher", "MARS", 32),   algorithm("Block Cipher", "MISTY1", 16),   algorithm("Block Cipher", "RC2", 16),   algorithm("Block Cipher", "RC5(12)", 16),   algorithm("Block Cipher", "RC5(16)", 16),   algorithm("Block Cipher", "RC6", 32),   algorithm("Block Cipher", "Rijndael [AES] (r=10)", "Rijndael", 16),   algorithm("Block Cipher", "Rijndael [AES] (r=12)", "Rijndael", 24),   algorithm("Block Cipher", "Rijndael [AES] (r=14)", "Rijndael", 32),   algorithm("Block Cipher", "SAFER-SK(10)", 16),   algorithm("Block Cipher", "Serpent", 32),   algorithm("Block Cipher", "SHARK", 16),   algorithm("Block Cipher", "Skipjack", 10),   algorithm("Block Cipher", "Square", 16),   algorithm("Block Cipher", "TEA", 16),   algorithm("Block Cipher", "ThreeWay", 12),   algorithm("Block Cipher", "Twofish", 32),   algorithm("Block Cipher", "XTEA", 16),   algorithm("Cipher Mode", "CBC(DES)", "CBC_Encryption(DES,PKCS7)", 8, 8),   algorithm("Cipher Mode", "CTS(DES)", "CTS_Encryption(DES)", 8, 8),   algorithm("Cipher Mode", "CFB(DES)(8)", "CFB_Encryption(DES,8)", 8, 8),   algorithm("Cipher Mode", "CFB(DES)(4)", "CFB_Encryption(DES,4)", 8, 8),   algorithm("Cipher Mode", "CFB(DES)(2)", "CFB_Encryption(DES,2)", 8, 8),   algorithm("Cipher Mode", "CFB(DES)(1)", "CFB_Encryption(DES,1)", 8, 8),   algorithm("Cipher Mode", "OFB(DES)", "OFB(DES)", 8, 8),   algorithm("Cipher Mode", "Counter(DES)", "OFB(DES)", 8, 8),   algorithm("Stream Cipher", "ARC4", 16),   algorithm("Stream Cipher", "ISAAC", 16),   algorithm("Stream Cipher", "SEAL", "SEAL", 20),   algorithm("Hash", "Adler32"),   algorithm("Hash", "CRC24"),   algorithm("Hash", "CRC32"),   algorithm("Hash", "HAVAL", "HAVAL(32)"),   algorithm("Hash", "MD2"),   algorithm("Hash", "MD4"),   algorithm("Hash", "MD5"),   algorithm("Hash", "RIPEMD-128"),   algorithm("Hash", "RIPEMD-160"),   algorithm("Hash", "SHA-1"),   algorithm("Hash", "SHA2-256"),   algorithm("Hash", "SHA2-384"),   algorithm("Hash", "SHA2-512"),   algorithm("Hash", "Tiger"),   algorithm("Hash", "Whirlpool"),   algorithm("MAC", "EMAC(Square)", 16),   algorithm("MAC", "HMAC(SHA-1)", 16),   algorithm("MAC", "MD5-MAC", 16),   algorithm("MAC", "X9.19-MAC", 16),   algorithm("RNG", "Randpool"),   algorithm("RNG", "X9.17(Rijndael)"),   algorithm(END, END)};

⌨️ 快捷键说明

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