GithubHelp home page GithubHelp logo

gjxman / id2_client_sdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alibaba/id2_client_sdk

0.0 0.0 0.0 4.31 MB

ID²(Internet Device ID),是物联网设备的可信身份标识,具备不可篡改、不可伪造、全球唯一的安全属性,是实现万物互联、服务流转的关键基础设施。ID²支持多安全等级载体,合理地平衡物联网在安全、成本、功耗等各方面的诉求,为客户提供用得起、容易用、有保障的安全方案,适应物联网碎片化的市场需求。 ID² Client SDK是用于设备端开发的软件工具包,帮助开发者快速集成接入ID²开放平台.

License: Other

C 94.54% Makefile 0.79% C++ 4.67%

id2_client_sdk's Introduction

README for ID² Client SDK


IoT设备身份认证ID²(Internet Device ID),是一种物联网设备的可信身份标识,具备不可篡改、不可伪造、全球唯一的安全属性,是实现万物互联、服务流转的关键基础设施。

ID² Client SDK是用于设备端开发和调试,帮助开发者快速接入ID²开放平台。此SDK, 支持两种载体Demo和SE(Secure Element):
  • Demo载体:用于ID²设备端功能的演示,正式产品,需切换到安全载体(Soft-KM, SE, TEE)。
  • SE载体:外挂芯片,ID²预烧录在SE芯片上。

|—— app:加解密硬件适配(HAL)接口和ID²接口的测试程序。
|—— doc:相关文档,如ID²指令规范。
|—— include:头文件目录。
|—— makefile:总的编译脚本。
|—— make.rules:编译配置,可配置编译工具链和编译参数。
|—— make.settings:ID²配置,如调试信息、空发功能和载体选择。
|—— modules:ID²和ID²依赖的模块。
|—— sample:示例代码。

快速开始

描述在Ubuntu上编译和运行ID²Client SDK。

编译环境:

使用Ubuntu 14.04以上版本。

编译配置:

  • make.rules:

  CROSS_COMPILE: 编译使用的工具链。
  CFLAGS:编译工具链的编译参数。

  • make.settings:

  CONFIG_ID2_DEBUG:ID²调试信息的开关。
  CONFIG_ID2_OTP:ID²密钥在使用时动态下发功能的开关。   CONFIG_ID2_KM_SE:ID²的SE载体的开关,关闭时,使用Demo载体。

编译SDK:

 在SDK目录,运行如下命令:

 $ make clean  $ make

编译成功,生成的静态库和应用程序统一放在SDK的out目录。

运行程序:

在SDK目录,运行如下命令:

 ./out/bin/id2_app

测试成功(仅设备端接口测试,非真实交互验证),日志显示如下:

 
<LS_LOG> id2_client_get_id 649: ID2: 000FFFFFDB1D8DC78DDCB800
<LS_LOG> id2_client_generate_authcode 170:
============ ID2 Validation Json Message ============:
{
       "reportVersion":        "1.0.0",
       "sdkVersion":   "2.0.0",
       "date": "Aug 23 2019 18:17:13",
       "testContent":  [{
               .......
               }]
}
<LS_LOG> id2_client_generate_authcode 186: =====>ID2 Client Generate AuthCode End.

其他:

更多文档,如设备端适配和自主验证,请查阅ID²官方。


id2_client_sdk's People

Contributors

security-release avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.