CN102646078A - 一种硬盘数据的加密方法 - Google Patents
一种硬盘数据的加密方法 Download PDFInfo
- Publication number
- CN102646078A CN102646078A CN2012100937142A CN201210093714A CN102646078A CN 102646078 A CN102646078 A CN 102646078A CN 2012100937142 A CN2012100937142 A CN 2012100937142A CN 201210093714 A CN201210093714 A CN 201210093714A CN 102646078 A CN102646078 A CN 102646078A
- Authority
- CN
- China
- Prior art keywords
- data
- result
- stored
- memory device
- carry out
- 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
Links
Landscapes
- Storage Device Security (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开了一种硬盘数据的加密方法,其包括:接收n位的数据和具有n位长度的第一随机数,并输出n位的数学屏蔽数据,接收具有n位长度的第二随机数和数学屏蔽数据,并输出n位的逻辑屏蔽数据,执行逻辑屏蔽数据和第二随机数的多次运算后输出结果。该加密方法可以有效提高加密数据的安全性。
Description
技术领域
本发明涉及一种数据的加密方法。
背景技术
当今时代,数据存储设备的容量越来越大,其中存储的数据也越来越多,许多机密数据存储在这些设备中进行交换。硬盘作为最常用的数据存储设备之一,为了硬盘数据的安全,防止数据被他人非法窃取,对数据进行加密是一种常用的方法,对数据进行加密后通常会存在一个密钥。而密钥的管理疏忽、密码的可预测性可能导致他人将数据解密,从而泄漏数据,对数据拥有者造成损失。
一般的解密方法包括针对密文的攻击、已知明文攻击、选定明文攻击、自适应性选定明文攻击、定时攻击以及差分功率分析攻击。差分功率分析攻击是表示根据一个输入位的值,分析由加密算法所消耗的能量,获得密钥的输入位的值,然后使加密文本被解密的方法。因此,作为防止这种攻击而导致信息泄漏的方法,采用了一种将确定数据转换为随机数据的屏蔽法。该屏蔽法包括应用逻辑运算技术及应用数学运算和逻辑运算相结合的技术。但是,该屏蔽法还存在很多不足,需要进一步改进。
发明内容
本发明公开了一种防止硬盘数据被攻击的加密方法,该方法可以有效提高加密数据的安全性。
本发明的硬盘数据的加密方法包括:
接收n位的数据和具有n位长度的第一随机数,并输出n位的数学屏蔽数据an,an-1,...,a2,a1;和
接收具有n位长度的第二随机数rn,rn-1,...,r2,r1和数学屏蔽数据an,an-1,...,a2,a1,并输出n位的逻辑屏蔽数据yn,yn-1,...,y2,y1,
其中,输出的数学屏蔽数据yn,yn-1,...,y2,y1包括:
输出a1作为y1;
执行y1和r1的与运算,并将其结果存储在存储设备中,执行a2和存储在存储设备中的数据之间的异或运算,并将输出的结果作为y2,执行a2和存储在存储设备中的数据之间的与运算并将产生的结果作为进位;
执行yk-1和rk-1之间的与运算,并将其结果存储在存储设备中,执行ak和进位之间的异或运算以及存储在存储设备中的数据和进位之间的异或运算,并将输出结果作为yk,执行[ak和存储在存储设备中的数据之间的与运算的结果]和[ak和进位之间的与运算的结果]之间的或运算,执行或运算的结果和[存储在存储设备中的数据和进位之间的与运算的结果]之间的或运算,并将产生的结果作为进位;和
执行yn-1和rn-1之间的与运算,并将其结果存储在存储设备中,执行an和存储在存储设备中的数据之间的异或运算,并将输出的结果作为yn,
其中,变量k从3逐次增加1直到(n-1)。
具体实施方式
为了使本领域技术人员更清楚地理解本发明的技术方案,下面结合具体实施方式本发明的硬盘数据的加密方法。
本发明的硬盘数据的加密方法包括如下步骤:
接收n位的数据和具有n位长度的第一随机数,并输出n位的数学屏蔽数据an,an-1,...,a2,a1;和
接收具有n位长度的第二随机数rn,rn-1,...,r2,r1和数学屏蔽数据an,an-1,...,a2,a1,并输出n位的逻辑屏蔽数据yn,yn-1,...,y2,y1,
其中,输出的数学屏蔽数据yn,yn-1,...,y2,y1包括:
输出a1作为y1;
执行y1和r1的与运算,并将其结果存储在存储设备中,执行a2和存储在存储设备中的数据之间的异或运算,并将输出的结果作为y2,执行a2和存储在存储设备中的数据之间的与运算并将产生的结果作为进位;
执行yk-1和rk-1之间的与运算,并将其结果存储在存储设备中,执行ak和进位之间的异或运算以及存储在存储设备中的数据和进位之间的异或运算,并将输出结果作为yk,执行[ak和存储在存储设备中的数据之间的与运算的结果]和[ak和进位之间的与运算的结果]之间的或运算,执行或运算的结果和[存储在存储设备中的数据和进位之间的与运算的结果]之间的或运算,并将产生的结果作为进位;和
执行yn-1和rn-1之间的与运算,并将其结果存储在存储设备中,执行an和存储在存储设备中的数据之间的异或运算,并将输出的结果作为yn,
其中,变量k从3逐次增加1直到(n-1)。
在另一个实施例中,本发明的硬盘数据的加密方法包括如下步骤:
用于接收n位的随机数rn,rn-1,...,r2,r1,和数学屏蔽数据an,an-1,...,a2,a1,并输出n位的逻辑屏蔽数据yn,yn-1,...,y2,y1,该方法包括:
输出a1作为y1;
执行y1和r1之间的与运算,并将其结果存储在存储设备中,执行a2和存储在存储设备中的数据之间的异或运算,并将输出的结果作为y2,执行a2和存储在存储设备中的数据之间的与运算并将产生的结果作为进位;
执行yk-1和rk-1之间的与运算,并将其结果存储在存储设备中,执行ak和进位之间的异或运算以及存储在存储设备中的数据和进位之间的异或运算,并将输出结果作为yk,执行[ak和存储在存储设备中的数据之间的与运算的结果]和[ak和进位之间的与运算的结果]之间的或运算,执行或运算的结果和[存储在存储设备中的数据和进位之间的与运算的结果]之间的与运算,并将产生的结果作为进位;和
执行yn-1和rn-1的与运算,并将其结果存储在存储设备中,执行an和存储在存储设备中的数据之间的异或运算,交将输出的结果作为yn,
其中,变量k从3逐次增加1直到(n-1)。
本发明的硬盘数据的加密装置优选用于硬盘,但可以用于其它数据存储设备中。
实现上述方法的一个优选加密装置包括第一屏蔽模块和第二屏蔽模块。
当第一屏蔽模块为逻辑屏蔽模块时,第二屏蔽模块为数学屏蔽模块。也就是说,第一屏蔽模块接收数据(X)和第一随机数(R1),响应于第一随机数(R1)将数据(X)转换成逻辑屏蔽数据(X′),并输出逻辑屏蔽数据(X′);第二屏蔽模块接收逻辑屏蔽数据(X′)和第二随机数(R2),响应于第二随机数(R2)将逻辑屏蔽数据(X′)转换成数学屏蔽数据,并输出该数学屏蔽数据。这里,若第一随机数(R1)和第二随机数(R2)为相同的数则更好。
当第一屏蔽模块为数学屏蔽模块时,第二屏蔽模块为逻辑屏蔽模块。也就是说,第一屏蔽模块接收数据(X)和第一随机数(R1),响应于第一随机数(R1)将数据(X)转换成数学屏蔽数据(X′),并输出数学屏蔽数据(X′);第二屏蔽模块接收数学屏蔽数据(X′)和第二随机数(R2),响应于第二随机数(R2)将数学屏蔽数据(X′)转换成逻辑屏蔽数据(OUT),并输出该数学屏蔽数据。这里,若第一随机数(R1)和第二随机数(R2)为相同的数则更好。
在实现将逻辑屏蔽数据转换成数学屏蔽数据的算法的电路的一个优选实施例中,第二屏蔽模块包括与电路,移位电路和减法器。
与电路接收逻辑屏蔽数据(X′)和第二随机数(R2),在接收的数据(X′)和数(R2)之间执行按位之间的与运算,并输出与运算的结果到移位电路。逻辑屏蔽数据(X′)和第二随机数(R2)都包括n位。
移位电路接收由与电路输出的n位数据,向左手方向和右手方向中任一个将该数据移m位(这里,m为一个自然数,比如,m为1)。例如,移位电路可以执行左移1位。移位电路的输出提供给减法器。
减法器接收逻辑屏蔽数据(X′)和移位电路的输出信号,执行从逻辑屏蔽数据(X′)中减去移位电路的输出信号的减法运算,并输出由移位运算结果所产生的数学屏蔽数据。因此,本发明的加密装置能够提供一个圆满的反DPA攻击的对策。
在实现将逻辑屏蔽数据转换成数学屏蔽数据的算法的电路的另一个优选实施例。第二屏蔽模块包括与电路,异或电路,移位电路和加法器。
与电路接收逻辑屏蔽数据(X′)和第二随机数(R2),执行接收的数据(X′)和数(R2)之间的按位与运算,并将与运算的结果输出到异或电路。逻辑屏蔽数据(X′)和第二随机数(R2)都包括n位。
异或电路接收与电路的输出信号和第二随机数(R2),执行与电路的输出信号和第二随机数(R2)之间的按位之间的异或运算,并将结果输出到移位电路。
移位电路接收由异或电路输出的n位数据,向左手方向或者右手方向中任一个将该数据移m位(这里,m为一个自然数,比如,m为1)。例如,移位电路可以执行左移1位。
加法器接收逻辑屏蔽数据(X′)和移位电路的输出信号,执行逻辑屏蔽数据(X′)和输出信号之间的加法运算,并输出由移位运算结果所产生的数学屏蔽数据。
以上具体实施方式仅用于描述本发明的硬盘数据的加密方法的技术方案,不用于限定本发明,本领域技术人员在不脱离本发明的范围内,可以得到各种变型和组合,因此本发明的保护范围以权利要求书为准。
Claims (1)
1.一种硬盘数据的加密方法,包括:
接收n位的数据和具有n位长度的第一随机数,并输出n位的数学屏蔽数据an,an-1,...,a2,a1;和
接收具有n位长度的第二随机数rn,rn-1,...,r2,r1和数学屏蔽数据an,an-1,...,a2,a1,并输出n位的逻辑屏蔽数据yn,yn-1,...,y2,y1,
其中,输出的数学屏蔽数据yn,yn-1,...,y2,y1包括:
输出a1作为y1;
执行y1和r1的与运算,并将其结果存储在存储设备中,执行a2和存储在存储设备中的数据之间的异或运算,并将输出的结果作为y2,执行a2和存储在存储设备中的数据之间的与运算并将产生的结果作为进位;
执行yk-1和rk-1之间的与运算,并将其结果存储在存储设备中,执行ak和进位之间的异或运算以及存储在存储设备中的数据和进位之间的异或运算,并将输出结果作为yk,执行[ak和存储在存储设备中的数据之间的与运算的结果]和[ak和进位之间的与运算的结果]之间的或运算,执行或运算的结果和[存储在存储设备中的数据和进位之间的与运算的结果]之间的或运算,并将产生的结果作为进位;和
执行yn-1和rn-1之间的与运算,并将其结果存储在存储设备中,执行an和存储在存储设备中的数据之间的异或运算,并将输出的结果作为yn,
其中,变量k从3逐次增加1直到(n-1)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100937142A CN102646078A (zh) | 2012-04-01 | 2012-04-01 | 一种硬盘数据的加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100937142A CN102646078A (zh) | 2012-04-01 | 2012-04-01 | 一种硬盘数据的加密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102646078A true CN102646078A (zh) | 2012-08-22 |
Family
ID=46658906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012100937142A Pending CN102646078A (zh) | 2012-04-01 | 2012-04-01 | 一种硬盘数据的加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102646078A (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1648967A (zh) * | 2004-01-07 | 2005-08-03 | 三星电子株式会社 | 加密装置、加密方法及其存储介质 |
-
2012
- 2012-04-01 CN CN2012100937142A patent/CN102646078A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1648967A (zh) * | 2004-01-07 | 2005-08-03 | 三星电子株式会社 | 加密装置、加密方法及其存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107070630B (zh) | 一种aes算法的快速安全硬件结构 | |
US20150222421A1 (en) | Countermeasures against side-channel attacks on cryptographic algorithms | |
US9455833B2 (en) | Behavioral fingerprint in a white-box implementation | |
CN102970132B (zh) | 一种防止对分组算法进行功耗分析和电磁辐射分析的防护方法 | |
US9031234B2 (en) | Encryption device and decryption device | |
CN103795527A (zh) | 防止基于功耗分析攻击aes算法的软件掩码防护方案 | |
US20150019878A1 (en) | Apparatus and Method for Memory Address Encryption | |
EP2922235B1 (en) | Security module for secure function execution on untrusted platform | |
Guo et al. | Invariance-based concurrent error detection for advanced encryption standard | |
US20120093308A1 (en) | Apparatus and method for generating random data | |
EP3477889B1 (en) | Using white-box in a leakage-resilient primitive | |
CN108494546A (zh) | 一种白盒加密方法、装置及存储介质 | |
JP2017195595A (ja) | 暗号化/復号装置及びその電力解析保護方法 | |
CN105022937A (zh) | 用于将白箱实现紧附到周围程序的接口兼容方式 | |
CN109165531A (zh) | 一种aes掩码方法、电子设备及存储介质 | |
WO2016059870A1 (ja) | 暗号処理装置、および暗号処理方法、並びにプログラム | |
US11194933B2 (en) | Circuits supporting improved side channel and fault injection attack resistance | |
Wang et al. | A power analysis on SMS4 using the chosen plaintext method | |
US10110375B2 (en) | Cryptographic device and secret key protection method | |
Bin Muhaya et al. | Modified AES using chaotic key generator for satellite imagery encryption | |
US9135834B2 (en) | Apparatus and method to prevent side channel power attacks in advanced encryption standard using floating point operation | |
Yang et al. | An improved AES encryption algorithm based on chaos theory in wireless communication networks | |
CN116796345A (zh) | 加解密方法、装置、设备及存储介质 | |
CN101944991B (zh) | 一种使用对称密钥进行数据加密的加密方法 | |
CN105426702A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120822 |