1 总结

此次OpenHarmony1.x源码分析涉及了分布式软总线(Lite版本)、设备认证(Lite版本)两个较大模块。
分布式软总线模块的主要作用是为设备间提供通信能力,由于现有的通信方式差异很大并且使用繁琐,如USB、WIFI、BT等,同时通信链路的融合共享和冲突无法处理,通信安全问题也不好保证。因此,软总线模块主要是实现类似于局域网这样的近场设备间统一的分布式通信能力管理,提供针对各种底层通信协议和不同底层内核设备发现和传输接口。当前版本实现的能力有:服务发布、数据传输、安全通信。
设备认证模块是为保证用户个人数据在多个设备间的安全传输以及设备间建立安全连接的能力。当前版本设备认证模块通过交换主控设备与配件设备的身份标识来建立点对点信任关系,身份标识是指椭圆曲线密钥对。
本次源码分析的主要内容如下:

分布式软总线

  • authmanager模块

authmanager模块是鸿蒙为设备提供认证机制的模块。模块内的主要处理过程包括报文的接收、解密、再次封装、加密、发送的步骤。

  • trans_service模块

trans_service模块基于系统内核提供的socket通信,向authmanager模块提供设备认证通道管理和设备认证数据的传输;向业务模块提供session管理和基于session的数据收发功能,并且通过GCM模块的加密功能提供收发报文的加解密保护。

上述两个模块的流程图如下。

(由于图片过大,可能显示模糊,读者可点击下载观看。)

设备认证

  • HiChain机制数据接收管理

HiChain机制是OpenHarmony实现设备互联安全的一种机制,HiChain通过建立子对象的形式管理客户端和服务端的设备认证数据处理,本次博客重点分析了HiChain的数据接收管理过程。

  • PAKE协议通信流程

在设备认证过程中,pake协议用于认证会话密钥协商,基于该会话密钥,双方可以安全地交换各自的身份公钥。

  • STS协议通信流程

当建立过信任关系的主控设备与配件设备间进行通信时,双方将相互交换身份公钥,并通过检查本地是否存储对端身份信息的方式确认对端与本设备的信任关系。进一步地,基于双方的身份公私钥对,通信对端设备可以基于STS协议进行密钥协商并建立安全通信通道,支撑设备间通信数据的端到端加密传输。

设备认证模块流程图如下。

(由于图片过大,可能显示模糊,读者可点击下载观看。)

所有博客内容的目录见下文。

2 目录

2.1 软总线

trans_service模块

  1. OpenHarmony源码分析之分布式软总线:trans_service模块(1)/认证通道管理
  2. OpenHarmony源码分析之分布式软总线:trans_service模块(2)/会话管理之新会话
  3. OpenHarmony源码分析之分布式软总线:trans_service模块(3)/线程同步锁管理
  4. OpenHarmony源码分析之分布式软总线:trans_service模块(4)/TCP会话管理
  5. OpenHarmony源码分析之分布式软总线:trans_service模块(5)/TCP会话管理
  6. OpenHarmony源码分析之分布式软总线:trans_service模块(6)/TCP会话管理
  7. OpenHarmony源码分析之分布式软总线:trans_service/message.c文件分析
  8. OpenHarmony源码分析之分布式软总线:os_adapter模块解析

authmanager模块

  1. OpenHarmony源码分析之分布式软总线:authmanager模块(1)/设备认证连接管理
  2. OpenHarmony源码分析之分布式软总线:authmanager模块(2)/设备认证通信管理
  3. OpenHarmony深度解读之分布式软总线:authmanager模块(3)/设备身份认证过程
  4. OpenHarmony深度解读之分布式软总线:authmanager模块(4)/设备身份认证过程
  5. OpenHarmony深度解读之分布式软总线:authmanager模块(5)/设备身份认证过程
  6. OpenHarmony深度解读之分布式软总线:authmanager模块(6)/设备身份认证过程
  7. OpenHarmony源码分析之分布式软总线:mbed TLS库的应用
  8. OpenHarmony深度解读之分布式软总线:设备认证机制浅析

2.2 设备认证

数据接收管理

  1. OpenHarmony解读之设备认证:数据接收管理-获取HiChain实例(1)
  2. OpenHarmony解读之设备认证:数据接收管理-获取HiChain实例(2)
  3. OpenHarmony解读之设备认证:数据接收管理-获取HiChain实例(3)
  4. OpenHarmony解读之设备认证:数据接收管理-获取HiChain实例(4)
  5. OpenHarmony解读之设备认证:数据接收管理-消息解析
  6. OpenHarmony解读之设备认证:数据接收管理-消息处理(1)
  7. OpenHarmony解读之设备认证:数据接收管理-消息处理(2)
  8. OpenHarmony解读之设备认证:数据接收管理-通知对端

PAKE协议流程

  1. OpenHarmony解读之设备认证:pake协议-客户端发起start请求
  2. OpenHarmony解读之设备认证:pake协议-服务端响应pake start请求(1)
  3. OpenHarmony解读之设备认证:pake协议-服务端响应pake start请求(2)
  4. OpenHarmony解读之设备认证:pake协议-客户端发起end请求
  5. OpenHarmony解读之设备认证:pake协议-服务端响应pake end请求
  6. OpenHarmony解读之设备认证:pake协议-客户端接收end响应

STS协议流程

  1. OpenHarmony解读之设备认证:sts协议-客户端发起start请求
  2. OpenHarmony解读之设备认证:sts协议-服务端响应sts start请求
  3. OpenHarmony解读之设备认证:sts协议-客户端发起sts end请求
  4. OpenHarmony解读之设备认证:sts协议-服务端响应sts end请求
  5. OpenHarmony解读之设备认证:sts协议-客户端接收end响应

其他

  1. OpenHarmony深度解读之设备认证:parsedata.c文件分析
  2. OpenHarmony深度解读之设备认证:key_agreement_version.c文件分析
  3. OpenHarmony深度解读之设备认证:pake_request.c文件分析
  4. OpenHarmony深度解读之设备认证:build_object.c文件分析
  5. OpenHarmony深度解读之设备认证:remove_auth_info_client.c文件分析
  6. OpenHarmony深度解读之设备认证:remove_auth_info.c文件分析
  7. OpenHarmony深度解读之设备认证:add_auth_info_client.c文件分析
  8. OpenHarmony深度解读设备认证:key_agreement.c文件分析
  9. OpenHarmony深度解读设备认证:key_agreement_server.c文件分析
  10. OpenHarmony深度解读之设备认证:pake_server.c文件分析(1)
  11. OpenHarmony深度解读之设备认证:add_auth_info.c文件分析
  12. OpenHarmony深度解读之设备认证:add_auth_info.c文件分析
  13. OpenHarmony深度解读之设备认证:pake_server.c文件分析(2)
  14. OpenHarmony深度解读之设备认证:exchange_auth_info_client.c文件
  15. OpenHarmony深度解读之设备认证:exchange_auth_info.c文件分析
  16. OpenHarmony深度解读之设备认证:HiChain机制部分源码解析1(推荐模块之外)

2.3 OpenHarmony其他模块分析

  1. OpenHarmony轻量系统服务管理|分布式调度模块分析总结与目录解析
  2. OpenHarmony模块博客总结(Huks密钥管理与设备认证)
  3. HarmonyOS公共基础库utils子模块总结以及单片机安装实操
  4. OpenHarmony博客总结(软总线与Huks密钥管理)

OpenHarmony分布式软总线与设备认证模块总结相关推荐

  1. HarmonyOS最核心的“分布式软总线”技术解读

    文章来源 |  HarmonyOS开发者公众平台 什么是分布式软总线呢? 分布式软总线是HarmonyOS架构中最底层的技术 分布式软总线是HarmonyOS的大动脉 开发跨端应用,开发者们是否面临以 ...

  2. 分布式软总线模块总结

    communication_softbus_lite 1.鸿蒙分布式软总线概述 2.文件结构MindMap 3.重要功能和流程详解 4.总结与分析 1.鸿蒙分布式软总线概述 1.1 总线是一种内部结构 ...

  3. 一文带你看懂分布式软总线在家庭场景的应用

    HarmonyOS分布式操作系统定位为万物互联时代的操作系统,覆盖手机.平板.智慧屏.智能穿戴.智慧车机以及智能家居等内存从KB到GB级的多种终端,并在系统层让多终端融为一体,形成超级终端,为消费者带 ...

  4. 鸿蒙 OS 尖刀武器之分布式软总线技术全解析!

    作者 | 雷架 来源 | 爱笑的架构师(ID:DancingOnYourCode) 头图 |  CSDN 下载自东方IC 没有人能够熄灭满天星光 华为开发者大会2020在广东东莞松山湖欧洲小镇举办,在 ...

  5. 鸿蒙分布式软总线技术研究

    一.HarmonyOS概述 1.1系统定义 1.1.1 系统定位 HarmonyOS是一款"面向未来".面向全场景(移动办公.运动健康.社交通信.媒体娱乐等)的分布式操作系统.在传 ...

  6. 从IPC到分布式软总线的随笔

    在Linux 系统中, 客观来说,缺乏相对开发者比较友好的进程间通信框架.谈到Linux上进程间通信,一般都会想起管道(匿名.有名).信号/信号灯.共享内存.消息队列和socket.这些都是偏低层的技 ...

  7. 华为鸿蒙OS尖刀武器之分布式软总线技术

    本文 Github/javamap 已收录,有Java程序员进阶技术知识地图以及我的系列文章,欢迎大家Star. 目录 1 没有人能够熄灭满天星光 2 必须得补的传统总线知识 3 什么是分布式软总线? ...

  8. HarmonyOS分布式软总线研究,【钟洪发老师公开课】实战学习HarmonyOS重点之分布式软总线...

    3月26号(周五)晚8点,我将给大家做一场直播<实战学习HarmonyOS重点之分布式软总线>. 从去年9月10号鸿蒙开源到现在,仅仅过去了短短半年的时间.学习鸿蒙的体验,是不断滴在刷新着 ...

  9. OpenHarmony 软总线lite 源码分析

    文章目录 软总线 一.会话传输 1.1.CreateSessionServer 1.2.SendBytes 二.设备发现 2.1.发布服务 2.1.1.wifi事件 2.1.2.coap服务器 2.2 ...

最新文章

  1. 微软压力测试工具 web application stress
  2. 狎昵关系和依恋情结辨诠
  3. linux chmod和fchmod设置 文件和目录权限设置
  4. js基础篇——localStorage使用要点
  5. 为什么我的resharper控件安装之后没有显示
  6. java session持久化_Session的生命周期和持久化
  7. 计算机一级文档题,计算机一级模拟题
  8. JavaSE第十五天20160823
  9. 【广州】Web前端工程师
  10. 基于TCP的C/S初级网络编程1
  11. 2017IEC计算机第二次作业
  12. 如何理解c和c ++的复杂类型声明
  13. LoadRunner 11简单使用
  14. 网络拓扑图自动生成_SAP ABAP关键字语法图和ABAP代码自动生成工具Code Composer
  15. java代码规范插件_阿里java代码规范IDEA插件之傻瓜教程
  16. C语言回调函数详解及实例
  17. WEB安全-ESAPI
  18. Python数据处理Tips机器学习中文数据8种常用处理方法
  19. C语言比赛评分系统报告,c语言编程:本课题模拟一个简单的比赛评分系统,选手从1号开始连续编号,选手得分分为专业素质得分和综...
  20. 秘鲁地震与Stallman失踪之谜

热门文章

  1. matlab随机样本的选择,matlab随机抽样 | 学步园
  2. 雇佣兵问题(Python解答)
  3. 【​观察】“数字广东”背后的力量 腾讯云创新政务服务新模式
  4. 守望先锋:射线命中位置,相距距离,根据射线命中位置和相距距离找到对应实体在数组中的值
  5. 今日头条启动很快,你觉得可能是做了哪些优化?
  6. 千张照片合成你一张美照-【OpenCV实战二】
  7. 新年寄语+从业感受+祝大家新年快乐~
  8. windows编程之画笔
  9. 最全的《落日故人情》经典句子大全
  10. 如何使用 scp 将文件夹从远程复制到本地?