CN210955077U - 一种基于国密算法和puf的总线加解密装置 - Google Patents

一种基于国密算法和puf的总线加解密装置 Download PDF

Info

Publication number
CN210955077U
CN210955077U CN201921789346.9U CN201921789346U CN210955077U CN 210955077 U CN210955077 U CN 210955077U CN 201921789346 U CN201921789346 U CN 201921789346U CN 210955077 U CN210955077 U CN 210955077U
Authority
CN
China
Prior art keywords
data
module
cryptographic algorithm
encryption
output port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201921789346.9U
Other languages
English (en)
Inventor
兰天
习伟
姚浩
吴震
杜之波
王敏
向春玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Xin'an Youlika Information Science & Technology Co ltd
China South Power Grid International Co ltd
Huada Semiconductor Co ltd
Chengdu University of Information Technology
Original Assignee
Chengdu Xin'an Youlika Information Science & Technology Co ltd
China South Power Grid International Co ltd
Huada Semiconductor Co ltd
Chengdu University of Information Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu Xin'an Youlika Information Science & Technology Co ltd, China South Power Grid International Co ltd, Huada Semiconductor Co ltd, Chengdu University of Information Technology filed Critical Chengdu Xin'an Youlika Information Science & Technology Co ltd
Priority to CN201921789346.9U priority Critical patent/CN210955077U/zh
Application granted granted Critical
Publication of CN210955077U publication Critical patent/CN210955077U/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本实用新型涉及信息安全和通信安全领域,公开了一种基于国密算法和PUF的总线加解密装置,用于生成密钥种子的物理不克隆函数模块;与SM3密码算法模块和国密SM4密码算法加密模块相连接,用于产生随机数的随机数发生器模块;与随机数发生器模块相连,用于接收初始IV,与物理不克隆函数模块相连接,用于接收数据并进行运算,输出加解密密钥的SM3密码算法模块;与物理不克隆函数模块和SM3密码算法模块相连接,用于实现总线信息加密的国密SM4密码算法加解密模块。本实用新型采用物理不克隆函数经基于随机IV的SM3密码算法杂凑运算作为SM4密码算法加解密密钥,增强了密钥的随机性和安全性,增加了暴力破解的难度。

Description

一种基于国密算法和PUF的总线加解密装置
技术领域
本实用新型涉及信息安全和通信安全领域,尤其涉及一种基于国密算法和PUF的总线加解密装置。
背景技术
总线:总线(Bus)是电子设备各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束。例如数据总线,CAN总线等。
针对总线的攻击:目前针对电子设备的攻击可分为非侵入攻击、半侵入攻击和侵入式攻击,其中针对电子设备总线的攻击最常用的攻击手段为侵入式攻击,对总线存在侵入式探针攻击,是获取敏感信息(如密钥、关键数据)的一种手段。使用探针等设备连接到总线上,即可获取总线上传输的信号,进而可以监听总线上传输的敏感信息。外部甚至通过探针等设备或者总线的访问接口连接到总线,向电子设备发送恶意数据或攻击报文,来影响电子设备的正常工作,达到控制电子设备的目的。所以对总线需要进行加密处理,达到信息保护的目的,即使攻击者获取了总线上的信号或数据,也是无法知道具体的明文信息。
密码算法:密码技术是信息安全的基础,密码技术使用密码算法通过对数据加密、消息认证和数字签名等方式来保障信息安全。SM4密码算法作为国内官方公布的第一个商用密码算法和国内无线局域网产品使用的分组密码算法,SM4密码算法是分组长度和密钥长度均为128bit的分组密码算法,其加密算法和密钥扩展算法均为32轮非线性迭代结构,只是轮密钥使用顺序相反。SM3密码算法作为国内官方公布的商用密码杂凑算法,广泛应用于数字签名和验证、消息认证码的生成与验证以及随机数的生成。
物理不克隆函数(Physical Unclonable Function,PUF),对物理对象中随机差异进行提取和表征,生成基于该物理对象的唯一的标识,PUF完成的主要工作就是对物理对象“指纹”的有效提取和表征。物理不克隆函数,也可理解为激励响应函数,某一个物理实体输入一定激励,利用此实体内部独一无二的物理构造差异输出一个或者多个无法预测的响应(例如一个随机的二进制序列)。
目前,现有技术方案在总线上进行数据传输时,例如在CAN总线上传输数据或者指令时,一般采用固定密钥使用对称密码算法在总线上传输数据之前进行加密,接收端进行解密,加解密密钥一般存储在存储器中。虽然密码算法本身的安全性很高,但是如果破译者拿到了密钥等敏感数据,那么整个系统的安全机制边不复存在。在实际的安全应用中,密钥一般存储在存储器中,但这种方式存储密钥,存在被直接读取的风险,例如通过窃听总线、直接读取存储器等方式窃取。此外,数据即使被加密,但相同数据加密的结果不变,所以只要数据不变,例如传输待加密的指令,那么在总线上传输的数据依然不会发生变化,传输的数据依然有规律可寻,所以现有技术存在窃听总线后在总线上进行重放攻击的安全风险问题。
综上所述,现有技术存在的问题是:在实际的安全应用中,密钥一般存储在存储器中,但这种方式存储密钥,存在被直接读取的风险。且直接存储的密钥的随机性也无法保障,存在暴力破解的安全风险。每次加密使用同一密钥进行加密,在总线上传输数据存在传输相同密文,传输数据有规律可循的现象,利用该现象,在窃听总线后在总线上进行重放攻击安全风险。
解决上述技术问题的难度在于:
从源头上同时解决现有技术存在的上述缺陷,是本技术要解决的技术难题。
解决上述技术问题的意义在于:
鉴于此,克服现有技术方案所存在的缺陷和安全风险是本技术领域亟待解决的问题,利用本技术可以提高密钥的随机性和安全性,保障总线上数据的信息安全,保障总线免于攻击和防堵总线被窃听而造成信息的泄露,从总线的信息安全方面来保障整个系统的安全。
发明内容
针对现有技术的以上一个或者多个缺陷和改进需求,本实用新型提供了一种基于国密算法和PUF的总线加解密装置。
本实用新型所采用的的技术方案为:该基于国密算法和PUF的总线加解密装置包括:用于生成密钥种子的物理不克隆函数模块;
与所述物理不克隆函数模块相连接,用于接收数据并进行杂凑运算,输出加解密密钥的SM3密码算法模块;
与SM3密码算法模块相连接,用于产生随机数的随机数发生器模块;
分别与随机数发生器模块以及SM3密码算法模块相连接,用于实现传输加密的国密SM4密码算法加密模块;
与SM3密码算法模块相连接,用于实现传输解密的国密SM4密码算法解密模块。
优化的,所述物理不克隆函数(PUF)模块用于生成种子密钥,设有256位种子密钥输出端口(Out_PUF),用于输出数据准备好信号的信号输出端口(Pready)。
优化的,所述随机数发生器模块用于SM4加密运算输入的填充数据的随机化,以及随机化SM4密码运算的加解密密钥,设有用于输出256位随机数的数据输出端口(Out_Rand),用于输出数据准备好信号的信号输出端口(Rready)。
优化的,所述SM3密码算法模块用于随机化种子密钥设有:
用于杂凑运算的数据输入接口(Input_SM3),该接口电连接所述物理不克隆函数(PUF)模块的种子密钥输出端口(Out_PUF);
初始化IV的数据输入接口(Input_IV),该接口电连接所述随机数发生器模块的数据输出端口(Out_Rand);
用于PUF数据准备好信号的信号输入端口(PDready),该接口电连接所述物理不克隆函数(PUF)模块的信号输出端口(Pready);
用于随机数数据准备好信号的信号输入端口(RDready1),该接口电连接所述随机数发生器模块的信号输出端口(Rready);
用于输出运算结果的数据输出端口(OUT_SM3);
用于输出加解密密钥准备好信号的信号输出端口(SM3ready)。
优化的,所述国密SM4密码算法加密模块对总线的数据加密,设有:
用于随机数数据准备好信号的信号输入端口(RDready),该接口电连接所述随机数发生器模块的信号输出端口(Rready);
用于加解密密钥准备好信号的信号输入端口(SM3Dready1),该接口信号电连接所述SM3密码算法模块的信号输出端口(SM3ready);
用于输入加密密钥的密钥输入端口(Enkey),该端口电连接SM3密码算法模块的数据输出端口(OUT_SM3);
待加密数据数据输入端口(Input_Data),该端口高(128-n)位电连接随机数的数据输出端口(Out_Rand)的低(128-n)位,低n位电连接需在总线上加密传输的数据,其中n为总线位数;
用于输出加密数据的数据输出端口(Enc_Data),数据输出端口和总线电连接;
用于输出加密完成信号的信号输出端口(Hready)。
优化的,所述国密SM4密码算法解密模块对总线的数据解密,设有:
用于加解密密钥准备好信号的信号输入端口(SM3Dready2),该接口信号电连接所述SM3密码算法模块的信号输出端口(SM3ready);
用于输入解密密钥的密钥输入端口(Deckey),该端口电连接SM3密码算法模块的数据输出端口(OUT_SM3);
待加密数据数据输入端口(DecInput_Data);
用于输出解密结果的数据输出端口(Output_Data);
总体而言本发明的有益效果是:采用物理不克隆函数经基于随机IV的SM3密码算法杂凑运算作为密钥,增强了密钥的随机性和安全性,增加了暴力破解的难度,同时由于物理不克隆函数产生的唯一标识只有电路上电后才产生,不可以克隆且不存储,所以克服了加解密密钥被直接物理读取、复制和破解的安全风险问题。由于SM3密码算法杂凑运算的IV是随机的,所以每次加解密运算的密钥是随机的,同时采用随机数对对明文进行填充,克服了相同数据在总线上传输相同内容,容易引起重放攻击的问题,可以抵御对总线的重放攻击,提高了总线数据传输的安全性。使用密码算法对数据进行加解密实现了数据传输的机密性,所以本实用新型可以保护总线上数据传输的安全性和保密性。
附图说明
图1为本实用新型的基于国密算法和PUF的总线加解密装置总流程框图。
图2为本实用新型的环形振荡器物理不克隆函数的单个振荡器电路结构示意图。
图3为本实用新型的总线加解密的具体电路图。
具体实施方式
下面结合具体实施例对本实用新型作进一步阐述,兹例举以下实施例,并配合附图详细说明如下。在此需要说明的是,对于这些实施例方式的说明用于帮助理解本实用新型,但并不构成对本实用新型的限定。
实施例1:
如图1~3所示,本实施例所提供的一种基于国密算法和PUF的总线加解密装置,包括:
用于生成密钥种子的物理不克隆函数(PUF)模块PUF_inst;
用于产生随机数的随机数发生器模块Random_inst;
用于接收数据并进行运算,输出加解密密钥的SM3密码算法模块SM3_inst;
用于实现传输加密的国密SM4密码算法加密模块SM4Enc_inst;
用于实现传输解密的国密SM4密码算法解密模块SM4Dec_inst。
如图1、图2和图3所示,在对所述一种基于国密算法和PUF的总线加解密电路具体的描述如下:
所述物理不克隆函数(PUF)模块PUF_inst用于生成种子密钥,物理不克隆函数为环形振荡器物理不克隆函数,其单个振荡器电路结构示意图如图2所示,物理不克隆函数输出的数据是一个256位无法预测的响应,设有256位种子密钥输出端口(Out_PUF),用于系统时钟输入端口(sys_clk),用于输出数据准备好信号的信号输出端口(Pready),物理不克隆函数模块在系统电路一上电就启动工作,响应通过密钥输出端口向外输出数据,同时信号输出端口有效保持高电平,其他时间保持低电平。
所述随机数发生器模块Random_inst用于SM4加密运算输入的填充数据的随机化,以及通过随机化SM3密码算法的初始IV来随机化SM4密码运算的加解密密钥,随机数发生器模块在系统电路一上电就启动工作,设有用于输出256位随机数的数据输出端口(Out_Rand),用于系统时钟输入端口(sys_clk),用于输出数据准备好信号的信号输出端口(Rready),该信号端口在输出256位随机数时有效保持高电平,其他时间为低电平。
所述SM3密码算法模块SM3_inst用于随机化种子密钥,为SM4加解密模块提供密钥,所述SM3密码算法为现有加密技术算法,不过和标准的SM3密码算法不同的是初始IV不是固定值,而是有外部提供的随机数,设有初始化IV的数据输入接口(Input_IV),该接口电连接所述随机数发生器模块的数据输出端口(Out_Rand),用于系统时钟输入端口(sys_clk),杂凑运算的数据输入接口(Input_SM3),该接口电连接所述物理不克隆函数(PUF)模块的种子密钥输出端口(Out_PUF),用于PUF数据准备好信号的信号输入端口(PDready),该接口电连接所述物理不克隆函数(PUF)模块的信号输出端口(Pready),用于随机数数据准备好信号的信号输入端口(RDready1),该接口电连接所述随机数发生器模块的信号输出端口(Rready),杂凑运算结果的高128位和低128位按位异或运算,输出结果通过输出端口(OUT_SM3)输出,用于输出加解密密钥准备好信号的信号输出端口(SM3ready)。
具体的,所述SM3密码算法模块SM3_inst只有在PUF数据准备好信号的信号输入端口(PDready),和随机数数据准备好信号的信号输入端口(RDready1)都为高电平时才启动运算,运算结束后输出加解密密钥准备好信号的信号输出端口(SM3ready)输出高电平,其他时间该信号端口输出低电平,同时数据输出端口(OUT_SM3)输出运算结果。
所述国密SM4密码算法加密模块SM4Enc_inst对总线的数据加密,其中国密SM4密码算法为现有技术算法,总线位数为32位,设有:
总线数据传输准备好信号的信号输入端口(DReady),当有数据需在总线上加密传输时,该信号保持高电平有效,其他时间保持低电平;
用于随机数数据准备好信号的信号输入端口(RDready),该接口电连接所述随机数发生器模块的信号输出端口(Rready);
用于加解密密钥准备好信号的信号输入端口(SM3Dready1),该接口信号电连接所述SM3密码算法模块的信号输出端口(SM3ready);
用于输入加密密钥的密钥输入端口(Enkey),该端口电连接SM3密码算法模块的数据输出端口(OUT_SM3);
待加密数据数据输入端口(Input_Data);
用于输出加密数据的数据输出端口(Enc_Data),数据输出端口和加密总线电连接;
用于输出加密完成信号的信号输出端口(Hready)。
具体的,所述国密SM4密码算法加密模块SM4Dec_inst当加解密密钥准备好信号为高电平时,国密SM4密码算法加密模块通过输入加密密钥的密钥输入端口(Enkey)接收密钥数据,当总线数据传输准备好信号为高电平时,国密SM4密码算法加密模块通过待加密数据数据输入端口(Input_Data)低32位接收数据,随机数数据准备好信号为高电平时国密SM4密码算法加密模块通过待加密数据数据输入端口(Input_Data)高96位接收数据,接收随机数的数据输出端口(Out_Rand)的低96位,当国密SM4密码算法加密运算完成后,输出加密完成信号的信号输出端口保持四个时钟的高电平有效,同时国密SM4密码算法加密模块分四个时钟长通过数据输出端口(Enc_Data)向加密总线上输出加密后的数据,输出顺序为从低32到高32依次传输加密后的数据。
所述国密SM4密码算法解密模块SM4Dec_inst对总线的数据解密,其中国密SM4密码算法为现有技术算法,设有:
用于加解密密钥准备好信号的信号输入端口(SM3Dready2),该接口信号电连接所述SM3密码算法模块的信号输出端口(SM3ready);
用于输入解密密钥的密钥输入端口(Deckey),该端口电连接SM3密码算法模块的数据输出端口(OUT_SM3);
用于加密总线数据传输准备好信号的信号输入端口(HDecDReady),该信号端口电连接国密SM4密码算法加密模块的加密完成信号的信号输出端口(Hready);
待加密数据数据输入端口(DecInput_Data),待加密数据数据输入端口和加密总线电连接;
用于输出解密结果的数据输出端口(Output_Data);
具体的,所述SM4密码算法解密模块当加解密密钥准备好信号为高电平时,SM4密码算法解密模块通过输入解密密钥的密钥输入端口(Deckey)接收密钥数据,加密总线数据传输准备好信号从低电平变为高电平时,SM4密码算法解密模块通过待加密数据数据输入端口(DecInput_Data)分四个时钟从加密总线上接收数据,共接收128位数据,当SM4密码算法解密运算结束后,SM4密码算法解密模块通过数据输出端口输出解密结果的低32位。
以上所述仅是对本实用新型的较佳实施例而已,并非对本实用新型作任何形式上的限制,凡是依据本实用新型的技术实质对以上实施例所做的任何简单修改,等同变化与修饰,均属于本实用新型技术方案的范围内。

Claims (6)

1.一种基于国密算法和PUF的总线加解密装置,其特征在于,该基于国密算法和PUF的总线加解密装置包括:用于生成密钥种子的物理不克隆函数模块;
与所述物理不克隆函数模块相连接,用于接收数据并进行杂凑运算,输出加解密密钥的SM3密码算法模块;
与所述SM3密码算法模块相连接,用于产生随机数的随机数发生器模块;
分别与随机数发生器模块以及SM3密码算法模块相连接,用于实现传输加密的国密SM4密码算法加密模块;
与SM3密码算法模块相连接,用于实现传输解密的国密SM4密码算法解密模块。
2.如权利要求1所述的基于国密算法和PUF的总线加解密装置,其特征在于,所述物理不克隆函数模块用于生成种子密钥,设有256位种子密钥输出端口,用于输出数据准备好信号的信号输出端口。
3.如权利要求1所述的基于国密算法和PUF的总线加解密装置,其特征在于,所述随机数发生器模块用于SM4加密运算输入的填充数据的随机化,以及通过随机化SM3密码算法的初始IV来随机化SM4密码运算的加解密密钥,设有用于输出256位随机数的数据输出端口,用于输出数据准备好信号的信号输出端口。
4.如权利要求1所述的基于国密算法和PUF的总线加解密装置,其特征在于所述SM3密码算法模块用于随机化种子密钥设有:
用于杂凑运算的数据输入接口,电连接所述物理不克隆函数模块的种子密钥输出端口;
初始化IV的数据输入接口,电连接所述随机数发生器模块的数据输出端口;
用于PUF数据准备好信号的信号输入端口,电连接所述物理不克隆函数模块的信号输出端口;
用于随机数数据准备好信号的信号输入端口,电连接所述随机数发生器模块的信号输出端口;
用于输出加解密密钥的数据输出端口;
用于输出加解密密钥准备好信号的信号输出端口。
5.如权利要求1所述的基于国密算法和PUF的总线加解密装置,其特征在于,所述国密SM4密码算法加密模块对总线的数据加密设有:
用于随机数数据准备好信号的信号输入端口,电连接所述随机数发生器模块的信号输出端口;
用于加解密密钥准备好信号的信号输入端口,电连接所述SM3密码算法模块的信号输出端口;
用于输入加密密钥的密钥输入端口,电连接SM3密码算法模块的数据输出端口;
待加密数据数据输入端口,该端口高(128-n)位电连接随机数的数据输出端口的低(128-n)位,低n位电连接需在总线上加密传输的数据,其中n为总线位数;
用于输出加密数据的数据输出端口,数据输出端口和总线电连接;
用于输出加密完成信号的信号输出端口。
6.如权利要求1所述的基于国密算法和PUF的总线加解密装置,其特征在于所述国密SM4密码算法解密模块对总线的数据解密,设有:
用于加解密密钥准备好信号的信号输入端口,该接口信号电连接所述SM3密码算法模块的信号输出端口;
用于输入解密密钥的密钥输入端口,该端口电连接SM3密码算法模块的数据输出端口;
待加密数据数据输入端口;
用于输出解密结果的数据输出端口。
CN201921789346.9U 2019-10-23 2019-10-23 一种基于国密算法和puf的总线加解密装置 Active CN210955077U (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201921789346.9U CN210955077U (zh) 2019-10-23 2019-10-23 一种基于国密算法和puf的总线加解密装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201921789346.9U CN210955077U (zh) 2019-10-23 2019-10-23 一种基于国密算法和puf的总线加解密装置

Publications (1)

Publication Number Publication Date
CN210955077U true CN210955077U (zh) 2020-07-07

Family

ID=71397130

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201921789346.9U Active CN210955077U (zh) 2019-10-23 2019-10-23 一种基于国密算法和puf的总线加解密装置

Country Status (1)

Country Link
CN (1) CN210955077U (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112187447A (zh) * 2020-10-22 2021-01-05 南方电网科学研究院有限责任公司 一种加解密算法密钥生成方法和装置
CN114978714A (zh) * 2022-05-24 2022-08-30 中国科学院大学 基于risc-v的轻量级数据总线加密安全传输方法
CN115277029A (zh) * 2022-09-28 2022-11-01 南方电网数字电网研究院有限公司 基于物理不可克隆函数的芯片信息的加密认证方法及系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112187447A (zh) * 2020-10-22 2021-01-05 南方电网科学研究院有限责任公司 一种加解密算法密钥生成方法和装置
CN114978714A (zh) * 2022-05-24 2022-08-30 中国科学院大学 基于risc-v的轻量级数据总线加密安全传输方法
CN114978714B (zh) * 2022-05-24 2023-11-10 中国科学院大学 基于risc-v的轻量级数据总线加密安全传输方法
CN115277029A (zh) * 2022-09-28 2022-11-01 南方电网数字电网研究院有限公司 基于物理不可克隆函数的芯片信息的加密认证方法及系统

Similar Documents

Publication Publication Date Title
US9166793B2 (en) Efficient authentication for mobile and pervasive computing
CN210955077U (zh) 一种基于国密算法和puf的总线加解密装置
CN102082790B (zh) 一种数字签名的加/解密方法及装置
WO2001039429A1 (en) Integrity check values (icv) based on pseudorandom binary matrices
CN104253694A (zh) 一种用于网络数据传输的保密方法
CN112906070B (zh) 具有块密码侧信道攻击减轻的集成电路和IoT设备及相关方法
CN102904712A (zh) 信息加密方法
CN109714307B (zh) 一种基于国密算法的云平台客户端数据加解密系统及方法
Rege et al. Bluetooth communication using hybrid encryption algorithm based on AES and RSA
CN105306194A (zh) 供加密档案和/或通讯协定的多重加密方法与系统
CA2639649A1 (en) Cryptography method and system
Koko et al. Comparison of Various Encryption Algorithms and Techniques for improving secured data Communication
CN104270242A (zh) 一种用于网络数据加密传输的加解密装置
CN204180095U (zh) 一种用于网络数据加密传输的加解密装置
CN117318941B (zh) 基于车内网的预置密钥分发方法、系统、终端及存储介质
CN114186249A (zh) 一种计算机文件安全加密方法、解密方法和可读存储介质
CN103117850B (zh) 一种基于随机序列数据库的密码系统的建立方法
CN114499857A (zh) 一种实现大数据量子加解密中数据正确性与一致性的方法
CN204808325U (zh) 一种对数据进行加密的设备
CN109413644B (zh) LoRa加密认证通信方法、存储介质及电子终端
Jeddi et al. A novel authenticated encryption algorithm for RFID systems
KR101929355B1 (ko) 고유 일련번호 및 대칭키를 이용한 암복호화 시스템
CN116248316A (zh) 文件加密方法、文件解密方法、装置及存储介质
KR101793528B1 (ko) 무인증서 공개키 암호 시스템
Landge et al. VHDL based Blowfish implementation for secured embedded system design

Legal Events

Date Code Title Description
GR01 Patent grant
GR01 Patent grant