阿里云ECS使用感受
一、自我介绍大家好,我是一名电子信息专业的学生,目前研二,就读于东南大学网络空间安全学院,我研究生期间的研究方向是区块链与物联网安全,区块链平台使用的是Hyperledger fabric,搭建实验环境需要用到Linux操作系统,平时一直是通过在自己的笔记本上安装虚拟机的方式做实验的,后来去公司实习,白天在公司里实习,只能晚上才回到学校做实验,电脑搬来搬去的真的很麻烦,加之做实验需要同时开启多个虚拟机,电脑内存也不太够了,真的很棘手。通过实验室师兄的介绍,了解到“飞天加速计划·高校学生在家实践”活动,可以自己购买阿里云服务器,同时还了解到新人可以免费试用。真心感谢阿里云平台给提供的这么好的学习的机会,真的方便了很大一部分像我一样的学生。二、使用攻略申领自己的阿里云ECS后,官方特别贴心的给小白提供了测试环境,新手担心不会使用的话,可以按照官方提供的实验测试环境,按照官方提供的测试步骤一步步操作下来,很快就可以掌握阿里云ECS的使用,以及更改实验环境的配置,实验时长是90分钟。熟悉了服务器的配置与使用,在自己的笔记本上安装XShell软件,在Xshell里新建连接,输入自己的阿里云ECS的ip地址,以及用户密码,就可以建立本机与阿里云ECS之间的通信了,便可以一步步在自己本机上操作云服务器,一步步安装实验环境,这样不管人在哪里,只要建立与云服务器的连接,实验环境都是一样的。三、总结收获本次使用阿里云ECS的体验很棒,使用云服务器也是自己一次全新的体验,再次感谢阿里官方给提供的这次宝贵的学习的机会,以后会继续选择使用阿里的云服务器,后面会陆续学习如何在云服务器上部署自己的网站,部署一些远程项目。
阿里云服务器使用感受
我是一名研二学生,目前就读于东南大学网络空间安全学院的电子信息专业,通过实验室师兄介绍,了解到“飞天加速计划·高校学生在家实践”活动。我在研究生阶段的研究方向是区块链与物联网安全,最近正在公司里面实习,实习的工作内容是对于fabric平台进行国产平台的移植,移植工作首先需要对fabric的整体架构有全面的了解,由于本人的笔记本一直放在学校,因此没有办法在自己笔记本上安装虚拟机,再安装Linux系统这样的形式对fabric测试网络进行搭建了,在师兄的介绍下,了解到了“飞天加速计划·高校学生在家实践”活动,所以想到了买云服务器的方式搭建实验环境,后面在使用的过程中,发现阿里云服务器是“真香”。完成学生认证,以及发表博客的任务后,还可以获取免费试用两个月的资格,谢谢阿里云平台给我们这些学生党提供了一个这么好的学习平台,万分感谢。第一次接触云服务器,和很多小白同学一样,对它的一些使用方式不是很了解,不过幸好阿里平台思虑周到,提供了各种实验的视频和文档,再一一学习之后,了解了阿里云服务器的使用方法,在这里再次感谢阿里平台为我们学生党提供的这次学习的机会。使用云服务器有一段时间了,说下我本人的感受吧,对于程序员或者计算机相关专业的学生来讲,能够拥有一个属于自己的云服务器,远程部署自己的项目,真的是一件很酷的事情,阿里云的飞天加速计划让我初步接触到了云服务器,并体验到了这份快乐。以后,项目需要云部署的时候我还会义无反顾地选择阿里云,最后,再次感谢阿里云为我们提供的这次学习的机会,我也会万分珍惜这次来之不易的机会。
开发板原型及环境搭建(二)|学习笔记
开发者学堂课程【平头哥带你玩转六款蓝牙爆品开发技能:开发板原型及环境搭建(二)】学习笔记与课程紧密联系,让用户快速学习知识课程地址:https://developer.aliyun.com/learning/course/294/detail/3442开发板原型及环境搭建(二)二、如何实现从创意到项目落地1、如果已经有想法,作为可以很快的实现想法的原型搭建,以价签为例,想做产品之后,确定好整套方案,基于基础的架构,如何可以快速的基于现有的硬件搭建出基于现有的硬件以及配套的资料,搭建出可以进行验证的产品的原型,可以直接在芯片开发社区里面可以看到。2、有很多的应用方案,应用方案里面有两部分,一部分是只是介绍性,另外一部分跟开发者有关系,有代码,有些应用可以直接基于线程的应用方案有没有比较贴近的,如果是要做一对多的,比如的价签或者资产定位标签或者是一对多的控制功能,可以直接选择标签的的原型做开发。3、有配套的快速上手指南,也有用户说明,也有演示程序。4、可以直接选择好配套的开发板,通过开发板的用户说明,基于外界的串口或者其它数据能够搭建好硬件的原型,有硬件原型之后,因为现在很多的应用可能不仅仅是在端侧能够完成,可能会涉及到云端的服务,尽量的利用开放的平台,比如支付宝的开放平台以及生活物联网平台或者iot的开放平台,可以直接利用现有的云平台能够提供的功能直接能够完成整套系统搭建。5、整体的活动从7月1月到7月20号,在段时间内欢迎来到occ社区提供相关的产品创意,提高产品成绩之后根据活动规则筛选送出一批开发板,同时也会针对创意也会提供配套的资源以及技术支持。6、上云是否收费?如果是简单的云端的交互数据打通,直接在occ云平台里面有功能,比如基于传感器的物理模型定义,直接可以基于occ的物理模型定义实现类似于温度传感温,湿度传感器数据的获取,如果想做更复杂的功能,可以看阿里云iot的生活物联网平台或者是天猫精灵的lot开放平台以及支付宝的开放的中心,上面有很多的open云端的接入的资源及配套的资料可以提供。7、在编程时程序后的问题应该处理问题?异常现象。8、U1的版跟运营商合作,跟联通移动电信,哪一块可以直接拿来用?包括具体支持的是什么样的网络知识?目前本身是能跟联通电信移动支持,目前开发的模组也是三个运营商都能够支持,看接入的云,不同运营商的策略不一样,针对移动需要做ip绑定动作,能够直接接入阿里云,所以对于玩或者开发测试会更加方便,对于个人开发者会更方便,如果是公司层,可以跟移动电信都能谈,给到的卡里面已经绑定好设计,没有太多的影响,从运营商本身支持,另外一方面看本身地区的基站的情况,因为nplt通讯需要附近要有配套的的基站资源,所以也需要了解附近哪个运营商的基站的资源更丰富,选择配套的运营商做接入。9、大鱼支持正常大卡还是拉的小卡?目前支持是正常的大卡。10、卡里面是否需要有流量,因为需要涉及云端数据的传输吗?卡一般都会有流量套餐,一年是多少钱,可以在淘宝上直接购买相配套的套餐,比如移动电信,目前都有四块钱一年的流量套餐,可以直接购买流量卡,开始设计。11、当单片机的接口跟U1开发板连接,数据格式是什么样的?数据格式看不同的平台,根据不同平台的物理模型,根据不同平台物模型配套做数据格式的定义,针对阿里云接入的历程,可以看到里面有配套的物理模型的说明,如果选择的是其它的平台,需要根据平台营平台的公共模型说明及接入的文档,配套的修改软件的定义。12、当传输的过程中有涉及到温湿度数值,单片机发生的数据给到u1开发板,在过程中单片机跟U1的开发板连接用串口,具体是用什么样的形式?因为u1本身是处理能力比较强的芯片,所以可以直接把传感器通过接口sp或者fnc或者串口直接接到u1上,通过外驱动获取资源,获取到资源之后,再把获取到的数据格式化到的模型里面,通过云管道传到云端。第二种方式是外挂,外面还挂了大面线,根据资源直接定义使用哪个通讯方式传输数据,都是很开放的。13、板子在拿到之后,整个开发周期大概是要多久?周期涉及到因素比较多,涉及到自己做的原型,复杂度是一方面,自己对于软件开发,对于软件,对于硬件,对于传感器,对于模型部分的了解程度,涉及的比较多,如果直接基于已经做好的方案,能够保证基于用户手册,能够一天完成上手,如果的方案类似,五天肯定能够把原型搭起来,如果差别比较大,取决于对方案本身的掌握程度,各平台提供的资料比较丰富,还是花一部分时间把资料了解清楚,把整个架构设计好。14、用开发板对接的过程中可以提供如何的支持?线上的支持?线下的支持?在开发过程中芯片专区,里面有专门的问答中心。可以直接在occ上有问答中心,可以直接在里面提问,问题基本都会在一天内会回答到,所以在开发过程中直接在芯片或者在配套的开发板的问答区里面提问,提问之后occ有小机器人会自动的把问题推送出来,所以在线上是通过渠道进行技术交流。也有occ的芯片开发者生态的大群,如果认为在线上提问没有得到很好的解答的情况下,也欢迎在群里面发出问题。15、如果对某一款芯片感兴趣是可以直接到首页。在整个开发板可以直接查到很多详细的资料,会有很多创意的包括已经做好的相关的应用,给大家做参考。比如u1的芯片。拿到板做什么,因为现在面向的人群会比较的多元,既有从事科研机构的小伙伴,同时又有中端的工厂和可以生产方案的方案公司,可以在平台上找到很多已经成型的方案,比如像电子标签,跟语音相关的,跟疫情期间的体温检测,包括语音音箱等各种的方案,可以在平台的应用商城板块找到。对于产品有任何的问题可以在技术部落的问答提出问题,会在一天之内给做回答,可以很快的找到想要的各种各样的解答,以及很多多元的方案,也希望通过7月份的活动可以看到更多有趣的好玩的具备可落地模型的的创意的项目。7月份提供的开发板是四块,智能语音开发板,NB loT&GPS开发板,蓝牙mesh开发板,物联网安全开发板(MCU),在周四会讲智能语音开发板如何玩?MCU开发板如何玩?玩出哪些花样?在期间随时有任何相关的疑问不仅仅局限在四款芯片,其它相关的也可以提出来。
IDC发布中国物联网云平台最新报告:阿里云拿下双料第一
近日,国际知名调研机构IDC发布了最新中国物联网云平台评估报告,阿里云以整体产品能力和市场份额双项第一居领导者地位。IDC报告显示,阿里云物联网平台以完善的产品体系、不断融入的新技术和云网边端安全一体化的服务能力,可满足用户在不同场景的业务需求而斩获平台能力项第一。万物互联时代正在加速到来,今年8月工信部数据表明,我国移动连接数中超过一半是物的连接,首次超过移动电话用户数,各行各业对物联网的投入不断加大,物联网已经成为新型基础设施的重要组成部分。越来越多的企业选择物联网云平台,相比自建,云平台具备高可用的性价比优势。IDC预测,中国物联网平台支出将从2021年的20.9亿美元迅速增至2025年的47亿美元,年复合增长率达22.5%,适配多行业的物联网(水平)云平台增长更快,年复合增长达28.7%。在选择物联网云平台时,IDC建议用户应该重点关注平台的数智分析、云边协同和安全能力,并根据自己所处行业的特点来挑选物联网云平台。在对10个主流物联网平台进行了技术、能力、用户服务、商业价值等维度评估后,IDC给阿里云物联网平台在产品能力和市场份额上双第一的领导者位置。IDC报告中表示:阿里云围绕物联网云平台构建了完善的产品体系,提供安全可靠的设备接入、管理和监控运维服务,在数据分析、应用开发使能方面不断融入新技术能力,并依托平台提供多样化的增值服务,同时也面向物联网平台外围延伸业务提供了物联网边缘计算、物联网安全服务以及设备端服务。基于组件模块化的产品功能体系,可以满足用户在不同业务阶段、不同应用场景之下的物联网平台服务需求。阿里云物联网平台高质量的用户帮助文档及丰富的教学和技术支持体系,也进一步提升了用户使用平台的便捷性。据阿里云在云栖大会上最新披露的数据显示,截至目前,已经有30万多家企业选择阿里云物联网平台实现设备上云及互联,覆盖工业、农业、城市、消费等多个行业,平台每天有百亿级数据交互,PB级数据传输,安全检测每天达到4亿次,AI接口调用每天达到10亿次。新能源龙头企业锦浪科技通过阿里云物联网平台维持数十万台逆变器高效稳定运行,向全球提供源源不断的清洁能源。在一汽红旗工厂,阿里云物联网平台以分布式数采技术助力其通过上百万个数据采集点,连接近2万台设备,实现了五大车间的数字孪生实时联动。今年9月,阿里云宣布与中国水稻所达成合作,推出2000亩低碳稻作试验田,通过将各种农业传感设备的数据采集到阿里云物联网平台进行监测和分析,有效降低亩均20%碳排放。阿里云智能副总裁、IoT事业部总经理王晓冬表示,将用行业价值来牵引物联网平台的产品和技术创新,在海量设备连接、多源数据汇聚和智能算力上持续发力。在2020年Gartner全球物联网平台竞争格局报告中,阿里云与亚马逊AWS、微软Azure IoT、Automation Intellect 等10家企业当选最具竞争力企业。
物联网安全背景|学习笔记
开发者学堂课程【阿里云物联网安全:物联网安全背景】学习笔记,与课程紧密联系,让用户快速学习知识。课程地址:https://developer.aliyun.com/learning/course/570/detail/7770物联网安全背景 内容介绍:一、本次课程重点及阿里云 Link TEE 的基础介绍二、背景介绍—TEE 是什么?三、正常世界和安全世界是怎么切换的?四、TEE发展现状 一、本次课程重点及阿里云 Link TEE 的基础介绍由阿里云开发针对移动端设备安全的产品阿里云 Link TEE。本课程主要针对想了解TEE原理或刚开始接触阿里云 Link TEE 相关产品的同学提供基础入门介绍。学此课程之前,需要有一定嵌入式架构和 C 语言编程基础支持,通过该课程可了解到移动设备或物联网产品的安全防护原理以及如何开发基于 TEE 的安全应用。阿里云 Link TEE 的基础介绍分为四个系列讲座,第一讲为背景介绍—TEE 是什么?第二讲为 Link TEE 产品介绍、第三讲为 TEE 应用开发入门、第四讲为 Link TEE SDK 的使用-编写第一个可信应用。 二、背景介绍—TEE 是什么首先,一个完整的片段系统是由 CPU 核心处理单元、系统总线、片上存储 RAM 或 FLASH 以及其他外围设配组成。CPU 通过总线、存储以及外围设备相互连接;上层应用 App1、App2在运行过程中的临时数据存放在 RAM,长期数据如文件等会存放在 FLASH 中。在 TEE 技术引用之前,不同应用之间的资源隔离是由操作系统来保护的,例如 Linux、Android,上层不同的应用由于属于不同的用户,操作系统通过用户来限制不同应用,只能存取属于各自的数据或文件,而 Root 用户没有这个限制,它可以访问系统中的任何一个文件。攻击者一旦通过某种方法如软件安全漏洞获取了 ROOT 权限,就可以读取之前存放在设备上的所有用户信息,另外一种方法是监听内存,通过实时修改用户数据可以改变默认行为从而达到破解的目的。如果从硬件设计角度去分析,以上的控制方法都存在一个前提条件,即内存和外侧的资源都是共享的,不同之间的隔离都是通过操作系统软件来实现,因此这种保护方法无法做到真正硬件上的隔离。基于这个原因,推出可以从硬件方面保护资源的方法,即 TrustZone 趋势,该技术首先在 v6架构上应用,现在 ARMv7、ARMv8已默认支持。从上图绿色部分可看出,支持 TrustZone 技术上的 RAM 在运行时,多出一种工作模式,称之为安全工作模式即 Secure Mode,同时在系统总线上新赠的安全读解信号为 NS BIT,在系统初始化过程中,可通过配置安全组件、划分 RAM FLASH 在两个模式下分别可以访问的范围以及选择外侧可以被两种模式之一访问,只有在 RAM 处于安全模式 Secure Mode 下时,系统总线才会识别是否为安全情况下的读写请求,对应的安全资源才能被访问,否则当 RAM 处于正常模式态时,纵向会识别为所有的图解请求为非安全请求,这种情况下,之前被配置为安全模式下能访问的资源无法响应该请求,从而达到隔离的目的。与 Non-Secure 一样,在 Secure Mode 下,也有应用和 Kernel os 的区分,因此在安全模式下,也可以开发安全的内核系统 Trusted Kernel 和安全应用、Trusted App。讲到这里,TEE 指的是安全模式下运行的状态,也称为可信任执行环境。反之,REE 指的是正常世界态。如果获取到了安全模式下的 ROOT 权限,那么就可以访问所有的数据了?这句话是对的,但远远没有那么容易,首先设备默认的运行状态是处于正常世界态的,那么需要复杂的流程才能完成正常世界和安全世界之间的切换,那么这两个世界是怎么切换的? 三、正常世界和安全世界是怎么切换的?切换过程:首先了解一定 ARM 架构处理器的工作模式,上图为 ARMv7架构,在 Normal world 和 SecureWorld 分为用户模式(运行应用模式和特权模式),用于运行 kernel OS,在此基础上还会多出一个安全监控模式,即 Monitor Mode,只有系统调用 SMC 指令进入到 Monitor Mode 才能实现两个世界之间的切换。在 ARMv8架构器处理中,则采取了特权等级的概念,从 EL0到 EL3,EL0对应之前的 User mode;EL1可分别运行安全世界和非安全世界的 Kernel OS;EL2属于虚拟化层,只存在于正常世界(此处不作讨论);EL3运行安全监控模式,正常世界和安全世界之间的切换也是通过 SMC 调用到 EL3这一层来实现切换。支持 TrustZone 技术的 SoC 硬件框架图:灰色的部分是和 TrustZone 相关的安全控制组件,这里只需要了解一点,在引入 TrustZone 技术之后,总线即上图的 AXI Bus 会先和 TrustZone 相关的安全控制组线连接,例如 TZMA、TZPC 等,这些安全控制组件才会去连接外设,因此,是否响应来自 CPU 的访问、认证资源的请求是由这些安全控制组件来决定的(此处不作详细介绍,可参考本课时最后的参考和引用深入学习)。 四、TEE 发展现状目前 TEE 在手机领域已经得到了非常广泛的应用,首先是支付软件和相关的身份认证,例如指纹和面部识别等;还有数字版权保护方案,例如谷歌、WIDEVINE 和国内正在推出的 DRM 标准;同样 TEE 也向物联网方向应用,例如智能门锁、软信卡方案等。无论是智能手机芯片的厂商,如三星、华为、联发科,还是汽车芯片厂商,例如 NXP,都会集成自己或第三方的TEE方案来保障前面软件应用的安全。目前 TEE 的提供商有法国的 TRUSTONIC、高通的 QSEE、国内上海的瓶钵科技、豆荚科技、Watchdata、以及阿里云Link TEE。目前阿里云 Link TEE 主要为智能汽车、互联网设备提供安全的解决方案,Link TEE 相关的产品将在后面课时详细介绍。另外,谷歌从7.0开始规定指纹识别控制必须有 TEE 支持,8.0之后的密钥管理需要硬件保护方案来实现,为了规范化TEE 相关应用的开发,全球平台组织 GLOBALPLATFORM 提供了 TEE 产品的安全认证,并设计了 TEE 安全应用的通用开发接口 GP API 提高安全应用的刻意置信,GP API 的使用方法将在后续课程中详细介绍。
开发第一个可信的应用|学习笔记
开发者学堂课程【阿里云物联网安全:开发第一个可信的应用】学习笔记,与课程紧密联系,让用户快速学习知识。课程地址:https://developer.aliyun.com/learning/course/570/detail/7773开发第一个可信的应用 内容介绍:一、课程回顾二、SDK 包结构三、CA TA 样例流程四、CA XOR 源码五、TA XOR 源码六、添加 TA七、运行 CA_XOR一、课程回顾TEE CAP 是纯软件实现的,可以在通用的平台中使用,无需系统底层软件的修改,因此 TEE CAP 是学习 TEE 安全应用开发的最方便工具。我们提供 top6平台的试用版 SDK 供大家下载,运行环境为 open Ubuntu 16.04,只可以运行单个 TA,CA 和 TA 的单次运行数限制在200条以内。 二、SDK包结构从网站上下在 Link_TEE_CAP_SDK,解压后有四个文件夹。1、appsapps 包含两个 CA、TA 示例源码和编译脚本,xor 是简单的 CA/TA 交互示例源码,sst 是安全存储的示例2、ntwsntw 包含 TEE Client api 文件的 dee 以及 CA 运行所需要的动态库之一 libtee_client.so;tw 包含 TEE Internal api 的头文件、编译脚本 libtee internal 静态库和用来添加 TA 的 tee_srv_table.c,3、twtw 目录用来将 TA 和 tee os 联合编译为 libtee.os 动态库。4、outOut 目录用于存放编译后生成的两个动态库,litee_client.so 和 litee_internal.so 三、CA TA 样例流程1、创建 ContextTEE_lnitializeContext(&context,…)2、创建 CA/TA 会话TEEC_OpenSession(&context,$session,…)3、CA 发送命令TEEC_InvokeCommand(&session,CommandId,operation,…)4、返回结果Result=TEEC_InvokeCommand5、关闭 CA/TA 会话TEEC-CloseSession(&session)6、清空 ContextTEEC_Finalize(&context) 四、CA XOR 源码//初始化 Contextresult = TEEC_ _lnitializeContext(NULL, &context);//初始化 Sessionresult = TEEC_ OpenSession(&context, &session,&_ g_ _uuid_ xor, TEEC_ LOGIN_ USER, NULL, NULL, NULL);//1设置 Operation 输入参数operation.paramTypes = TEEC_ PARAM_ TYPES( TEEC_ VALUE_ INPUT, TEEC_ _VALUE_ INPUT,TEEC_ VALUE_ OUTPUT, TEEC_ _NONE);operation.params[0].value.a = a;operation.params[1].value.a= b;operation.params[2].value.a = c;//发送命令result = TEEC__InvokeCommand(&session, CMD _XOR, &operation, NULL);//获得结果 C = operation.params[2].value.a; 五、TA XOR 源码//检查 operation 参数if (TEE_ PARAM_ TYPES(TEE PARAM_ TYPE_ VALUE INPUT,TEE_ PARAM_ TYPE_ VALUE_ INPUT,TEE_ PARAM_ TYPE_ VALUE_ OUTPUT,TEE_ PARAM_ _TYPE_ NONE) != paramTypes){return TEE_ ERROR_ BAD_ PARAMETERS;}if (CMD_ XOR != commandlD) {return TEE_ ERROR_ BAD_ PARAMETERS;}//汁算 c=a^bparams[2].value.a = params[0].value.a л params[1].value.a;TEE_ Print("xor result 0x%08xIn", params[2].value.a);return TEE_ SUCCESS;六、添加 TAtee_ srv_ table.c//添加 xor ta 头定义/* TEE registered srv table */tee_ srv_ head_ t* tee_ _srV_ table[TEE_ _MAX_ SRV_ _NUM]={&xor_ srV_ head,NULL,};tw/Makefile//添加 ta 源文件SRCS := ./src/tee_ srv_ table.c \../apps/xor/tw/ta_ xor.c编译 libtee_internal.so运行 tw/build_ta.sh 生成 out/libtee_internal.so七、运行 CA_XOR编译运行 ca__xorshell $ cd apps/xor/ntwshell $ makeshell $ LD_ LIBRARY_ PATH= ../../out ./ca_ xor运行日志<TEE_ CLI> I Alibaba Cloud Link TEE-CAP<TEE_ CLI> I Client API Version: 1.2.0<TEE_ CLI> I Mode: trial<TEE_ CLI> I Platform: GENERAL<TEE_ SEC> I Alibaba Cloud Link TEE-CAP<TEE SEC> I Internal API Version: 1.2.0_2019_2_2_17:10<TEE_ SEC> I Mode: trial<TEE_ SEC> I Platform: GENERAL<TEE_ SRV> xor result 0x00000001a= 0;b= 1; c= a^b: 1注:<TEE_CLI>为 CA,<TEE_SEC>为 TEE OS,<TEE_SRV>为 TA
开发第一个可信的应用|学习笔记
开发者学堂课程【阿里云物联网安全:开发第一个可信的应用】学习笔记,与课程紧密联系,让用户快速学习知识。课程地址:https://developer.aliyun.com/learning/course/570/detail/7773开发第一个可信的应用 内容介绍:一、课程回顾二、SDK 包结构三、CA TA 样例流程四、CA XOR 源码五、TA XOR 源码六、添加 TA七、运行 CA_XOR一、课程回顾TEE CAP 是纯软件实现的,可以在通用的平台中使用,无需系统底层软件的修改,因此 TEE CAP 是学习 TEE 安全应用开发的最方便工具。我们提供 top6平台的试用版 SDK 供大家下载,运行环境为 open Ubuntu 16.04,只可以运行单个 TA,CA 和 TA 的单次运行数限制在200条以内。 二、SDK包结构从网站上下在 Link_TEE_CAP_SDK,解压后有四个文件夹。1、appsapps 包含两个 CA、TA 示例源码和编译脚本,xor 是简单的 CA/TA 交互示例源码,sst 是安全存储的示例2、ntwsntw 包含 TEE Client api 文件的 dee 以及 CA 运行所需要的动态库之一 libtee_client.so;tw 包含 TEE Internal api 的头文件、编译脚本 libtee internal 静态库和用来添加 TA 的 tee_srv_table.c,3、twtw 目录用来将 TA 和 tee os 联合编译为 libtee.os 动态库。4、outOut 目录用于存放编译后生成的两个动态库,litee_client.so 和 litee_internal.so 三、CA TA 样例流程1、创建 ContextTEE_lnitializeContext(&context,…)2、创建 CA/TA 会话TEEC_OpenSession(&context,$session,…)3、CA 发送命令TEEC_InvokeCommand(&session,CommandId,operation,…)4、返回结果Result=TEEC_InvokeCommand5、关闭 CA/TA 会话TEEC-CloseSession(&session)6、清空 ContextTEEC_Finalize(&context) 四、CA XOR 源码//初始化 Contextresult = TEEC_ _lnitializeContext(NULL, &context);//初始化 Sessionresult = TEEC_ OpenSession(&context, &session,&_ g_ _uuid_ xor, TEEC_ LOGIN_ USER, NULL, NULL, NULL);//1设置 Operation 输入参数operation.paramTypes = TEEC_ PARAM_ TYPES( TEEC_ VALUE_ INPUT, TEEC_ _VALUE_ INPUT,TEEC_ VALUE_ OUTPUT, TEEC_ _NONE);operation.params[0].value.a = a;operation.params[1].value.a= b;operation.params[2].value.a = c;//发送命令result = TEEC__InvokeCommand(&session, CMD _XOR, &operation, NULL);//获得结果 C = operation.params[2].value.a; 五、TA XOR 源码//检查 operation 参数if (TEE_ PARAM_ TYPES(TEE PARAM_ TYPE_ VALUE INPUT,TEE_ PARAM_ TYPE_ VALUE_ INPUT,TEE_ PARAM_ TYPE_ VALUE_ OUTPUT,TEE_ PARAM_ _TYPE_ NONE) != paramTypes){return TEE_ ERROR_ BAD_ PARAMETERS;}if (CMD_ XOR != commandlD) {return TEE_ ERROR_ BAD_ PARAMETERS;}//汁算 c=a^bparams[2].value.a = params[0].value.a л params[1].value.a;TEE_ Print("xor result 0x%08xIn", params[2].value.a);return TEE_ SUCCESS;六、添加 TAtee_ srv_ table.c//添加 xor ta 头定义/* TEE registered srv table */tee_ srv_ head_ t* tee_ _srV_ table[TEE_ _MAX_ SRV_ _NUM]={&xor_ srV_ head,NULL,};tw/Makefile//添加 ta 源文件SRCS := ./src/tee_ srv_ table.c \../apps/xor/tw/ta_ xor.c编译 libtee_internal.so运行 tw/build_ta.sh 生成 out/libtee_internal.so七、运行 CA_XOR编译运行 ca__xorshell $ cd apps/xor/ntwshell $ makeshell $ LD_ LIBRARY_ PATH= ../../out ./ca_ xor运行日志<TEE_ CLI> I Alibaba Cloud Link TEE-CAP<TEE_ CLI> I Client API Version: 1.2.0<TEE_ CLI> I Mode: trial<TEE_ CLI> I Platform: GENERAL<TEE_ SEC> I Alibaba Cloud Link TEE-CAP<TEE SEC> I Internal API Version: 1.2.0_2019_2_2_17:10<TEE_ SEC> I Mode: trial<TEE_ SEC> I Platform: GENERAL<TEE_ SRV> xor result 0x00000001a= 0;b= 1; c= a^b: 1注:<TEE_CLI>为 CA,<TEE_SEC>为 TEE OS,<TEE_SRV>为 TA
TEE 应用开发入门|学习笔记
开发者学堂课程【阿里云物联网安全:TEE 应用开发入门】学习笔记,与课程紧密联系,让用户快速学习知识。课程地址:https://developer.aliyun.com/learning/course/570/detail/7772TEE 应用开发入门内容介绍:一、 回顾二、 REE 和 TEE 的交互原理三、 CA 与 TA 建立联系的四个基本要素四、 通过GP API 具体函数调用角度介绍 REE 和 TEE 的交互原理五、参考和引用 一、回顾处理器分为两个状态,正常态和安全态,正常态对应 REE 侧,安全态对应 TEE侧,两种状态下,按照特权级由低到高的顺序依次有用户模式、内核模式、monitor模式。 二、REE 和 TEE 的交互原理以 RAMv7架构为例,如图所示,从 CA 调用到 TA 需要五个步骤。首先,CA 调用 GP 标准定义的 Client API 接口从user 模式进入到 REE 侧的 kernel 模式,在 kernel 模式下通过 SMC 指令切换到 monitor 模式,monitor 模式是处理器的最高特权模式,因此,monitor 本身就处在了安全态,此时处理器已处在安全态。再从 monitor 模式切换到安全模式下的kernel模式,TEE 运行在该模式下会根据 CA 传递过来的 TA UID 加载对应的TA,再切换到安全态下的 user 模式继续运行。在 TA 侧也有GP 定义的标准接口,称为 Internal API,包含算法、内存、TA 交互调用等通用功能。TA 会根据 CA 传递过来的秘密 ID 以及共享内存的内容完成相关的任务后重新返回值,再通过 syscall 返回 TEE OS,同样 TEE OS 会通过 SMC call 指令返回 monitor 模式,再用 monitor 切换到正常态下的 kernel 模式,接下来返回到上层的 user 模式,这时 CA 就可以通过返回值和更新后的内存内容来获取 TA 的处理结果。三、 CA 与 TA 建立联系的四个基本要素1、UUID:TA 的唯一标识码,CA 需要告诉 TEE 正常的 UUID 才能和 TA 建立联系。2、Context:建立的基础,用来保存 CA 与 TEE之间的上下文。3、Session:在 Context 中可添加,用来保存 CA 与特定 TA 的会话。4、Shared Memory:在 Session 中可添加,连接 CA 和 TA 之间的共享内存,用于两者之间数据交互。 四、通过 GP API 具体函数调用角度介绍 REE 和 TEE 的交互原理GP API 函数调用顺序:1、调用 TEEC Initialize Context 创建 CA 与 TEE 之间的上下文。2、通过 TEEC OpenSession 传入对应的 UIID,创建 CA 与对应 TA 的会话。3、如果在交互过程中需要用到共享内存,则通过 TEEC AllocateShareMemory 创建 CA 和 TA 之间的内存。4、通过调用 TEEC InvokeCommand 对应的 Command ID 以及共享内存的起始地址和大小,等 TA 处理完对应秘密ID 的过程后,结果通过该行数直接返回。接下来的三步是对1-3步的清理流程:1、释放共享内存2、关闭 CA/TA 会话3、清空 Context注:在开发 CA 过程中,需要保证行数的成对使用,以防止内存泄漏或无法创建新的 CA/TA 会话等。TA的代码相对更简单些,在 TA 内部,会有 CA 对应侧的行数对应入口,比如 CA 调用完 TEE C OpenSession 后,TEE OS 会进入 TA-OpenSessionEntryPoint 里完成 TA 对应初始化相应内容。当 CA 侧调用 TEEC-Invoke Command 时,会对 TA 的函数入口 TA-Invoke CommandEntry Point,在该函数里,需要根据 Command ID 来实现对应的处理内容。
2023年物联网的四大趋势
物联网(IoT)是一个术语,用来描述不断增长的在线物理对象网络,它们相互连接,能够与我们以及彼此交流和共享信息。计算机和智能手机是最早连接到互联网的设备。在过去的十年里,我们的家里已经充斥着智能电视、水壶和冰箱等联网厨房电器,以及智能报警系统、摄像头和灯泡。与此同时,我们已经习惯了在工作场所与智能机器并肩工作,驾驶智能汽车,甚至生活在智慧城市中。据预测,到2023年,将有超过430亿台设备连接到互联网上。它们将生成、共享、收集数据,并帮助我们以各种方式利用数据。因此,以下是一些关键趋势的概述,这些趋势将影响我们在未来一年如何使用这些设备,并与之互动。数字孪生和企业元宇宙这是两个非常重要的技术趋势的汇合,将决定2023年行业和企业如何使用技术。对于企业而言,元宇宙最有价值的应用之一将是弥合现实世界和虚拟世界之间的差距。通过使用物联网传感器的数据,将有可能构建许多不同系统的越来越逼真的数字孪生——从制造设施到购物中心。然后,业务用户将能够通过VR头盔等体验元宇宙技术走进这些数字孪生,以更好地了解它们的工作方式,以及调整单个变量可能如何影响业务结果。我们已经看到这种技术融合在零售领域的应用,商店规划人员可以实时监控人流量,并对陈列和促销活动进行调整,以监控这对顾客行为的影响,并最终影响收入的产生。在工业环境中,其允许工厂和制造工厂的设计师试实不同的机械配置,以及强调潜在的安全问题和预测故障可能发生的时间。物联网安全物联网设备使我们的生活更容易、更方便,但也让我们容易受到新的、各种形式的网络攻击。简单地说,我们环境中连接的设备越多,对攻击者开放的门窗就越多。随着2023年及以后设备数量的爆炸式增长,企业、设备制造商和安全专家将加大打击“恶意行为者”的力度,最大限度地减少他们获得我们宝贵数据的机会。在美国,白宫国家安全委员会已表示,希望在2023年初为消费物联网设备制造商提供标准化安全标签。这将帮助买家了解其引入家中的特定设备可能带来的风险。许多基本的攻击,如网络钓鱼攻击,依赖于社会工程,欺骗用户泄露访问细节,可以通过采取基本的预防措施来阻止。预计英国也将推出自己的产品安全和电信基础设施(PTSI)法案。在物联网领域,特别是在消费者领域,网络可能是窃贼和极其敏感的个人数据之间的唯一屏障,在安全措施方面的支出预计将在2023年达到60亿美元。医疗保健物联网医疗保健是物联网技术的一个巨大机遇领域,到2023年,物联网医疗设备的市场价值将达到2670亿美元。最大的游戏规则改变者之一是使用可穿戴设备和家庭传感器,使医疗保健专业人员能够在医院或医生的手术之外监测患者的状况。这使得全天候护理成为可能,同时为需要立即和直接护理的患者释放出宝贵的资源。2023年,更多的人将熟悉“虚拟医院病房”的概念,医生和护士将通过传感器和远程医疗在自己家中监督病人的监测和治疗。在消费者方面,可穿戴设备让每个人都能更好地了解自己的健康和健身状况,这将再次帮助减少现有医疗系统的压力,因为我们可以在出现问题时更早地寻求帮助,并更好地了解饮食和锻炼如何影响我们的健康。带有ECG和Sp02传感器的智能手表现在已经很普遍了,明年,我们可以期待看到更多的产品,比如可穿戴皮肤贴片。甚至可能会看到Elon Musk的Neuralink的设备,该企业正在创造读取神经信号的植入物,这是首批目标应用之一,可以帮助瘫痪患者重新控制自己的身体。物联网领域的治理和监管预计到2023年,欧盟将出台立法,要求智能设备的制造商和运营商遵守更严格的规则,包括数据的收集方式、存储位置以及需要采取哪些措施来防止数据泄露。这只是我们可以期待在世界各地实施的一系列新立法中的一项。这意味着,2023年很可能是政府开始着手处理不断扩展的物联网带来的法律和社会影响的一年。欧盟立法也有望解决围绕边缘计算的问题。边缘计算利用旨在在数据收集点处理数据的设备,而不是将数据发送回集中式云服务器进行分析。与此同时,在亚洲,2023年标志着三年计划的高潮由中国政府制定政策,允许物联网技术在全国范围内广泛采用。在中国,与世界其他地方一样,物联网被视为具有推动大规模业务增长的潜力,但人们都明白,物联网需要以一种有管理的方式发展,以避免与隐私问题和个人权利发生潜在冲突。
云栖大会黑科技云集,一块小标签,蕴藏大秘密
探秘3000年前的三星堆,回到1500年前的盛唐大明宫,身临清朝乾隆年的南京城,佩戴智能仿生手,写一手《兰亭序》,在模拟驾驶舱,穿越西湖……面对如此多的展台,参观者往往有“乱花渐欲迷人眼”之感,今年阿里云IoT安全中心带来了一项新技术RFID(无线电射频识别),并把这个技术安放在了每位参与大会人员的证件上。通过这项新技术,不仅可以让参观者把三大展台如此多的场景关联起来,还可以在参观的同时丰富趣味性,成为今年云栖大会最火的应用。每一块证件植入了RFID芯片后,整个云栖大会就好似变成了一个大游乐园。在会场分布了30个打卡点,拿着标签触碰打卡区域,然后可以选择自己希望发送的弹幕,完成发送,就打卡成功。标签贴近手机后,手机就会弹出大会展台分布信息,上面有30个打卡点的位置信息,当前打卡分数等信息,便于参观者更好的去搜集完成。就如同游乐园盖戳一样,盖齐之后就会有礼物,完成30个打卡点之后,也可以获得奖励。在云栖大会现场,一款体积庞大的惊喜礼品机也成为参观者们追捧的对象,在它面前排起了长队。完成全部30个点打卡的参观者就可以得到一个惊喜球随球,打开球后可以得到相应的云栖大会纪念礼品。除了更具互动性的打卡活动,今年云栖大会的众多展台上,也植入了RFID标签,以前对于产品的展示或是通过立牌上的文字展示,或是通过二维码然后需要操作好几个步骤才会显示。今年展台上的立牌植入RFID标签后,参观者只需要轻轻的用手机去触碰立牌上RFID图案部分,参观者就能看到各个展台上的核心信息,非常的快速便捷安全。有了RFID技术加持,今年阿里云IoT的展台也被众多参观者包围,想更深入了解其背后的原理以及社会上的应用的人们络绎不绝。在展厅,参观者也可以自主体验,制作一枚属于自己的RFID标签。针对这次云栖大会,阿里云IoT安全中心对RFID的标签专门做了安全的增强,在标签制作的过程中加入了安全因子和需要呈现给消费者的内容。在参观者使用的过程当中,手机触碰这个标签后,它会经过云端的安全中心进行认证,通过后才能最终显示内容。如果安全中心发现标签内容是非原始数据时,就会拒绝提供认证,如此能够很好的去防止复制、篡改,保护参观者的信息安全。安全RFID技术只是阿里云IoT浮在海平面的冰山一角,在海平面下是阿里云IoT强大的技术支持为其助力。万物互联,阿里云IoT安全中心会在更多的生活场景中,保护智能设备端到端链路上的安全,为我们的生活保驾护航。正如开幕式上,阿里巴巴董事会主席兼首席执行官张勇所说:“以更先进技术承担更大责任,技术的不断演进让我们有能力为社会经济发展和人们的美好生活作出更大贡献”。