一种基于生物特征的安全打印方法与系统与流程

文档序号:16929241发布日期:2019-02-22 20:07阅读:110来源:国知局
一种基于生物特征的安全打印方法与系统与流程

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



背景技术:

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

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

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



技术实现要素:

发明目的:针对现有基于生物识别的安全打印产品或技术方案中存在的安全性问题,包括生物特征模板的安全保护、用户密钥的泄露风险等,本发明目的在于提供一种基于生物特征的安全打印方法与系统,通过引入生物特征转化器技术实现了生物特征的安全保护以及密钥生成与协商,增强了现有基于生物特征的打印方法的安全性。

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

一种基于生物特征的安全打印方法,包括如下步骤:

(1)用户在打印客户端提交打印请求时,打印客户端根据用户输入的用户标识,在本地缓存中查找对应标识的加密认证数据或向打印服务端请求加密认证数据;

(2)打印客户端提示用户录入生物特征,并提取用户的生物特征向量,结合加密认证数据对用户进行认证,若认证通过,则得到用户主密钥,同时生成一个加密随机数,利用主密钥和加密随机数生成对称加密密钥;若认证失败,返回出错信息;

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

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

(5)用户在打印服务端启动打印任务时,打印服务端获取用户录入的用户标识以及生物特征,提取用户的生物特征向量,并在数据库中检索用户标识对应的加密认证数据,利用加密认证数据和生物特征向量对用户进行认证,若认证通过,恢复出用户主密钥;若认证失败,返回出错信息;

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

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

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

在具体的实施方案中,所述用户标识的存在形式可以为字符串、智能卡等。

在具体的实施方案中,所述加密认证数据根据用户注册时录入的生物特征采用生物特征转化器fe_gen算法生成,其中,生物特征转化器fe_gen算法输入是生物特征向量,输出为主密钥和认证辅助信息,对主密钥运行哈希算法得出认证哈希值,认证哈希值和认证辅助信息共同构成加密认证数据。

在具体的实施方案中,利用生物特征向量和加密认证数据进行用户认证和主密钥提取方法基于生物特征转化器rec算法实现,其中,生物特征转化器fe_rec算法输入为认证辅助信息和生物特征向量,输出为主密钥;对主密钥进行哈希运算得到一个哈希值,并与加密认证数据中存储的认证哈希值比对,比对一致则认证通过;若不一致,则返回认证错误。

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

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

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

所述打印客户端包括虚拟打印组件、信息采集组件、身份认证组件、密钥生成组件、通信组件和文件加密组件;所述虚拟打印组件用于接收用户提交的打印任务,生成打印配置信息;所述信息采集组件用于在用户提交注册请求或提交打印请求时采集用户的生物特征,并计算用户的生物特征向量;所述身份认证组件用于提供用户的身份认证功能,具体实现方式为:利用用户的生物特征向量和加密认证数据对用户进行认证,若认证通过,则得到用户主密钥;若认证失败,返回出错信息;所述加密认证数据为根据用户输入的用户标识在打印客户端本地缓存中查找的对应的加密认证数据或向打印服务端请求加密认证数据;所述密钥生成组件用于利用主密钥和加密随机数生成对称加密密钥;所述文件加密组件用于利用对称加密密钥对打印文件进行加密;所述通信组件用于实现与打印服务端的会话建立和文件传输功能;

所述打印服务端包括信息采集组件、身份认证组件、密钥生成组件、通信组件、文件解密组件、用户管理组件和文件管理组件;所述信息采集组件用于在用户启动打印任务时采集用户的生物特征,并计算用户的生物特征向量;所述身份认证组件用于提供用户的身份认证功能,具体实现方式为:利用用户的生物特征向量和加密认证数据对用户进行认证,若认证通过,则得到用户主密钥;若认证失败,返回出错信息;所述加密认证数据为根据用户输入的用户标识在打印服务端数据库中查找的对应的加密认证数据;所述密钥生成组件用于利用主密钥和加密随机数生成对称加密密钥;所述文件解密组件用于利用对称加密密钥对打印队列中存储的密态打印文件进行解密;所述通信组件用于完成与打印服务端的会话建立和文件传输功能;所述用户管理组件用于管理用户注册信息,所述用户注册信息包括用户标识、用户加密认证信息;所述文件管理组件用于管理用户的打印任务数据,所述打印任务数据包括加密后的打印文件、随机数和打印配置信息。

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

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

打印客户端对提交打印请求的用户进行身份认证,并对打印文件进行加密,具体包括:根据用户输入的用户标识,打印客户端在本地缓存中查找对应标识的加密认证数据或向打印服务端请求加密认证数据;打印客户端提示用户录入生物特征,并提取用户的生物特征向量,结合加密认证数据对用户进行认证,若认证通过,则得到用户主密钥,同时生成一个加密随机数,利用主密钥和加密随机数生成对称加密密钥;若认证失败,返回出错信息;

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

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

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

打印服务端对启动打印任务的用户进行身份认证,并对加密的打印文件进行解密,具体包括:打印服务端获取用户录入的用户标识以及生物特征,提取用户的生物特征向量,并在数据库中检索用户标识对应的加密认证数据,利用加密认证数据和生物特征向量对用户进行认证,若认证通过,恢复出用户主密钥;若认证失败,返回出错信息;打印服务器从用户标识对应的打印队列中取出处于等待状态的打印请求数据,对于每一个打印请求,利用随机数和主密钥计算对称加密密钥,然后解密打印文件,并将解密后的打印文件、打印配置封装为打印任务,并发送给打印机。

有益效果:与现有技术相比,本发明方法基于用户生物特征完成用户认证以及密钥生成的功能,不仅能够保护用户生物特征模板的安全性,也能做到用户主密钥通过生物特征即时生成、即时使用、即时销毁、无需存储,相对于公钥密码手段减少了密钥泄露风险。

附图说明

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

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

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

具体实施方式

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

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

s1:用户在打印客户端提交打印请求时,打印客户端根据用户输入的用户标识id获取加密认证数据dataauth。其中,加密认证数据dataauth为用户注册时根据输入的用户标识id和录入的生物特征生成的加密认证数据dataauth。

注册过程为:用户在打印客户端注册,输入用户标识id并录入自己的生物特征,客户端生成加密认证数据dataauth,并将<id、dataauth>发送到打印服务端,打印服务端将其存储在数据库中。用户标识存在形式包括但不限于字符串、智能卡等;生物特征包括但不限于指纹、人脸、虹膜、指静脉、语音。本实施例的加密认证数据dataauth生成方法基于生物特征转化器fe_gen算法实现,其中,生物特征转化器fe_gen算法输入是生物特征向量,输出为主密钥keymaster和认证辅助信息datahelp,然后对主密钥keymaster运行哈希算法得出认证哈希值datahash,认证哈希值datahash和认证辅助信息datahelp共同构成加密认证数据dataauth。

本步骤中,打印客户端获取到用户标识id后,首先在本地缓存中查找对应标识的加密认证数据dataauth,若未找到,则将用户标识id发送到打印服务器,请求加密认证数据,打印服务器在数据库中检索用户标识id对应的加密认证数据dataauth,并发送给打印客户端。

s2:打印客户端获取到加密认证数据dataauth,提示用户录入生物特征,待用户录入完毕后,打印客户端提取用户的生物特征向量,并结合加密认证数据dataauth对用户进行认证,若认证通过,则得到用户主密钥keymaster,同时生成一个加密随机数,利用主密钥和加密随机数生成对称加密密钥keysymm;若认证失败,返回出错信息。

本步骤中,认证和主密钥提取方法基于生物特征转化器rec算法实现,其中,生物特征转化器fe_rec算法输入为认证辅助信息和生物特征向量,输出为主密钥keymaster;然后该方法对主密钥keymaster进行哈希运算得到一个哈希值,并与加密认证数据中存储的认证哈希值比对,比对一致则认证通过;若不一致,则返回认证错误。对称加密密钥通过对主密钥和随机数运行伪随机函数得到,伪随机函数包括但不限于hmac,hmac-sha1。

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

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

s5:用户在打印服务端启动打印任务时,打印服务端获取用于录入的用户标识id以及生物特征,打印服务端提取用户的生物特征向量,并在数据库中检索用户标识id对应的加密认证数据dataauth,利用加密认证数据dataauth和生物特征向量对用户进行认证,若认证通过,恢复出用户主密钥keymaster;若认证失败,返回出错信息。具体认证和主密钥提取方法与步骤s2中相同。

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

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

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

打印客户端包括虚拟打印组件、信息采集组件、身份认证组件、密钥生成组件、通信组件和文件加密组件;虚拟打印组件用于接收用户提交的打印任务,生成打印配置信息;信息采集组件用于在用户提交注册请求或提交打印请求时采集用户的生物特征,并计算用户的生物特征向量;身份认证组件用于提供用户的身份认证功能,具体实现方式为:利用用户的生物特征向量和加密认证数据对用户进行认证,若认证通过,则得到用户主密钥;若认证失败,返回出错信息;加密认证数据为根据用户输入的用户标识在打印客户端本地缓存中查找的对应的加密认证数据或向打印服务端请求加密认证数据;密钥生成组件用于利用主密钥和加密随机数生成对称加密密钥;文件加密组件用于利用对称加密密钥对打印文件进行加密;通信组件用于实现与打印服务端的会话建立和文件传输功能;

打印服务端包括信息采集组件、身份认证组件、密钥生成组件、通信组件、文件解密组件、用户管理组件和文件管理组件;信息采集组件用于在用户启动打印任务时采集用户的生物特征,并计算用户的生物特征向量;身份认证组件用于提供用户的身份认证功能,具体实现方式为:利用用户的生物特征向量和加密认证数据对用户进行认证,若认证通过,则得到用户主密钥;若认证失败,返回出错信息;加密认证数据为根据用户输入的用户标识在打印服务端数据库中查找的对应的加密认证数据;密钥生成组件用于利用主密钥和加密随机数生成对称加密密钥;文件解密组件用于利用对称加密密钥对打印队列中存储的密态打印文件进行解密;通信组件用于完成与打印服务端的会话建立和文件传输功能;用户管理组件用于管理用户注册信息,用户注册信息包括用户标识、用户加密认证信息;文件管理组件用于管理用户的打印任务数据,打印任务数据包括加密后的打印文件、随机数和打印配置信息。

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

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

a)tom在客户端输入用户标识id,并点击注册按钮;

b)客户端提示tom录入自己的虹膜特征,并激活信息采集组件;

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

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

e)客户端通过通信组件将二元组<id、dataauth>发送到打印服务端;

f)打印服务端收到tom的注册信息,并将其存储在用户管理组件的数据库中;

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

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

b)打印客户端弹出用户验证解密,提示tom输入用户标识id;

c)tom输入id后,打印客户端在本地缓存中查找对应标识的加密认证数据dataauth,若未找到,则将用户标识发送到打印服务端,请求加密认证数据;

d)打印服务端在用户管理组件的数据库中检索tom对应的加密认证数据dataauth,若找到则发送给打印客户端,否则返回用户未注册的错误信息,转到步骤j;

e)打印客户端接收打印服务端发来的加密认证数据dataauth,提示tom录入虹膜信息并激活信息采集组件开始工作,同时tom将眼睛对准摄像头,信息采集组件驱动摄像头完成对焦与拍照;

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

g)打印客户端的身份认证组件输入tom的虹膜特征向量vector′tom和tom的加密认证数据dataauth,运行生物特征转化器rec算法,对用户进行认证,若认证通过,则得到用户主密钥keymaster;随后密钥生成组件初始化一个随机数r,对主密钥keymaster和随机数r运行hmac算法,得到对称加密密钥keysymm;

h)打印客户端的文件加密组件使用对称加密密钥keysymm对打印文件file运行des加密算法,加密后的文件连同用户标识id、随机数r、打印配置信息config一并发送到打印服务端;

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

j)打印服务端返回任务结束信号;

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

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

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

c)打印服务端在用户管理数据库中检索tom的加密认证数据dataauth,身份认证组件输入tom的虹膜特征向量vector″tom和tom的加密认证数据dataauth,运行生物特征转化器rec算法,对用户进行认证,若认证通过,则得到用户主密钥keymaster;若认证失败,返回出错信息;

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

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

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

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

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

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

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

打印客户端对提交打印请求的用户进行身份认证,并对打印文件进行加密,具体包括:根据用户输入的用户标识,打印客户端在本地缓存中查找对应标识的加密认证数据或向打印服务端请求加密认证数据;打印客户端提示用户录入生物特征,并提取用户的生物特征向量,结合加密认证数据对用户进行认证,若认证通过,则得到用户主密钥,同时生成一个加密随机数,利用主密钥和加密随机数生成对称加密密钥;若认证失败,返回出错信息;

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

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

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

打印服务端对启动打印任务的用户进行身份认证,并对加密的打印文件进行解密,具体包括:打印服务端获取用户录入的用户标识以及生物特征,提取用户的生物特征向量,并在数据库中检索用户标识对应的加密认证数据,利用加密认证数据和生物特征向量对用户进行认证,若认证通过,恢复出用户主密钥;若认证失败,返回出错信息;打印服务器从用户标识对应的打印队列中取出处于等待状态的打印请求数据,对于每一个打印请求,利用随机数和主密钥计算对称加密密钥,然后解密打印文件,并将解密后的打印文件、打印配置封装为打印任务,并发送给打印机。

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

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