密码算法测试向量——SHA系列

目录

SHA1测试向量

SHA224测试向量

SHA256测试向量

SHA384测试向量

SHA512测试向量


//杂凑算法的测试向量, 如数据杂凑, HMAC等 
typedef struct hash_test_vector_st 
{    
    char *    inf;    //测试向量的附加信息说明
    int        alg;    //杂凑算法
    int        mod;    //模式, 如数据杂凑, HMAC
    int        klen;    //密钥字节长度
    char *    key;    //密钥
    int        mlen;    //消息字节长度
    char *    msg;    //消息
    int        mdlen;    //MAC 字节长度
    char *    md;        //MAC
}HashTV;//杂凑算法的测试向量

SHA1测试向量


HashTV sha1hashtv[] = 
{
    {/*测试向量0 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA1, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/     3, (char*)"616263",
        /*md */    20, (char*)"A9993E364706816A BA3E25717850C26C 9CD0D89D",
    },
    {/*测试向量1 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA1, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/    56, (char*)"6162636462636465 6364656664656667 6566676866676869 6768696A68696A6B"
        /*   */            "696A6B6C6A6B6C6D 6B6C6D6E6C6D6E6F 6D6E6F706E6F7071",
        /*md */    20, (char*)"84983E441C3BD26E BAAE4AA1F95129E5 E54670F1",
    }, 
};

SHA224测试向量

HashTV sha224hashtv[] = 
{
    {/*测试向量2 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA224, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/     3, (char*)"616263",
        /*md */    28, (char*)"23097D223405D822 8642A477BDA255B3 2AADBCE4BDA0B3F7 E36C9DA7",
    },
    {/*测试向量3 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA224, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/    56, (char*)"6162636462636465 6364656664656667 6566676866676869 6768696A68696A6B"
        /*   */            "696A6B6C6A6B6C6D 6B6C6D6E6C6D6E6F 6D6E6F706E6F7071",
        /*md */    28, (char*)"75388B16512776CC 5DBA5DA1FD890150 B0C6455CB4F58B19 52522525",
    },     
};

SHA256测试向量

HashTV sha256hashtv[] = 
{
    {/*测试向量4 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA256, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/     3, (char*)"616263",
        /*md */    32, (char*)"BA7816BF8F01CFEA 414140DE5DAE2223 B00361A396177A9C B410FF61F20015AD",
    },
    {/*测试向量5 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA256, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/    56, (char*)"6162636462636465 6364656664656667 6566676866676869 6768696A68696A6B"
        /*   */            "696A6B6C6A6B6C6D 6B6C6D6E6C6D6E6F 6D6E6F706E6F7071",
        /*md */    32, (char*)"248D6A61D20638B8 E5C026930C3E6039 A33CE45964FF2167 F6ECEDD419DB06C1",
    },  
};

SHA384测试向量

HashTV sha384hashtv[] = 
{
    {/*测试向量6 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA384, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/     3, (char*)"616263",
        /*md */    48, (char*)"CB00753F45A35E8B B5A03D699AC65007 272C32AB0EDED163 1A8B605A43FF5BED"
        /*   */            "8086072BA1E7CC23 58BAECA134C825A7",
    },
    {/*测试向量7 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA384, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/112, (char*)"6162636465666768 6263646566676869 636465666768696A 6465666768696A6B"
        /*   */            "65666768696A6B6C 666768696A6B6C6D 6768696A6B6C6D6E 68696A6B6C6D6E6F"
        /*   */            "696A6B6C6D6E6F70 6A6B6C6D6E6F7071 6B6C6D6E6F707172 6C6D6E6F70717273"
        /*   */            "6D6E6F7071727374 6E6F707172737475",
        /*md */    48, (char*)"09330C33F71147E8 3D192FC782CD1B47 53111B173B3B05D2 2FA08086E3B0F712"
        /*   */            "FCC7C71A557E2DB9 66C3E9FA91746039",
    },     
};

SHA512测试向量

HashTV sha512hashtv[] = 
{
    {/*测试向量8 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA512, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/     3, (char*)"616263",
        /*md */    64, (char*)"DDAF35A193617ABA CC417349AE204131 12E6FA4E89A97EA2 0A9EEEE64B55D39A"
        /*   */            "2192992A274FC1A8 36BA3C23A3FEEBBD 454D4423643CE80E 2A9AC94FA54CA49F",
    },            
    {/*测试向量9 */ 
        /*inf*/ (char*)"NIST提供的测试向量", SHA512, 0, 
        /*Key*/     0, (char*)NULL,
        /*msg*/112, (char*)"6162636465666768 6263646566676869 636465666768696A 6465666768696A6B"
        /*   */            "65666768696A6B6C 666768696A6B6C6D 6768696A6B6C6D6E 68696A6B6C6D6E6F"
        /*   */            "696A6B6C6D6E6F70 6A6B6C6D6E6F7071 6B6C6D6E6F707172 6C6D6E6F70717273"
        /*   */            "6D6E6F7071727374 6E6F707172737475",
        /*md */    64, (char*)"8E959B75DAE313DA 8CF4F72814FC143F 8F7779C6EB9F7FA1 7299AEADB6889018"
        /*   */            "501D289E4900F7E4 331B99DEC4B5433A C7D329EEB6DD2654 5E96E55B874BE909",
    },  
}; 

posted @ 2022-03-25 15:58  艾米的爸爸  阅读(2)  评论(0)    收藏  举报  来源