ESP32实现IOTA区块链钱包
程序员文章站
2022-03-18 09:49:12
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档ESP32实现IOTA钱包功能前言一、IOTA是什么?二、ESP32开发环境(Linux)1.安装ESP-IDF2.按照官方文档安装xtensa-esp32 toolchain3.安装一个例程测试模块4.下载IOTA钱包代码4.钱包配置5.编译&烧录总结前言区块链+物联网是当今新兴的一个技术方向。一、IOTA是什么?IOTA是为物联网(IoT)而设计的一个革命性的新型交易结算和数据转移层。它基于新型的分布式账本——Ta...
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
ESP32实现IOTA钱包功能
前言
区块链+物联网是当今新兴的一个技术方向。一、IOTA是什么?
IOTA是为物联网(IoT)而设计的一个革命性的新型交易结算和数据转移层。它基于新型的分布式账本——Tangle(缠结)。Tangle能够克服现有区块链设计中的低效性,并为去中心化P2P系统共识的达成创造了一种新方法。通过IOTA进行转账不需要支付手续费,这是首例。这也就意味着,无论是多小额的支付都能通过IOTA完成。
IOTA是机器经济所稀缺的一部分,能够完全实现其潜力。我们期望IOTA能够成为物联网公开的支柱,能够在所有设备中实现真正的互通。
详细看官网:link
二、ESP32开发环境(Linux)
1.安装ESP-IDF
代码如下(示例):
git clone -b v4.0.1 --recursive https://github.com/espressif/esp-idf.git
./install.sh
source ./export.sh
2.按照官方文档安装xtensa-esp32 toolchain
网站如下(示例):
https://docs.espressif.com/projects/esp-idf/en/v3.3.1/get-started-cmake/linux-setup.html
3.安装一个例程测试模块
如下:
cd esp-idf/examples/get-started/hello_world
idf.py menuconfig
idf.py build
idf.py -p /dev/ttyUSB0 flash && idf.py -p /dev/ttyUSB0 monitor
当出现如下输出的时候表示模块正常
I (0) cpu_start: App cpu up.
I (184) heap_init: Initializing. RAM available for dynamic allo
cation:
I (191) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (197) heap_init: At 3FFB2EF8 len 0002D108 (180 KiB): DRAM
I (204) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (210) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (216) heap_init: At 40089560 len 00016AA0 (90 KiB): IRAM
I (223) cpu_start: Pro cpu start user code
I (241) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
Hello world!
This is ESP32 chip with 2 CPU cores, WiFi/BT/BLE, silicon revision 1, 4MB external flash
4.下载IOTA钱包代码
代码如下:
git clone --recursive https://github.com/kingstenzzz/iota_esp32_wallet.git
cd iota_esp32_wallet
bash ./init.sh
4.钱包配置
代码如下:
idf.py menuconfig
进入配置界面,根据自己的网络环境配置好WIFI的SSID的密码。
进入IOTA Node
测试网络的URL:nodes.devnet.iota.org(其他网络的URL可以在官网查询)
//在linux终端下运行一下命令生成81位随机数+字幕种子
cat /dev/urandom |tr -dc A-Z9|head -c${1:-81}
5.编译&烧录
idf.py build
idf.py -p /dev/ttyUSB0 flash && idf.py -p /dev/ttyUSB0 monitor//ttyUSB0因人而异
编译烧录按完成后输出:
如果出现一下情况,需要在上面的钱包配置中enable mbedTLS hardware acceleration,具体打开一下链接https://github.com/espressif/esp-idf/issues/5321#issuecomment-631183247
注:种子是相当于钱包的私钥,要保存好,如果出现以下情况*,检查一下种子长度是否81位
总结
到这里已经esp32上安装IOTA钱包,具体如何进行交易看后面继续更新。
https://github.com/oopsmonk/iota_esp32_wallet
下一篇:ESP32实现IOTA区块链钱包
本文地址:https://blog.csdn.net/weixin_40030061/article/details/110187560