[go: up one dir, main page]

CN102404109A - 密钥保护系统及方法 - Google Patents

密钥保护系统及方法 Download PDF

Info

Publication number
CN102404109A
CN102404109A CN2010102757643A CN201010275764A CN102404109A CN 102404109 A CN102404109 A CN 102404109A CN 2010102757643 A CN2010102757643 A CN 2010102757643A CN 201010275764 A CN201010275764 A CN 201010275764A CN 102404109 A CN102404109 A CN 102404109A
Authority
CN
China
Prior art keywords
sub
hash
key
bit string
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2010102757643A
Other languages
English (en)
Inventor
李忠一
叶建发
卢秋桦
蔡程丰
郑山川
简裕峰
颜宗信
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hongfujin Precision Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co Ltd
Original Assignee
Hongfujin Precision Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hongfujin Precision Industry Shenzhen Co Ltd, Hon Hai Precision Industry Co Ltd filed Critical Hongfujin Precision Industry Shenzhen Co Ltd
Priority to CN2010102757643A priority Critical patent/CN102404109A/zh
Publication of CN102404109A publication Critical patent/CN102404109A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

一种密钥保护系统,该系统包括:定义模块,用于定义多个哈希函数;构造模块,用于将密钥分成多个子位串,对密钥的每一个子位串构造一个表格单元;运算模块,用于应用定义的哈希函数对密钥的各个子位串进行运算,得到各个哈希函数对应的各个子位串的哈希地址;及填写模块,用于将各个子位串的表格单元填写到哈希表。本发明还提供一种密钥保护方法。本发明能够加强密钥的安全性,防止密钥被非法破解。

Description

密钥保护系统及方法
技术领域
本发明涉及一种信息保护系统及方法,特别是关于一种密钥保护系统及方法。
背景技术
目前,某些类型的光碟(例如BD与HD DVD)使用版权保护机制来保护光碟内容。为了能正确读取光碟中的多媒体数据,软件播放器必须使用许可管理者提供的密钥(称为许可钥),用来与光碟读取装置相互认证或计算能正确解密多媒体数据的解密密钥(称为标题密钥)。然而,某些心怀不轨的人可能利用除错模式从软件播放器中截取出密钥,以进行盗版行为。
发明内容
鉴于以上内容,有必要提供一种密钥保护系统,能够加强密钥的安全性,防止密钥被非法破解。
此外,还有必要提供一种密钥保护方法,能够加强密钥的安全性,防止密钥被非法破解。
一种密钥保护系统,运行于数据处理设备中,该系统包括:定义模块,用于定义多个哈希函数;构造模块,用于将密钥分成多个子位串,对密钥的每一个子位串构造一个表格单元,该表格单元包括第一数据与第二数据,所述第一数据包含所述子位串,所述第二数据指明第一数据中有几位数据是子位串;运算模块,用于应用定义的哈希函数对密钥的各个子位串进行运算,得到各个哈希函数对应的各个子位串的哈希地址;及填写模块,用于按照各个哈希函数对应的各个子位串的哈希地址将各个子位串的表格单元填写到哈希表。
一种密钥保护方法,该方法包括步骤:定义多个哈希函数;将密钥分成多个子位串,对密钥的每一个子位串构造一个表格单元,该表格单元包括第一数据与第二数据,所述第一数据包含所述子位串,所述第二数据指明第一数据中有几位数据是子位串;应用定义的哈希函数对密钥的各个子位串进行运算,得到各个哈希函数对应的各个子位串的哈希地址;及按照各个哈希函数对应的各个子位串的哈希地址将各个子位串的表格单元填写到哈希表。
本发明将组成密钥的子位串以表格单元的形式分散存放在哈希表中,分散的规则由自定义的哈希函数决定,在需要使用密钥时随机选用定义哈希函数来提取密钥,降低了不法分子利用除错模式截取密钥的风险,并且减少了提取密钥的复杂度。
附图说明
图1为本发明密钥保护系统较佳实施例的应用环境示意图。
图2为图1中密钥保护系统的功能模块图。
图3为本发明密钥保护方法较佳实施例的流程图。
图4为将密钥分为子位串的示意图。
图5-1至5-4为对图4所示的子位串构造表格单元的示意图。
主要元件符号说明
  密钥保护系统   10
  数据处理设备   11
  存储器   12
  处理器   13
  定义模块   200
  构造模块   210
  运算模块   220
  填写模块   230
  提取模块   240
具体实施方式
参阅图1所示,是本发明密钥保护系统较佳实施例的应用环境示意图。所述密钥保护系统10运行于数据处理设备11(例如服务器或个人计算机)中。该数据处理设备11还包括存储器12及处理器13。所述存储器12存储密钥保护系统10的程序指令以及密钥保护系统10运行过程中产生的数据。所述处理器13执行该密钥保护系统10的程序指令,以提高密钥的安全性。所述密钥是一个位串,例如10100001110110010100,用于对数据(例如影像与声音数据)进行保护。在本实施例中,所述密钥是用于保护光碟内容的许可钥,该许可钥用来与光碟读取装置相互认证或计算能正确解密光碟中多媒体数据的标题密钥。所述密钥还可以是其他用途的密钥,例如是用于文档解密的密钥。
参阅图2所示,是图1中密钥保护系统的功能模块图。所述密钥保护系统10包括定义模块200、构造模块210、运算模块220、填写模块230及提取模块240。所述定义模块200、构造模块210、运算模块220与填写模块230实现在使用密钥之前将密钥存放至哈希表,所述提取模块240实现在使用密钥之时从哈希表中提取出密钥。以下分别对各个模块进行详细说明。
所述定义模块200用于定义多个哈希函数。定义的每个哈希函数是一个随机函数。在本实施例中,定义模块200定义3个哈希函数,分别为第一哈希函数、第二哈希函数与第三哈希函数。在定义哈希函数时以高复杂度为原则,以增加破解密钥的难度,提高密钥的安全性。
所述构造模块210用于将密钥分成多个子位串,每个子位串的位数不限。参阅图4所示,密钥是20位的位串10100001110110010100,按照从低位向高位的顺序,将密钥分成4个子位串,第一子位串包括低4位数据0100,第二子位串包括中间6位数据011001,第三子位串包括中间3位数据111,第四子位串包括高7位数据1010000。构造模块210还用于对密钥的每一个子位串构造一个表格单元,该表格单元包括第一数据与第二数据,所述第一数据包含所述子位串,所述第二数据指明第一数据中有几位数据是子位串。在本实施例中,所述第一数据的位数固定(例如8位),子位串位于第一数据的低位。第一数据中子位串以外的其余位取随机值。参阅图5-1至5-4所示,是对图4所示的第一至第四子位串构造表格单元的示意图,各个子位串的表格单元的第一数据均为8位,子位串在第一数据的低位。例如,第一子位串的第二数据为4,则第一数据中的低4位是第一子位串,其余4位是随机值。
所述运算模块220用于应用定义的哈希函数对密钥的各个子位串进行运算,得到各个哈希函数对应的各个子位串的哈希地址。例如,应用第一哈希函数对密钥的各个子位串进行运算,得到第一子位串的哈希地址为7,第二子位串的哈希地址为3,第三子位串的哈希地址为5,第四子位串的哈希地址为11。应用第二哈希函数对密钥的各个子位串进行运算,得到第一子位串的哈希地址为4,第二子位串的哈希地址为8,第三子位串的哈希地址为2,第四子位串的哈希地址为10。应用第三哈希函数对密钥的各个子位串进行运算,得到第一子位串的哈希地址为1,第二子位串的哈希地址为9,第三子位串的哈希地址为13,第四子位串的哈希地址为6。在本实施例中,若计算的哈希地址发生碰撞,则采用开放地址法或链地址法解决碰撞。所述碰撞是指对子位串进行运算得到同一个哈希地址的现象。
所述填写模块230用于按照各个哈希函数对应的各个子位串的哈希地址将各个子位串的表格单元填写到哈希表。例如,根据第一哈希函数对应的各个子位串的哈希地址,将第一子位串的表格单元填写到哈希表中哈希地址为7的位置,将第二子位串的表格单元填写到哈希表中哈希地址为3的位置,将第三子位串的表格单元填写到哈希表中哈希地址为5的位置,将第四子位串的表格单元填写到哈希表中哈希地址为11的位置。根据第二哈希函数对应的各个子位串的哈希地址,将第一子位串的表格单元填写到哈希表中哈希地址为4的位置,将第二子位串对应的表格单元填写到哈希表中哈希地址为8的位置,将第三子位串对应的表格单元填写到哈希表中哈希地址为2的位置,将第四子位串对应的表格单元填写到哈希表中哈希地址为10的位置。根据第三哈希函数对应的各个子位串的哈希地址,将第一子位串的表格单元填写到哈希表中哈希地址为1的位置,将第二子位串对应的表格单元填写到哈希表中哈希地址为9的位置,将第三子位串对应的表格单元填写到哈希表中哈希地址为13的位置,将第四子位串对应的表格单元填写到哈希表中哈希地址为6的位置。
所述提取模块240用于在需要使用密钥的时候随机选用定义的哈希函数,根据选用的哈希函数计算密钥的各个子位串的哈希地址。例如,提取模块240选用第一哈希函数,计算得到第一子位串的哈希地址为7,第二子位串的哈希地址为3,第三子位串的哈希地址为5,第四子位串的哈希地址为11。提取模块240还用于根据计算得到的哈希地址从哈希表中获取各个子位串的表格单元,从表格单元中提取相应的子位串,并将提取的各个子位串组合为密钥。例如,从哈希地址为7的位置获取第一子位串的表格单元并提取出第一子位串,从哈希表中哈希地址为2的位置获取第二子位串的表格单元并提取出第二子位串,从哈希表中哈希地址为5的位置获取第三子位串的表格单元并提取出第三子位串,从哈希表中哈希地址为4的位置获取第四子位串的表格单元并提取出第四子位串,并且将第一至第四子位串组合为密钥。
参阅图3所示,是本发明密钥保护方法较佳实施例的流程图。步骤S301~S305用以将密钥存放至哈希表;当需要使用密钥的时候,执行步骤S306~S307,从哈希表中提取出密钥。
步骤S301,定义模块200定义多个哈希函数。定义的每个哈希函数是一个随机函数。在本实施例中,定义模块200定义3个哈希函数,分别为第一哈希函数、第二哈希函数与第三哈希函数。在定义哈希函数时以高复杂度为原则,以增加破解密钥的难度,提高密钥的安全性。
步骤S302,构造模块210将密钥分成多个子位串,每个子位串的位数不限。参阅图4所示,密钥是20位的位串10100001110110010100,按照从低位向高位的顺序,将密钥分成4个子位串,第一子位串包括低4位数据0100,第二子位串包括中间6位数据011001,第三子位串包括中间3位数据111,第四子位串包括高7位数据1010000。
步骤S303,构造模块210对密钥的每一个子位串构造一个表格单元,该表格单元包括第一数据与第二数据,所述第一数据包含所述子位串,所述第二数据指明第一数据中有几位数据是子位串。在本实施例中,所述第一数据的位数固定(例如8位),子位串位于第一数据的低位。第一数据中子位串以外的其余位取随机值。参阅图5-1至5-4所示,是对图4所示的第一至第四子位串构造表格单元的示意图,各个子位串的表格单元的第一数据均为8位,子位串在第一数据的低位。例如,第一子位串的第二数据为4,则第一数据中的低4位是第一子位串,其余4位是随机值。
步骤S304,运算模块220应用定义的哈希函数对密钥的各个子位串进行运算,得到各个哈希函数对应的各个子位串的哈希地址。例如,应用第一哈希函数对密钥的各个子位串进行运算,得到第一子位串的哈希地址为7,第二子位串的哈希地址为3,第三子位串的哈希地址为5,第四子位串的哈希地址为11。应用第二哈希函数对密钥的各个子位串进行运算,得到第一子位串的哈希地址为4,第二子位串的哈希地址为8,第三子位串的哈希地址为2,第四子位串的哈希地址为10。应用第三哈希函数对密钥的各个子位串进行运算,得到第一子位串的哈希地址为1,第二子位串的哈希地址为9,第三子位串的哈希地址为13,第四子位串的哈希地址为6。在本实施例中,若计算的哈希地址发生碰撞,则采用开放地址法或链地址法解决碰撞。
步骤S305,填写模块230按照各个哈希函数对应的各个子位串的哈希地址将各个子位串的表格单元填写到哈希表。例如,根据第一哈希函数对应的各个子位串的哈希地址,将第一子位串的表格单元填写到哈希表中哈希地址为7的位置,将第二子位串的表格单元填写到哈希表中哈希地址为3的位置,将第三子位串的表格单元填写到哈希表中哈希地址为5的位置,将第四子位串的表格单元填写到哈希表中哈希地址为11的位置。根据第二哈希函数对应的各个子位串的哈希地址,将第一子位串的表格单元填写到哈希表中哈希地址为4的位置,将第二子位串对应的表格单元填写到哈希表中哈希地址为8的位置,将第三子位串对应的表格单元填写到哈希表中哈希地址为2的位置,将第四子位串对应的表格单元填写到哈希表中哈希地址为10的位置。根据第三哈希函数对应的各个子位串的哈希地址,将第一子位串的表格单元填写到哈希表中哈希地址为1的位置,将第二子位串对应的表格单元填写到哈希表中哈希地址为9的位置,将第三子位串对应的表格单元填写到哈希表中哈希地址为13的位置,将第四子位串对应的表格单元填写到哈希表中哈希地址为6的位置。
在需要使用密钥的时候,步骤S306,提取模块240随机选用定义的哈希函数,根据选用的哈希函数计算密钥的各个子位串的哈希地址。例如,提取模块240选用第一哈希函数,计算得到第一子位串的哈希地址为7,第二子位串的哈希地址为3,第三子位串的哈希地址为5,第四子位串的哈希地址为11。
步骤S307,提取模块240根据计算得到的哈希地址从哈希表中获取各个子位串的表格单元,从表格单元中提取相应的子位串,并将提取的各个子位串组合为密钥。例如,从哈希地址为7的位置获取第一子位串的表格单元并提取出第一子位串,从哈希表中哈希地址为2的位置获取第二子位串的表格单元并提取出第二子位串,从哈希表中哈希地址为5的位置获取第三子位串的表格单元并提取出第三子位串,从哈希表中哈希地址为4的位置获取第四子位串的表格单元并提取出第四子位串,并且将第一至第四子位串组合为密钥。
上述密钥保护方法将密钥分成多个子位串,将包含子位串的表格单元以随机分散的方式存放在哈希表中,分散的规则由自定义的哈希函数决定,在使用密钥时随机选用定义的哈希函数来提取密钥,本发明降低了不法分子利用除错模式截取密钥的风险,并且减少了提取密钥的复杂度。

Claims (10)

1.一种密钥保护系统,运行于数据处理设备中,其特征在于,该系统包括:
定义模块,用于定义多个哈希函数;
构造模块,用于将密钥分成多个子位串,对密钥的每一个子位串构造一个表格单元,该表格单元包括第一数据与第二数据,所述第一数据包含所述子位串,所述第二数据指明第一数据中有几位数据是子位串;
运算模块,用于应用定义的哈希函数对密钥的各个子位串进行运算,得到各个哈希函数对应的各个子位串的哈希地址;及
填写模块,用于按照各个哈希函数对应的各个子位串的哈希地址将各个子位串的表格单元填写到哈希表。
2.如权利要求1所述的密钥保护系统,其特征在于,该系统还包括:
提取模块,用于在需要使用密钥时随机选用定义的哈希函数,根据选用的哈希函数计算密钥的各个子位串的哈希地址,根据计算得到的哈希地址从哈希表中获取各个子位串的表格单元,从表格单元中提取相应的子位串,并将提取的各个子位串组合为密钥。
3.如权利要求1所述的密钥保护系统,其特征在于,所述密钥是用于保护光碟内容的许可钥。
4.如权利要求1所述的密钥保护系统,其特征在于,所述第一数据的位数固定,子位串位于第一数据的低位。
5.如权利要求1所述的密钥保护系统,其特征在于,所述运算模块在哈希地址发生碰撞时,采用开放地址法或链地址法解决碰撞。
6.一种密钥保护方法,其特征在于,该方法包括步骤:
定义多个哈希函数;
将密钥分成多个子位串,对密钥的每一个子位串构造一个表格单元,该表格单元包括第一数据与第二数据,所述第一数据包含所述子位串,所述第二数据指明第一数据中有几位数据是子位串;
应用定义的哈希函数对密钥的各个子位串进行运算,得到各个哈希函数对应的各个子位串的哈希地址;及
按照各个哈希函数对应的各个子位串的哈希地址将各个子位串的表格单元填写到哈希表。
7.如权利要求6所述的密钥保护方法,其特征在于,该方法还包括步骤:
当需要使用密钥时,随机选用定义的哈希函数,根据选用的哈希函数计算密钥的各个子位串的哈希地址;及
根据计算得到的哈希地址从哈希表中获取各个子位串的表格单元,从表格单元中提取相应的子位串,并将提取的各个子位串组合为密钥。
8.如权利要求6所述的密钥保护方法,其特征在于,所述密钥是用于保护光碟内容的许可钥。
9.如权利要求6所述的密钥保护方法,其特征在于,所述第一数据的位数固定,子位串位于第一数据的低位。
10.如权利要求6所述的密钥保护方法,其特征在于,所述应用定义的哈希函数对密钥的各个子位串进行运算,得到各个哈希函数对应的各个子位串的哈希地址的步骤中,若哈希地址发生碰撞,则采用开放地址法或链地址法解决碰撞。
CN2010102757643A 2010-09-08 2010-09-08 密钥保护系统及方法 Pending CN102404109A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010102757643A CN102404109A (zh) 2010-09-08 2010-09-08 密钥保护系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010102757643A CN102404109A (zh) 2010-09-08 2010-09-08 密钥保护系统及方法

Publications (1)

Publication Number Publication Date
CN102404109A true CN102404109A (zh) 2012-04-04

Family

ID=45885930

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010102757643A Pending CN102404109A (zh) 2010-09-08 2010-09-08 密钥保护系统及方法

Country Status (1)

Country Link
CN (1) CN102404109A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106664461A (zh) * 2014-07-16 2017-05-10 维亚塞斯公司 通过终端访问受保护的多媒体内容的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1925490A (zh) * 2006-09-21 2007-03-07 中国船舶重工集团公司第七○九研究所 移动自组织网络中基于多项式组的密钥预共享安全引导模型
US20090262943A1 (en) * 2004-08-12 2009-10-22 Cmla, Inc. Key derivation functions to enhance security
CN101753304A (zh) * 2008-12-17 2010-06-23 中国科学院自动化研究所 一种生物特征和密钥绑定的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090262943A1 (en) * 2004-08-12 2009-10-22 Cmla, Inc. Key derivation functions to enhance security
CN1925490A (zh) * 2006-09-21 2007-03-07 中国船舶重工集团公司第七○九研究所 移动自组织网络中基于多项式组的密钥预共享安全引导模型
CN101753304A (zh) * 2008-12-17 2010-06-23 中国科学院自动化研究所 一种生物特征和密钥绑定的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106664461A (zh) * 2014-07-16 2017-05-10 维亚塞斯公司 通过终端访问受保护的多媒体内容的方法
CN106664461B (zh) * 2014-07-16 2020-03-31 维亚塞斯公司 通过终端访问受保护的多媒体内容的方法

Similar Documents

Publication Publication Date Title
CN105187364B (zh) 保护白盒实现方案不受攻击
CN103279693B (zh) 一种文件加密方法
US9087459B2 (en) Methods, apparatus, and articles of manufacture to encode auxilary data into text data and methods, apparatus, and articles of manufacture to obtain encoded data from text data
US9455833B2 (en) Behavioral fingerprint in a white-box implementation
US20170244562A1 (en) Security information configuration method, security verification method, and related chip
CN105117635B (zh) 一种本地数据的安全保护系统和方法
EP2725555B1 (en) Methods and devices for optimising rendering of an encrypted 3D graphical object
US10922292B2 (en) Metamorphic storage of passcodes
CN103491062B (zh) 一种生成密码的方法和装置
Chan An image authentication method by applying Hamming code on rearranged bits
EP3035582A1 (en) Binding white-box implementation to reduced secure element
EP2425369B1 (en) Memory device and method for adaptive protection of content
CN110175475B (zh) 一种智能卡数据处理方法、装置及计算机可读存储介质
KR20090052130A (ko) 데이터 분할을 이용한 데이터 보호방법
CN106209346A (zh) 白盒密码技术交错查找表
JP2012059258A (ja) 電子キー保護システム及びその方法
CN115473702A (zh) 一种基于在线交互式web动态防御的内容混淆方法
CN104463767B (zh) 一种具有伪装图像和篡改认证功能的可视加密及解密方法
US9338145B2 (en) Security patch without changing the key
CN102404109A (zh) 密钥保护系统及方法
CN118364485A (zh) 用于数据表水印嵌入与提取的方法及相关产品
Saini A survey on watermarking web contents for protecting copyright
EP2940917A1 (en) Behavioral fingerprint in a white-box implementation
JP5468534B2 (ja) 保護レベル算出方法及び保護レベル算出システム
CN107968706B (zh) 具有流程保护功能的白盒密码方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120404