二.使用Openssl的库进行sha256加密

本文详细介绍了如何在Linux环境下利用OpenSSL库进行SHA256加密,包括导入OpenSSL资源、理解加密思路、使用加密库以及验证加密结果。文中提供了简单示例代码,并强调了在处理大型数据时需要注意的优化方法。
摘要由CSDN通过智能技术生成


前言

本文介绍了如何使用openssl的库进行sha256开发,读者可拓展其他算法,方法类似。


一、导入Openssl资源

openssl作为开源项目,可以到官网获取源码,导入到自己的工程即可,我已经配置完成开发环境了,这里就不再赘述。(可以查看本篇教程

二、思路

从目的出发,我们需要的只是调用openssl的库资源,至于怎么实现sha256算法应该不是现在需要考虑的,所以我们只需要构建好资源,然后调用即可。而这次实验需要的资源有如下:

库文件 :	libcrypto.a(我编译的是静态库)
头文件 :	sha.h

把这两个资源包含进使用的项目中即可,有必要的话,在编译的时加入这两个资源的目录。类似于我这样的指令:

gcc sha256.c -I./ -I../openssl/_install/include -L../openssl/_install/lib -lcrypto
._install是我的openssl编译安装目录
.lib就是生成的静态库的目录
.-lcrypto是库名字

三、使用库

话不多说先上代码:

#include <stdio.h>
#include <string.h>
#include "openssl/sha.h"
#include "sha256.h"

//unsigned char *SHA256(const unsigned char  *d, size_t n, unsigned char *md);
int mysha256(const char *readstr, unsigned char *md)
{
   
	if (SHA256((unsigned char*)readstr, strlen(readstr), md) == NULL) {
   
		printf("sha256 erro\n");
		return -1;
	}	
	return 0;
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值