博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LKT系列加密芯片DES加解密以及OpenSSL DES接口实现加解密
阅读量:6833 次
发布时间:2019-06-26

本文共 1005 字,大约阅读时间需要 3 分钟。

hot3.png

1、测试目标

使用已经预置DES密钥的LKT4201N系列加密芯片完成运算
2、测试环境
本示例运行环境为windows系统、测试软件LCS KIT、LKT-K100开发板。
3、测试步骤
注意:“->”表示使用LCS KIT软件操作LKT-K100向加密芯片发送数据;
 “<-”表示使用LCS KIT软件操作LKT-K100读回加密芯片输出的数据。
4、测试指令
   使用LKT4201N内部已存放的01号30密钥和01号31密钥进行加密操作测试
( 注: 如何创建KEY文件和写入密钥不再赘述)
(1)加密指令 
        -> 0088 0001 08 1122334455667788
<- 61 08
-> 00C0 0000 08
<- 密文数据+9000
注:加密数据应为8字节的整数倍,不够的后面先补80,如果还是不够8字节的倍数再补00到8字节的整数倍。
(2)解密指令
        -> 0088 0101 08 +密文数据
<- 61 08
-> 00C0 0000 08
<- 1122334455667788  +9000
5、OpenSSL DES接口实现3DES 和DES加解密
(1)下载OpenSSL源码,生成libeay32.dll 和libeay32.lib文件
(2)将libeay32.dll 、libeay32.lib以及OpenSSL头文件移植到VC工程中,工程中增加
#pragma comment(lib, "libeay32.lib")用于调用静态库,另外设置好头文件路径,在工程中增      加#include <openssl/des.h>,
(3)DES_set_key_unchecked( (DES_cblock*)key1 , &schedule1 );调用此函数可以实现密钥设置
DES_ecb_encrypt((const_DES_cblock*)(inbuff+i*8),(DES_cblock*)(outbuff+i*8),&schede1,DES_ENCRYPT);此函数用于实现DES ECB模式加密。
(4)根据DES函数接口编写加解密函数

解密函数同理

(5)加解密函数接口测试

(6)测试结果

以上完成了openssl des接口实现DES和3DES加密和解密功能。

转载于:https://my.oschina.net/u/2955002/blog/3047973

你可能感兴趣的文章
Reverse Integer之Java实现
查看>>
Linux的SSH服务初学
查看>>
不同于FTP的另一款文件传输工具
查看>>
MYSQL 逻辑架构
查看>>
第11课--11_04_Linux网络配置之四 ifconfig及ip命令详解
查看>>
Linux命令之grep/sed/awk等行转列
查看>>
3.1 账户管理
查看>>
MySQL 多张表合并成一张表
查看>>
朋友圈广告投放优势及广告投放案例分享
查看>>
vivo Z3的Usb调试模式在哪里,开启vivo Z3Usb调试模式的教程
查看>>
能够让你提升的九个 Python 小技巧
查看>>
css3 greyscale实现去色 css3实现图片或页面变为黑白效果
查看>>
默认路由的配置
查看>>
AJPFX辨析Java中运算符 ++ 和 += 的区别
查看>>
如何在CAD中提取图纸上标注的内容
查看>>
weblogic Java反序列化漏洞测试和解决
查看>>
我的友情链接
查看>>
svn高可用集群搭建
查看>>
python_day8のSocket
查看>>
js 小数取整函数
查看>>