iOS Matter 操作证书签发方案
在 Matter 配网和操作中,为了信息交互的安全,在配网时,Commissioner自身需要完整的证书,同时需要向设备安装操作证书。
Matter 证书包含:
RCA: 根证书
ICA: 中间证书,可选
NOC: 操作证书(注意有以下两种操作证书)
- MTRDeviceController操作证书: MTRDeviceController 使用的 NOC
- 设备操作证书:发送给设备的NOC
MTRDeviceController初始化
必须要的参数
ipk: 16字节,对 fabric 有效,随机数。
VendorID: 厂商ID
keyPair: 基于 RCA 或者 commissioner NOC(如果指定的话) 的公私钥对。还要用私钥实现相关加密方法。
证书签发方式
在 Apple 提供的 Matter.framework 框架中,提供三种不同的证书签发方案。
本地自动签发(开源中DarWin 示例工程方案),只需要指定FabricID 即可完成整个证书的自动签发,缺点:本设备有效,同步难。
本地指定 RCA, ICA,NOC(以上三个证书可以本地保存,也可以云端请求),后续自动根据证书参数生成设备 NOC. 缺点:不安全
所有证书云端签发: Commissioner初始化之前,从云端获取RCA, ICA,NOC。自行实现 nocChinIsser ,根据 CSR 信息由云端生成设备的 NOC。缺点:依赖网络和云端证书。
还需要指定 paa 列表,可以参考dcl (csa-iot.org)否则会出现设备不信任回调。
节点操作凭证过程
设备节点操作证书是基于 CSR 信息签发。可以由本地默认签发,也可以通过服务器签发。
服务器签发
服务器签发需要自定义签发器,并且遵守MTROperationalCertificateIssuer
并回调设备节点操作证书。
- (void)issueOperationalCertificateForRequest:(MTROperationalCSRInfo *)csrInfoattestationInfo:(MTRDeviceAttestationInfo *)attestationInfocontroller:(MTRDeviceController *)controllercompletion:(void (^)(MTROperationalCertificateChain * _Nullable info,NSError * _Nullable error))completion API_AVAILABLE(ios(16.4)){// 基于csr信息 在云端或者自行签发设备的操作证书。}
为MTRDeviceController设置操作证书签发器
// iOS 16.4
MTRDeviceControllerStartupParams * params = [[MTRDeviceControllerStartupParams alloc] initWithIPK:ipk operationalKeypair:keypair operationalCertificate:nocCertificate intermediateCertificate:icaCertificate rootCertificate:rootCertificate];
//xxxIssuer *issuer = 签发器实体
//dispatch_queue_t nocIssuerQueue = 签发队列
[params setOperationalCertificateIssuer:issuer];
[params setOperationalCertificateIssuerQueue:nocIssuerQueue];
iOS Matter 操作证书签发方案相关推荐
- 漫谈iOS程序的证书和签名机制 1
原文:漫谈iOS程序的证书和签名机制 接触iOS开发半年,曾经也被这个主题坑的摸不着头脑,也在淘宝上买过企业证书签名这些服务,有大神都做了一个全自动的发布打包(不过此大神现在不卖企业证书了),甚是羡慕 ...
- 【转】漫谈iOS程序的证书和签名机制
转自:漫谈iOS程序的证书和签名机制 接触iOS开发半年,曾经也被这个主题坑的摸不着头脑,也在淘宝上买过企业证书签名这些服务,有大神都做了一个全自动的发布打包(不过此大神现在不卖企业证书了),甚是羡慕 ...
- electron 打开调试_构建基于 iOS 模拟器的前端调试方案
作者:imyzf 本文将为大家介绍自动化控制 iOS 模拟器的原理,为开发基于 iOS 模拟器的前端调试方案提供帮助. 我们在开发 iOS App 内的前端页面时,有一个很大的痛点,页面无法使用 Sa ...
- iOS 开发者开证书创建流程
开发者网站:https://developer.apple.com: 一.认识各种证书及其作用 1.开发者证书分为 开发 和 发布 两种,类型为ios Development,iOS Distri ...
- PKI详解与openssl实现私有CA证书签发
加密解密技术基础 在看这篇文章之前,首先需要有加密解密的技术基础: 安全目标: 保密性:确保通信信息不被任何无关的人看到 完整性:实现通信双方的报文不丢失.数据完整性.系统完整性 可用性:通信任何一方 ...
- 基于OpenSSL的CA建立及证书签发(签发多域名/IP)
自签SSL证书(多域名/IP) 本文基于以下环境: 内核信息:Linux zabbix 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 ...
- 服务器证书签发的ip地址选项,公网IP申请SSL证书 DV1-5分钟快速签发IP文件认证
原标题:公网IP申请SSL证书 DV1-5分钟快速签发IP文件认证 随着互联网的安全产需求变化,IP地址SSL证书广泛使用,直接避免了服务器公网IP劫持,几分钟就可以完成IP SSL证书的注册,下面是 ...
- Xcode 5 + iOS 7免证书(iDP)真机调试与生成IPA全攻略
Xcode 5 + iOS 7免证书(iDP)真机调试与生成IPA全攻略 文章目录 1. 创建证书 2. 修改Xcode的配置文件 3. 准备自定义的生成后脚本 4. 修改工程设置 5. 旁门左道生成 ...
- PKI证书签发系统(web版)
这几天没事干,学校安排小学期做一个pki证书签发系统,班上的学霸美女一组,哈哈!虽然90%的活都是我做的,但是帮帮女生也是可以得嘛!扯远了!看看效果吧!用的是ssh框架做的一个签发证书网站,有普通用户 ...
最新文章
- php cms拥有博客功能,20款最为知名的开源PHP CMS
- CDOJ 486 Good Morning 傻逼题
- 经典面试题 之 子数组之和最大值
- [MSSQL]COALESCE与ISNULL函数
- 两个富翁打赌_打赌您无法解决这个Google面试问题。
- qemu-kvm磁盘读写的缓冲(cache)的五种模式
- 深度对比Apache CarbonData、Hudi和Open Delta三大开源数据湖方案
- treeview 文字垂直方向_word文本排版技巧:改变文字方向的这些方法,你知道吗?...
- Just do IT --- gulp
- jQuery提供的存储接口
- Linux命令——set 和 unset
- Tableau宣布退出中国市场,背后的原因细思恐极...
- 数据结构与算法碎碎念之运用递归处理问题
- 基于stm32的两轮自平衡小车4(软件调试篇)
- nmap——端口扫描_基础命令
- libjpeg库和libpng库的移植和使用
- 个人计算机中的防毒软件无法防御,win10系统中无法启动defender防御软件的处理办法...
- 科技前沿:几款意念控制器
- lintcode----解码方法
- 墨卡托投影转换公式(java实现)