轻量级鉴别与访问控制机制范围

声明

本文是学习轻量级鉴别与访问控制机制. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们

轻量级鉴别与访问控制机制范围

本标准规定了轻量级的鉴别机制与访问控制机制。

本标准适用于无线传感器网络、射频识别、近场通信等资源受限的应用场景下鉴别与访问控制机制设计开发和应用。

轻量级鉴别与访问控制机制规范性引用文件

下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

GB/T 15629.3-2014 信息技术 系统间远程通信和信息交换 局域网和城域网
特定要求
第3部分:带碰撞检测的载波侦听多址访问(CSMA/CD)的访问方法和物理层

GB/T 25069 信息安全技术 术语

GB/T 32905 信息安全技术 SM3密码杂凑算法

GB/T 32907 信息安全技术 SM4分组密码算法

ISO/IEC 29180:2012 信息技术 系统间远程通信和信息交换
泛在传感器网络安全框架(Information technology - Telecommunications and
information exchange between systems - Security framework for ubiquitous
sensor networks)

轻量级鉴别与访问控制机制 术语和定义

GB/T 25069界定的以及下列术语和定义适用于本文件。

3.1

鉴别机制 authentication mechanism

证实实体是其所声称的实体的机制。

3.2

访问控制 access control

保证数据处理系统的资源只能由被授权主体按照授权方式进行访问的手段。

3.3

可信第三方 trusted third party

在同安全相关的活动方面,被其它实体信任的安全机构或其代理。本标准中,可信第三方是实体A和实体B所信任的第三方实体,可对实体A和实体B的身份真实性进行验证。

轻量级鉴别与访问控制机制 符号与缩略语

符号

||  消息串联

<<< 左循环移位

SigX X的签名

+ 模加

- 模减

On 长度为n比特的二进制常量

Q 用户对某一资源的访问请求

RNX 实体X产生的随机数

缩略语

ACL 访问控制列表 Access Control List

ACr 访问控制器 Access Controller

BK 基密钥Base Key

DAE 目的访问实体 Destination Access Entity

DHKE DH密钥交换 Diffie-Hellman Key Exchange

HMAC 基于密码杂凑产生的消息鉴别码 Hash based Message Authentication
Code

IBC 标识密码 Identity Based Cryptography

MAC 消息鉴别码 Message Authentication Code

MEK 消息加密密钥 Message Encryption Key

MIC 消息完整性校验 Message Integrality Check

MIK 消息完整性密钥 Message Integrality Key

PSK 预共享密钥 Pre-Shared Key

SK 会话密码Session Key

TPK 临时公钥 Temporal Public Key

TTP 可信第三方 Trusted Third Party

轻量级鉴别机制

概述

轻量级鉴别机制通过降低鉴别过程中的计算和通信复杂度实现实体之间的身份真实性的确认。较之通常的机制,轻量级鉴别机制有如下几个衡量角度:

a) 计算资源占用少;

b) 交互消息少;

c) 耗时短;

d) 所需要的存储空间少。

基于异或运算的鉴别机制

基于异或运算的鉴别机制,通过简单的异或、移位运算来实现实体A和实体B之间的身份真实性的确认,鉴别过程见图1。

siduwenku.com 专注免费分享高质量文档 图1
基于异或运算的鉴别机制消息交互示意图

鉴别之前,实体A和实体B应具备预共享密钥PSK和共享常量On,用n表示机制中随机数和密钥的长度,预共享密钥PSK的使用需符合特定场景的需求,随机数的长度应和PSK长度保持一致。鉴别过程如下:

a) 实体A产生一个随机数RNA,计算SRNA=(RNA+On)PSK,并向实体B发鉴别请求消息SRNA。其中On长度为n的二进制常量,n选择与机制中所使用的PSK和随机数长度一致,推荐On
为长度为n比特的01交替的二进制常量;其中 +是在2n模加;

  

e) 实体B收到鉴别请求消息后,首先计算RNA=SRNAPSK-On,并计算SORNA=RNA(PSK’+On),其中RNA’=RNA<<<s,PSK’=PSK<<<s,即RNA’和PSK’分别表示RNA和PSK在随机数长度比特向量上向左循环移位s比特后的值,s的取值为RNA中值为1的比特的个数;

实体B产生一个随机数RNB,计算SRNB=(RNB+On)PSK。实体B发送鉴别响应消息SORNA和SRNB给实体A。

f) 实体A收到鉴别响应消息后,分别计算SORNARNA’和PSK’+On,比较SORNARNA’是否与PSK’+On相等,如果不相等,则实体A丢弃该消息;如果相等,则实体A对实体B鉴别成功。然后实体A计算RNB=SRNBPSK-On,并计算SORNB=RNB(PSK’+On),其中RNB’=RNB<<<m,PSK’=PSK<<<m,m的取值为RNB中值为1的比特的个数,实体A向实体B发送鉴别确认消息SORNB;其中-是在2n模减;

g) 实体B收到鉴别确认消息后,,分别计算SORNBRNB’和PSK’+On,比较SORNBRNB’是否与PSK’+On相等,如果相等,则实体B对实体A鉴别成功。

注1:上述机制中RNA、RNB的运算均先算异或后算模减;

注2:基于异或运算的鉴别机制,利用了异或、移位运算实现鉴别,计算量小,鉴别过程耗时短,所需存储空间少;其安全性相对于其他三种机制较弱,适用于计算资源、存储资源受限,但对安全有一定需求的应用场景。

基于密码杂凑算法的鉴别机制

基于密码杂凑算法的鉴别机制利用密码杂凑算法实现实体A和实体B之间的身份真实性的确认,交互过程见图2。该机制中密码杂凑算法应使用GB/T
32905定义的SM3算法,使用SM3算法时,HMAC为HAMC-SM3,KD-HMAC为KD-HMAC-SM3;其中HMAC-SM3和KD-HMAC-SM3定义见GB/T
15629.3-2014中I.10.4和I.10.5。

siduwenku.com 专注免费分享高质量文档

图2 基于密码杂凑算法的鉴别机制消息交互示意图

鉴别之前,实体A应具备身份信息IDA,实体B应具备身份信息IDB,实体A和实体B应具备预共享密钥PSK,预共享密钥PSK的使用需符合特定场景的需求,随机数的长度应和PSK长度保持一致。鉴别过程如下:

a) 实体A产生一个随机数NA,并向实体B发送包含NA和IDA的鉴别请求消息;

b) 实体B收到实体A的鉴别请求消息后,产生随机数NB,并利用密钥列表中与实体A预共享的密钥PSK,根据IDA、IDB、NA、NB计算MIK||SK=KD-HMAC(PSK,IDA||IDB||NA||NB),其中,IDA和IDB分别是实体A和实体B的身份标识,MIK为实体A与实体B之间的消息完整性密钥,SK为实体A与实体B之间的会话密钥。然后,实体B利用MIK计算消息鉴别码MAC1=HMAC
(MIK,NA||NB),并构造鉴别响应消息NA||NB||IDB||MAC1发送给实体A;

c) 实体A收到实体B的鉴别响应消息后,首先检查鉴别响应消息中的随机数NA与其在步骤a)中发送给实体B的随机数NA是否一致,若不一致,实体A对实体B鉴别失败;若一致,实体A计算MIK||SK=KD-HMAC(PSK,IDA||IDB||NA||NB),并利用MIK计算消息鉴别码MAC2=HMAC
(MIK,NA||NB),如果MAC2≠MAC1,实体A对实体B鉴别失败;如果MAC2=MAC1,则实体A将SK保存为与实体B的会话密钥,并计算MAC3=HMAC(MIK,NB),构造鉴别确认消息NB||MAC3发送给实体B;若实体A和实体B使用该机制且不含密钥确认消息时,实体A在发出鉴别确认消息后的一段时间后或在正确解密实体B使用该会话密钥加密发来的消息后,实体A对实体B鉴别成功,实体A启用该会话密钥;若实体A和实体B使用该机制且含密钥确认消息时,按照步骤e)执行后续操作;

d) 实体B收到实体A的鉴别确认消息后,检查鉴别确认消息中的随机数NB与其在步骤b)中发送给实体A的随机数NB是否一致,若不一致,实体B对实体A鉴别失败;若一致,实体B计算消息鉴别码MAC4=HMAC(MIK,NB),如果MAC4≠MAC3,实体B对实体A鉴别失败;如果MAC4=MAC3,则实体B对实体A鉴别成功,实体B将MEK保存并启用作为与实体A之间的会话密钥。若实体A和实体B使用该机制且不含密钥确认消息时,实体B完成鉴别过程始与实体A进行会话;若实体A和实体B使用该机制且含密钥确认消息时,计算MAC5=HMAC(MIK,NA),并发送密钥确认消息NA||MAC5给实体A,用于通知实体A启用会话密钥SK;

e) 实体A收到实体B的密钥确认消息后,实体A计算MAC6=HMAC(MIK,NA),如果MAC6≠MAC5,实体A对实体B鉴别失败;如果MAC6=MAC5,则实体A对实体B鉴别成功,实体A启用会话密钥MEK,开始与实体B进行会话。

基于分组密码算法的鉴别机制

siduwenku.com 专注免费分享高质量文档

图3 基于分组密码算法的鉴别机制消息交互示意图

基于分组密码算法的鉴别机制,利用分组密码算法实现实体A和实体B之间的身份鉴别,交互过程见图3。该机制中分组密码算法应使用GB/T
32907定义的SM4算法。

鉴别之前,实体A应具备身份信息IDA,实体B应具备身份信息IDB,实体A和实体B应具备预共享密钥PSK,预共享密钥PSK的使用需符合特定场景的需求,随机数的长度应和PSK长度保持一致。鉴别过程如下:

a) 实体A产生一个随机数NA,并向实体B发送包含NA的鉴别请求消息;

  

h) 实体B收到实体A的鉴别请求消息后,生成随机数NB1和NB2,计算CT1||MIC1=E(PSK,NA||
NB1||NB2),并向实体A发送包含NA和CT1||MIC1的鉴别响应消息;

i) 实体A收到实体B发送的鉴别响应消息后,首先判断该消息中的NA与其在步骤a)中发送给实体B的NA是否一致,如果不一致,则实体A对实体B鉴别失败;如果一致,实体A利用PSK解密验证CT1||MIC1,如果MIC1验证不通过,则实体A对实体B鉴别失败;如果MIC1验证通过,则进一步验证解密得到NA与其在步骤a)中发送给实体B的NA是否一致,如果不一致,则实体A对实体B鉴别失败;如果一致,则实体A对实体B鉴别成功,实体A将解密得到的NB2作为与实体B的会话密钥,计算CT2||MIC2=E(NB2,NB1),并向实体B发送鉴别响应确认消息,该消息中包括字段NB1和CT2||MIC2

j) 实体B收到实体A的鉴别响应确认消息后,首先判断该消息中的NB1与其在步骤b)中发送给实体A的NB1是否一致,如果不一致,则实体B对实体A鉴别失败;如果一致,则实体B利用NB2解密验证CT2||MIC2,如果MIC2验证不通过,则实体B对实体A鉴别失败;如果MIC2验证通过,则进一步验证解密得到NB1与其在步骤b)中发送给实体A的NB1是否一致,如果不一致,则实体B对实体A鉴别失败;如果一致,则实体B对实体A鉴别成功,实体B将NB2作为与实体A的会话密钥。

注:E为一种分组加密算法,CT||MIC=E(KEY,S)表示将KEY对S进行加密并计算完整性校验码,其中CT表示密文,MIC表示完整性校验码,CT和MIC的拆分取决于具体的应用。在一些模式中,需先基于KEY导出消息完整性校验密钥和消息加密密钥,然后再分别使用该两个密钥计算完整性校验码和密文。在解密验证时,根据所使用的模式不同,验证完整性校验码和解密的先后顺序可能不同。

轻量级访问控制机制

概述

轻量级访问控制机制基于分组密码算法或访问控制列表ACL等实现对用户的访问控制。较之通常的机制,轻量级访问控制机制从5.1所列出的几个角度进行衡量。

基于对称密码算法的访问控制机制

siduwenku.com 专注免费分享高质量文档图4
基于分组密码算法的访问控制机制消息交互示意图

本机制基于分组密码算法实现访问控制。其中,ACr是访问控制器,User是用户,DAE是目的访问实体。ACr对User访问DAE的控制过程见图4。该机制中分组密码算法应使用GB/T
32907定义的SM4算法;该机制中密码杂凑算法应使用GB/T
32905定义的SM3算法,使用SM3算法时,HMAC为HAMC-SM3。分组密钥算法分组的长度需符合特定场景的需求,随机数的长度应和PSK长度保持一致。

a) User在向网络中的DAE发送访问请求之前,首先向DAE发送鉴别请求消息,该消息中主要包含User产生的随机数N1

b) DAE收到User的鉴别请求消息后,产生随机数N2,并利用与ACr之间的共享密钥KACr,DAE计算ET1=E(KACr,DAE,N1)
,将N1||N2||ET1作为鉴别响应消息发送给User,其中,E为对称加密算法;

c) User收到DAE的鉴别响应消息后,首先判断消息中的随机数N1是否是User选择的随机数,若不是,直接丢弃该消息;若是,则利用与ACr之间的共享密钥KACr,User计算ET2=E(KACr,User,N1),计算消息鉴别码MIC1=HMAC(KACr,User,N1||IDDAE||ET1||ET2),构造实体鉴别请求消息N1||IDDAE||ET1||ET2||MIC1发送给ACr,其中,IDDAE是DAE的身份标识;

d) ACr收到User的实体鉴别请求消息后,首先根据MIC1判断消息的完整性,若验证不通过,丢弃该消息;若验证通过,利用与DAE之间的共享密钥KACr,DAE解密ET1,若解密后得到的N1与User在步骤c)中发送的N1不相等,ACr构造实体鉴别响应消息N1||IDDAE||RES(DAE)||MIC2发送给User,其中MIC2=HMAC(KACr,User,N1||IDDAE||RES(DAE)),Res(DAE)=Failure表示ACr对DAE鉴别失败;若解密后得到的N1与User在步骤c)中发送的N1相等,ACr利用与User共享的密钥KACr,User解密ET2,若解密后得到的N1与User在步骤c)中发送的N1不相等,终止鉴别;若解密后得到的N1与User在步骤c)中发送的N1相等,ACr生成User和DAE间的会话密钥KDAE,User,并根据User的身份标识查询ACL,获得User的访问控制信息ACLUser,连同User的访问期限TV,利用KACr,DAE计算ET3=E(KACr,DAE,IDUser||KDAE,User||TV||ACLUser),并利用KAC,User计算ET4=E(KACr,User,KDAE,User),计算MIC2=HMAC(KACr,User,N1||IDDAE||RES(DAE)||ET3||ET4),构造实体鉴别响应消息N1||IDDAE||RES(DAE)||ET3||ET4||MIC2发送给User,其中,RES(DAE)=True表示ACr对DAE鉴别成功;

e) User收到ACr的实体鉴别响应消息后,首先判断随机数N1是否是User选择的随机数,若不是,丢弃该消息;若是,根据MIC2判断消息的完整性;若验证不通过,丢弃该消息;若验证通过,User根据RES(DAE)判断DAE的合法性,若RES(DAE)=Failure,表示DAE非法,User终止访问;若RES(DAE)=True,User解密消息中的ET4,产生随机数N3,连同DAE的随机数N2以及User的访问请求利用解密后获得的与目的访问实体间的会话密钥KDAE,User计算ET5=E(KDAE,User,N2||N3||IDUser||QUser),计算MIC3=HMAC(KDAE,User,ET3||ET5),构造访问请求消息ET3||ET5||MIC3发送给DAE;

f) DAE收到User的访问请求后,首先解密ET3,获得会话密钥KDAE,User,根据MIC3判断消息完整性,若校验不通过,拒绝访问;若校验通过,利用KDAE,User解密ET5,判断解密后得到的N2是否是DAE选择的N2,若不是,拒绝访问;若是,则确认解密ET5后获得的IDUser是否是请求访问的User的身份标识,若不是,拒绝访问;若是,记录当前时刻TC,从TC到(TC+TV)这段时间即为User的访问有效期,用户只能在此有效期内访问网络数据,DAE根据ACLUser判断User的访问请求QUser是否合法,若不合法,拒绝访问;若合法,生成应答数据RDAE,连同N3利用KDAE,User计算ET6=E(KDAE,User,N3||RDAE),计算MIC4=HMAC(KDAE,User,ET6),构造访问响应消息ET6||MIC4发送给User;

g) User收到访问响应消息后,首先根据MIC4判断消息完整性,若不完整,丢弃该消息;若完整,利用KDAE,User解密ET6,判断解密得到的N3是否是User选择的N3,若不是,丢弃该消息;若是,User保存应答数据RDAE,后续User与DAE之间的访问请求和应答数据均利用KDAE,User加以保护。

基于访问控制列表的访问控制机制

基于访问控制列表的访问控制机制适用于网络对各类用户的访问控制,该机制基于ISO/IEC
29180:2012,交互过程见图5。

siduwenku.com 专注免费分享高质量文档

图5 基于访问控制列表的访问控制机制

a) 访问控制器ACr构造访问控制列表ACL以及用户身份信息,并在用户访问网络之前进行协议初始化:

  1. ACr本地构造ACL,该ACL包括U_ID字段、ADT字段、VP字段、AI字段,各字段定义如下:

U_ID字段:用户的身份标识;

ADT字段:用户被授权访问的数据类型;

VP字段:用户被授权访问网络的期限;

AI字段:用于鉴别用户身份的依据,可以是证书或者密钥或其他可作为用户身份的依据;

在构造ACL后,ACr对用户进行注册,注册过程如下:ACr首先根据网络用户的身份标识U_ID确定该用户的ADT和VP,然后构造用于鉴别该用户身份的依据AI。ACr将U_ID、ADT、VP、AI作为新条目插入ACL列表中,记做ACLU_ID

  1. 用户访问网络之前,先向ACr发送身份证明请求消息。ACr收到身份证明请求消息后,判断该用户是否已注册,若已注册,则ACr发送身份证明响应消息给该用户,该响应消息中包含ACr为用户构造的AI。同时,ACr将ACL列表中与该用户U_ID对应的包含U_ID、ADT、VP、AI的ACLU_ID以安全的方式发送给网络内的所有实体,实体在该用户VP截止之前保存该ACLU_ID;若用户未注册,则ACr丢弃该用户的身份证明请求消息。

注:安全的方式是指以加密传输等方式保护消息的机密性和完整性。实体间可使用预共享密钥实现加密传输,本标准不限定具体的实现方法,下同。

  

k) 用户在访问目的访问实体前,先向网络发送身份鉴别请求消息,此时由网络中用户的单跳通信区域内的所有实体构成临时访问控制网关对用户进行鉴别,过程如下:

  1. 临时访问控制网关收到用户的身份鉴别请求消息后,临时访问控制网关中的实体首先判断是否存有该用户的ACLU_ID信息,如果存有该信息,表明该用户处于有效期内,实体根据ACLU_ID中的用户AI对用户进行身份鉴别,若实体对用户身份鉴别成功,则投PASS票,并广播该PASS票,若临时访问控制网关中的实体收到的PASS票数大于或等于阈值P,表示用户鉴别成功;如果网关中的实体收到的PASS票小于阈值P,表示鉴别失败,终止该用户的访问;其中阈值P由网络所有者定义,可以是一个PASS票数的固定值,也可以是一个PASS票的比例值等。

  2. 鉴别成功后,在用户访问网络的过程中,当前临时访问控制网关中的实体将根据用户的运动方向、运动速度等对用户将要到达的位置进行测算,并由测算得到的用户将要到达的位置为中心的所有单跳区域内的所有实体构成下一个临时访问控制网关。当前临时访问控制网关中的实体在t时间后将用户鉴别成功消息发送给下一个临时访问控制网关中的实体,下一个临时访问控制网关将根据收到的用户鉴别成功的消息条数是否达到阈值P来判断该用户是否鉴别成功。若用户仍处于有效期VP内,且收到的用户鉴别成功的消息条数大于或等于阈值P,则下一个临时访问控制网关将承认用户的合法性,并将在时间t后将鉴别成功消息再次发送到下一个新的临时访问控制网关内的实体。鉴别成功消息在实体间以安全的方式传输。

l) 用户鉴别成功后,通过临时访问控制网关访问目的访问实体,过程如下:

  1. 用户鉴别成功后,以安全的方式发送访问请求消息给临时访问控制网关,该请求消息中包含访问请求Q,Q中包含用户请求访问的数据类型;

  2. 临时访问控制网关收到用户的访问请求消息后,首先判断用户身份鉴别是否通过且用户是否处于有效期,若用户身份鉴别通过且身份处于有效期,则根据ADT信息判断用户的Q的合法性,若合法,则将Q以安全的方式发送给目的访问实体,该实体将认为由临时访问控制网关转发的Q是合法的,并将根据Q产生访问响应消息,并将该响应消息发送给临时访问控制网关,该网关将转发访问响应消息给用户。访问过程中,如果用户不在有效期内、或用户在有效期内但Q不合法,目的访问实体将直接丢弃用户的Q,终止该用户的访问。

________________________________

延伸阅读

更多内容 可以 轻量级鉴别与访问控制机制. 进一步学习

联系我们

DB50-T 1236-2022 特种设备安全管理和作业人员电子证书技术规范 重庆市.pdf

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值