IoT区块链Hub设备端SDK目前支持平台为Linux平台,x86_64架构。本文档以Ubuntu操作系统为例,描述农业场景下物联网设备集成IoT区块链Hub设备端SDK流程。
1. 下载设备端SDK
请下载设备端SDK,并解压缩到本地磁盘目录。
tar -zxvf lto_sdk.tgz
2. 目录结构
lto/libs目录:包含IoT区块链Hub静态库文件
lto/inc目录:包含IoT区块链Hub头文件
lto/demo目录:包含IoT区块链Hub示例文件
lto/src/port目录:包含IoT区块链Hub对下层的依赖适配实现
3. 使用流程说明
3.1 接口集成
请把库文件拷贝到lto/libs目录,适配文件拷贝到lto/src/port目录。
3.2 编译构建
进入lto/demo目录,编辑lto_demo.c中的各项参数。userPlainData表示您明文数据,在该场景下为IoT设备采集的温度数据;userPrivacyData表示需要隐私处理的数据,当前场景下为IoT设备采集的地址位置信息。
cd lto/demo vi lto_demo.c
char* userPlainData = "{\"温度\":\"25.2\"}"; char* userPrivacyData = "{\"位置\":\"180.24, 257.27\"}"; char* iotIdServiceProvider = "pkpkpkpkpkk"; char* iotIdSource = "2";
输入make指令,进行编译构建,编译成功之后会在demo目录输出lto_demo二进制文件。
make
3.3 执行结果
执行lto_demo,查看输出结果。
./lto_demo
IoT设备会输出如下结果,该部分数据包含了IoT设备自身采集的数据以及生成的数据令牌,您可以把这些数据通过已有的通路发送到云端,在云端通过IoT区块链Hub进行数据上链处理。云端流程请参考:数字农业可信上链最佳实践
iotDataDID: did:lto:000FFFFFDABCFDF0B4999700610B599D00000001 iotDataDIDLen: 48 userPlainData: {"温度":"25.2"} userPlainDataLen: 17 userPrivacyData: {"位置":"180.24, 257.27"} userPrivacyDataLen: 27 iotAuthType: ID2 iotAuthTypeLen: 3 iotIdServiceProvider: pkpkpkpkpkk iotIdServiceProviderLen: 11 iotId: 000FFFFFDABCFDF0B4999700 iotIdLen: 24 iotDataDigest: FBB7FAE10BDD1466F1C7534E7CFDFE7941FBD1A4FAE64FB1F07CA7F3AD97E02B iotDataDigestLen: 64 iotDataToken: 3~2~1756E40A3FAE23E1~1628133789000~GLrSRKly/9T71lSqlzPhqX0Mb8I7uiNXmgPpt1q2cQtJcgazu61apcJrdsLqP/6D iotDataTokenLen: 99 lto: generate token success!
文档内容是否对您有帮助?