一种基于PUF实现电网智能移动终端系统认证的方法与流程

文档序号:17210232发布日期:2019-03-27 10:43阅读:758来源:国知局
一种基于PUF实现电网智能移动终端系统认证的方法与流程

本发明涉及信息安全领域,特别是涉及一种基于puf实现电网智能移动终端系统认证的方法。



背景技术:

近年来,国内外针对电力工控系统的攻击事件频发,考虑到电力工业的重要战略地位,电力关键设施一旦遭受攻击会直接影响电网安全稳定运行以及人身财产安全,并将直接威胁国民经济的发展和社会安定。电力工控系统面临严峻的安全形势,针对电力工控系统形成科学、有效的安全防护迫在眉睫。因而在电力工控系统中最容易被当做攻击对象同时也是起到至关重要作用的电网智能移动终端就成为了极为关键的一环。目前终端存在着许多安全隐患:设备状态不可信(应用程序被篡改、内核等关键模块被篡改);缺少安全的数据传输;缺少安全存储(恶意软件的攻击、物理攻击等)。本专利主要是针对防护物理攻击的安全系统认证方法puf来保护电力系统移动终端的系统安全。

puf是在近年来随着物理实体有效认证成为确保系统安全的基础问题以来,借鉴当前普遍使用的人体唯一特征(指纹或虹膜)实施认证的思想提出来的解决办法。puf别称是物理不可克隆函数,思路是基于不同物理实体内部自有唯一标识来实现唯一性的有效认证。

puf是指对一个物理实体输入一个激励,利用其不可避免的内在物理构造的随机差异,输出一个不可预测的响应的物理不可克隆函数,它的使用优势有:利用设备的物理性质,减小额外开销;在分布式计算盛行和物联网时代的到来,给其中重要节点的设备和对象进行唯一性的身份认证,可以作为更高安全架构的信托锚。

目前电网中的智能移动终端一般以嵌入式系统为主,而目前的系统认证过程的密钥大部分以明文或者密文的形式存储于闪存等非易失性存储器,便于系统需要时直接读取系统密钥。这种存储密钥的做法直接便利了攻击者获取系统密钥,所以很多专家专注于改良密码芯片或者是加密算法。但是随之而来的也是不断升级改变的攻击方法,比如测试芯片工作、借助数学统计分析、逆向分析手段等等,因此又有专家通过增加攻击者窃取芯片数据的难度,加大攻击代价的方法来进行防护,使得即使芯片被窃取也让攻击者无法获取机密信息。不过这些方法无法从根本上杜绝攻击者对芯片数据的盗取,而物理不可克隆函数puf的提出,因其自身的特性为保护芯片数据的安全提供了一种全新而有效的方法。



技术实现要素:

针对上述问题,本发明旨在提供一种基于puf实现电网智能移动终端系统认证的方法,将puf应用在电网的智能移动终端,从而达到安全可靠的系统认证的结果。

本发明的技术方案:

一种基于puf实现电网智能移动终端系统认证的方法,包括注册阶段和认证阶段,

所述注册阶段包括以下具体步骤:

(1)系统首先读取一段大小为kbits的sram初始值,用来生成具有容错功能的标准bch码,具有容错功能的标准bch码为种子值s;

(2)将sram种子值经过bch编码,生成nbits标准bch码字;

(3)另外读取一段大小为nbits的sram初始值,用来生成此片sram唯一密钥值,唯一密钥值为识别码id;

(4)将nbits标准bch码字与nbits识别码id做异或处理,生成nbits数据,并将其加密后保存于非易失性存储器上,所述nbits数据用于密钥重构并帮助带有噪声的识别码nid恢复出识别码id,nbits数据为帮助数据hd;

(5)完成系统注册,系统正常进入运行;

所述认证阶段包括以下具体步骤:

(a)读取识别码id相同地址nbits带有噪声的识别码nid;

(b)读取非易失性存储器保存的nbits帮助数据hd;

(c)将nbits带有噪声的识别码nid与nbits帮助数据hd做异或操作,得到nbits带有错误的bch码;

(d)将nbits带有错误的bch码经过bch译码操作,若实际错误不大于设计纠错容限t,则生成nbits标准bch码,系统认证成功;否则,bch译码失败程序结束运行;

(e)若步骤(d)译码成功,将nbits标准bch码与nbits帮助数据hd做异或操作,恢复出系统注册阶段使用的nbits识别码id;

(f)系统认证阶段完成,系统正常运行。

在系统注册阶段,嵌入式系统进入u-boot模式,加载系统程序,对外围硬件完成初始化之后,开始puf系统注册阶段。

在系统认证阶段,嵌入式系统读取u-boot代码开始加载系统程序,对外围硬件完成初始化以后,开始puf系统认证阶段。

所述步骤(4)中帮助数据hd存储在片外flash中。

与现有技术相比,本发明的有益效果是:本发明能够在不需要存储系统密钥的情况下,有效杜绝攻击者对系统密钥的物理攻击,对系统进行身份认证,大幅提高系统的可靠性。

附图说明

图1为本发明的实现方法流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,本发明提供一种技术方案:

一种基于puf实现电网智能移动终端系统认证的方法,包括注册阶段和认证阶段,

所述注册阶段包括以下具体步骤:

(1)系统首先读取一段大小为kbits的sram初始值,用来生成具有容错功能的标准bch码,具有容错功能的标准bch码为种子值s;

(2)将sram种子值经过bch编码,生成nbits标准bch码字;

(3)另外读取一段大小为nbits的sram初始值,用来生成此片sram唯一密钥值,唯一密钥值为识别码id;

(4)将nbits标准bch码字与nbits识别码id做异或处理,生成nbits数据,并将其加密后保存于非易失性存储器上,所述nbits数据用于密钥重构并帮助带有噪声的识别码nid恢复出识别码id,nbits数据为帮助数据hd;

(5)完成系统注册,系统正常进入运行;

所述认证阶段包括以下具体步骤:

(a)读取识别码id相同地址nbits带有噪声的识别码nid;

(b)读取非易失性存储器保存的nbits帮助数据hd;

(c)将nbits带有噪声的识别码nid与nbits帮助数据hd做异或操作,得到nbits带有错误的bch码;

(d)将nbits带有错误的bch码经过bch译码操作,若实际错误不大于设计纠错容限t,则生成nbits标准bch码,系统认证成功;否则,bch译码失败程序结束运行;

(e)若步骤(d)译码成功,将nbits标准bch码与nbits帮助数据hd做异或操作,恢复出系统注册阶段使用的nbits识别码id;

(f)系统认证阶段完成,系统正常运行。

在系统注册阶段,嵌入式系统进入u-boot模式,加载系统程序,对外围硬件完成初始化之后,开始puf系统注册阶段。

在系统认证阶段,嵌入式系统读取u-boot代码开始加载系统程序,对外围硬件完成初始化以后,开始puf系统认证阶段。

所述步骤(4)中帮助数据hd存储在片外flash中。

本发明使用srampuf(staticrandomacessmemorypuf,静态随机存储器物理不可克隆函数)系统安全密钥的生成方法,通过利用嵌入式平台xlinxzynq7020集成的sram上电特性提取出系统安全密钥,无需保存密钥,只需将密钥注册阶段生成的帮助数据存储在片外flash中即可在下次嵌入式平台启动之后重构密钥,完成身份认证的过程。

其中提取出来的系统密钥具有高度的唯一性和硬件平台的物理相关性,而帮助数据中具有少量平台上电的初始值信息。

尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1