【秣厉科技】LabVIEW工具包——Crypto(密码技术)


前言

  1. 密码技术包罗甚广,如常见的对称加密AES、DES,非对称加密RSA等。在每一种密码技术之下,往往又分为不同的格式、模式、填充、哈希算法等等。一时难以完全涵盖,因此本篇博文及配套资源将来可能会持续更新。若现有内容未能覆盖您的需求,欢迎留言,“定向”催更。
  2. 目前Crypto工具包提供2种密码技术:AES和RSA,具体功能包括:
AES
设置key(128、192、256 bits)与iv
加密与解密
5种模式:ECB、CBC、CTR、CFB、OFB
6种填充:NO_PADDING、ZEROS_PADDING、PKCS_PADDING、ONE_AND_ZEROS、ANSI X9.23、ISO 10126
RSA
生成随机密钥对
保存、导入密钥文件(PEM格式,支持PKCS1和PKCS8)
加密与解密(3种填充:PKCS1v15、OAEP-SHA1、OAEP-SHA256)
签名与验签(2种填充:PKCS1v15、PSS;2种哈希:SHA1、SHA256)
  1. 本工具包函数输入输出的密文(cipher)和签名(signature)均为原始二进制字符串。若您需要base64编码、解码操作,可以使用LabVIEW自带的VI,比如位于:LabVIEW 20XX\vi.lib\httpClient\ 路径下的Base64Encode.vi和Base64Decode.vi

安装

获取本文绑定资源,双击.vip安装包,将在VIPM环境下进行安装。
系统要求:Windows 64位,LabVIEW>=2018 64位。

在这里插入图片描述


函数选板

安装完成后,工具包位于:函数选板>>Addons>>Molitec>>Crypto
目前包含2个类:AES 和 RSA,各包含若干函数。

在这里插入图片描述


范例与帮助

在LabVIEW下,点击菜单栏:帮助(Help)>>查找范例(Find Examples)
在窗口左侧点击目录结构(Directory Structure),右侧找到并展开Molitec目录。

Crypto工具包的范例位于Crypto子目录下:

在这里插入图片描述

范例1:AES加密与解密

双击打开example_AES_encrypt_and_decrypt.vi
如下图,AES 工具包采用 “面向对象” 的设计思想。一次完整的调用从初始化AES对象开始,到释放AES对象结束。中间可以插入任意次数的设置密钥、加密、解密函数。

在这里插入图片描述
在这里插入图片描述

范例2:RSA生成、保存、导入密钥对

双击打开example_RSA_keypair.vi
如下图,RSA 工具包同样采用 “面向对象” 的设计思想。RSA属于非对称加密,密钥分为公钥和私钥。
调用保存或导入函数时,您也可以选择不连接公钥或私钥路径,函数会忽略对应密钥文件的读写操作。
特别:
如果调用导入密钥函数时,只连接私钥路径、不连接公钥路径,函数依然可以同时导入公钥和私钥,因为私钥PEM文件中已经包含了配对的公钥信息。另外,导入函数可以自适应PKCS1和PKCS8格式。

在这里插入图片描述
PEM密钥文件格式如下:(以PKCS1格式的私钥为例)

在这里插入图片描述

范例3:RSA公钥加密、私钥解密

双击打开example_RSA_encrypt_and_decrypt.vi
加密需要公钥、解密需要私钥,使用函数时,请确保对应密钥已经生成或导入。

在这里插入图片描述

在这里插入图片描述

范例4:RSA私钥签名、公钥验签

双击打开example_RSA_sign_and_verify.vi
签名需要私钥,验签需要公钥,使用函数时,请确保对应密钥已经生成或导入。

在这里插入图片描述
在这里插入图片描述

帮助文档

函数配有详细帮助文档,对函数点右键>>Help,打开对应的帮助文档。

在这里插入图片描述


总结

本系列博文,将为大家带来多种基于LabVIEW的工具包,均为【秣厉科技】原创,欢迎大家下载体验!
各位看官有什么想法、建议、吐槽、批评,或新奇的需求,也欢迎留言讨论。更多内容将持续奉上。


秣厉,取自秣马厉兵。敝姓马,寓意从此自立门户,一边养活自己,一边打磨技术。

  • 15
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秣厉科技

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值