Intel EPID

 

EPID的一些总结:

到2020年,预计将有500到1000亿个已连接的物联网设备,对于制造商和最终用户而言,安全性和设备真实性都至关重要。

Attestation的挑战是,我们其实需要的是Authentication ,基于对用户的隐私保护,不因该需要 Identification。

需要的是 Direct Anonymous Attestation(DAA) 直接匿名证明,DAA就是基于群/组签名(这个原理基于啥数学证明还不明白)。

Key 分Group key和member key.

什么是EPID(Enhanced Privacy Identification)?

增强的隐私标识(EPID)是Intel的ISO 20008实施,它解决了PKI安全方案中的两个问题:匿名和成员资格撤销

 

对PKI的第一个改进是为用户或设备提供“直接匿名证明”,该功能可针对给定的访问级别对设备进行身份验证,同时允许设备保持匿名状态。这是通过引入组级别成员身份验证方案的概念来实现的。 EPID允许将一组成员专用密钥关联在一起,并链接到一个公共组密钥,而不是为单个用户分配1:1的公共密钥到私有密钥。此公共EPID组公共密钥可用于验证组中任何EPID成员私有密钥产生的签名。最重要的是,包括发行人在内的任何人都无法知道用户的身份。仅成员设备有权访问私钥,并且仅使用正确配置的EPID签名进行验证。

 

EPID提供的第二个安全性改进是能够通过检测损坏的签名或密钥来撤销单个设备。如果设备使用的私钥已被泄露或被盗,则允许EPID生态系统识别出该错误,可以撤消该设备并防止将来发生任何伪造。在安全性交换期间,EPID协议要求成员执行数学证明,以表明他们无法创建已在签名吊销列表上标记的任何签名。内置的撤消功能允许立即将设备甚至整个设备组标记为撤消,并立即拒绝服务。它允许仅基于签名撤销匿名设备,这允许发行者在不知道禁止哪个设备的情况下从组中禁止设备。

案例:

匿名证明硬件设备是正品是一个典型案例。

另一个案例, 是针对数字流内容的数字版权管理。确保数据流传输到的设备(硬件播放器)是安全真实。英特尔®Insider™技术使用了EPID key,可以保护内容在设备上查看但不可以复制。

Intel® Insider™技术
http://blogs.intel.com/technology/2011/01/intel_insider_-_what_is_it_no/

证书请求分发过程

参考下图。这是一个验证IOT设备是正品不是假冒品的流程。  Vendor 向Intel 申请key。 Intel 会生成组key和成员key, 并将key发给vendor。Vendor会将成员key发给IOT 设备成员。Intel会删除成员key,只存储组key。

对于支持英特尔®EPID的产品,对于支持英特尔®EPID的产品,英特尔将512位数字直接融合到处理器的称为管理引擎的子模块中。英特尔®EPID私有成员密钥使用英特尔®EPID组ID编码,该ID唯一地将设备标识为组的一部分。

 

 

 

同时作为为发行者和验证者,Intel为使用英特尔®EPID密钥编码的设备维护公共证书。私有成员密钥需要与标准PKI私有密钥相同级别的保护。只能使用由RSA安全证书(信任根为Intel)签名的应用程序来访问私钥。其他芯片制造商可以遵循类似的过程,仅允许其公司的受信任应用程序访问其产品上的私钥。

供应(Provisioning)

设备部署到现场后,是无法立即使用英特尔®EPID,需要一个Provisioning的过程,启动有个Provisioning过程来获取访问Internet的权限。之后,就可以通过有效的英特尔®EPID签名来证明所有未来交易的真实性

该过程,验证者主动询问成员,并发送EPID  公共Key. 成员会存储EPID 的组key和私有成员key.

 

 

 

Revocation(吊销)

EPID通过标识英特尔®EPID成员签名或私有成员密钥(如果能知道的话)来支持在成员资格级别进行吊销。EPID也支持整个组级别的撤消。

验证者或发行者都可以发起撤销成员,但是只有发行者可以撤消英特尔®EPID成员或组。

如果撤销的成员很多,其吊销列表会随着时间的推移而增长, 会导致性能线性下降。 这意味着随着时间的推移验证链中的每个人都将花费更长的时间。推荐的解决方案是创建一个新的组,然后将成员转移到该新组中,最后撤销旧组。

图中:

PRIV-RL –已知私钥

SIG-RL –平台成员密钥未恢复(not recovered),已知签名

GROUP-RL –撤消整个组

成员设备和发行者之间的加入协议(Join protocol)支持将有效的英特尔®EPID私钥传输到设备的可能性。密钥安全和受信任的传输机制,不在协议范围内。

 

 

 

Quick Facts:

自2008年发布5系列芯片组以来,英特尔已发布了超过40亿个英特尔®EPID密钥

英特尔®EPID生态系统中的设备仅允许使用组ID进行匿名身份验证

英特尔®EPID是英特尔直接匿名证明的实现

英特尔®EPID支持基于私钥,英特尔®EPID签名或整个组的吊销设备

芯片提供商可以创建自己的英特尔®EPID生态系统

OEM / ODM可以使用符合Intel®EPID的芯片设备来提供快速而安全的配置

英特尔®产品包括一个嵌入式的真正随机数生成器-为哈希算法提供更快,更安全的种子值。 (SDK需要在任何英特尔®EPID的实现中使用安全的随机数生成器。)

posted @ 2020-11-04 11:07  lvmxh  阅读(1201)  评论(0编辑  收藏  举报