CN104598829B - 数据处理方法、装置及防攻击方法和装置以及存储装置 - Google Patents

数据处理方法、装置及防攻击方法和装置以及存储装置 Download PDF

Info

Publication number
CN104598829B
CN104598829B CN201310534555.XA CN201310534555A CN104598829B CN 104598829 B CN104598829 B CN 104598829B CN 201310534555 A CN201310534555 A CN 201310534555A CN 104598829 B CN104598829 B CN 104598829B
Authority
CN
China
Prior art keywords
data
mask
default
value
check code
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.)
Active
Application number
CN201310534555.XA
Other languages
English (en)
Other versions
CN104598829A (zh
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.)
Shanghai Fudan Microelectronics Group Co Ltd
Original Assignee
Shanghai Fudan Microelectronics Group 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 Shanghai Fudan Microelectronics Group Co Ltd filed Critical Shanghai Fudan Microelectronics Group Co Ltd
Priority to CN201310534555.XA priority Critical patent/CN104598829B/zh
Publication of CN104598829A publication Critical patent/CN104598829A/zh
Application granted granted Critical
Publication of CN104598829B publication Critical patent/CN104598829B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Quality & Reliability (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了数据处理方法、装置及防攻击方法和装置以及存储装置。所述数据处理方法包括:将第一数据和第一掩码进行预设运算获得第二数据;将所述第二数据和所述第一掩码分别存储。所述防攻击方法包括:利用第一校验码对第二数据和第一掩码进行校验,所述第二数据为第一数据和所述第一掩码进行预设运算后的值,所述第一校验码是根据所述第二数据和所述第一掩码生成的;当所述校验结果出现错误时,进行预设防攻击操作。通过所述方法和装置能够提高数据的安全性。

Description

数据处理方法、装置及防攻击方法和装置以及存储装置
技术领域
本发明涉及数据安全技术领域,特别涉及一种数据处理方法和装置、防攻击方法和装置以及存储装置。
背景技术
随着技术的发展,攻击者可能对存储在寄存器中的数据进行攻击,从而破坏数据的安全性。例如,在电子芯片系统中存在一些关键数据,所述关键数据被存放在电路中,现有的针对电路进行攻击的方法可以通过注入错误等手段修改关键数据或通过侵入式手段读取关键数据,从而达到破解芯片的目的。
因此,需要提出一种数据处理方法和装置、防攻击方法和装置以及存储装置,以提高数据的安全性。
发明内容
本发明解决的问题是提出一种数据处理方法和装置、防攻击方法和装置以及存储装置,以提高数据的安全性。
本发明的实施例提供了一种数据处理方法,所述数据处理方法包括:将第一数据和第一掩码进行预设运算获得第二数据;将所述第二数据和所述第一掩码分别存储。
可选地,所述方法还包括:根据所述第二数据和所述第一掩码生成第一校验码。
可选地,所述第一校验码为奇偶校验码。
可选地,所述方法还包括:将所述第一数据进行第一预设变换形成第三数据;将所述第三数据和第二掩码进行所述预设运算获得第四数据;将所述第四数据和所述第二掩码分别存储。
可选地,所述第一预设变换为求反变换。
可选地,所述方法还包括:根据所述第四数据和所述第二掩码生成第二校验码。
可选地,所述第二校验码为奇偶校验码。
可选地,所述方法还包括:将所述第三数据进行第二预设变换形成第五数据;将所述第五数据和第三掩码进行所述预设运算获得第六数据;将所述第六数据和所述第三掩码分别存储。
可选地,所述预设运算为异或运算。
本发明的实施例还提供了一种数据的防攻击方法,所述数据的防攻击方法包括:利用第一校验码对第二数据和第一掩码进行校验,所述第二数据为第一数据和所述第一掩码进行预设运算后的值,所述第一校验码是根据所述第二数据和所述第一掩码生成的;当所述校验结果出现错误时,进行预设防攻击操作。
可选地,所述第一校验码为奇偶校验码。
可选地,所述方法还包括:获得第四数据和第一掩码进行所述预设运算后的第一值与所述第二数据和第二掩码进行所述预设运算后的第二值,所述第四数据为第三数据和所述第二掩码进行所述预设运算后的值,所述第三数据为所述第一数据进行第一预设变换后的值;当所述第一值和第二值之间不满足所述第一预设变换关系,进行所述预设防攻击操作。
可选地,所述第一预设变换为求反变换。
可选地,所述方法还包括:利用第二校验码对所述第四数据和所述第二掩码进行校验,所述第二校验码是根据所述第四数据和所述第二掩码生成的;当所述校验结果出现错误时,进行所述预设防攻击操作。
可选地,所述第二校验码为奇偶校验码。
可选地,所述方法还包括:获得第六数据和第二掩码进行所述预设运算后的第三值与所述第四数据和第三掩码进行所述预设运算后的第四值,所述第六数据为第五数据和所述第三掩码进行所述预设运算后的值,所述第五数据为所述第三数据进行第二预设变换后的值;当所述第三值和第四值之间不满足所述第二预设变换关系,进行所述预设防攻击操作。
可选地,所述预设防攻击操作包括:提示用户数据受到攻击。
可选地,所述预设运算为异或运算。
本发明的实施例还提供了一种数据处理装置,所述数据处理装置包括:第一运算单元,用于将第一数据和第一掩码进行预设运算获得第二数据;第一存储单元,用于分别存储所述第二数据和所述第一掩码。
可选地,所述装置还包括:第一校验码生成单元,用于根据所述第二数据和所述第一掩码生成第一校验码。
可选地,所述第一校验码为奇偶校验码。
可选地,所述装置还包括:第二运算单元,用于将所述第一数据进行第一预设变换形成第三数据;第三运算单元,用于将所述第三数据和第二掩码进行所述预设运算获得第四数据;以及第二存储单元,用于分别存储将所述第四数据和所述第二掩码。
可选地,所述第二运算单元用于将所述第一数据进行求反变换形成第三数据。
可选地,所述装置还包括:第二校验码生成单元,用于根据所述第四数据和所述第二掩码生成第二校验码。
可选地,所述第二校验码为奇偶校验码。
可选地,所述装置还包括:第四运算单元,用于将所述第三数据进行第二预设变换形成第五数据;第五运算单元,用于将所述第五数据和第三掩码进行所述预设运算获得第六数据;以及第三存储单元,用于将分别存储所述第六数据和所述第三掩码。
本发明的实施例还提供了一种数据的防攻击装置,所述数据的防攻击装置包括:第一校验单元,用于利用第一校验码对第二数据和第一掩码进行校验,所述第二数据为第一数据和所述第一掩码进行预设运算后的值,所述第一校验码是根据所述第二数据和所述第一掩码生成的;处理单元,用于当所述校验结果出现错误时,进行预设防攻击操作。
可选地,所述第一校验码为奇偶校验码。
可选地,所述装置还包括:第六运算单元,用于获得第四数据和第一掩码进行所述预设运算后的第一值;第七运算单元,用于获得所述第二数据和第二掩码进行所述预设运算后的第二值,所述第四数据为第三数据和所述第二掩码进行所述预设运算后的值,所述第三数据为所述第一数据进行第一预设变换后的值,所述处理单元用于当所述第一值和第二值之间不满足所述第一预设变换关系,进行所述预设防攻击操作。
可选地,所述装置还包括:第二校验单元,用于利用第二校验码对所述第四数据和所述第二掩码进行校验,所述第二校验码是根据所述第四数据和所述第二掩码生成的,所述处理单元用于当所述校验结果出现错误时,进行所述预设防攻击操作。
可选地,所述第二校验码为奇偶校验码。
可选地,所述装置还包括:第八运算单元,用于获得第六数据和第二掩码进行所述预设运算后的第三值;第九运算单元,用于获得所述第四数据和第三掩码进行所述预设运算后的第四值,所述第六数据为第五数据和所述第三掩码进行所述预设运算后的值,所述第五数据为所述第三数据进行第二预设变换后的值,所述处理单元用于当所述第三值和第四值之间不满足所述第二预设变换关系,进行所述预设防攻击操作。
可选地,所述处理单元用于在所述预设操作过程中提示用户数据受到攻击。
本发明的实施例还提供了一种存储装置,所述存储装置包括:第一存储单元,用于分别存储第二数据和第一掩码,所述第二数据为第一数据和所述第一掩码进行预设运算后的值。
可选地,所述第一存储单元还用于存储第一校验码,所述第一校验码是根据所述第二数据和所述第一掩码生成的。
可选地,所述装置还包括:第二存储单元,用于分别存储第四数据和第二掩码,所述第四数据为第三数据和所述第二掩码进行预设运算后的值,所述第三数据为所述第一数据进行第一预设变换后的值。
可选地,所述第二存储单元还用于存储第二校验码,所述第二校验码是根据所述第四数据和所述第二掩码生成的。
可选地,所述装置还包括:第三存储单元,用于分别存储第六数据和第三掩码,所述第六数据为第五数据和所述第三掩码进行预设运算后的值,所述第五数据为所述第三数据进行第二预设变换后的值。
与现有技术相比,本发明的实施例具有以下优点:通过上述技术方案,将第一数据和第一掩码进行预设运算获得第二数据,并将所述第二数据和所述第一掩码分别存储,这时,即使攻击者破解了所述第二数据,但在没有破解所述第一掩码的情况下,仍然无法获得所述作为原始数据的第一数据,因此,所述第一数据的安全性相对现有技术有所提高。另外,通过上述技术方案,利用第一校验码对第二数据和第一掩码进行校验,当所述校验结果出现错误时,就可以知道攻击者是否修改所述第二数据、所述第一掩码或第一数据和第一掩码,也就是说,通过上述防攻击方法可以知道所述第一数据是否存在安全风险,因此用户不再被动地和不知情的情况下承受数据被破解的风险,而是主动地根据数据已被破解的事实采取相应的防攻击操作,从而提高整个数据系统的安全性。
附图说明
图1是本发明一实施例中数据处理方法的流程图;
图2是本发明另一实施例中数据处理方法的流程图;
图3是本发明一实施例中防攻击方法的流程图;
图4是本发明另一实施例中防攻击方法的流程图;
图5是本发明一实施例中数据处理装置的结构示意图;
图6是本发明另一实施例中数据处理装置的结构示意图;
图7是本发明实一施例中防攻击装置的结构示意图;
图8是本发明另一实施例中防攻击装置的结构示意图;
图9是本发明实施例中存储装置的结构示意图。
具体实施方式
经研究,发明人发现,攻击者通过修改数据,并判断修改数据后芯片是否出错来判断所修改的数据的值。例如,某原始数据的特定位的数据为1,当攻击者将该原始数据的所述特定位修改为1时,发现芯片正常运行,那么攻击者就可以推断出该原始数据的所述特定位为1;相反地,当攻击者将该原始数据的所述特定位的数据改为0,发现芯片运行出错,那么攻击者就可以推断出该原始数据的所述特定位为1。因此,攻击者可以通过一次修改所述原始数据的每一位来破解整个原始数据的数值。为解决这一问题,本发明的实施例提供了新的数据处理方法、装置及防攻击方法和装置,以提高数据的安全性。
为详细说明本发明的技术内容、构造特征、所实现目的及效果,下面结合附图对本发明的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,因此本发明不受下面公开的具体实施例的限制。
图1是本发明实施例中的数据处理方法。请参考图1,所述数据处理方法包括:步骤S101至S102。
步骤S101,将第一数据和第一掩码进行预设运算获得第二数据。
在本发明一实施例中,所述预设运算为异或运算,在本发明的其他实施例中,所述预设运算也可以为其他可适用的运算方式,如与运算、或运算、加法运算、减法运算、乘法运算或除法运算等。
步骤S102,将所述第二数据和所述第一掩码分别存储。
在本发明的实施例中,可以将所述第二数据和所述第二掩码分别存放在不同的寄存器,从而使得攻击者即使破解了所述第二数据,但在无法获得所述第二数据对应的第一掩码时,仍然无法通过所述第二数据和所述第一掩码还原所述第一数据。
由上可知,在步骤S101中通过第一掩码将所述第一数据隐藏起来,而在步骤S102中,将所述隐藏第一数据的第二数据和所述第一掩码分离,从而可以避免攻击者利用所述第一掩码对所述第一数据进行还原。
为了进一步加大破解所述第一数据的难度,在本发明的实施例中,所述数据处理方法还可以包括步骤S103,如图1所示。
步骤S103,根据所述第二数据和所述第一掩码生成第一校验码。
在本发明的实施例中,所述第一校验码可以为奇偶校验码。在本发明的其他实施例中所述第一校验码还可以为其他可适用的校验码。
需要说明的是,由于所述第一校验码是根据所述第二数据和所述第一掩码生成的,那么当攻击者修改了所述第二数据和第一掩码时,利用所述第一校验码对所述修改后的第二数据和第一掩码进行验证时,所述校验过程将会出现错误,从而提示用户所述第一数据可能受到攻击。例如,当所述第一校验码为奇偶校验码时,修改后的所述第二数据和所述第一掩码的奇偶性将发生改变,那么利用所述奇偶校验码对所述修改后的第二数据和第一掩码进行检验时将会出现错误。
为了在攻击者破解了所述第二数据、第一掩码和对应第一校验码时,用户仍然能够发现所述第一数据受到攻击,在本发明的实施例,所述数据处理方法还可以包括步骤S104和步骤S105,如图1所示。
步骤S104,将所述第一数据进行第一预设变换形成第三数据,并将所述第三数据和第二掩码进行所述预设运算获得第四数据。
在本发明的实施例中,所述第一预设变换可以为求反变换,在本发明的其他实施例中,所述第一预设变换可以为其他可适用的变换。通过所述第一预设变换可以获得所述第三数据,并通过所述第二掩码将所述第三数据进行隐藏以获得所述第四数据。
步骤S105,将所述第四数据和所述第二掩码分别存储。
在本发明的实施例中,所述第四数据和所述第二掩码可以分别存放在不同的寄存器,以避免攻击者利用所述第二掩码还原所述第三数据,并利用所述第三数据来获得所述第一数据。
在步骤S104和步骤S105中,为第一数据增加了第四数据和相应的第二掩码,是为了当攻击者破解所述第二数据、所述第一掩码和对应的第一校验码时,用户仍能够通过判断所述第二数据和所述第二掩码进行所述预设运算后的第一值与所述第四数据和所述第一掩码进行所述预设运算后的第二值是否满足所述第一预设变换关系,来判断所述第一数据是否受到攻击。
例如,当所述预设运算为异或运算,所述第一预设变换为求反变换时,所述第一值为所述第一数据异或所述第一掩码并异或所述第二掩码后的值,所述第二值为所述第三数据异或所述第二掩码并异或所述第一掩码后的值,由于所述第三数据为所述第一数据的反码,那么通过判断所述第一值是否为所述第二值的反码,来确定所述第一数据是否受到攻击。如果第一值不为所述第二值的反码,所述第一数据存在安全风险。
为了在攻击者破解了所述第二数据、第一掩码、对应第一校验码、第四数据和第二掩码时,用户仍然发现所述第一数据受到攻击,在本发明的实施例中,所述数据处理方法还可以包括步骤S106,如图1所示。
步骤S106,根据所述第四数据和所述第二掩码生成第二校验码。
在本发明的实施例中,所述第二校验码为奇偶校验码。在本发明的其他实施例中所述第二校验码还可以为其他可适用的校验码。
需要说明的是,由于所述第二校验码是根据所述第四数据和所述第二掩码生成的,那么当攻击者修改了所述第四数据和第二掩码时,利用所述第二校验码对所述修改后的第四数据和第二掩码进行验证时,所述校验过程将会出现错误,从而提示用户所述第一数据可能受到攻击。例如,当所述第二校验码为奇偶校验码时,修改后的所述第四数据和所述第二掩码的奇偶性将发生改变,那么利用所述奇偶校验码对所述修改后的第四数据和第二掩码进行检验时将会出现错误。
为了在攻击者破解了所述第二数据、第一掩码、对应第一校验码、第四数据、第二掩码和第二校验码时,用户仍然发现所述第一数据受到攻击,在本发明的实施例中,所述数据处理方法还可以包括步骤S107和S108,如图2所示。
步骤S107,将所述第三数据进行第二预设变换形成第五数据以及将所述第五数据和第三掩码进行所述预设运算获得第六数据。
在本发明的实施例中,所述第二预设变换可以为求反变换,在本发明的其他实施例中,所述第二预设变换可以为其他可适用的变换。通过所述第二预设变换可以获得所述第五数据,并通过所述第三掩码将所述第五数据进行隐藏以获得所述第六数据。
步骤S108,将所述第六数据和所述第三掩码分别存储。
在本发明的实施例中,所述第六数据和所述第三掩码可以分别存放在不同的寄存器,以避免攻击者利用所述第三掩码还原所述第五数据,并利用所述第五数据来获得所述第三数据,并利用所述第三数据来获得所述第一数据。
在步骤S107和步骤S108中,为第一数据增加了第六数据和相应的第三掩码,是为了当攻击者破解所述第二数据、第一掩码、第一校验码、第四数据、第二掩码和第二校验码时,用户仍能够通过判断所述第六数据和所述第二掩码进行所述预设运算后的第三值与所述第四数据和所述第三掩码进行所述预设运算后的第四值是否满足所述第二预设变换关系,来判断所述第一数据是否受到攻击。
需要说明的是,在本发明的实施例中,还可以采用所述步骤S107和S108相类似的方法来为第一数据产生相关数据,以进一步提升所述第一数据的安全性,其中,所产生的相关数据数量越多,攻击者要破解第一数据的难度越大,所述第一数据的安全性越高。
图3是本发明实施例中的防攻击方法的流程图。请参考图3,所述防攻击方法包括:步骤S201至S202。
步骤S201,利用第一校验码对第二数据和第一掩码进行校验,所述第二数据为第一数据和所述第一掩码进行预设运算后的值,所述第一校验码是根据所述第二数据和所述第一掩码生成的。
步骤S202,当所述校验结果出现错误时,进行预设防攻击操作。
在本发明一实施例中,所述第一校验码为奇偶校验码。在本发明的其他实施例中所述第一校验码还可以为其他可适用的校验码。
在本发明一实施例中,所述预设运算为异或运算,在本发明的其他实施例中,所述预设运算也可以为其他可适用的运算方式,如与运算、或运算、加法运算、减法运算、乘法运算或除法运算等。
在本发明的实施例中,所述预设防攻击操作可以为提示用户数据受到攻击,也可以将所述第一数据和相关的数据信息丢弃。
需要说明的是,由于所述第一校验码是根据所述第二数据和所述第一掩码生成的,那么当攻击者修改了所述第二数据和第一掩码时,利用所述第一校验码对所述修改后的第二数据和第一掩码进行验证时,所述校验过程将会出现错误,从而提示用户所述第一数据可能受到攻击。例如,当所述第一校验码为奇偶校验码时,修改后的所述第二数据和所述第一掩码的奇偶性将发生改变,那么利用所述奇偶校验码对所述修改后的第二数据和第一掩码进行检验时将会出现错误。
为了在攻击者破解了所述第二数据、第一掩码和对应第一校验码时,用户仍然发现所述第一数据受到攻击,在本发明的实施例,所述防攻击方法还可以包括步骤S203和步骤S204,如图3所示。
步骤S203,获得第四数据和第一掩码进行所述预设运算后的第一值与所述第二数据和第二掩码进行所述预设运算后的第二值,所述第四数据为第三数据和所述第二掩码进行所述预设运算后的值,所述第三数据为所述第一数据进行第一预设变换后的值。
在本发明的实施例中,所述第一预设变换可以为求反变换,在本发明的其他实施例中,所述第一预设变换可以为其他可适用的变换。
步骤S204,当所述第一值和第二值之间不满足所述第一预设变换关系,进行所述预设防攻击操作。
具体地,通过步骤S203和S204,当攻击者破解了所述第二数据、第一掩码和对应第一校验码时,用户仍能够通过判断所述第二数据和所述第二掩码进行所述预设运算后的第一值与所述第四数据和所述第一掩码进行所述预设运算后的第二值是否满足所述第一预设变换关系,来判断所述第一数据是否受到攻击。
例如,当所述预设运算为异或运算,所述第一预设变换为求反变换时,所述第一值为所述第一数据异或所述第一掩码并异或所述第二掩码后的值,所述第二为所述第三数据异或所述第二掩码并异或所述第一掩码后的值,由于所述第三数据为所述第一数据的反码,那么通过判断所述第一值是否为所述第二值的反码,来确定所述第一数据是否受到攻击。如果第一值不为所述第二值的反码,所述第一数据存在安全风险。
为了在攻击者破解了所述第二数据、第一掩码、对应第一校验码、第四数据和第二掩码时,用户仍然发现所述第一数据受到攻击,在本发明的实施例中,所述防攻击方法还可以包括步骤S205和S206,如图3所示。
步骤S205,利用第二校验码对所述第四数据和所述第二掩码进行校验,所述第二校验码是根据所述第四数据和所述第二掩码生成的。
步骤S206,当所述校验结果出现错误时,进行所述预设防攻击操作。
在本发明一实施例中,所述第二校验码为奇偶校验码。在本发明的其他实施例中所述第二校验码还可以为其他可适用的校验码。
需要说明的是,由于所述第二校验码是根据所述第四数据和所述第二掩码生成的,那么当攻击者修改了所述第四数据和第二掩码时,利用所述第二校验码对所述修改后的第四数据和第二掩码进行验证时,所述校验过程将会出现错误,从而提示用户所述第一数据可能受到攻击。例如,当所述第二校验码为奇偶校验码时,修改后的所述第四数据和所述第二掩码的奇偶性将发生改变,那么利用所述奇偶校验码对所述修改后的第四数据和第二掩码进行检验时将会出现错误。
为了在攻击者破解了所述第二数据、第一掩码、对应第一校验码、第四数据、第二掩码和第二校验码时,用户仍然发现所述第一数据受到攻击,在本发明的实施例中,所述防攻击方法还可以包括步骤S207和S208,如图4所示。
步骤S207,获得第六数据和第二掩码进行所述预设运算后的第三值与所述第四数据和第三掩码进行所述预设运算后的第四值,所述第六数据为第五数据和所述第三掩码进行所述预设运算后的值,所述第五数据为所述第三数据进行第二预设变换后的值。
在本发明的实施例中,所述第一预设变换可以为求反变换,在本发明的其他实施例中,所述第一预设变换可以为其他可适用的变换。
步骤S208,当所述第三值和第四值之间不满足所述第二预设变换关系,进行所述预设防攻击操作。
具体地,通过步骤S207和S208,在攻击者破解了所述第二数据、第一掩码、对应第一校验码、第四数据、第二掩码和第二校验码时,用户仍能够通过判断所述第六数据和所述第二掩码进行所述预设运算后的第三值与所述第四数据和所述第三掩码进行所述预设运算后的第四值是否满足所述第二预设变换关系,来判断所述第一数据是否受到攻击。
需要说明的是,在本发明的实施例中,还可以采用所述步骤S207和S208相类似的方法来检验第一数据的相关数据,以进一步提升所述第一数据的安全性,其中,所述第一数据的相关数据数量越多,攻击者要破解第一数据的难度越大,所述第一数据的安全性越高。
本发明的实施例提供了一种数据处理装置,请参考图5,所述数据处理装置300包括:第一运算单元301,用于将第一数据和第一掩码进行预设运算获得第二数据;第一存储单元302,用于分别存储所述第二数据和所述第一掩码。
在本发明的实施例中,所述装置300还可以包括:第一校验码生成单元303,用于根据所述第二数据和所述第一掩码生成第一校验码。例如,所述第一校验码可以为奇偶校验码。
在本发明的实施例中,所述装置300还可以包括:第二运算单元304,用于将所述第一数据进行第一预设变换形成第三数据;第三运算单元305,用于将所述第三数据和第二掩码进行所述预设运算获得第四数据;以及第二存储单元306,用于分别存储将所述第四数据和所述第二掩码。
具体地,所述第二运算单元304可以用于将所述第一数据进行求反变换形成第三数据。
在本发明的实施例中,所述装置300还可以包括:第二校验码生成单元307,用于根据所述第四数据和所述第二掩码生成第二校验码。例如,所述第二校验码可以为奇偶校验码。
请参考图6,在本发明的实施例中,所述装置300还可以包括:第四运算单元308,用于将所述第三数据进行第二预设变换形成第五数据;第五运算单元309,用于将所述第五数据和第三掩码进行所述预设运算获得第六数据;以及第三存储单元310,用于将分别存储所述第六数据和所述第三掩码。
需要说明的是,在本发明的实施例中,为了进一步地提高所述第一数据的安全性,才可以采用第四运算单元308和第五运算单元309类似的结构为所述第一数据产生相关数据,其中,所产生的所述第一数据的相关数据越多,攻击者破解所述第一数据的难度越高,也就是说,所述第一数据的安全性越高。
本发明的实施例还提供了一种数据的防攻击装置,请参考图7,所述数据的防攻击装置400包括:第一校验单元410,用于利用第一校验码对第二数据和第一掩码进行校验,所述第二数据为第一数据和所述第一掩码进行预设运算后的值,所述第一校验码是根据所述第二数据和所述第一掩码生成的;处理单元420,用于当所述校验结果出现错误时,进行预设防攻击操作。
具体地,所述处理单元用于在所述预设操作过程中提示用户数据受到攻击。
在本发明的实施例中,所述第一校验码可以为奇偶校验码。
在本发明的实施例中,所述装置400还可以包括:第六运算单元430,用于获得第四数据和第一掩码进行所述预设运算后的第一值;第七运算单元440,用于获得所述第二数据和第二掩码进行所述预设运算后的第二值,所述第四数据为第三数据和所述第二掩码进行所述预设运算后的值,所述第三数据为所述第一数据进行第一预设变换后的值。相应地,所述处理单元420可以用于当所述第一值和第二值之间不满足所述第一预设变换关系,进行所述预设防攻击操作。
在本发明的实施例中,所述装置400还可以包括:第二校验单元450,用于利用第二校验码对所述第四数据和所述第二掩码进行校验,所述第二校验码是根据所述第四数据和所述第二掩码生成的。相应地,所述处理单元420可以用于当所述校验结果出现错误时,进行所述预设防攻击操作。
在本发明的实施例中,所述第二校验码为奇偶校验码。
请参考图8,在本发明的实施例中,所述装置400还可以包括:第八运算单元460,用于获得第六数据和第二掩码进行所述预设运算后的第三值;第九运算单元470,用于获得所述第四数据和第三掩码进行所述预设运算后的第四值,所述第六数据为第五数据和所述第三掩码进行所述预设运算后的值,所述第五数据为所述第三数据进行第二预设变换后的值。相应地,所述处理单元420可以用于当所述第三值和第四值之间不满足所述第二预设变换关系,进行所述预设防攻击操作。
需要说明的是,在本发明的实施例中,为了进一步地提高所述第一数据的安全性,才可以采用第八运算单元460和第九运算单元470类似的结构为所述第一数据的相关数据进行检验,其中,对所述第一数据的相关数据进行检验设置越多,攻击者破解所述第一数据的难度越高,也就是说,所述第一数据的安全性越高。
本发明的实施例还提供了一种存储装置,请参考图9,所述存储装置500包括:第一存储单元510,用于分别存储第二数据和第一掩码,所述第二数据为第一数据和所述第一掩码进行预设运算后的值。
在本发明的实施例中,所述第一存储单元510还可以用于存储第一校验码,所述第一校验码是根据所述第二数据和所述第一掩码生成的。
在本发明的实施例中,所述装置500还可以包括:第二存储单元520,用于分别存储第四数据和第二掩码,所述第四数据为第三数据和所述第二掩码进行预设运算后的值,所述第三数据为所述第一数据进行第一预设变换后的值。
在本发明的实施例中,所述第二存储单元520还可以存储第二校验码,所述第二校验码是根据所述第四数据和所述第二掩码生成的。
在本发明的实施例中,所述装置500还可以包括:第三存储单元530,用于分别存储第六数据和第三掩码,所述第六数据为第五数据和所述第三掩码进行预设运算后的值,所述第五数据为所述第三数据进行第二预设变换后的值。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

Claims (23)

1.一种数据处理方法,其特征在于,包括:
将第一数据和第一掩码进行预设运算获得第二数据;
将所述第二数据和所述第一掩码分别存储;
将所述第一数据进行第一预设变换形成第三数据;
将所述第三数据和第二掩码进行所述预设运算获得第四数据;
获得所述第四数据和第一掩码进行所述预设运算后的第一值;
获得所述第二数据和第二掩码进行所述预设运算后的第二值;
当所述第一值和第二值之间不满足所述第一预设变换关系,进行预设防攻击操作。
2.如权利要求1所述的方法,其特征在于,还包括:根据所述第二数据和所述第一掩码生成第一校验码。
3.如权利要求2所述的方法,其特征在于,所述第一校验码为奇偶校验码。
4.如权利要求1所述的方法,其特征在于,还包括:将所述第四数据和所述第二掩码分别存储。
5.如权利要求4所述的方法,其特征在于,所述第一预设变换为求反变换。
6.如权利要求4所述的方法,其特征在于,还包括:根据所述第四数据和所述第二掩码生成第二校验码。
7.如权利要求6所述的方法,其特征在于,所述第二校验码为奇偶校验码。
8.如权利要求4所述的方法,其特征在于,还包括:将所述第三数据进行第二预设变换形成第五数据;将所述第五数据和第三掩码进行所述预设运算获得第六数据;将所述第六数据和所述第三掩码分别存储。
9.如权利要求1所述的方法,其特征在于,所述预设运算为异或运算。
10.一种数据的防攻击方法,其特征在于,包括:
利用第一校验码对第二数据和第一掩码进行第一校验,所述第二数据为第一数据和所述第一掩码进行预设运算后的值,所述第一校验码是根据所述第二数据和所述第一掩码生成的;
当第一校验结果出现错误时,进行预设防攻击操作;
获得第四数据和第一掩码进行所述预设运算后的第一值与所述第二数据和第二掩码进行所述预设运算后的第二值,所述第四数据为第三数据和所述第二掩码进行所述预设运算后的值,所述第三数据为所述第一数据进行第一预设变换后的值;当所述第一值和第二值之间不满足所述第一预设变换关系,进行所述预设防攻击操作。
11.如权利要求10所述的方法,其特征在于,所述第一校验码为奇偶校验码。
12.如权利要求10所述的方法,其特征在于,所述第一预设变换为求反变换。
13.如权利要求10所述的方法,其特征在于,还包括:利用第二校验码对所述第四数据和所述第二掩码进行第二校验,所述第二校验码是根据所述第四数据和所述第二掩码生成的;
当第二校验结果出现错误时,进行所述预设防攻击操作。
14.如权利要求13所述的方法,其特征在于,所述第二校验码为奇偶校验码。
15.如权利要求10所述的方法,其特征在于,还包括:获得第六数据和第二掩码进行所述预设运算后的第三值与所述第四数据和第三掩码进行所述预设运算后的第四值,所述第六数据为第五数据和所述第三掩码进行所述预设运算后的值,所述第五数据为所述第三数据进行第二预设变换后的值;当所述第三值和第四值之间不满足所述第二预设变换关系,进行所述预设防攻击操作。
16.如权利要求10所述的方法,其特征在于,所述预设防攻击操作包括:提示用户数据受到攻击。
17.如权利要求10所述的方法,其特征在于,所述预设运算为异或运算。
18.一种数据的防攻击装置,其特征在于,包括:
第一校验单元,用于利用第一校验码对第二数据和第一掩码进行第一校验,所述第二数据为第一数据和所述第一掩码进行预设运算后的值,所述第一校验码是根据所述第二数据和所述第一掩码生成的;
处理单元,用于当第一校验结果出现错误时,进行预设防攻击操作;
第六运算单元,用于获得第四数据和第一掩码进行所述预设运算后的第一值;第七运算单元,用于获得所述第二数据和第二掩码进行所述预设运算后的第二值,所述第四数据为第三数据和所述第二掩码进行所述预设运算后的值,所述第三数据为所述第一数据进行第一预设变换后的值,所述处理单元用于当所述第一值和第二值之间不满足所述第一预设变换关系,进行所述预设防攻击操作。
19.如权利要求18所述的装置,其特征在于,所述第一校验码为奇偶校验码。
20.如权利要求18所述的装置,其特征在于,还包括:第二校验单元,用于利用第二校验码对所述第四数据和所述第二掩码进行第二校验,所述第二校验码是根据所述第四数据和所述第二掩码生成的,所述处理单元用于当第二校验结果出现错误时,进行所述预设防攻击操作。
21.如权利要求20所述的装置,其特征在于,所述第二校验码为奇偶校验码。
22.如权利要求18所述的装置,其特征在于,还包括:第八运算单元,用于获得第六数据和第二掩码进行所述预设运算后的第三值;第九运算单元,用于获得所述第四数据和第三掩码进行所述预设运算后的第四值,所述第六数据为第五数据和所述第三掩码进行所述预设运算后的值,所述第五数据为所述第三数据进行第二预设变换后的值,所述处理单元用于当所述第三值和第四值之间不满足所述第二预设变换关系,进行所述预设防攻击操作。
23.如权利要求18所述的装置,其特征在于,所述处理单元用于在所述预设防攻击操作过程中提示用户数据受到攻击。
CN201310534555.XA 2013-10-31 2013-10-31 数据处理方法、装置及防攻击方法和装置以及存储装置 Active CN104598829B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310534555.XA CN104598829B (zh) 2013-10-31 2013-10-31 数据处理方法、装置及防攻击方法和装置以及存储装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310534555.XA CN104598829B (zh) 2013-10-31 2013-10-31 数据处理方法、装置及防攻击方法和装置以及存储装置

Publications (2)

Publication Number Publication Date
CN104598829A CN104598829A (zh) 2015-05-06
CN104598829B true CN104598829B (zh) 2018-08-07

Family

ID=53124606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310534555.XA Active CN104598829B (zh) 2013-10-31 2013-10-31 数据处理方法、装置及防攻击方法和装置以及存储装置

Country Status (1)

Country Link
CN (1) CN104598829B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042682A (zh) * 2006-03-22 2007-09-26 株式会社东芝 访问控制装置、系统和方法,处理器
CN102843234A (zh) * 2011-06-20 2012-12-26 瑞萨电子株式会社 半导体装置以及将数据写入到半导体装置的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2053568A1 (fr) * 2007-09-28 2009-04-29 Gemplus Procédé de génération de masques dans un objet communiquant et objet communiquant correspondant

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042682A (zh) * 2006-03-22 2007-09-26 株式会社东芝 访问控制装置、系统和方法,处理器
CN102843234A (zh) * 2011-06-20 2012-12-26 瑞萨电子株式会社 半导体装置以及将数据写入到半导体装置的方法

Also Published As

Publication number Publication date
CN104598829A (zh) 2015-05-06

Similar Documents

Publication Publication Date Title
Sengupta et al. ATPG-based cost-effective, secure logic locking
Yasin et al. Security analysis of anti-sat
Shamsi et al. On the approximation resiliency of logic locking and IC camouflaging schemes
Lee et al. Improving logic obfuscation via logic cone analysis
JP6058245B2 (ja) 乱数拡大装置、乱数拡大方法及び乱数拡大プログラム
CN102542191B (zh) Rtl级ip核的保护方法
Koteshwara et al. Key-based dynamic functional obfuscation of integrated circuits using sequentially triggered mode-based design
CN105991292B (zh) 用于操作安全椭圆曲线密码系统的系统和方法
Grand Practical secure hardware design for embedded systems
CN105406957B (zh) 保护密码设备对抗实现攻击
CN104766264A (zh) 一种分块双层自适应扩散图像加密方法
CN108964872A (zh) 一种基于aes的加密方法及装置
US10601577B2 (en) Operation method and security chip
Shen et al. A comparative investigation of approximate attacks on logic encryptions
Chakraborty et al. SAIL: Analyzing structural artifacts of logic locking using machine learning
CN109165531B (zh) 一种aes掩码方法、电子设备及存储介质
CN105488421A9 (zh) 无需电池的用于工业和计量装置的侵扰检测系统以及方法
Kasper et al. Side channels as building blocks
Van Woudenberg et al. The Hardware Hacking Handbook: Breaking Embedded Security with Hardware Attacks
CN106936822B (zh) 针对sms4抗高阶旁路分析的掩码实现方法及系统
CN104598829B (zh) 数据处理方法、装置及防攻击方法和装置以及存储装置
CN105512560B (zh) 一种一次性可编程存储器芯片和及其的控制方法
CN105005739A (zh) 一种基于数据染色的隐私保护方法
KR101981621B1 (ko) 공개키 암호 알고리즘의 키 비트 변수 램덤화를 위한 장치 및 방법
CN105743644B (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
GR01 Patent grant
GR01 Patent grant