一种基于无标识生物认证的安全打印方法与系统与流程

文档序号:16929232发布日期:2019-02-22 20:07阅读:141来源:国知局
一种基于无标识生物认证的安全打印方法与系统与流程

本发明属于打印机领域,尤其涉及到一种利用无标识生物认证和生物特征转化器技术的安全打印方法与系统。



背景技术:

目前,增强打印系统安全性的措施主要包括身份认证和打印数据加密等手段。其中,打印系统中常用的身份认证手段包括口令密码、员工智能卡、生物认证等;口令密码存在容易遗忘、弱口令被暴力破解等问题,员工智能卡则无法真正验证用户身份,因为任何人都可以使用某个丢失的员工卡。基于人体生物特征进行身份认证可以避免上述问题,因此,原来越多的安全系统开始使用人体生物特征构建认证模块。此外,为了保护打印文件的机密性,加密是一种常用手段。目前,大多产品使用非对称密码技术,也就是pki公钥基础设施,来完成设备认证与密钥协商的过程,同时使用对称密码技术对打印文件进行加解密。

中国专利cn101576810b介绍了一种利用生物技术实现文件安全打印的方法及系统,在打印设备上设置一个生物识别输入装备,预先建立用户与打印机的对应绑定关系,当用户需要打印时,通过生物识别输入装置接收打印任务对应的用户现场输入的生物识别特征;比对现场输入的生物识别特征与预先存储的生物识别特征,若比对通过,则输出打印任务,否则删除当前打印任务。该方法通过生物特征与现场认证等手段保护打印任务的隐私与安全。但是该方法及系统并未保护用户生物特征模板,因此存在用户生物特征泄露的安全隐患,由于人体生物特征具有不可撤销、不可频繁更新的特点,因此用户生物特征数据的泄露会对系统安全性构成长久性伤害。此外,该方法及系统将用户与输入设备进行绑定,便于用户进行生物认证,因此该方法无法应用于门禁控制、机场人脸识别等多个用户共同使用同一终端的场景,应用场景有限。

中国专利cn1297881b公开了一种保证数据安全传输的打印控制方法,当用户有数据需要打印时,用户主机上带有安全模块的打印驱动程序向打印机发送认证数据的请求;安装有安全模块的打印机接收请求,生成认证数据,并将该认证数据发送给打印驱动程序;打印驱动程序将需要打印的数据与认证数据一起加密,然后将加密后的打印数据传给打印机;打印机对数据进行解密,检验认证数据是否有效,如有有效,打印,否则废弃该打印作业。该方法使用非对称密码技术完成认证与密钥协商过程,并使用des对称密码技术对数据进行加密;存在密钥泄露风险,若用户私钥泄露,则无法保证打印任务的安全性。



技术实现要素:

发明目的:针对现有基于生物识别的安全打印产品或技术方案中存在的安全性和功能性问题,包括生物特征模板的安全保护、用户密钥的泄露风险、无法应用于多用户使用同一终端的场景等,本发明目的在于提供一种基于无标识生物认证的安全打印方法与系统,通过引入无标识生物认证技术和生物特征转化器技术实现了生物特征的安全保护以及密钥生成与协商,既保护了生物特征的安全性,又减少了密钥泄露风险。

技术方案:为实现上述发明目的,本发明采用如下技术方案:

一种基于无标识生物认证的安全打印方法,包括如下步骤:

(1)用户在打印客户端提交打印请求时,打印客户端提示用户录入生物特征,并提取用户的生物特征向量,生成加密认证数据data′auth并发送到打印服务端;

(2)打印服务端对加密认证数据data′auth进行匹配检索,若匹配成功,则用户认证通过,将数据库中对应的加密认证数据dataauth发送给客户端;

(3)打印客户端接收加密认证数据dataauth,并结合步骤(1)提取的生物特征向量,生成用户主密钥,同时生成一个加密随机数,利用主密钥和加密随机数生成对称加密密钥;

(4)打印客户端使用对称加密密钥对打印文件进行对称加密,加密后的文件连同随机数、打印配置信息一并发送到打印服务端;

(5)打印服务端接收客户端发来的打印请求数据,将其中的加密文件、随机数、打印配置信息存储到用户对应的打印队列中;

(6)用户在打印服务端启动打印任务时,打印服务端提示用户录入生物特征,提取用户的生物特征向量,生成加密认证数据并进行匹配检索,若匹配成功,则用户认证通过,生成用户主密钥;

(7)打印服务器从用户对应的打印队列中取出处于等待状态的打印请求数据,对于每一个打印请求,利用随机数和主密钥计算对称加密密钥,然后解密打印文件,并将解密后的打印文件、打印配置封装为打印任务,并发送给打印机;

(8)打印机接收到打印服务器发来的打印任务之后,进行打印工作。

在具体的实施方案中,所述生物特征可以为指纹、人脸、虹膜、指静脉、声纹等特征中的一种或多种。

在具体的实施方案中,所述加密认证数据的生成方法基于生物特征转化器fe_gen算法实现,其中,生物特征转化器fe_gen算法输入是生物特征向量,输出为主密钥和加密认证数据。

在具体的实施方案中,所述匹配检索的方法为:遍历数据库中所有的加密认证数据,并计算每个加密认证数据与用户认证时生成的加密认证数据的差值,若差值小于特定阈值t,则用户认证通过。

在具体的实施方案中,所述差值的计算方法根据生物特征选取距离度量方式,距离度量方式包括欧氏距离、汉明距离、编辑距离和集合差。

在具体的实施方案中,所述用户主密钥的生成方法基于生物特征转化器fe_rec算法实现,其中,生物特征转化器fe_rec算法输入为加密认证数据和生物特征向量,输出为主密钥。

在具体的实施方案中,所述对称加密密钥通过对主密钥和随机数运行伪随机函数得到,伪随机函数可以为hmac、hmac-sha1等。

在具体的实施方案中,所述打印配置信息包括打印份数、打印起止页数、打印纸张类型、打印方向和是否双面打印。

一种基于无标识生物认证的安全打印系统,包括打印客户端,打印服务端和打印机,所述打印客户端与打印服务端通过网络相连,所述打印服务端与打印机处于可视距离内,两者通过无线或有线方式数据连接;

所述打印客户端包括虚拟打印组件、信息采集组件、身份认证组件、密钥生成组件、通信组件和文件加密组件;所述虚拟打印组件用于接收用户提交的打印任务,生成打印配置信息;所述信息采集组件用于在用户提交注册请求或提交打印请求时采集用户的生物特征,并计算用户的生物特征向量;所述身份认证组件用于根据用户的生物特征向量生成加密认证数据并发送至打印服务端,以及根据用户的生物特征向量和打印服务端返回的加密认证数据生成用户主密钥;所述密钥生成组件用于利用主密钥和加密随机数生成对称加密密钥;所述文件加密组件用于利用对称加密密钥对打印文件进行加密;所述通信组件用于实现与打印服务端的会话建立和文件传输功能;

所述打印服务端包括信息采集组件、身份认证组件、密钥生成组件、通信组件、文件解密组件、用户管理组件和文件管理组件;所述信息采集组件用于在用户启动打印任务时采集用户的生物特征,并计算用户的生物特征向量;所述身份认证组件用于提供用户的身份认证功能,包括根据打印客户端发送的加密认证数据通过匹配检索存储的加密认证数据实现客户端身份认证,以及根据服务端生成的加密认证数据进行匹配检索实现服务端身份认证,并根据用户的生物特征向量和检索到的加密认证数据生成用户主密钥;所述密钥生成组件用于利用主密钥和加密随机数生成对称加密密钥;所述文件解密组件用于利用对称加密密钥对打印队列中存储的密态打印文件进行解密;所述通信组件用于完成与打印服务端的会话建立和文件传输功能;所述用户管理组件用于管理用户注册信息,所述用户注册信息包括用户标识和用户加密认证信息;所述文件管理组件用于管理用户的打印任务数据,所述打印任务数据包括加密后的打印文件、随机数和打印配置信息。

一种基于无标识生物认证的安全打印系统,包括打印客户端设备,打印服务端设备和打印机,所述打印客户端设备与打印服务端设备通过网络相连,所述打印服务端设备与打印机处于可视距离内,两者通过无线或有线方式数据连接;

所述打印客户端设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现如下方法:

用户在打印客户端提交打印请求时,打印客户端提示用户录入生物特征,并提取用户的生物特征向量,生成加密认证数据data′auth并发送到打印服务端;

打印客户端接收打印服务端发送的认证成功的加密认证数据dataauth,并结合提取的生物特征向量,生成用户主密钥,同时生成一个加密随机数,利用主密钥和加密随机数生成对称加密密钥;

打印客户端使用对称加密密钥对打印文件进行对称加密,加密后的文件连同随机数、打印配置信息一并发送到打印服务端;

所述打印服务端设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现如下方法:

打印服务端接收打印客户端发送的加密认证数据data′auth,对加密认证数据data′auth进行匹配检索,若匹配成功,则用户认证通过,将数据库中对应的加密认证数据dataauth发送给客户端;

打印服务端接收客户端发来的打印请求数据,将其中的加密文件、随机数、打印配置信息存储到用户对应的打印队列中;

用户在打印服务端启动打印任务时,打印服务端提示用户录入生物特征,提取用户的生物特征向量,生成加密认证数据并进行匹配检索,若匹配成功,则用户认证通过,生成用户主密钥;

打印服务器从用户对应的打印队列中取出处于等待状态的打印请求数据,对于每一个打印请求,利用随机数和主密钥计算对称加密密钥,然后解密打印文件,并将解密后的打印文件、打印配置封装为打印任务,并发送给打印机。

有益效果:与现有技术相比,本发明方法基于用户生物特征完成用户认证以及密钥生成的功能,不仅能够保护用户生物特征模板的安全性,也能做到用户主密钥通过生物特征即时生成、即时使用、即时销毁、无需存储,相对于公钥密码手段减少了密钥泄露风险。同时,该方法无需用户输入用户标识,也不需要建立用户与终端的绑定关系,扩展了安全打印系统的应用场景。

附图说明

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

图2为本发明实施例的系统结构框图。

图3为本发明应用示例的系统结构示意图。

具体实施方式

下面结合附图和具体实施例,对本发明作进一步说明。

如图1所示,本发明实施例公开的一种基于无标识生物认证的安全打印方法,该方法利用人体生物特征实现身份认证,同时加密保护打印数据;主要包括如下步骤:

s1:用户在打印客户端提交打印请求时,打印客户端提示用户录入生物特征,待用户录入完毕后,打印客户端提取用户的生物特征向量,生成加密认证数据data′auth并发送到打印服务端。

s2:打印服务端接收加密认证数据data′auth,并与数据库中存储的加密认证数据dataauth进行一一匹配检索,若找到匹配认证数据,则用户认证通过,服务端将对应用户的加密认证数据dataauth发送给客户端。服务端数据库中存储的加密认证数据dataauth为用户注册时根据录入的生物特征生成的加密认证数据dataauth。这里的生物特征包括但不限于指纹、人脸、虹膜、指静脉、声纹。注册时生成的加密认证数据dataauth与步骤s1中生成的加密认证数据data′auth方法一样,均是基于生物特征转化器fe_gen算法实现,其中,生物特征转化器fe_gen算法输入是生物特征向量,输出为主密钥keymaster和加密认证数据dataauth。

注册过程为:用户在打印客户端提交注册请求,客户端提示用户录入自己的生物特征,用户录入完成后,客户端为用户生成加密认证数据dataauth,并发送到打印服务端;打印服务端接收用户注册数据,并为该用户分配一个内部标识(即用户标识)id,并将id和加密认证数据dataauth存储在数据库中。

本步骤中,匹配检索方法用于认证用户,该方法首先一一遍历数据库中所有的加密认证数据dataauth,并计算每个加密认证数据dataauth与用户认证时生成的加密认证数据data′auth的差值,若存在某个dataauth,使得data′auth和dataauth的差值小于特定阈值t,则该用户认证通过。其中加密认证数据的差值计算针对不同的生物特征采用不同的距离度量方式,距离度量方式包括但不限于欧氏距离、汉明距离、编辑距离、集合差。

s3:打印客户端接收加密认证数据dataauth,并结合之前提取的生物特征向量,运行密钥生成算法生成用户主密钥keymaster,随后,客户端生成随机数r,并利用随机数r和用户主密钥keymaster生成对称密钥keysymm。本步骤中,密钥生成算法基于生物特征转化器fe_rec算法实现,其中,生物特征转化器fe_rec算法输入为加密认证数据dataauth和生物特征向量,输出为主密钥keymaster。对称加密密钥通过对主密钥和随机数运行伪随机函数得到,伪随机函数包括但不限于hmac,hmac-sha1。

s4:打印客户端使用对称加密密钥keysymm对打印文件进行对称加密,加密后的文件连同随机数r、打印配置信息一并发送到打印服务端。其中打印配置信息包括但不限于打印份数,打印起止页数、打印纸张类型、打印方向、是否双面打印。

s5:打印服务端接收客户端发来的打印请求数据,将其中的加密文件、随机数r、打印配置信息存储到用户标识id对应的打印队列中。

s6:用户在打印服务端启动打印任务时,服务端提示用户录入身份认证,之后提取用户的生物特征向量,生成加密认证数据data′auth,并在数据库中存储的加密认证数据进行匹配检索,若有匹配结果,则用户认证通过,并运行密钥生成算法生成用户主密钥keymaster。

s7:打印服务端从用户标识id对应的打印队列中取出处于等待状态的打印请求数据,对于每一个打印请求,利用随机数r和主密钥keymaster计算对称加密密钥keysymm,然后解密打印文件,并将解密后的打印文件、打印配置封装为打印任务,并发送给打印机。

s8:打印机接收到打印服务器发来的打印任务之后,进行打印工作。

如图2所示,本发明实施例公开的一种基于无标识生物认证的安全打印系统,包括打印客户端,打印服务端和打印机,打印客户端与打印服务端通过网络相连,打印服务端与打印机处于可视距离内,两者通过usb、wifi、蓝牙、以太网等方式相连接。

打印客户端包括虚拟打印组件、信息采集组件、身份认证组件、密钥生成组件、通信组件和文件加密组件;虚拟打印组件用于接收用户提交的打印任务,生成打印配置信息;信息采集组件用于在用户提交注册请求或提交打印请求时采集用户的生物特征,并计算用户的生物特征向量;身份认证组件用于根据用户的生物特征向量生成加密认证数据并发送至打印服务端,以及根据用户的生物特征向量和打印服务端返回的加密认证数据生成用户主密钥;密钥生成组件用于利用主密钥和加密随机数生成对称加密密钥;文件加密组件用于利用对称加密密钥对打印文件进行加密;通信组件用于实现与打印服务端的会话建立和文件传输功能;

打印服务端包括信息采集组件、身份认证组件、密钥生成组件、通信组件、文件解密组件、用户管理组件和文件管理组件;信息采集组件用于在用户启动打印任务时采集用户的生物特征,并计算用户的生物特征向量;身份认证组件用于提供用户的身份认证功能,包括根据打印客户端发送的加密认证数据通过匹配检索存储的加密认证数据实现客户端身份认证,以及根据服务端生成的加密认证数据进行匹配检索实现服务端身份认证,并根据用户的生物特征向量和检索到的加密认证数据生成用户主密钥;密钥生成组件用于利用主密钥和加密随机数生成对称加密密钥;文件解密组件用于利用对称加密密钥对打印队列中存储的密态打印文件进行解密;通信组件用于完成与打印服务端的会话建立和文件传输功能;用户管理组件用于管理用户注册信息,用户注册信息包括用户标识和用户加密认证信息;文件管理组件用于管理用户的打印任务数据,打印任务数据包括加密后的打印文件、随机数和打印配置信息。

下面结合图3所示的安全打印系统的具体应用示例,对本发明的方案进行进一步详细说明。如图3所示的安全打印系统,包括打印客户端、打印服务端、打印机,其中打印客户端与打印服务端通过以太网连接,打印服务端与打印机通过usb连接;设定系统使用虹膜对用户进行身份认证,打印客户端和打印服务端均连接一个摄像头,并且存在一个用户tom需要使用该安全打印系统。

tom首先在客户端进行注册:

a)tom在客户端点击注册按钮;

b)客户端提示tom录入自己的虹膜特征,并激活信息采集组件;tom将眼睛对准摄像头,摄像头自动对焦并拍照;

c)客户端的信息采集组件对图片中的虹膜进行定位,然后截取虹膜区域的图像并展开,然后对展开后的虹膜区域进行归一化,形成固定规格的展开图像,然后对展开图像运行二维gabor滤波算法得到虹膜特征向量vectortom;

d)客户端的密钥生成组件输入基于虹膜特征向量vectortom,运行生物特征转化器fe_gen算法(算法原理可参考https://en.wikipedia.org/wiki/fuzzy_extractor)得到加密认证数据dataauth;

e)客户端通过通信组件将加密认证数据dataauth发送到打印服务端;

f)打印服务端收到tom的注册信息,用户管理组件为tom分配一个内部标识id,并将<id、dataauth>存储在用户管理组件的数据库中;

当tom需要打印pdf文件file时:

a)用户在打印客户端电脑提交file的打印请求,打印客户端的虚拟打印组件对file打印请求进行解析,得到打印配置信息config和待打印文件file的pdf格式文件,其中config信息包括打印份数、打印起止页数、打印纸张类型、打印方向、是否双面打印;

b)打印客户端提示tom进行身份验证,提示tom录入虹膜信息并激活信息采集组件开始工作,同时tom将眼睛对准摄像头,信息采集组件驱动摄像头自动完成对焦与拍照;

c)客户端的信息采集组件对图片中的虹膜进行定位,然后截取虹膜区域的图像并展开,然后对展开后的虹膜区域进行归一化,形成固定规格的展开图像,然后对展开图像运行二维gabor滤波算法得到tom的虹膜特征向量vector′tom;

d)打印客户端的身份认证组件输入tom的虹膜特征向量vector′tom,运行生物特征转化器fe_gen算法,生成tom的加密认证数据data′auth;

e)打印服务端接收客户端发来的加密认证数据data′auth,用户认证组件将其与数据库中存储的所有用户的加密认证数据dataauth进行匹配检索,并计算每个用户的加密认证信息dataauth与tom的加密认证信息data′auth的汉明距离差值,若存在某个dataauth,使得data′auth和dataauth的差值小于特定阈值t,则tom认证通过,服务端将tom对应的加密认证数据dataauth发送给客户端;

f)打印客户端的密钥生成组件接收tom的加密认证数据dataauth,并结合之前提取的生物特征向量vector′tom,运行生物特征转化器fe_rec算法生成tom的用户主密钥keymaster;随后,客户端的密钥生成组件初始化一个随机数r,并对随机数r和用户主密钥keymaster运行hmac算法生成对称密钥keysymm;

g)打印客户端使用对称加密密钥keysymm对打印文件file进行对称加密,加密后的打印文件、随机数r、打印配置信息config一并发送到打印服务端;

h)打印服务端接收客户端发来的打印请求数据,将其中的加密文件、随机数r、打印配置信息config存储到文件管理组件中tom对应的打印队列中;

当tom走到打印机旁,启动打印任务时:

a)打印服务端提示tom进行身份认证,tom将眼睛对准摄像头,信息采集组件驱动摄像头自动完成对焦与拍照;

b)打印服务端的信息采集组件对图片中的虹膜进行定位,然后截取虹膜区域的图像并展开,然后对展开后的虹膜区域进行归一化,形成固定规格的展开图像,然后对展开图像运行二维gabor滤波算法得到tom的虹膜特征向量vector″tom;

c)打印服务端在身份认证组件输入tom的虹膜特征向量vector″tom,运行生物特征转化器fe_gen算法,生成加密认证数据data″auth,并与用户管理数据库中存储的加密认证数据进行匹配检索,并计算每个用户的加密认证信息dataauth与tom的加密认证信息data″auth的汉明距离差值,若存在某个dataauth,使得data″auth和dataauth的差值小于特定阈值t,则tom认证通过,密钥生成组件输入tom的加密认证数据dataauth和tom的生物特征向量vector″tom,运行生物特征转化器fe_rec算法生成tom的用户主密钥keymaster;

d)打印服务端的文件管理组件取出tom的打印队列中存储的所有打印任务,对于每一个打印任务:

1.取出其中的随机数r,对主密钥keymaster和加密随机数r运行hmac算法,得到对称加密密钥keysymm;

2.文件解密组件利用密钥keysymm对打印文件进行解密,得到待打印pdf文件file;

3.打印服务端将解密后的打印文件file、打印配置信息config封装为打印任务,并发送给打印机;

e)打印机接收到打印服务端发来的打印任务之后,进行打印工作。

基于相同的技术构思,本发明实施例还提供了一种基于无标识生物认证的安全打印系统,包括打印客户端设备,打印服务端设备和打印机。

其中,打印客户端设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被加载至处理器时实现如下方法:

用户在打印客户端提交打印请求时,打印客户端提示用户录入生物特征,并提取用户的生物特征向量,生成加密认证数据data′auth并发送到打印服务端;

打印客户端接收打印服务端发送的认证成功的加密认证数据dataauth,并结合提取的生物特征向量,生成用户主密钥,同时生成一个加密随机数,利用主密钥和加密随机数生成对称加密密钥;

打印客户端使用对称加密密钥对打印文件进行对称加密,加密后的文件连同随机数、打印配置信息一并发送到打印服务端。

打印服务端设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被加载至处理器时实现如下方法:

打印服务端接收打印客户端发送的加密认证数据data′auth,对加密认证数据data′auth进行匹配检索,若匹配成功,则用户认证通过,将数据库中对应的加密认证数据dataauth发送给客户端;

打印服务端接收客户端发来的打印请求数据,将其中的加密文件、随机数、打印配置信息存储到用户对应的打印队列中;

用户在打印服务端启动打印任务时,打印服务端提示用户录入生物特征,提取用户的生物特征向量,生成加密认证数据并进行匹配检索,若匹配成功,则用户认证通过,生成用户主密钥;

打印服务器从用户对应的打印队列中取出处于等待状态的打印请求数据,对于每一个打印请求,利用随机数和主密钥计算对称加密密钥,然后解密打印文件,并将解密后的打印文件、打印配置封装为打印任务,并发送给打印机。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。

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