指纹感测集成电路及其扰乱加密方法与流程

文档序号:17850447发布日期:2019-06-11 22:09阅读:249来源:国知局

本发明是有关一种指纹感测集成电路(Integrated Circuit,IC),特别是关于一种能够对指纹扰乱加密的指纹感测集成电路及其扰乱加密方法。



背景技术:

现有的指纹感测系统,是将指纹感测与身份辨识功能制作于同一集成电路中,将所有功能皆放进同一集成电路会使系统电路的制作较不灵活、也会有芯片良率的问题。此外,在许多应用方面需要将指纹感测与身份辨识功能分离并分别配置在使用者端及系统主控端并以传输接口连接,如图1所示,当指纹感测IC 13进行感测并取得手指的指纹图像信息,一传输接口(TX/RX interface)191将该指纹图像信息传送至系统主控端15以辨识使用者的身份是否正确。然而,在传输接口191传输指纹图像信息时,指纹图像信息有可能被侧录,例如使用与传输接口191相同规格的传输接口193将指纹图像信息侧录至非法的系统主控端17。如图2所示,已被侧录的指纹图像信息被存放在一存储装置18中,当非法使用者利用存储装置18取代指纹感测IC 13送出指纹图像信息经由与传输接口191相同规格的传输接口195送达系统主控端15时,非法使用者即可通过判别。因此需要对指纹图像信息加密以加强指纹传输的安全性。但是,现有的加密电路受限于指纹感测集成电路的面积,无法在整合成为单一IC的情形下增加静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)或快闪存储器来设计加密电路。



技术实现要素:

本发明的目的之一,在于提出一种能够对指纹扰乱加密的指纹感测IC及其扰乱加密方法,解决了现有技术中数据加解密以及传输过程出现延迟或耽搁的问题。

根据本发明,一种指纹感测IC包括一指纹感测元件用以感测指纹并产生一第一指纹图像信息、一线性反馈位移暂存器根据一初始值产生多个扰乱值以及一扰乱加密电路使用该多个扰乱值对该第一指纹图像信息进行扰乱加密以产生一加密的第二指纹图像信息。扰乱加密电路,连接该线性反馈位移暂存器与该指纹感测元件。其中,该第一指纹图像信息的数据量与该第二指纹图像信息的数据量相同,因此该指纹感测集成电路将该第二指纹图像信息经由一传输接口传送至远端的一系统主控端进行指纹认证时,数据传输过程不会造成延迟或耽搁。

根据本发明,一种指纹感测IC的扰乱加密方法包括感测指纹以产生一第一指纹图像信息,利用一初始值产生多个扰乱值,利用该多个扰乱值对该第一指纹图像信息进行扰乱加密以产生一加密的第二指纹图像信息经由该传输接口传送至该系统主控端进行指纹认证。其中,该第一指纹图像信息的数据量与该第二指纹图像信息的数据量相同,因此数据传输过程不会造成延迟或耽搁。

根据本发明,一种指纹感测IC包括一指纹感测元件、一线性反馈位移暂存器及一扰乱加密电路。该指纹感测元件感测指纹并产生一第一指纹图像信息,该第一指纹图像信息分成多个区段,每一个区段包含多个第一像素数据。该线性反馈位移暂存器根据目前要加密的区段所对应的初始值产生多个扰乱值。该扰乱加密电路使用该多个扰乱值对该目前要加密的区段的多个第一像素数据进行扰乱加密以产生多个第二像素数据。扰乱加密电路,连接该线性反馈位移暂存器与该指纹感测元件。其中,该多个区段全部进行扰乱加密后所产生的所有第二像素数据组成一第二指纹图像信息,该指纹感测集成电路将该第二指纹图像信息经由一传输接口传送至远端的一系统主控端进行指纹认证。第一指纹图像信息的数据量与该第二指纹图像信息的数据量相同,因此数据传输过程不会造成延迟或耽搁。

根据本发明,一种指纹感测IC的扰乱加密方法包括感测指纹以产生一第一指纹图像信息;将该第一指纹图像信息分割成多个区段,每一个区段包含多个第一像素数据;根据目前要加密的区段提供一初始值;利用该初始值产生多个扰乱值;以及利用该多个扰乱值对该目前要加密的区段的该多个第一像素数据进行扰乱加密以产生加密的多个第二像素数据。其中,该多个区段全部进行扰乱加密后所产生的所有第二像素数据组成一第二指纹图像信息,该第二指纹图像信息经由传输接口传送至系统主控端进行指纹认证。该第一指纹图像信息的数据量与该第二指纹图像信息的数据量相同,因此数据传输过程不会造成延迟或耽搁。

根据上述具体实施方式,本发明的技术效果在于无需使用SRAM、DRAM或快闪存储器来对指纹进行加密,故不影响整合后的指纹感测IC的面积,且加密后的数据量与加密前的数据量相同,因此数据加解密以及传输过程不会造成延迟或耽搁。

附图说明

图1是现有的指纹认证系统;

图2显示现有使用侧录的指纹图像信息进行认证的方式;

图3显示本发明指纹感测集成电路的实施例;

图4是图3中线性反馈位移暂存器的实施例;

图5是图3中扰乱加密电路的实施例;

图6显示初始值产生器的第一实施例;

图7显示初始值产生器的第二实施例;

图8显示初始值产生器的第三实施例;

图9显示初始值产生器的第四实施例;

图10显示第一指纹图像信息的区段分割的第一实施例;

图11显示第一指纹图像信息的区段分割的第二实施例;以及

图12显示第一指纹图像信息的区段分割的第三实施例。

符号说明:

13 指纹感测芯片

15 系统主控端

17 非法系统主控端

18 存储装置

191 传输接口

193 传输接口

195 传输接口

20 指纹感测IC

21 指纹感测元件

213 第一指纹图像信息

23 线性反馈位移暂存器

231 初始值

233 扰乱值

25 扰乱加密电路

253 第二指纹图像信息

27 传输接口

29 系统主控端

31 异或门

33 异或门

35 异或门

37 异或门

39 异或门

40 初始值产生器

41 种子

43 异或门

45 异或门

47 异或门

49 异或门

具体实施方式

参照图3,本发明的指纹感测IC 20包含了一指纹感测元件21、一线性反馈位移暂存器23(linear feedback shift register,LFSR)以及一扰乱加密电路25。当使用者的手指触碰指纹感测IC 20时,指纹感测元件21感测手指指纹以产生一第一指纹图像信息,线性反馈位移暂存器23根据一初始值231产生多个扰乱值233,扰乱加密电路25使用线性反馈位移暂存器23提供的多个扰乱值233将指纹感测元件21提供的第一指纹图像信息213扰乱加密产生加密的第二指纹图像信息253,指纹感测IC 20再把第二指纹图像信息253经由传输接口27传输至系统主控端29进行指纹认证。此例中,即使第二指纹图像信息253在传输中被侧录,但若无初始值231及扰乱值233等解码关键也无法在系统主控端获得真正的指纹,另一方面,即使从其它管道取得使用者的指纹,若无初始值231及扰乱值233,也无法正确加密之后经由传输接口送达系统主控端29进行解密,因而提高指纹传输的安全性。

图4为图3中线性反馈位移暂存器23的实施例,其包括多个暂存器R0-R15以及多个异或门(XOR)31、33、35及37。图3的线性反馈位移暂存器23可以用线性多项式P(x)=x16+x15+x12+x7+x3+1来表示。初始值231在载入线性反馈位移暂存器23后,初始值231的每一个位各自存储至对应的暂存器R0-R15中,在此实施例中,初始值231具有16位,在其他实施例中,可依需求改变线性多项式P(x)以改变线性反馈位移暂存器23的型态,亦改变初始值231的位数。线性反馈位移暂存器23可以根据一时脉信号来位移暂存器R0-R15中存储的位值,例如时脉信号每触发一次脉冲时,便进行一次位移,时脉信号可以由线性反馈位移暂存器23内部或外部的电路提供。在此实施例的线性反馈位移暂存器23进行位移时,异或门37根据暂存器R14及R15目前的位值产生位值XOR1,异或门35根据暂存器R11目前的位值及位值XOR1产生位值XOR2,异或门33根据暂存器R6目前的位值及位值XOR2产生位值XOR3,异或门31根据暂存器R2目前的位值及位值XOR3产生位值XOR4给暂存器R0,暂存器R0中原有的位值会位移至下一个暂存器R1中,同时暂存器R1中原有的位值会位移至下一个暂存器R2中,依此类推,暂存器R2-R14中原有的位值都会位移至下一个暂存器R3-R15。在图3中,异或门的数量以及其输入端所连接的暂存器或异或门是可根据需求而改变的,即改变线性反馈位移暂存器23的型态,此外在其他实施例中,也可以用其他逻辑运算电路来取代异或门。由于线性反馈位移暂存器有其周期特性,因此为了避免出现相同扰乱值,而被逆推解密,最好限制位移次数。

图4的线性反馈位移暂存器23在载入初始值231后,在进行位移前或进行至少一次位移后,线性反馈位移暂存器23提供包含暂存器R0的位值的第一个扰乱值S0={R0,R1,R2,R4,R8,R10,R11,R13},接着再经过至少一次位移后,线性反馈位移暂存器23提供第二个扰乱值S1={R0,R1,R2,R4,R8,R10,R11,R13},以此类推,每经至少一次位移后产生一个扰乱值Sn。在图4的实施例中,是选择暂存器R0、R1、R2、R4、R8、R10、R11、R13来获得8位的扰乱值Sn,但在其他实施例中,除了暂存器R0是必须的之外,其余的暂存器可以自由选择来决定扰乱值,而扰乱值Sn的位数也可以增加或减少。

图5为图3中扰乱加密电路25的实施例,其包括异或门39。第一指纹图像信息213包含多个第一像素数据PBn,异或门39将每一个第一像素数据PBn与一个扰乱值Sn进行异或运算产生组成第二指纹图像信息的第二像素数据其中,n为整数,根据图4的线性反馈位移暂存器23所得到的线性方程式P(x)=x16+x15+x12+x7+x3+1,n的范围是0至4095的整数。如图4及图5所示,本发明的加密方式只需要暂存器R0-R15以及逻辑运算电路,无需使用SRAM、DRAM或快闪存储器。另外加密前的第一像素数据PBn与加密后的第二像素数据Dn的位数相同,皆为8位,因此加密前的数据总数量与加密后的数据总数量相同,在处理指纹图像信息的加解密过程中,不会造成数据传输的延迟(latency)或耽搁(delay),而能流畅地(smoothly)传递指纹图像信息。

在图3中的初始值231,可以由系统主控端29直接产生后经由传输接口提供至指纹感测IC 20,也可以由指纹感测IC 20直接产生,或是由系统主控端29及指纹感测IC 20双方协定直接产生。初始值231可以是固定值也可以是变动值,固定的初始值231需要埋藏于指纹感测IC 20及系统主控端29的硬件中,防止软件破解,若是变动的初始值231则可设定是随机变动或是条件变动。

初始值231除了直接产生之外,还可以间接产生。间接产生初始值231的方式需要定义一或多个的种子(seed),种子为固定值,可埋藏于系统主控端以及指纹感测IC的硬件中,防止软件破解,系统主控端29以及指纹感测IC 20皆需要另一个线性反馈位移暂存器作为初始值产生器40用以产生初始值231,如图3所示。如此一来,初始值231就不会在传输接口27中传递,取代初始值231在传输接口27传递的是一组有规范的位序列,因此非法使用者从传输接口中只能盗取位序列,无法得到正确的初始值231。位序列可以由系统主控端29定义传给指纹感测IC 20,也可以由指纹感测IC 20定义传给系统主控端29,还可以双方协定之后相互传递。双方协定的方式是由指纹感测IC 20传给系统主控端29一组信息,例如00000001,同时系统主控端29也传给指纹感测IC20另一组信息,例如10000000,系统主控端29与指纹感测IC 20将这两组信息排列组合或运算后得到一位序列,例如10000001。系统主控端29以及指纹感测电路20同步取得位序列之后,系统主控端29以及指纹感测IC 20双方各自的初始值产生器40根据此位序列选用种子以及进行位移以产生初始值231,系统主控端29以及指纹感测IC 20双方产生的初始值必须一致。系统主控端29的初始值产生器40可以用硬件实现,以避免规范的位序列格式被得知后,被回推得到种子。

位序列的信息包括位移次数与选用的种子,以16位的位序列为例,前面的2位用以选择种子,后面的14位代表初始值产生器40的位移次数,在此例中假设有4个种子:16’h5500,16’h5400,16’h0020,16’h0080,而位序列若为16’hC800,其中16’代表16个位数,h代表后面的数据为16进位制,因此位序列16’hC800以2进位表示为1100100000000000,前两位11代表取用第四个种子16’h0080,而后14位则代表位移2048次,所以系统主控端29以及指纹感测IC 20双方的初始值产生器40经此运作即可得到一致的初始值。

图6显示初始值产生器40的第一实施例,其包括多个暂存器G0-G15以及多个异或门43、45及47。在根据一位序列从预设的多个种子中选择其中一个种子41载入初始值产生器40后,种子41包括多个位值分别存储至暂存器G0-G15,接着再依据位序列所设定的位移次数位移后产生初始值231。图6的初始值产生器40的位移操作与图4的线性反馈位移暂存器23相同,暂存器G0-G14的位会位移至下一个暂存器G1-G15,异或门43、45及47根据部分暂存器G3、G8、G11及G14目前的位值产生新的位值NB0至暂存器G0。在其他实施例中,暂存器G0-G15的数量是可以改变的,而异或门43、45及47的数量及位置也是可以改变的,此外异或门43、45及47也可以使用其他逻辑运算电路来取代。

另外也可以将初始值231的数个位设定为预设的固定值,不受线性反馈位移暂存器40的位移影响,以避免软件回推。图7显示初始值产生器40的第二实施例,图7的电路类似图6,差异在于暂存器G15的位并不会输出作为初始值231的最后一个位,而是用预设的固定值“0”作为初始值231的最后一个位。在图7的实施例中,只设定初始值231的一个位为预设的固定值,在其他实施例中,也可以设定初始值231中一个以上的位为预设的固定值。

除了将初始值231的数个位设定为预设的固定值之外,也可以运算部分暂存器G0-G15中的位值产生一特定位作为初始值的其中一个位。图8显示初始值产生器40的第三实施例,其与图6的电路类似,差别在于图8的初始值产生器40并非使用暂存器G15的位作为初始值231的最后一个位,而使用异或门49将暂存器G3及G15的位值进行异或运算后产生的特定位Kn作为初始值231的最后一个位。特定位Kn的指定可以程式化,例如此次是指定暂存器G3及G15的位来产生特定位Kn,但下次再产生初始值时,可以改指定暂存器G2及G8的位来产生特定位Kn。在其他实施例中,异或门49也可以使用其他逻辑运算电路来取代。

图9显示初始值产生器40的第四实施例,其与图8的电路类似,差别在图9的暂存器G0-G3的位在初始值231中的对应位置被改变,其中暂存器G0-G2的位分别作为初始值231的第二、第三和第四位,而暂存器G3的位则作为初始值231的第一个位。

第一指纹图像信息213可以分割成多个区段之后使用不同的初始值231加密,一来可以降低整张图像被非法解密的可能性,另一方面也可以符合线性反馈位移暂存器的周期特性的限制。图10显示一具有160×160个像素数据的第一指纹图像信息213,其中每10行连续像素数据为一个区段,每个区段各自使用不同的初始值231所产生的扰乱值Sn来加密,例如区段0使用初始值0,区段1使用初始值1,依此类推。

图11显示第一指纹图像信息213的另一种分割方法,其与图10的第一指纹图像信息213同样包含160×160个像素数据,在此实施例中,第一指纹图像信息213被分割成16个区段使用不同的初始值231来加密,但区段中像素数据的行数是不连续的,例如区段0的第0行为第一指纹图像信息213中的第0行像素数据,区段0的第1行为第一指纹图像信息213中的第16行像素数据,区段0的第2行为第一指纹图像信息213中的第32行像素数据,以此类推。即同一区段中的像素数据的行数,在第一指纹图像信息213中是等距离分散的。

图12显示第一指纹图信息213的又一种分割方法,在此实施例中,第一指纹图像信息213的160×160个像素数据被分割成16个40×40的区段0-15,这16个区段0-15各自使用不同的初始值0-15所产生的扰乱值Sn来加密,例如区段0使用初始值0,区段1使用初始值1,依此类推。

以上对于本发明的较佳实施例所作的叙述为阐明的目的,而无意限定本发明精确地为所揭露的形式,基于以上的教导或从本发明的实施例学习而作修改或变化是可能的,实施例为解说本发明的原理以及让本领域技术人员以各种实施例利用本发明在实际应用上而选择及叙述,本发明的技术思想企图由申请专利范围及其均等变换来决定。

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