1
回答
使用GCC4.5里的SHA1.c里的代码生成的SHA1有时出现问题?
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

使用GCC4.5里的SHA1.c里的代码生成的SHA1有时出现问题?

sha1.c(http://www.oschina.net/code/explore/gcc-4.5.2/libiberty/sha1.c) 这里下载的

如下生成代码:

        struct sha1_ctx sha1ctx = {0};
	char *nonce = "admin1369924276185";
	//char *base64nonce = "YWRtaW4xMzY5OTI0Mjc2MTg1";
	char *create_data = "2013-05-30T14:31:16Z";
	char *password = "admin";
	char buff[255] = {0};
	char outbuff[255] = {0};
	sha1_init_ctx(&sha1ctx);
	sha1_process_bytes(nonce,strlen(nonce),&sha1ctx);
	sha1_process_bytes(create_data,strlen(create_data),&sha1ctx);
	sha1_process_bytes(password,strlen(password),&sha1ctx);
	sha1_finish_ctx(&sha1ctx,buff);
	base64enc(nonce,strlen(nonce),outbuff);
	printf("base64enc nonce txt:%s\n",outbuff);
	memset(outbuff,0,255);
	base64enc(buff,strlen(buff),outbuff);
	printf("test sha1 txt:%s\n",outbuff);

打印的结果:

base64enc nonce txt:YWRtaW4xMzY5OTI0Mjc2MTg1
test sha1 txt:JbGglQWav3U5FVPv


JbGglQWav3U5FVPv 这个不对呀!!


用其它的sha1的结果是:25rhcNJ+NS/t2e+RvRIgkQzV


是nonce字符串有问题吗?

GCC
举报
jhting
发帖于5年前 1回/177阅
顶部