色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

關于4G模組LuatOS開發:通用加解密函數(crypto)|全攻略

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2024-11-30 09:52 ? 次閱讀

本次我要說的攻略是關于4G模組LuatOS開發的通用加解密函數,我以我常用的Air780E模組為例子供大家參考。

一、加解密概述

加解密算法是保證數據安全的基礎技術,無論是在數據傳輸、存儲,還是用戶身份驗證中,都起著至關重要的作用。隨著互聯網的發展和信息安全威脅的增加,了解并掌握常用的加解密算法已經成為開發者和安全從業者的必修課。

常見的15種加密解密算法分別是:散列哈希[MD5、SHA1、CRC32],對稱[DES,3DES(TDEA、Triple DES),AES、,Blowfish,RC4、RC5,IDEA],Base64、Rabbit、Escape。

【三種分類】

1、對稱加密:
對稱加密是指加密和解密使用同一個密鑰的加密方法.由于加密和解密過程中的密鑰相同,因此需要在通信雙方之間安全地共享密鑰.對稱加密的速度較快,適合用于大量數據的加密

2、非對稱加密:
非對稱加密算法采用一對密鑰:公鑰和私鑰.公鑰用于加密,私鑰用于解密.由于加密和解密使用不同的密鑰,非對稱加密算法解決了密鑰分發的問題,是當前加密系統中安全性最高的加密技術之一.

3、Hash算法:
這是一種不可逆的算法,它常用于驗證數據的完整性

二、演示功能概述

本文章通過 Air780 的核心板燒錄 LuatOS 示例代碼,來演示有關加解密的各種 API 的功能。

https://gitee.com/openLuat/LuatOS-Air780E/tree/master/demo/crypto
(復制鏈接查看 crypto 的 demo 例子)

API 的具體用法,讀者可以參考本文中的"五、API 說明"。

三、硬件準備

3.1 Air780E 核心板

使用Air780E核心板,如下圖所示:

wKgaomdArT-AfrbJAAKOrZmcZ2o656.png

此核心板的詳細使用說明參考:
https://docs.openluat.com/air780e/product/

Air780E產品手冊中的 《開發板Core_Air780E使用說明》,寫這篇文章時最新版本的使用說明為:《開發板Core_Air780E使用說明》;若在使用過程中遇到任何問題,可以直接參考這份使用說明文檔。

3.2 SIM

中國大陸環境下,可以上網的sim卡,一般來說,使用移動、電信、聯通的物聯網卡或者手機卡都行。

3.3 PC 電腦

請準備一臺配備 USB 接口且能夠正常上網的電腦。

電腦操作系統為:
WIN10以及以上版本的WINDOWS系統。

3.4 數據通信線

TYPE-C口的USB數據線.

四、軟件環境

4.1 Luatools 工具

要想燒錄 LuatOS 到 4G 模組中,需要用到的調試工具:Luatools

詳細使用說明參考:
Luatools工具使用說明:
https://docs.openluat.com/Luatools/

Luatools 工具集具備以下幾大核心功能:

一鍵獲取最新固件:自動連接服務器,輕松下載最新的模組固件.

固件與腳本燒錄:便捷地將固件及腳本文件燒錄至目標模組中.

串口日志管理:實時查看模組通過串口輸出的日志信息,并支持保存功能.

串口調試助手:提供簡潔的串口調試界面,滿足基本的串口通信測試需求.

Luatools下載之后,新建一個命名為 "Luatools" 的文件夾,將下載的Luatools_v3.exe拷貝或移動到新建的Luatools文件夾內,點擊 Luatools_v3.exe 即可運行。

4.2 準備需要燒錄的代碼

首先要說明一點:腳本代碼, 要和固件的soc文件一起燒錄。

4.2.1燒錄的底層固件文件

底層 core 下載地址:

LuatOS 固件版本下載地址:

https://docs.openluat.com/air780e/luatos/firmware/

wKgZomdArWiAKiVRAAG-C4TcIUE135.png

Air780E 的底層固件在 Luatools 解壓后目錄的:
LuatOS-SoC_V1112_EC618_FULL.soc

wKgaomdArXWAOdz_AAFWfkZeKPI207.png

4.2.2燒錄的腳本代碼

首先要下載 Air780 的 LuatOS 示例代碼到一個合適的項目目錄,
示例代碼網站:
https://gitee.com/openLuat/LuatOS-Air780E

下載流程參考下圖:

wKgZomdArYOAE_rHAAMgFRcCty4731.pngwKgZomdArY-AAcFGAALwduayCdQ616.png

下載的文件解壓,找到 LuatOS-Air780E-masterdemocryptomain.lua,如圖:

wKgaomdArZ2ARFMKAAEKgmuMwhE113.png

五、API 說明

5.1 crypto.md5(str)

計算 md5 值

參數

wKgZomdArbaALNgkAAAyO8xtoQA829.png

返回值

wKgaomdArcKAa2e9AABAU4vfpZY780.png

例子

wKgZomdArc2AK7jxAACOQXNWlOg085.png

5.2 crypto.hmac_md5(str, key)

計算 hmac_md5 值

參數

wKgaomdArdiAE8LkAABDcnBiWUg608.png

返回值

wKgaomdAreOAIVh7AABEFhFqA48289.png

例子

wKgZomdAre2ATwjxAAC-hC7H1wI097.png

5.3 crypto.sha1(str)

計算 sha1 值

參數

wKgaomdArfiAaynkAAAx455FjfI810.png

返回值

wKgZomdArgKAKT1GAABAuE6741k605.png

例子

wKgZomdArg2ALnvxAACPxu2wifU467.png

5.4 crypto.hmac_sha1(str, key)

計算 hmac_sha1 值

參數

wKgaomdArheAKYNVAABDSOWLfII484.png

返回值

wKgZomdAriKAI_XXAABHpVg6dmQ465.png

例子

wKgaomdAriyAAxNgAADBdhUExXs462.png

5.5 crypto.sha256(str)

計算 sha256 值

參數

wKgZomdArjaAYR24AAAw0pu6p1k848.png

返回值

wKgaomdArkCAc249AABBVhbIKJM657.png

例子

wKgZomdArkmAGsO_AACd3miq-Ms896.png

5.6 crypto.hmac_sha256(str, key)

計算 hmac_sha256 值

參數

wKgaomdArlOAU44sAABC3Wwv-Yg976.png

返回值

wKgZomdArlyAEWfdAABFQSfBytM809.png

例子

wKgZomdArmqAAAj-AADUmm1GZh8036.png

5.7 crypto.sha512(str)

計算 sha512 值

參數

wKgaomdArnSAR2s4AAAzrk6K7CU956.png

返回值

wKgZomdArn2AA4ghAAA_ySzT2W0092.png

例子

wKgaomdAroaAazDYAACdSjJ2xNE261.png

5.8 crypto.hmac_sha512(str, key)

計算 hmac_sha512 值

參數

wKgaomdArpKAEO-fAABGDDGtKYs096.png

返回值

wKgZomdArpmAHX6oAABJyXXo494621.png

例子

wKgZomdArqKAB5_zAADUW_hepaM259.png

5.9 crypto.base64_encode(data)

將數據進行 base64 編碼

參數

wKgaomdArqyAYbcGAAAwLDPBSJE000.png

返回值

wKgZomdArraAakHuAAAwTjMOsEs894.png

例子

wKgaomdArsOAQcekAAHDQxNexu8653.png

5.10 crypto.base64_decode(data)

將數據進行 base64 解碼

參數

wKgaomdArs2AXwklAAAvi3_3Uaw856.png

返回值

wKgZomdArtWAFtqYAAAvziw2344947.png

例子

wKgZomdAruCABq7vAAHKHTjFWAA132.png

5.11 crypto.cipher_list()

獲取當前固件支持的 cipher 列表

參數

返回值

wKgaomdAruuAQITTAABGfHRcw-k774.png


例子

wKgaomdArvaARqu5AAE78LG-Yq0848.png

5.12 crypto.cipher_suites()

獲取當前固件支持的 cipher suites 列表

參數

返回值

wKgZomdArwCAeFJIAABHuDxNlEo059.png


例子

wKgaomdArwuAXJb4AAE4UelLhrE173.png

5.13 crypto.cipher_encrypt(type, padding, str, key, iv)

對稱加密

參數

wKgZomdArxWAIUxRAADpfHqaqCQ260.png


返回值

wKgZomdArx6AO2OAAAAx9ncYC5I356.png

例子

wKgaomdAryiABqCuAAHIED3Yn_Q667.png

5.14 crypto.cipher_decrypt(type, padding, str, key, iv)

對稱解密

參數

wKgZomdArzKAKRs3AADvv8JdXHU642.png


返回值

wKgaomdArzyAFufzAAAu5LLS47o935.png

例子

wKgZomdAr0aAG0MIAAJI5aFeQaM297.png

5.15 crypto.crc16(method, data, poly, initial, finally, inReversem outReverse)

計算 CRC16

參數

wKgZomdAr1GAbNg2AACcc-kCY0I735.png


返回值

wKgaomdAr1mAQiTaAAAuEM_KjFk606.png

例子

wKgZomdAr2KAKVcOAABqelEWI7s248.png

5.16 crypto.crc16_modbus(data, start)

直接計算 modbus 的 crc16 值

參數

wKgZomdAr22Ad3JQAABGy5zfm7E071.png

返回值

wKgZomdAr3eABwvZAAAsMvPWM8U340.png

例子

wKgaomdAr4GAWb0bAAEYKgtN9-k929.png

5.17 crypto.crc32(data)

計算 crc32 值

參數

wKgZomdAr5aAbfNjAAAoAntVK2c803.png

返回值

wKgaomdAr6eASc-oAAAvZhse4xY321.png

例子

wKgaomdAr7CAcaX1AABtswPSYU8464.png

5.18 crypto.crc8(data, poly, start, revert)

計算 crc8 值

參數

wKgZomdAr72AWXJuAACoIMAKy_o402.png

返回值

wKgZomdAr8WAUYPwAAAwzZXcjV4294.png

例子

wKgaomdAr8-APBLxAADISFp8S_4184.png

5.19 crypto.crc7(data, poly, start)

計算 crc7 值

參數

wKgaomdAr9mAQrxOAABrUuZJ_YY295.png

返回值

wKgZomdAr-KAFyThAAAxIQm6I-w082.png

例子

wKgaomdAr-uAAmNeAADlXNrEG1g484.png

5.20 crypto.checksum(data, mode)

計算 checksum 校驗和

參數

wKgZomdAr_WATsWRAABh0PNii94442.png

返回值

wKgaomdAr_-ALYcpAAAvW5hSybg850.png

例子

wKgZomdAsAqAAcUwAAFRnu_9MOE923.png

5.21 crypto.trng(len)

生成真隨機數

參數

wKgZomdAsBKAUqzaAAApijCdK7s652.png

返回值

wKgaomdAsByAK8xXAAA15wTqnLM061.png

例子

wKgZomdAsCWAJlOMAAC0DMd1QCY315.png

5.22 crypto.totp(secret,time)

計算 TOTP 動態密碼的結果

參數

wKgaomdAsC6AH6TgAAB0UULUhZo796.png

返回值

wKgZomdAsDeAEbnfAABFbjvlLbQ652.png

例子

wKgaomdAsECAdHFSAAEJpYmVM9o372.png

5.23 crypto.md_file(tp, path, hmac)

計算文件的 hash 值(md5/sha1/sha256 及 hmac 形式)

參數

wKgaomdAsEqATWUNAACNLZl5BlU475.png

返回值

wKgZomdAsFiAF62BAABDBRj1Xz4996.png

例子

wKgaomdAsGKAaMU6AAOVbj9DJio054.png

5.24 crypto.md(tp, data, hmac)

計算數據的 hash 值(md5/sha1/sha256 及 hmac 形式)

參數

wKgZomdAsGyAD68tAACAQgrFtBM659.png

返回值

wKgaomdAsHSAQAccAABIq_N6jIQ698.png

例子

wKgaomdAsH6AaWZoAAMMNk_mTKQ485.png

5.25 crypto.hash_init(tp)

創建流式 hash 用的 stream

參數

wKgZomdAsIeAUL2RAABnzZp3jIg756.png

返回值

wKgaomdAsJGAVHeBAABDWbMga8M946.png

例子

wKgZomdAsJyAd5beAAK_Yt6shNQ729.png

5.26 crypto.hash_update(stream, data)

流式 hash 更新數據

參數

wKgZomdAsKaAX_ObAABy3lt8QX4344.png

返回值

例子

wKgaomdAsLCAGT0BAABW2qIezks957.png

5.27 crypto.hash_finish(stream)

獲取流式 hash 校驗值并釋放創建的 stream

參數

wKgZomdAsLmAQwZ9AABGt1gcBU8829.png


返回值

wKgaomdAsMKANb7IAABaZJ1MmDc550.png


例子

wKgZomdAsMyAOyOcAABs_s3AuCA311.png

六、功能驗證

6.1 燒錄固件

6.1.1正確連接電腦和 4G 模組電路板

使用帶有數據通信功能的數據線,不要使用僅有充電功能的數據線.

6.1.2識別 4G 模組的 BOOT 引腳

在下載之前,要用模組的 BOOT 引腳觸發下載, 也就是說,要把 4G 模組的 BOOT 引腳拉到 1.8v,或者直接把 BOOT 引腳和 VDD_EXT 引腳相連.我們要在按下 BOOT 按鍵時讓模塊開機,就可以進入下載模式了.

具體到 Air780E 開發板:

1、當我們模塊沒開機時,按著 BOOT 鍵然后長按 POW 開機.

2、當我們模塊開機時,按著 BOOT 鍵然后點按重啟鍵即可.

wKgaomdAsN6APGYiABKDu5xdUyo118.png

6.1.3識別電腦的正確端口

判斷是否進入 BOOT 模式:模塊上電,此時在電腦的設備管理器中,查看串口設備, 會出現一個端口表示進入了 BOOT 下載模式,如下圖所示:

wKgaomdAsOqAc0X7AAK63P3VWQ4547.png

6.1.4 用 Luatools 工具燒錄

新建項目

首先,確保你的 Luatools 的版本,大于等于 3.0.6 版本。

在 Luatools 的左上角上有版本顯示的,如圖所示:

wKgZomdAsPWAB7wkAAE_KN0DZGQ396.png

Luatools 版本沒問題的話, 就點擊 Luatools 右上角的“項目管理測試”按鈕,如下圖所示:

wKgaomdAsP-AN6O7AAD6xYLIJL0944.png

這時會彈出項目管理和燒錄管理的對話框,可以新建一個項目,如下圖:

wKgZomdAsRSAT-zRAAP3HTX_8d8777.png

開始燒錄

選擇 Air780E 板子對應的底層 core 和剛改的 main.lua 腳本文件.下載到板子中.

wKgZomdAsR-AD2CpAAQgpPagDwo540.png

點擊下載后,我們需要進入 BOOT 模式才能正常下載.

如果沒進入 BOOT 模式會出現下圖情況:

wKgaomdAsS2AVLqZAACYtI3aKjg561.png

進入 BOOT 模式下載,如圖:

wKgZomdAsT2Ad6HjAAOYThkAh7s481.png

6.2 例程

參考以下示例,本庫有專屬 demo,復制鏈接查看 crypto 的 demo 例子:
(https://gitee.com/openLuat/LuatOS-Air780E/tree/master/demo/crypto)

wKgaomdAsUqAaHckAAWQANuw1ww689.pngwKgZomdAsVuAbHpaAAdHzKxvPgw653.pngwKgaomdAsWqAA1d1AAVpSNyOCFw433.pngwKgaomdAsXmADkTsAATa4scSec0133.pngwKgZomdAsYqAA2GIAATAxOA9fIA839.pngwKgaomdAsaKARVYOAASps7rUqTU147.pngwKgaomdAsbKAJ3__AAZ8wDmRh20873.pngwKgaomdAscKAWn-JAAcX-iXHJbM664.pngwKgaomdAsdGALba5AAbwFQ_sKa0374.pngwKgZomdAsd-AWBDiAAcQwJ3p8cs333.pngwKgZomdAseyAeP8cAAKc3QQ4CLk419.png

6.3 對應 log

wKgaomdAsf6AQzjmAAjFUX9GzMU633.pngwKgZomdAsg6AYuhzAAjYz8WgO8E737.pngwKgaomdAsh-AG8GzAAuakBd3N94895.pngwKgaomdAsjKAM_ZBAAYxbQtOWxI094.pngwKgaomdAskWAaYqnAAW6WhNPZNc213.pngwKgZomdAslWADFD_AAYC7oVrQjc968.pngwKgZomdAsmmASfFjAAZSuh1zUCY714.pngwKgaomdAsn6AQR7MAAe9EOp2OMA839.pngwKgaomdAspKAUnLgAAmqU9juKsk221.pngwKgZomdAsqGAbq56AAWBXDH5_9o392.png

分享完畢。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 函數
    +關注

    關注

    3

    文章

    4327

    瀏覽量

    62569
  • 模組
    +關注

    關注

    6

    文章

    1487

    瀏覽量

    30360
  • 加密解密算法

    關注

    0

    文章

    7

    瀏覽量

    1612
  • LuatOS
    +關注

    關注

    0

    文章

    76

    瀏覽量

    1936
收藏 人收藏

    評論

    相關推薦

    MCU解密全攻略

    MCU解密全攻略
    發表于 08-19 14:28

    FPGA開發全攻略——上冊.rar

    FPGA開發全攻略——上冊.rar
    發表于 04-08 10:44

    FPGA開發全攻略_下.pdf

    FPGA開發全攻略_下.pdf
    發表于 04-08 10:48

    FPGA開發全攻略

    FPGA開發全攻略
    發表于 05-10 11:40

    FPGA開發全攻略

    電子工程師創新設計必備寶典系列之FPGA開發全攻略上,下兩冊
    發表于 04-24 21:11

    32位MCU開發全攻略

    32位MCU開發全攻略上下兩冊 ,主要講述32位MCU應用開發知識
    發表于 05-04 15:42

    FPGA開發全攻略

    FPGA開發全攻略
    發表于 09-27 10:59

    FPGA開發全攻略實用教程精粹

    FPGA開發全攻略實用教程精粹
    發表于 09-28 13:50

    FPGA開發全攻略

    FPGA開發全攻略
    發表于 05-21 09:28

    FPGA開發全攻略

    FPGA開發全攻略
    發表于 03-03 10:30

    FPGA開發全攻略

    FPGA開發全攻略
    發表于 03-07 11:46

    MCU解密全攻略

    本內容介紹了MCU解密全攻略教程
    發表于 07-11 17:51 ?648次下載
    MCU<b class='flag-5'>解密</b><b class='flag-5'>全攻略</b>

    FPGA開發全攻略_上

    FPGA開發全攻略_上有需要的朋友下來看看。
    發表于 05-10 11:21 ?29次下載

    4G模組加解密藝術:通用函數的深度解讀

    今天是對加解密通用函數的深度解讀,我將詳細講解,建議收藏,不可錯過。
    的頭像 發表于 11-12 09:58 ?229次閱讀
    <b class='flag-5'>4G</b><b class='flag-5'>模組</b><b class='flag-5'>加解密</b>藝術:<b class='flag-5'>通用</b><b class='flag-5'>函數</b>的深度解讀

    4G模組Air780E的LuatOS開發關于通用加解密函數(crypto)教程!

    本次我將講解低功耗4G模組Air780E的LuatOS開發關于通用
    的頭像 發表于 12-01 15:50 ?190次閱讀
    <b class='flag-5'>4G</b><b class='flag-5'>模組</b>Air780E的<b class='flag-5'>LuatOS</b><b class='flag-5'>開發</b>:<b class='flag-5'>關于</b><b class='flag-5'>通用</b><b class='flag-5'>加解密函數</b>(<b class='flag-5'>crypto</b>)教程!
    主站蜘蛛池模板: 日本免费一本天堂在线| 欧美日韩亚洲第一区在线| 久久伊人青青| 蜜桃成熟时2电影免费观看d| 欧美成人亚洲高清在线观看| 色偷偷男人| 羞羞漫画视频| 浴室里强摁做开腿呻吟的漫画| 最近的2019中文字幕国语版| xxxjapanese丰满奶水| 国产精品热久久高潮AV袁孑怡 | xxxx69中国| 国产精品久久自在自2021| 精品亚洲一区二区在线播放| 男人天堂黄色| 忘忧草研究所 麻豆| 伊人久久亚洲综合天堂| 99香蕉视频| 国产人妻人伦精品久久无码| 久久是热频国产在线| 秋霞网站一级一片| 亚洲精品无码久久久久A片空| 69ZXX少妇内射无码| 搞基福利社| 久久99热这里只有精品66| 披黑人猛躁10次高潮| 亚洲精品自在在线观看| a视频在线免费观看| 国产一区二区三区乱码在线观看| 麻豆久久婷婷五月国产| 熟妇少妇任你躁在线无码| 在线A亚洲老鸭窝天堂AV高清| 超级碰碰青草久热国产| 黄色直接观看| 日本无码色哟哟婷婷最新网站| 亚洲欧美成人| 成人免费视频在线播放| 久久精品亚洲AV无码三区观看| 日韩一卡二卡三卡四卡免费观在线| 伊人久久综在合线亚洲| 国产超碰精久久久久久无码AV|