低功耗4G模组:RSA算法示例
今天我们学习合宙低功耗4G模组Air780EP_LuatOS_rsa示例,文末【阅读原文】获取最新资料。
一、简介
RSA算法的安全性基于:将两个大质数相乘很容易,但是想要将其乘积分解成原始的质数因子却非常困难。
关联文档和使用工具:
LuatOS 固件获取
rsa-demo
Luatools下载调试工具
开发板Core_Air780EP使用说明
二、 材料准备
2.1 Air780EP开发板一套
三、程序介绍
API说明
RSA加密
rsa.encrypt(key, data)
参数
| 传入值类型 | 解释 |
|
string |
公钥数据,仅支持PEM格式 |
|
string |
待加密数据, 不能超过公钥位数的一半, 例如 2048bit的公钥, 只能加密128字节的数据 |
返回值
| 返回值类型 | 解释 |
|
string |
加密成功后的数据,若失败会返回nil |
RSA解密
rsa.decrypt(key, data, pwd)
参数
| 传入值类型 | 解释 |
|
string |
私钥数据,仅支持PEM格式 |
|
string |
待解密数据 |
|
string |
私钥的密码,可选 |
返回值
| 返回值类型 | 解释 |
|
string |
解密成功后的数据,若失败会返回nil |
计算sha1值
crypto.sha1(str)
参数
| 传入值类型 | 解释 |
|
string |
需要计算的字符串 |
返回值
| 返回值类型 | 解释 |
|
string |
计算得出的sha1值的hex字符串 |
RSA签名
rsa.sign(key, md, hash, pwd)
参数
| 传入值类型 | 解释 |
|
string |
私钥数据,仅支持PEM格式 |
|
int |
签名模式, 例如 rsa.MD_SHA1 , rsa.MD_SHA256 |
|
string |
hash数据, 如果是HEX字符串,记得fromHex转二进制数据 |
|
string |
私钥密码, 可选 |
返回值
| 返回值类型 | 解释 |
|
string |
成功返回sig数据, 否则返回nil |
RSA验签
rsa.verify(key, md, hash, sig)
参数
| 传入值类型 | 解释 |
|
string |
公钥数据,仅支持PEM格式 |
|
int |
签名模式, 例如 rsa.MD_SHA1 , rsa.MD_SHA256 |
|
string |
hash数据, 如果是HEX字符串,记得fromHex转二进制数据 |
|
string |
sig数据, 如果是HEX字符串,记得fromHex转二进制数据 |
返回值
| 返回值类型 | 解释 |
|
bool |
有效返回true,否则为false,出错返回nil |
四、程序demo讲解
4.1 rsa加密
读取文件public.pem中的公钥然后加密数据。

4.2 rsa解密
读取privkey.pem文件中的私钥,然后采用rsa解密数据

4.3 计算字符串的sha1值

4.4 签名
读取privkey.pem中的私钥数据(仅支持PEM格式),采用rsa.MD_SHA1模式签名

4.5 验签
读取public.pem文件中的公钥数据,采用rsa.MD_SHA1模式验签

五、效果展示
5.1 下载固件和脚本

5.2 效果展示

低功耗4G模组:RSA算法示例的更多相关文章
- RSA算法原理与加密解密 求私钥等价求求模反元素 等价于分解出2个质数 (r*X+1)%[(p-1)(q-1)]=0
Rsapaper.pdf http://people.csail.mit.edu/rivest/Rsapaper.pdf [概述Abstract 1.将字符串按照双方约定的规则转化为小于n的正整数m, ...
- 手把手教你基于luatos的4G(LTE Cat.1)模组接入华为云物联网平台
摘要:本期文章采用了4G LTE Cat.1模块,编程语言用的是lua,实现对华为云物联网平台的设备通信与控制 本文分享自华为云社区<基于luatos的4G(LTE Cat.1)模组接入华为云物 ...
- 加密算法——RSA算法(c++简单实现)
RSA算法原理转自:https://www.cnblogs.com/idreamo/p/9411265.html C++代码实现部分为本文新加 RSA算法简介 RSA是最流行的非对称加密算法之一.也被 ...
- 跨越千年的RSA算法
转载自http://www.matrix67.com/blog/archives/5100 数论,数学中的皇冠,最纯粹的数学.早在古希腊时代,人们就开始痴迷地研究数字,沉浸于这个几乎没有任何实用价值的 ...
- RSA算法基础详解
. 首页 博客园 联系我 前言:在RSA诞生之前. RSA算法. 质数与互质数. 模运算. 同余. 欧拉函数. 欧拉定理与模反元素. 真实的例子. 计算密钥. 密钥组成与加解密公式. 安全性. 一点感 ...
- 这个发现是否会是RSA算法的BUG、或者可能存在的破解方式?
笔者从事各种数据加解密算法相关的工作若干年,今天要说的是基于大数分解难题的RSA算法,可能有些啰嗦. 事情的起因是这样的,我最近针对一款芯片进行RSA CRT解密的性能优化.因为期望值是1024bit ...
- AES算法,DES算法,RSA算法JAVA实现
1 AES算法 1.1 算法描述 1.1.1 设计思想 Rijndael密码的设计力求满足以下3条标准: ① 抵抗所有已知的攻击. ② 在多个平台上速度快,编码紧凑. ③ 设计 ...
- RSA算法知识
摘自http://www.cfca.com.cn/zhishi/wz-012.htm RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它.但是有不少新来的同事对它不太了解,恰好看到一 ...
- [转载]RSA算法详解
原文:http://www.matrix67.com/blog/archives/5100 数论,数学中的皇冠,最纯粹的数学.早在古希腊时代,人们就开始痴迷地研究数字,沉浸于这个几乎没有任何实用价值的 ...
- 加解密 3DES AES RSA 简介 示例 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
随机推荐
- 使用 Gradle 构建包含所有依赖的 JAR 包
在 Gradle 中构建一个包含所有依赖的 jar 包(通常被称为"fat jar"或者"uber jar"),你可以使用 shadowJar 插件来包含编译的 ...
- 【Docker学习系列】Docker学习1-docker安装
从本篇开始,凯哥将和大家一起学学docker.本篇是docker学习系列第一篇:安装docker. docker安装前提条件:目前,centos发行版中的内核支持Docker.Docker运行在Cen ...
- java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TagLibraryValidator 问题解决
目录 报错情况 分析原因 解决方法 本文author:@愷龍 报错情况 在一次使用JSP的jstl时候按照正常引入jstl和使用for each标签出现了如下报错: 分析原因 经过一番调查研究发现原因 ...
- a web app for deep learning - deep-learning-training-gui
安装该项目 ENV: Win11 Anaconda 主要参考 https://www.tensorflow.org/install/pip 1. 安装 python 3.9, 在Anaconda 新建 ...
- 开源文档管理系统 MinDoc 安装和使用教程
说到文档管理,很多团队的文档管理都是一团糟,每个员工在自己本地写了各种 Word 文档.Excel 表格.甚至还有手写的便签,到处都是,找起来就像大海捞针.有些聪明的团队开始用飞书来管理团队文档,但是 ...
- 函数防抖-TS实现
什么是函数防抖? 在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时 实现很简单,大体就是设置一个变量来记录定时器,每次触发事件的时候就看定时器是否存在,如果存在清除一下,然后重新开启一 ...
- css实现中括号边框
要求:css + div 实现中括号边框 一.实现方式 .square_brackets { border: none; position: relative; padding: 0; height: ...
- IntelliJ Idea 常用快捷键参照列表
IntelliJ Idea 常用快捷键参照列表 Ctrl+Shift + Enter,语句完成 "!",否定完成,输入表达式时按 "!"键 Ctrl+E,最近的 ...
- 【题目全解】ACGO排位赛#12
ACGO 排位赛#12 - 题目解析 别问为什么没有挑战赛#11,因为挑战赛#11被贪心的 Yuilice 吃掉了(不是). 本次挑战赛难度相比较前面几次有所提升. 爆料:小鱼现在已经入职了研发部门, ...
- SEO – 大杂烩
参考: Google SEO 官网 Docs Zac 大神博客 Globalization 国际化语言 The Ultimate Guide to Multilingual and Multiregi ...