使用开源代码CSHA1 - A,计算文件和字符串SHA1

9 篇文章 0 订阅
9 篇文章 0 订阅
本文介绍如何使用开源代码CSHA1来计算文件和字符串的SHA1哈希值,提供了项目的链接。
摘要由CSDN通过智能技术生成

使用开源代码,计算文件和字符串SHA1
开源项目:
http://www.codeproject.com/Articles/2463/CSHA1-A-C-Class-Implementation-of-the-SHA-1-Hash-A

void GetSHA()
{
    int iIndex = -1;
    CSHA1 sha1;
    do 
    {
        printf("输入数字选择想校验SHA1的类型:\nFile is 1 \nString is 2 \nExit is 3 \r\n");
        scanf("%d",&iIndex);
        if (iIndex == 1)
        {
            TCHAR str[] = {0};
            printf("请输入文件名全路径或者直接拖到DOS窗口\n");
            scanf("%s",str);
            sha1.HashFile(str);
            sha1.Final();
            TCHAR tszReport[41]; 
            sha1.ReportHash(tszReport, CSHA1::REPORT_HEX_SHORT);
            _tprintf(_T("\r\n File hashed to:\r\n "));
            _tprintf(tszReport); 
            _tprintf(_T("\n"));
        }
        if (iIndex == 2)
        {
            char chTemp[128] = {0};
            printf("请输入字符串\r\n");
            scanf("%s",chTemp);
            sha1.Update(reinterpret_cast<const unsigned char*>(chTemp), strlen(chTemp));
            sha1.Final();
            std::basic_string<TCHAR> strReport;
            sha1.ReportHashStl(strReport, CSHA1::REPORT_HEX_SHORT);
            _tprintf(_T("\r\n String hashed to:\r\n "));
            _tprintf(strReport.c_str());
            _tprintf(_T("\r\n"));
//          std::cout<<"Hash is :["<<hex<<strReport.c_str()<<"]"<<endl;

        }
        sha1.Reset();
    } while (iIndex != 3);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值