利用openssl来计算sha256哈希值

先配置openssl, 我就不再赘述了, 直接给出代码:

[cpp]  view plain  copy
  1. #include   
  2. #include  // 如果你直接拷贝我的程序运行, 那注定找不到sha.h  
  3. #pragma comment(lib, "libeay32.lib")  
  4. #pragma comment(lib, "ssleay32.lib")  // 在本程序中, 可以注释掉这句  
  5. using namespace std;  
  6.   
  7. int main()  
  8. {  
  9.     unsigned char md[33] = {0};  
  10.     SHA256((const unsigned char *)"hello", strlen("hello"), md);  
  11.       
  12.     int i = 0;  
  13.     char buf[65] = {0};  
  14.     char tmp[3] = {0};  
  15.     for(i = 0; i < 32; i++ )  
  16.     {  
  17.         sprintf(tmp,"%02X", md[i]);  
  18.         strcat(buf, tmp);  
  19.     }  
  20.   
  21.     cout << buf << endl;   
  22.   
  23.     return 0;  
  24. }  
      经与其他工具进行比对, 发现结果完全一致

你可能感兴趣的:(网络安全,C++,C)