首页> 中国专利> 一种基于FPGA的RO PUF双重身份认证系统及其控制方法

一种基于FPGA的RO PUF双重身份认证系统及其控制方法

摘要

本发明涉及一种基于FPGA的RO PUF双重身份认证系统,包括:SPARTAN‑6 FPGA,用于RO PUF电路部署;摄像头模块,用于人脸采集;LCD显示模块,用于实现系统与用户的交互及身份认证结果显示;PC机,用于接收用户输入数据,调度摄像头模块,控制LCD显示模块正常显示,与RO PUF电路进行数据交换;按键输入模块,用于用户输入密码。本发明还公开了一种基于FPGA的RO PUF双重身份认证系统的控制方法。本发明利用人脸图像采集到的数据作为RO PUF电路的激励信号,相当于为每个用户生成了一个专属ID,并采取双重核验系统,能够有效避免重放攻击,从而不需要在每次身份认证后都将激励响应对删除,无需考虑激励响应对有限的问题。

著录项

  • 公开/公告号CN114580034A

    专利类型发明专利

  • 公开/公告日2022-06-03

    原文格式PDF

  • 申请/专利权人 合肥工业大学;

    申请/专利号CN202210230913.7

  • 申请日2022-03-10

  • 分类号G06F21/73;G06F21/76;G06F21/32;

  • 代理机构合肥金安专利事务所(普通合伙企业);

  • 代理人吴娜

  • 地址 230009 安徽省合肥市包河区屯溪路193号

  • 入库时间 2023-06-19 15:32:14

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-06-03

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及FPGA嵌入式开发技术领域,尤其是一种基于FPGA的RO PUF双重身份认证系统及其控制方法。

背景技术

身份认证的目的是防止非法用户获取合法用户权限,实现非法登录,获取合法信息等。目前常见的身份认证可分为两大类:非生物身份认证和生物身份认证。非生物身份认证主要是由基于信息秘密的身份认证和基于信任物体的身份认证构成。其中包含的方式主要有静态密码认证、短信密码认证、动态口令认证等;生物身份认证也可以分为两部分:行为认证(指纹,人脸,虹膜,语音等)和体态认证(步态,签名,手势)。

如今市场占有率最高的两项生物识别技术分别是指纹识别和人脸识别,而人脸识别由于其非接触的特点及其便利性,作为人类视觉上最杰出的能力之一,由于其无害性以及对用户最直观自然的方式,使得其成为生物特征自动识别技术领域最具有应用前景的方式。

其中,人脸识别技术存在以下缺陷:威胁到个人和社会隐私,侵犯人身自由与个人的权利;创建数据漏洞,为诈骗和其他犯罪提供机会;肤色和性别对识别的影响,;其他因素也会影响这项技术识别人脸的能力,包括摄像头角度、光线水平、图像或视频质量。人们戴上伪装或稍微改变他们的外表也可以摆脱面部识别技术。而指纹识别存在以下缺陷:某些人或某些群体的指纹指纹特征少,难成像;过去因为在犯罪记录中使用指纹,使得某些人害怕“将指纹记录在案”;实际上现在的指纹鉴别技术都可以不存储任何含有指纹图像的数据,而只是存储从指纹中得到的加密的指纹特征数据;每一次使用指纹时都会在指纹采集头上留下用户的指纹印痕,而这些指纹痕迹存在被用来复制指纹的可能性。

发明内容

本发明的首要目的在于提供一种高安全性、高稳定性、低成本的基于FPGA的ROPUF双重身份认证系统。

为实现上述目的,本发明采用了以下技术方案:一种基于FPGA的RO PUF双重身份认证系统,包括:

SPARTAN-6 FPGA,内部设置用于针对不同输入产生特定响应对PUF码的RO PUF电路,SPARTAN-6 FPGA用于RO PUF电路部署;

摄像头模块,用于人脸采集;

LCD显示模块,用于实现系统与用户的交互及身份认证结果显示;

PC机,用于接收用户输入数据,调度摄像头模块,控制LCD显示模块正常显示,与ROPUF电路进行数据交换;

按键输入模块,用于用户输入密码;

所述PC机分别与SPARTAN-6 FPGA、摄像头模块双向通讯,所述PC机的输入端与按键输入模块的输出端相连,所述PC机的输出端与LCD显示模块的输入端相连。

所述RO PUF电路包括:

RO 环,用于实现电路高低电平的震荡;

计数器,用于采集振荡输出频率,实现为在电路逻辑电平的高低电平发生变化时进行一次计数;

MCU控制器,用于接受输入激励信号,比较不同RO分组之间振荡频率的差异, 并输出相对应PUF码;

所述RO环的输出端与计数器的输入端相连;所述计数器的输出端与MCU控制器的输入端相连;所述MCU的输出端与RO环的输入端相连。

所述Spartan-6 FPGA采用XC6SLX45T-3FGG484芯片。

本发明的另一目的在于提供一种基于FPGA的RO PUF双重身份认证系统的控制方法,该方法包括下列顺序的步骤:

(1)初始化阶段下,通过摄像头模块对用户进行人脸图像特征采集,得到128个特征指标的长度为128比特的向量;

(2)将长度为128比特的向量作为激励信号输入至RO PUF电路中,使RO PUF电路产生相对应的PUF码,将生成的PUF码作为密码由用户保存;

(3)进行人脸识别,外来人员将面部对准摄像头模块,进行人脸数据采集,通过PC机调用人脸识别算法进行人脸识别,若识别通过,则进入步骤(4),系统控制RO PUF电路通电开始工作;若识别未通过,则结束身份认证,提示认证失败;

(4)提示外来人员输入步骤(2)中用户得到的密码,同时系统将此时采集到的数据作为激励信号,驱动RO PUF电路产生PUF码;

(5)将得到的PUF码与用户输入的密码进行逐位核对,若两码完全相同则提示身份认证成功。

在步骤(1)中,所述人脸图像特征采集具体包括以下步骤:

(1a)图像采集:通过OpenCV中的CV2模块,利用其中的函数和Haar特征分类器调用摄像头模块进行图像采集;

(1b)进行人脸检测:采用方向梯度直方图HOG法检测出人脸图像中人脸的具体位置:首先将图像转换为黑白,随后将图像分割成一些16×16像素的小方块,在每个小方块中,比较当前像素与直接围绕它的像素的深度,计算出每个主方向上有多少个梯度,并画一个箭头来代表图像变暗的方向,最后使用指向性最强那个方向的箭头来代替原来的那个小方块;

(1c)进行人脸对齐:检测出人脸特征点,确定这些特征点的位置,将图像进行旋转、缩放和错切,使得眼睛和嘴巴尽可能靠近中心,从而进行人脸对齐操作;

(1d)进行特征编码:调用库函数face_encodings,将人脸图像数据转换成一个代表了人脸的128个特征指标的长度为128比特的向量,对于每一张已知人脸,都生成对应的128个特征指标;

(1e)进行激励数据存储:将识别成功的用户面部特征数据二进制码存入result.txt文本文件中。

在步骤(2)中,所述使RO PUF电路产生相对应的PUF码具体包括以下步骤:

(2a)产生振荡:将激励信号输入至MCU控制器中,由MCU控制器控制导致RO环振荡的电流所经过的通路并调节电流信号流入RO环使其开始振荡,同时MCU控制器进行计时;

(2b)进行计数,将RO环产生的振荡电平通过计数器进行计数,每遇到一个高电平计数器计数值加一;

(2c)产生PUF码:MCU控制器控制通入RO环的电流信号维持50ms后解除,随后MCU控制器通过比较两个计数器值即两组RO环振荡频率,生成PUF码。

在步骤(3)中,所述人脸识别具体是指:将代表了人脸的128个特征指标的128比特向量和所有已知人脸的128比特向量一一比对,找到相似度最高的那一个,若未知用户人脸所具备面部特征与相似度最高已知人脸的数据相符且相似度达到所设置的判定阈值,即能够确定该未知用户的身份,身份验证通过。

所述步骤(5)具体包括以下步骤:

(5a)密码输入:用户根据提示通过按键输入设备将密码输入至PC中;

(5b)密码校验:对用户输入密码与RO PUF产生的PUF码进行校验;

(5c)结果显示:在LCD显示模块上显示校验结果,若用户输入有误,允许其通过按下backspace键重新输入,若连续三次核验失败,程序进入死锁状态,提示认证失败。

由上述技术方案可知,本发明的有益效果为:第一,利用人脸图像采集到的数据作为RO PUF电路的激励信号,相当于为每个用户生成了一个专属ID,并采取双重核验系统,使安全性得到了极大的保障;第二,首创人脸识别与PUF码双重身份认证系统,人脸识别作为第一重认证,用户输入的密码与RO PUF产生的PUF码核对形成第二重认证,环环相扣,能够有效避免重放攻击,从而不需要在每次身份认证后都将激励响应对删除,无需考虑激励响应对有限的问题;第三,不需要任何后端数据库存储由电路产生的PUF码,用户需要进行身份认证时,立即进行激励信号的采集并生成PUF码,核对完成之后断电即消失,不存在被盗取的风险;第四,在传统RO PUF结构的基础上提出一种基于RO分组的可配置RO PUF改进结构,使RO PUF的可配置路径更灵活,提高了RO PUF的可靠性与唯一性。

附图说明

图1为本发明的系统电路框图。

图2为本发明中RO PUF电路的电路框图。

图3为本发明的方法流程图。

具体实施方式

如图1所示,一种基于FPGA的RO PUF双重身份认证系统,包括:

SPARTAN-6 FPGA,内部设置用于针对不同输入产生特定响应对PUF码的RO PUF电路,SPARTAN-6 FPGA用于RO PUF电路部署;

摄像头模块,用于人脸采集;

LCD显示模块,用于实现系统与用户的交互及身份认证结果显示;

PC机,用于接收用户输入数据,调度摄像头模块,控制LCD显示模块正常显示,与ROPUF电路进行数据交换;

按键输入模块,用于用户输入密码;

所述PC机分别与SPARTAN-6 FPGA、摄像头模块双向通讯,所述PC机的输入端与按键输入模块的输出端相连,所述PC机的输出端与LCD显示模块的输入端相连。

如图2所示,所述RO PUF电路包括:

RO 环,用于实现电路高低电平的震荡;

计数器,用于采集振荡输出频率,实现为在电路逻辑电平的高低电平发生变化时进行一次计数;

MCU控制器,用于接受输入激励信号,比较不同RO分组之间振荡频率的差异, 并输出相对应PUF码;

所述RO环的输出端与计数器的输入端相连;所述计数器的输出端与MCU控制器的输入端相连;所述MCU的输出端与RO环的输入端相连。

所述Spartan-6 FPGA采用XC6SLX45T-3FGG484芯片。

如图3所示,本方法包括下列顺序的步骤:

(1)初始化阶段下,通过摄像头模块对用户进行人脸图像特征采集,得到128个特征指标的长度为128比特的向量;

(2)将长度为128比特的向量作为激励信号输入至RO PUF电路中,使RO PUF电路产生相对应的PUF码,将生成的PUF码作为密码由用户保存;

(3)进行人脸识别,外来人员将面部对准摄像头模块,进行人脸数据采集,通过PC机调用人脸识别算法进行人脸识别,若识别通过,则进入步骤(4),系统控制RO PUF电路通电开始工作;若识别未通过,则结束身份认证,提示认证失败;

(4)提示外来人员输入步骤(2)中用户得到的密码,同时系统将此时采集到的数据作为激励信号,驱动RO PUF电路产生PUF码;

(5)将得到的PUF码与用户输入的密码进行逐位核对,若两码完全相同则提示身份认证成功。

在步骤(1)中,所述人脸图像特征采集具体包括以下步骤:

(1a)图像采集:通过OpenCV中的CV2模块,利用其中的函数和Haar特征分类器调用摄像头模块进行图像采集;OpenCV是基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库;

(1b)进行人脸检测:采用方向梯度直方图HOG法检测出人脸图像中人脸的具体位置:首先将图像转换为黑白,随后将图像分割成一些16×16像素的小方块,在每个小方块中,比较当前像素与直接围绕它的像素的深度,计算出每个主方向上有多少个梯度,并画一个箭头来代表图像变暗的方向,最后使用指向性最强那个方向的箭头来代替原来的那个小方块;

(1c)进行人脸对齐:检测出人脸特征点,确定这些特征点的位置,将图像进行旋转、缩放和错切,使得眼睛和嘴巴尽可能靠近中心,从而进行人脸对齐操作;

(1d)进行特征编码:调用库函数face_encodings,将人脸图像数据转换成一个代表了人脸的128个特征指标的长度为128比特的向量,对于每一张已知人脸,都生成对应的128个特征指标;

(1e)进行激励数据存储:将识别成功的用户面部特征数据二进制码存入result.txt文本文件中。

在步骤(2)中,所述使RO PUF电路产生相对应的PUF码具体包括以下步骤:

(2a)产生振荡:将激励信号输入至MCU控制器中,由MCU控制器控制导致RO环振荡的电流所经过的通路并调节电流信号流入RO环使其开始振荡,同时MCU控制器进行计时;

(2b)进行计数,将RO环产生的振荡电平通过计数器进行计数,每遇到一个高电平计数器计数值加一;

(2c)产生PUF码:MCU控制器控制通入RO环的电流信号维持50ms后解除,随后MCU控制器通过比较两个计数器值即两组RO环振荡频率,生成PUF码。

在步骤(3)中,所述人脸识别具体是指:将代表了人脸的128个特征指标的128比特向量和所有已知人脸的128比特向量一一比对,找到相似度最高的那一个,若未知用户人脸所具备面部特征与相似度最高已知人脸的数据相符且相似度达到所设置的判定阈值,即能够确定该未知用户的身份,身份验证通过。

所述步骤(5)具体包括以下步骤:

(5a)密码输入:用户根据提示通过按键输入设备将密码输入至PC中;

(5b)密码校验:对用户输入密码与RO PUF产生的PUF码进行校验;

(5c)结果显示:在LCD显示模块上显示校验结果,若用户输入有误,允许其通过按下backspace键重新输入,若连续三次核验失败,程序进入死锁状态,提示认证失败。

综上所述,本发明首创人脸识别与PUF码双重身份认证系统,人脸识别作为第一重认证,用户输入的密码与RO PUF产生的PUF码核对形成第二重认证,环环相扣,能够有效避免重放攻击,能够有效防止激励响应对被窃取,从而不需要在每次身份认证后都将激励响应对删除,无需考虑激励响应对有限的问题;利用人脸图像采集到的数据作为RO PUF电路的激励信号,相当于为每个用户生成了一个专属ID,并采取双重核验系统,使安全性得到了极大的保障。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号