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

📄 sha1calc_debug2.c

📁 md5和sha-2的源码
💻 C
字号:
/** 


#define TEST1   "abc"
#define TEST2a  "abcdbcdecdefdefgefghfghighijhi"
#define TEST2b  "jkijkljklmklmnlmnomnopnopq"
#define TEST2   TEST2a TEST2b  -- 56 chars
#define TEST3   "a"
#define TEST4a  "01234567012345670123456701234567"
#define TEST4b  "01234567012345670123456701234567"
#define TEST4   TEST4a TEST4b

char *testarray[4] =
{
    TEST1,
    TEST2,
    TEST3,
    TEST4
};
long int repeatcount[4] = { 1, 1, 1000000, 10 };
char *resultarray[4] =
{
    "A9 99 3E 36 47 06 81 6A BA 3E 25 71 78 50 C2 6C 9C D0 D8 9D",
    "84 98 3E 44 1C 3B D2 6E BA AE 4A A1 F9 51 29 E5 E5 46 70 F1",
    "34 AA 97 3C D4 C4 DA A4 F6 1E EB 2B DB AD 27 31 65 34 01 6F",
    "DE A3 56 A2 CD DD 90 C7 A7 EC ED C5 EB B5 63 93 4F 46 04 52"
};

*/

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "../../MyLib/DataCalc/Sha1Calc.h"
#include "../../MyLib/DataCalc/Sha1Calc.c"

#define TEST1   "abc"
#define TEST2a  "abcdbcdecdefdefgefghfghighijhi"
#define TEST2b  "jkijkljklmklmnlmnomnopnopq"
#define TEST2   TEST2a TEST2b
#define TEST3   "a"
#define TEST4a  "01234567012345670123456701234567"
#define TEST4b  "01234567012345670123456701234567"
#define TEST4   TEST4a TEST4b


char* TestStr[16] = {
      TEST1, 
      TEST2, 
      TEST3, 
      TEST4
};
int TestTime[15] = {
1, 1, 1000000, 10
};

char abuf[1000000] = {0};

Sha1Calc s1;

int main(){
    void* op;
    SZ_T w,x,y,z,e;
    SZ_T f = 0;
    
    for( x = 0; x < 1000000; x ++ ){ abuf[x] = 'a';}
    
    printf("--Sha1 Calc Auto Test--\n");
    printf(" Sha1Calc Size = %d\n", sizeof( Sha1Calc ) );

    printf(" --- Single Block Test -- \n");
    printf(" Test String:%s, Len:%d\n",TestStr[0],strlen(TestStr[0]));
    Sha1Calc_reset(&s1);
    Sha1Calc_calculate(&s1,TestStr[0],strlen(TestStr[0]));
    printf(" Result is: ");
	for( x = 0; x < 20; x ++ ) printf("%x ",( SZ_UCHAR)( s1.Value[x]));
	printf("\n");

    printf(" Test String:%s, Len:%d\n",TestStr[1],strlen(TestStr[1]));
    Sha1Calc_reset(&s1);
    Sha1Calc_calculate(&s1,TestStr[1],strlen(TestStr[1]));
    printf(" Result is: ");
	for( x = 0; x < 20; x ++ ) printf("%x ",( SZ_UCHAR)( s1.Value[x]));
	printf("\n");

    printf(" --- Long Block Test --- \n ");
    printf(" 1000000 repeat of a \n");
    Sha1Calc_reset(&s1);
    Sha1Calc_calculate(&s1,&abuf[0],1000000);
    printf(" Result is: ");
   	for( x = 0; x < 20; x ++ ) printf("%x ",( SZ_UCHAR)( s1.Value[x]));
	printf("\n");

    printf("\n -- MultiCall Test -- \n");
    printf(" 1000000 repeat of a, every pass 1 char \n");
    Sha1Calc_reset(&s1);
    for( x = 0; x < 1000000; x ++ ){
          Sha1Calc_calculate(&s1,TestStr[2],1);    
    }
    printf(" Result is: ");
   	for( x = 0; x < 20; x ++ ) printf("%x ",( SZ_UCHAR)( s1.Value[x]));
	printf("\n");
    
    printf(" Test String ( repeat 10 times, every pass a string:%s\n",TestStr[3]);
    Sha1Calc_reset(&s1);
    for( x = 0; x < 10; x ++ ){  Sha1Calc_calculate(&s1,TestStr[3],strlen(TestStr[3]));}
    printf(" Result is: ");
   	for( x = 0; x < 20; x ++ ) printf("%x ",( SZ_UCHAR)( s1.Value[x]));
	printf("\n");
    
    
    
	

  
    Sha1Calc_uninit( &s1 );
    system("PAUSE");
    return 0;
}

⌨️ 快捷键说明

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