openssl aes加密结果是乱码_一个简单的加密库

博主在资源受限的环境中,自行实现了SM4分组密码算法,并基于官方PDF文档进行开发。同时,为了满足需求,还实现了AES、SM3以及MD5、SHA1、SHA256等哈希算法,创建了一个轻量级的密码学库。尽管建议优先使用成熟库,但在特定情况下,这个库可以作为参考。源代码已开源。
摘要由CSDN通过智能技术生成

e1782af151062a084a9eee22ac256e2a.png

最近需要使用SM4分组密码算法,而且是在资源受限制的环境,后面可能还会在STM32中使用。一开始发现这个算法好像比较少使用,没有合适的实现可以直接拿来用。后来发现openssl里面已经实现了,但是我总不能把openssl移植到STM32上吧?而且一看就太大了,我所需要的就只是一个encrypt和一个decrypt而已。于是就开始自己写了。主要参考的是官方发布的pdf。

写完了sm4.h和sm4.c之后,因为都是分组密码,结构很类似,所以顺便把aes也实现了一遍。再就是也可能会使用到SM3密码杂凑算法,就把sm3也实现了。然后就是把同为hash算法的md5,sha1,sha256也实现了,最后把这个东西做成了一个库。至于非对称加密算法,目前还不打算考虑。

目前这个库用还是可以用,但是在性能与安全性上没有考虑太多。在使用密码学相关的东西时,还是优先考虑比较成熟的广泛使用的库,不要自己写。不过如果是在我这样用不上这些成熟的东西的情况下,可以拿这个库参考一下。

exiledkingcc/zcrypto​github.com
b580c0c8e7eb138b4e53e1bbeb01b255.png
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值