标准搜索结果: 'GB/T 15843.6-2018'
标准编号 | GB/T 15843.6-2018 (GB/T15843.6-2018) | 中文名称 | 信息技术 安全技术 实体鉴别 第6部分:采用人工数据传递的机制 | 英文名称 | Information technology -- Security techniques -- Entity authentication -- Part 6: Mechanisms using manual data transfer | 行业 | 国家标准 (推荐) | 中标分类 | L80 | 国际标准分类 | 35.040 | 字数估计 | 34,378 | 发布日期 | 2018-09-17 | 实施日期 | 2019-04-01 | 起草单位 | 中国科学院数据与通信保护研究教育中心、北京数字认证股份有限公司、飞天诚信科技股份有限公司 | 归口单位 | 全国信息安全标准化技术委员会(SAC/TC 260) | 提出机构 | 全国信息安全标准化技术委员会(SAC/TC 260) | 发布机构 | 国家市场监督管理总局、中国国家标准化管理委员会 |
GB/T 15843.6-2018
Information technology - Security techniques - Entity authentication - Part 6: Mechanisms using manual data transfer
ICS 35.040
L80
中华人民共和国国家标准
信息技术 安全技术 实体鉴别
第6部分:采用人工数据传递的机制
(ISO/IEC 9798-6:2010,IDT)
2018-09-17发布
2019-04-01实施
国 家 市 场 监 督 管 理 总 局
中国国家标准化管理委员会 发 布
目次
前言 Ⅰ
引言 Ⅱ
1 范围 1
2 规范性引用文件 1
3 术语和定义 1
4 符号和缩略语 3
5 通用要求 3
6 使用短检验值的机制 4
6.1 概述 4
6.2 机制1:一个设备具有简单输入接口,另一个具有简单输出接口 4
6.3 机制2:两个设备都具有简单输入接口 6
7 使用短摘要值或短密钥的机制 7
7.1 概述 7
7.2 机制3:一个设备具有简单输入接口,另一个具有简单输出接口 7
7.3 机制4:一个设备具有简单输入接口,另一个具有简单输出接口 9
7.4 机制5:两个设备都具有简单输入接口 10
7.5 机制6:两个设备都具有简单输入接口 11
8 使用消息鉴别码(MAC)的机制 13
8.1 概述 13
8.2 机制7:两个设备都具有简单输出接口 13
8.3 机制8:一个设备具有简单输入接口,另一个具有简单输出接口 16
附录A(规范性附录) ASN.1定义 18
附录B(资料性附录) 使用人工鉴别协议来执行密钥交换 19
附录C(资料性附录) 使用人工鉴别协议来执行公钥交换 21
附录D(资料性附录) 机制安全性和参数长度选择 23
附录E(资料性附录) 一种产生短检验值的方法 25
附录F(资料性附录) 对机制1~8的安全性及效率的比较分析 27
附录G(资料性附录) 生成短摘要值的方法 29
参考文献 30
前言
GB/T 15843《信息技术 安全技术 实体鉴别》分为以下部分:
---第1部分:总则;
---第2部分:采用对称加密算法的机制;
---第3部分:采用数字签名技术的机制;
---第4部分:采用密码校验函数的机制;
---第5部分:使用零知识技术的机制;
---第6部分:采用人工数据传递的机制。
本部分为GB/T 15843的第6部分。
本部分按照GB/T 1.1-2009给出的规则起草。
本部分使用翻译法等同采用ISO/IEC 9798-6:2010《信息技术 安全技术 实体鉴别 第6部分:
采用人工数据传递的机制》。
请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任。
本部分由全国信息安全标准化技术委员会(SAC/TC260)提出并归口。
本部分起草单位:中国科学院数据与通信保护研究教育中心、北京数字认证股份有限公司、飞天诚
信科技股份有限公司。
本部分主要起草人:夏鲁宁、张国柱、张琼露、林雪焰、朱鹏飞。
引 言
在日常通信中,两个设备之间经常需要通过非安全通道执行实体鉴别,但非安全通道易受主动或被
动的攻击,所谓主动攻击包括恶意第三方在非安全通道执行数据插入、篡改、删除或重放等动作。
GB/T 15843的其他部分指定的鉴别机制适用于两个设备共享同一个秘密密钥,或者彼此拥有对方
的非对称公钥。
GB/T 15843的本部分所述的实体鉴别机制无需假定双方预先建立共享密钥关系,而是使用人工
手段进行鉴别,即实体鉴别通过从一个设备到另一个设备人工传递短数据串来实现,或通过人工对比两
个设备输出的短数据串是否一致来实现。
在本部分中,“实体鉴别”这个术语的含义与其他部分有所不同,鉴别涉及的两个设备都由同一个用
户持有,或由两个彼此之间存在可信通信途径的不同用户持有,用户验证两个设备在执行了本部分的鉴
别机制后是否成功共享了数据串。当然,数据串可以包含两个设备或其中一个设备的标识符。
如资料性附录B和附录C所描述的那样,人工鉴别机制可作为建立秘密密钥共享或可靠交换公钥
的基础。此外,人工鉴别机制还可被用作其他秘密或公开安全参数的交换,包括安全策略声明或时间
戳等。
本部分凡涉及密码算法的相关内容,按国家有关法规实施;凡涉及到采用密码技术解决保密性、完
整性、真实性、不可否认性需求的按密码相关国家标准和行业标准实施。
信息技术 安全技术 实体鉴别
第6部分:采用人工数据传递的机制
1 范围
GB/T 15843的本部分规定了在设备之间基于人工数据传递进行实体鉴别的8种机制。本部分指
明了这些机制如何被用来支持密钥管理功能,以及如何安全地选择各机制的参数。对于这8种机制,本
部分给出了其ASN.1定义,并对它们的安全性水平和效率进行了分析比较。
这些机制可以适用于多类应用场景。一种典型的应用是在个人网络中,作为设备接入网络的过程
的一部分,用户对于自己掌握的两个具备无线通信能力的设备执行二者相互间的实体鉴别。
2 规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文
件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
GB/T 15843.1-2017 信息技术 安全技术 实体鉴别 第1部分:总则(ISO/IEC 9798-1:
2010,IDT)
3 术语和定义
GB/T 15843.1-2017界定的以及下列术语和定义适用于本文件。
3.1
检验值 check-value
一个比特串,由某种检验函数计算产生,从通信的发起方传递给通信的接收方,且接收方有能力检
验其正确性。
3.2
检验函数 check-valuefunction
函数f,将一个比特串和一个短密钥映射为一个定长为b位的检验值,短密钥可容易地被输入到用
户设备或从中读取。检验函数满足以下属性:
---对于任何密钥k和任何比特串d,函数f(d,k)可以被有效计算;
---寻找两个不同的比特串d 和d',使得对于密钥k有f(d,k)=f(d',k),在计算上是不可行
的,尽管能够满足上述等式的k值在k的取值空间中并不是一小部分。
注:在实践中,一个典型的短密钥包含4~6个数字或字母。
3.3
对于接收到的数据,确认其来源的真实性。
[ISO 7498-2]
3.4
摘要值 digest-value
一个比特串,由某种摘要函数计算产生,从通信的发起方传递给通信的接收方,且接收方有能力检
验其正确性。
3.5
摘要函数 digestfunction
函数d,将一个比特串和一个长密钥映射为一个定长为b位的摘要值。摘要值可以容易地被输入
到用户设备中或从中读取,并满足以下属性:
---对于任何密钥k和任何比特串m,d(m,k)可以被有效地计算;
---寻找两个不同的比特串m 和m',使得对于密钥k有d(m,k)=d(m',k),在计算上是不可行
的。满足这个等式的密钥占所有可能密钥取值的比例大于(2-b+ε),b是摘要值的固定长度,
ε是一个相对于2-b可忽略不计的数。
注1:实践中,如果密钥k的长度是典型的密码杂凑值长度,例如160位,那么上述第二个属性应被满足。这个需求
产生自杂凑函数密钥长度的理论下界,更多的细节讨论参见附录F。
注2:附录D、附录F和附录G给出了对密钥和摘要长度的进一步讨论。
3.6
杂凑函数 hash-function
将任意长比特串映射为定长比特串的函数,满足如下属性:
---给定一个输出比特串,寻找一个输入比特串来产生这个输出比特串,在计算上是不可行的;
---给定一个输入比特串,寻找另一个不同的输入比特串来产生相同的输出比特串,在计算上是不
可行的。
[ISO/IEC 10118-1]
3.7
一个密钥和一个检验值的组合,由参与鉴别的两个设备之一产生,并具有下列属性:当被输入到另
一个设备时,这个证书可被用于在稍晚时刻完成人工鉴别过程。
3.8
使用消息鉴别算法产生的输出比特串。
[ISO/IEC 9797-1]
3.9
将一个比特串和一个密钥进行计算,得到定长比特串的算法,满足如下属性:
---对于任意密钥和任何输入比特串,都可以有效计算;
---对于某个具体的密钥,在没有任何关于此密钥先验知识的情况下,计算出任何新输入比特串的
消息鉴别码在计算上都是不可行的,即便已知之前所有的输入比特串和对应的消息鉴别码。
这意味着即使在观察到前i-1个比特串和对应的消息鉴别码后,蓄意选取第i个输入比特串
使之与前面某个输入比特串相等,二者的消息鉴别码也不会相等或有任何相关性。
[ISO/IEC 9797-1]
3.10
在两个设备之间,通过(潜在的非安全)通信通道进行消息交换,同时也采用人工方式传递有限数
据,以此实现实体鉴别的过程。
3.11
简单输入接口 simpleinputinterface
允许用户向设备告知某步骤成功或非成功完成的设备接口,例如2个或1个按钮,在给定时间区间
内用户选择按下或不按下,从而告知设备成功或失败。
3.12
允许设备向用户告知某步骤成功或非成功完成的设备接口,例如可以被实现为红绿指示灯或单独
一个指示灯,它通过不同的闪亮方式,向用户通知成功或失败。
4 符号和缩略语
下列符号和缩略语适用于本文件。
A,B 参与鉴别机制的实体的标签
d 摘要函数,用于机制3和5,d(D,k)表示使用密钥k对比特串D 计算的摘要值
D 设备A和B之间共享的一个比特串,通过执行人工实体鉴别机制来产生
h 杂凑函数,在机制3~6中使用
IU 实体U 的可区分标识符
K 在机制1和2中,被检验函数使用的(短)密钥
k 机制3~6中使用的(长)密钥
KA,KAi,KB,KBi 机制7和8中使用的随机 MAC密钥
MAC 消息鉴别码
RU 在机制4、6、7和8中使用(短)随机比特串
‖ 在GB/T 15843.1-2017中,X‖Y 被定义为数据项X 和Y 根据给定顺序级联的结果。当
两个或多个数据项级联的结果在本部分所描述的某个机制中被作为输入,那么这个级联结果应能被唯
一地解析成构成它的数据项,也就是说,它可被无歧义地解释。这个特性可以通过多种方式实现,实现
方式与具体应用相关,例如可以用下列方法a)对每个被级联的数据项要求固定长度,并且在机制执行
的全过程都保持它们的固定长度,或者b)对级联后的数据项序列使用一种可以确保唯一性的方法进行
编码,例如使用ISO/IEC 8825-1所定义的可辨识编码规则(DER)。
注:附录D和附录F给出了如何选取适当的短密钥和 MAC密钥长度的指南。
5 通用要求
本章指定鉴别机制1~8应满足的通用要求。除这些通用要求外,各鉴别机制还应分别满足第6
章、第7章和第8章规定的具体要求。
a) 执行人工传递鉴别的两个设备之间应存在信道(例如:无线链接或互联网链接),这个链接不必
是安全的,也就是说,本部分的机制被设计为在攻击者有能力监控甚至篡改被传递数据的情况
下,也能够安全地执行;
b) 执行人工传递鉴别的两个设备应同时具有用户数据输入接口和输出接口;
c) 设备的用户数据输入接口至少应具备指示一个鉴别步骤成功或不成功完成的能力(例如,2个
或1个按钮,在给定时间区间内用户选择按下或不按下,从而告知设备成功或失败),这种用户
数据输入接口以下称为简单输入接口。相比之下,一个标准的输入接口应支持短符号串输入,
例如支持数字、十六进制数或字母的键盘。除非另有明确说明,否则每个设备都应具有一个标
准的数据输入接口;
d) 设备的用户数据输出接口至少应具备指示一个鉴别步骤成功或失败的能力(例如可以用红色
和绿色灯的方式实现),这种用户数据输出接口以下称为简单输出接口。相比之下,一个标准
的输出接口应支持短符号串的输出,如数字、十六进制或字母显示屏。除非另有明确说明,否
则每个设备都应具有一个标准的数据输出接口;
e) 对于机制1和机制2,两个执行实体鉴别的设备应就所使用的具体检验函数达成一致,且有能
力实现此函数;
注1:附录D给出了用于机制1和机制2的检验函数、检验值和随机密钥长度的选择指南。附录E给出了用于机制
1和机制2的无条件安全检验函数的构造方法。
f) 对于机制3~6,两个执行实体鉴别的设备应就所使用的具体杂凑函数h达成一致,且有能力
实现此函数;
注2:附录D给出了用于机制3~6的杂凑函数输入输出位长度的选择指南。
g) 对于机制3和机制5,两个执行实体鉴别的设备应就所使用的具体摘要函数d达成一致,且有
能力实现此函数;
注3:附录D给出了用于机制3和机制5的摘要长度的选取指南,附录G则给出了适用于机制3和机制5的使用消
息鉴别算法和杂凑函数来构造摘要函数的方法。
h) 对于机制7和机制8,两个执行实体鉴别的设备应就所使用的具体消息鉴别算法达成一致,且
有能力实现此算法;
注4:附录D给出了用于机制7和机制8的消息鉴别算法、消息鉴别码和随机密钥长度的选择指南。
i) 在执行机制1~8之前,两个设备应交换一个数据串D(结合机制3~6中的杂凑值)。D 可由
一个设备产生并发送给另一个设备,或两个设备分别产生一个数据串并通过双向信道发送给
对方,D 是双方产生的数据串的级联;
j) 执行鉴别的两个设备可由同一个用户控制,也可由两个不同的用户控制,如果是后者则这两个
用户之间应该存在可信的通信途径;
k) 设备的用户应全程参与鉴别过程以保证正确处理这些机制。执行期间,设备间的人工数据传
递不应存在显著延时,设备应按照规范的定义自动触发超时,以排除特定的攻击。
6 使用短检验值的机制
6.1 概述
本条指定了两种使用检验值的人工鉴别机制,适用于多种不同类型的设备。具体地:
---第一种机制(机制1)适用于一个设备具有简单输入接口,另一个设备具有简单输出接口的
情况;
---第二种机制(机制2)适用于两个设备都具有简单输入接口的情况。
标准输入或输出接口可被用来模拟简单输入或输出接口。因此,如果两个设备都具有标准输入和
输出接口,那么两种机制都是适用的。
这两种机制都以以下的方式执行:一个数据串D 通过两个设备共享的信道被从一个设备传递到另
一个设备(或是两个设备各自产生的数据串的级联),人工实体鉴别机制随之启动。作为鉴别机制的结
果,两个设备都确认自己所掌握的数据串D 与对方所掌握的相同。
6.2 机制1:一个设备具有简单输入接口,另一个具有简单输出接口
6.2.1 具体要求
本机制应满足如下具体要求:
a) 本机制适用于一个设备(设备A)具有简单输入接口,另一个设备(设备B)具有简单输出接口
的情况;
b) 设备A应具备产生密钥的能力。
6.2.2 数据交互过程
数据交换和操作的过程如下(见图1):
a) 两个设备都应输出一个信号,确认接收到了数据串D,且已准备好启动鉴别机制。当观察到两
个设备都已准备好,用户应输入一个信号给设备A,通知它机制可以开始;
b) 设备A应产生一个随机密钥K,适用于双方使用的检验函数。使用此密钥K,设备A应计算
数据串D 的检验值,检验值和密钥K 应随后被设备A的输出接口输出,用户应通过其输出接
口读取检验值和密钥K;
c) 用户应使用设备B的输入接口,将设备A输出的检验值和密钥K 输入到设备B。设备B应使
用密钥K 针对它所存储的数据串D 重新计算检验值,如果两个检验值一致,则设备B应通过
简单输出接口输出一个成功信号给用户,否则输出失败信号;
d) 用户应将设备B输出的成功或失败的结果,通过设备A的简单输入接口输入设备A。
图1 人工鉴别机制1
6.2.3 人工鉴别证书
在人工鉴别机制1中,没有任何鉴别信息是通过非安全通道传递的。因此,如果在设备B获得数
据串D 之前,随机密钥K 和检验值就从设备A传递到了设备B,也就不会影响机制1的安全性。随机
密钥K 和(使用K、D 计算的)检验值的组合,被称作人工鉴别证书。利用人工鉴别证书,机制1提供了
一种延时鉴别的手段。显然,这种手段只适用于数据串D 由设备A产生并发送给设备B的情况。使
用人工鉴别证书的鉴别协议如下所述(应满足6.2.1提出的要求),需注意此协议能够支持数据起源鉴
别,但不提供实体身份鉴别能力。
假设设备A产生数据串D,但需稍晚发送给设备B:
a) 设备A生成适用于既定检验函数的随机密钥K,并使用密钥K 计算数据串D 的检验值。密
钥K 和检验值随后通过设备A的输出接口被输出给用户,并由用户读取;
b) 用户应使用设备B的输入接口将设备A输出的密钥K 和检验值输入到设备B,并由设备B
本地保存;
c) 一段时间后,当设备B接收到来自设备A的数据串D,就使用密钥K 重新计算数据串D 的检
验值,如果与先前本地存储的检验值一致,则设备B接受数据串D,并通过其简单输出接口输
出成功信号给用户,否则输出失败信号。
注:数据串D 可以包含多类数据,例如设备的公钥、身份标识、服务域等。附录B提供了一个例子,表明人工鉴别证
书可以用来在两个设备之间建立一个共享密钥。
6.3 机制2:两个设备都具有简单输入接口
6.3.1 具体要求
本机制应满足如下具体要求:
a) 本条指定的机制适用于两个设备(A和B)都具有简单输入接口的情况;
b) 其中一个设备(设备A)应具有产生密钥的能力。
6.3.2 数据交互过程
数据交换和操作的过程如下(见图2):
a) 两个设备都应输出一个信号,确认接收到了数据串D,且已准备好启动鉴别机制。当观察到两
个设备都已准备好,用户应输入一个信号给设备A,通知它机制可以开始;
b) 设备A产生一个随机密钥K,适用于双方使用的检验函数。使用此密钥K,设备A应计算数
据串D 的检验值,检验值和密钥K 通过设备A的输出接口输出,设备A还应通过与设备B
共享的信道将密钥K 传递给设备B;
c) 设备B应使用接收到的密钥K 计算本地存储的数据串D 的检验值,并输出密钥K 和检验值;
d) 用户应比较两个设备输出的检验值和密钥K。如果一致,则用户通过两个设备的简单输入接
口向两个设备输入接受信号;如果检验值或密钥值不一致,则鉴别失败,用户应通过两个设备
的简单输入接口向两个设备输入拒绝信号。如果两个设备长时间未收到用户的接受信号,则
认为鉴别失败(这需要实施一种超时机制)。
图2 人工鉴别机制2
7 使用短摘要值或短密钥的机制
7.1 概述
本条指定了四种人工鉴别机制,涉及短摘要值或短密钥的人工传递。这四种机制适用于不同类型
的设备,具体地:
---前两种机制(机制3和机制4)适用于一个设备具有简单输入接口,另一个设备具有简单输出
接口;
---后两种机制(机制5和机制6)适用于两个设备都具有简单输入接口。
标准输入或输出接口可被用来模拟简单输入或输出接口。因此,如果两个设备都具有标准输入和
输出接口,那么四种机制都是适用的。
所有的机制都以以下的方式执行:一个数据串D 和一个杂凑值通过双方之间的信道被从一个设备
传递到另一个(D 也可以是两个设备各自产生的数据串的级联),人工实体鉴别机制随之启动。作为鉴
......
|