CN113392432A - 加密存储装置及电子设备 - Google Patents
加密存储装置及电子设备 Download PDFInfo
- Publication number
- CN113392432A CN113392432A CN202110652615.2A CN202110652615A CN113392432A CN 113392432 A CN113392432 A CN 113392432A CN 202110652615 A CN202110652615 A CN 202110652615A CN 113392432 A CN113392432 A CN 113392432A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- encryption
- decryption
- column
- 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
- 230000015654 memory Effects 0.000 claims abstract description 58
- 238000004422 calculation algorithm Methods 0.000 claims description 58
- 239000000872 buffer Substances 0.000 claims description 27
- 239000011159 matrix material Substances 0.000 claims description 18
- 238000006467 substitution reaction Methods 0.000 claims description 12
- 230000009977 dual effect Effects 0.000 claims description 7
- 238000012986 modification Methods 0.000 description 20
- 230000004048 modification Effects 0.000 description 20
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 101000711846 Homo sapiens Transcription factor SOX-9 Proteins 0.000 description 1
- 235000010829 Prunus spinosa Nutrition 0.000 description 1
- 240000004350 Prunus spinosa Species 0.000 description 1
- 102100034204 Transcription factor SOX-9 Human genes 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- SBNFWQZLDJGRLK-UHFFFAOYSA-N phenothrin Chemical compound CC1(C)C(C=C(C)C)C1C(=O)OCC1=CC=CC(OC=2C=CC=CC=2)=C1 SBNFWQZLDJGRLK-UHFFFAOYSA-N 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供了一种加密存储装置及电子设备,该加密存储装置包括:用于接收外部设备传输的第一数据的数据采集单元、用于存储数据的存储器以及FPAG控制芯片;所述FPAG控制芯片包括:第一FI FO缓存模块,所述第一FI FO缓存模块与所述数据采集单元连接,以用于接收并缓存所述第一数据;加密模块,所述加密模块与所述第一FI FO缓存模块连接以用于从所述第一FIFO缓存模块中取出第一数据进行加密得到加密数据;写控制模块,所述写控制模块分别与所述加密模块以及所述第一FI FO缓存模块连接,以用于将所述加密数据写入所述存储器中。
Description
技术领域
本发明实施例涉及数据存储技术领域,尤其涉及一种加密存储装置及电子设备。
背景技术
现有技术中,在将数据存储在存储器中时,如果存储器丢失会导致其中的数据出现泄密的情况,而如果仅仅采用对存储器设置读取密码其破解难度较低不足以保护其中的数据的安全性。因此,如何提高存储器的安全性刻不容缓。
因此,现有技术存在缺陷,急需改进。
发明内容
为了解决上述至少一个技术问题,本发明提供了一种加密存储装置及电子设备,具有提高数据安全性的有益效果。
为了实现上述目的,本发明提供了一种加密存储装置,包括:用于接收外部设备传输的第一数据的数据采集单元、用于存储数据的存储器以及FPAG控制芯片;
所述FPAG控制芯片包括:
第一FIFO缓存模块,所述第一FIFO缓存模块与所述数据采集单元连接,以用于接收并缓存所述第一数据;
加密模块,所述加密模块与所述第一FIFO缓存模块连接以用于从所述第一FIFO缓存模块中取出第一数据进行加密得到加密数据;
写控制模块,所述写控制模块分别与所述加密模块以及所述第一FIFO缓存模块连接,以用于将所述加密数据写入所述存储器中。
可选地,在本申请实施例所述的加密存储装置中,所述加密存储装置还包括用于输出数据至外部设备的数据输出单元;
所述FPAG控制芯片还包括:
读控制模块,所述读控制模块与所述存储器连接,以用于读取所述存储器中的加密数据;
第二FIFO缓存模块,所述第二FIFO缓存模块与所述读控制模块以及所述数据输出单元分别连接,以用于对所述读控制模块读取的加密数据进行缓存;所述数据输出单元用于根据对应输出接口的时序所述第二FIFO缓存模块的数据取出,并传输至外部设备。
在本申请实施例中,相比传统的存储设备,该加密存储装置能将前端数据采集单元的数据首先进行加密处理,再存储到SD卡等存储器中,保证工程应用数据的安全性和可靠性。
可选地,在本申请实施例所述的加密存储装置中,所述存储器为SD卡或者FLASH存储器。
可选地,在本申请实施例所述的加密存储装置中,所述数据输出单元为USB数据接口模组。
可选地,在本申请实施例所述的加密存储装置中,所述加密模块用于采用AES加密算法对所述第一数据进行加密得到所述加密数据。
可选地,在本申请实施例所述的加密存储装置中,所述AES加密算法包括:字节替换、行移位、列混合以及轮密钥加;其中,所述ES加密算法的第1轮为轮密钥加,中间9轮依次为字节替换、行移位、列混合、轮密钥加,最后1轮依次为字节替换、行移位、列混合。
本申请实施例通过采用FPGA实现AES加密处理,便于后期密钥等模块的维护,便于后期系统的升级及维护工作。
可选地,在本申请实施例所述的加密存储装置中,所述FPAG控制芯片还包括第一双口ROM;所述第一双口ROM与所述加密模块连接;所述AES加密算法存储在所述第一双口ROM内。
可选地,在本申请实施例所述的加密存储装置中,将所述字节替换、行移位、列混合、轮密钥加的公式展开为:
其中,T0、T1、T2以及T3存储在所述双口ROM内;d表示列混合的输出,下标表示矩阵的行和列的位置;j表示第j列数;c表示行移位的输出,下标表示矩阵的行和列的位置,j表示第j列数;s表示字节替换运算;a表示原始数据,下标表示行和列的位置;b表示列移位的个数。
在本申请实施例中,通过改进的AES加密算法,采用ROM的方式,可减小寄存器的开销。给工程上寄存器资源较少的项目,提供了一种新的思路。
可选地,在本申请实施例所述的加密存储装置中,所述FPAG控制芯片还包括解密控制模块、解密模块以及第二双口ROM;所述第二双口ROM以及所述解密控制模块分别与所述解密模块连接,所述解密模块与所述FIFO缓存模块连接;所述第二双口ROM内存储有对应的解密算法;所述解密控制模块用于接收外部输入的解密控制密码;所述解密控制模块用于在接收到所述解密控制密码时控制所述解密模块调用所述第二双口ROM中的解密算法对所述AES加密算法存储从所述第二双口ROM获取的加密数据进行解密。
本申请实施例通过对读出数据时的解密进行控制,可以进一步提高数据的安全性以及便利性,只要知道密码就可以使得直接输出对应的第一数据。
可选地,在本申请实施例所述的加密存储装置中,还包括密钥修改单元分别与该修改参数获取单元以及加密模块连接,该修改参数获取单元用于获取用户输入的修改参数,该密钥修改单元基于该修改参数对该加密算法进行修改,得到目标加密算法,该加密模块根据该目标加密算法对该需要加密的第一加密数据进行加密。
本申请实施例通过设置加密算法修改单元,从而使得可以基于用户的需求对加密算法进行修改,从而即使加密算法泄露,也不会导致数据泄露,可以进一步提高数据的安全性。
第二方面,本申请实施例还提供了一种电子设备,包括上述任一项所述的加密存储装置。
由上可知,本申请实施例提供的加密存储装置,通过提供用于接收外部设备传输的第一数据的数据采集单元、用于存储数据的存储器以及FPAG控制芯片;所述FPAG控制芯片包括:第一FIFO缓存模块,所述第一FIFO缓存模块与所述数据采集单元连接,以用于接收并缓存所述第一数据;加密模块,所述加密模块与所述第一FIFO缓存模块连接以用于从所述第一FIFO缓存模块中取出第一数据进行加密得到加密数据;写控制模块,所述写控制模块分别与所述加密模块以及所述第一FIFO缓存模块连接,以用于将所述加密数据写入所述存储器中。从而实现在写入存储器数据时先进行加密,可以提高数据安全性。
本发明的附加方面和优点将在下面的描述部分中给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1示出了本发明提供的一种加密存储装置的结构示意图;
图2示出了本发明提供的一种AES加密算法的加密流程;
图3示出了本发明提供的SD卡的传输状态控制流程图;
图4示出了本发明提供的USB数据接口模组的接口配置图;
图5示出了本发明提供的一种加密存储装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请的描述中,需要说明的是,术语“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
还需要说明的是,除非另有明确的规定和限定,术语“设置”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
请参照图1所示,图1是本申请一些实施例中的一种加密存储装置的结构图。该加密存储装置,包括:数据采集单元10、存储器20、FPAG控制芯片30、以及数据输出单元40。该数据采集单元10、存储器20以及该数据输出单元40分别与该FPAG控制芯片30通信连接。
具体地,数据采集单元10用于接收外部设备传输的第一数据。其中,该数据采集单元可以为USB接口,当然,也可以为其他格式的或者类型的通信接口,有线接口或者无线接口均可。
其中,该存储器20用于存储数据。该存储器可以为SD卡或者FLASH存储器。当然,其并不限于此,采用其他类型的可读可写的存储器也是可以的。
其中,该FPAG控制芯片30用于缓存该数据采集单元10采集的第一数据进行缓存以及加密,并将加密后加密数据存入该存储器20中,并用于读取该存储器20中的加密数据,并将读取的数据仅供该数据输出单元40输出给外部设备。
具体地,该FPAG控制芯片30包括第一FIFO缓存模块31、加密模块32、写控制模块33、第二FIFO缓存模块34以及读控制模块35。
其中,该第一FIFO缓存模块31与所述数据采集单元10连接,以用于接收并缓存所述第一数据;加密模块32与所述第一FIFO缓存模块31连接以用于从所述第一FIFO缓存模块31中取出第一数据进行加密得到加密数据;写控制模块35分别与所述加密模块32以及所述第一FIFO缓存模块31连接,用于将所述加密数据写入所述存储器20中。读控制模块35与所述存储器20连接,以用于读取所述存储器20中的加密数据;第二FIFO缓存模块34与所述读控制模块35以及所述数据输出单元40分别连接,以用于对所述读控制模块35读取的加密数据进行缓存;所述数据输出单元用于根据对应输出接口的时序所述第二FIFO缓存模块34的数据取出,并传输至外部设备。
由上可知,本申请实施例提供的加密存储装置,通过提供用于接收外部设备传输的第一数据的数据采集单元、用于存储数据的存储器以及FPAG控制芯片;所述FPAG控制芯片包括:第一FIFO缓存模块,所述第一FIFO缓存模块与所述数据采集单元连接,以用于接收并缓存所述第一数据;加密模块,所述加密模块与所述第一FIFO缓存模块连接以用于从所述第一FIFO缓存模块中取出第一数据进行加密得到加密数据;写控制模块,所述写控制模块分别与所述加密模块以及所述第一FIFO缓存模块连接,以用于将所述加密数据写入所述存储器中。从而实现在写入存储器数据时先进行加密,可以提高数据安全性。
下面对本申请实施例提供的加密存储装置的各个模块进行详细描述。
在一些实施例中,该数据输出单元40为USB数据接口模组。当然,可以理解地,数据输出单元40也可以为其他类型的接口结构,在此不过多描述。
在一些实施例中,该加密模块32用于采用AES加密算法对所述第一数据进行加密得到所述加密数据。其中,如图2所示,该AES加密算法包括:字节替换、行移位、列混合以及轮密钥加;其中,所述ES加密算法的第1轮为轮密钥加,中间9轮依次为字节替换、行移位、列混合、轮密钥加,最后1轮依次为字节替换、行移位、列混合。
具体地,该字节替换将原数值的高4位作为行地址、低4位作为列地址在1个16*16的表格进行查找,用表格中数值替换原来的数值。行移位将矩阵数据进行一定便宜,即第1行左循环移动0个字节,第2行左循环移动1个字节,第3行左循环移动2个字节,第4行左循环移动3个字节。列混合是将行移位后的矩阵与固定矩阵进行相乘,得到新的矩阵,具体如下式所示:
轮密钥加将列混合的矩阵与每1轮的密钥进行异或计算。
将字节替换、行移位、列混合、密钥加用公式表示,并展开可得:
定义T盒子T0/T1/T2/T3如下:
其中,d表示列混合的输出,下标表示矩阵的行和列的位置,即d0,j表示第0行第j列数,其中取值为0到3。c表示行移位的输出,下标表示矩阵的行和列的位置,即c0,j表示第0行第j列数,其中取值为0到3。s表示字节替换运算。a表示原始数据,下标表示行和列的位置。其中b表示列移位的个数,即b0是j列平移0位,b1是j列平移1列,b2是j列平移2列,b3是j列平移3列。
因此,可以用T盒子查找表进行S查找表的替换。在式3中有3种有限域的计算,分别为01*S、02*S、03*S。其中01*S直接为S盒子,02*S盒子通过S盒子进行1次x乘计算,03*S盒子则把01*S和02*S进行一次异或计算,将计算后的T(上述中的T0、T1、T2、T3)表存放在第一双口ROM中。为了节约寄存器资源,FPGA中采用第一双口ROM的模式,轮密钥加将列混合的矩阵与每1轮的密钥进行异或计算。通过上面的变换,将原来数据按照8bit分成一组进行T盒子的查找,可减少寄存器消耗,从而运算简单。进行仿真运算,得到原数加密密文数据为:0x0336763e966d92595a567cc9ce537f5e,与不改进的AES加密算法的结果一致。
在一些实施例中,当分别对改进的加密算法和原加密算法中FPGA的资源消耗,可以得到原加密算法的LE资源消耗占总资源的84%,改进后的AES算法LE资源消耗只占17%。改进后的算法大大减少了逻辑资源的消耗,在实际工作中存在一定的应用价值。
当该存储器20为SD卡时,其读写包括SPI和SDIO两种方式,其中SPI方式只需要4根线,传输协议相对简单,便于实现。为了缩短开发开发周期,本设计采用SPI总线模式。SD卡的读写是按照Block(块或扇区)进行划分的,每个BLOCK的大小固定为512字节。
如图3所示,图3所示为SD卡读写控制状态流程图。分析SD协议规范可知,SD卡的初始化时钟为0~400KHz,数据传输时钟为0~50MHz。为了保证SD的初始化和和传输能正常工作,本设计中初始化时钟设计为400KHz,数据传输时钟设计为50MHz。采用异步FIFO缓存读写数据,进行跨时钟域的处理。上电后,首先进行初始化工作。SPI控制器将数据总线和片选信号同时拉高,大约经过1ms后,将片选信号CS拉低,进入到SPI总线模式。首先发送CMD0使SD卡进入空闲状态,然后发送CMD8校验SD的类型。当SD卡类型为V2.0或者V1.0时,则发送CMD55和ACMD41进行初始化,如果返回值为0x00,则表明初始化成功,否则考虑是MMC卡,采用CMD1进行初始化。当返回值正确,表明SD卡初始成功,否则可能是无法识别的SD卡。
SD卡写控制流程如下:首先通过CMD24(单块)或CMD25(多块)写命令,发送SD卡写Block地址,返回0x00表明地址写入成功。然后发送数据开始令牌0xfe(或者0xfc)以及一个Block的数据量512Byte,最后发送2个字节CRC校验数据。由于SPI模式不检测校验值,因此可以直接发送两个字节的0xff。然后连续读取SD卡返回的数据,当读到8’bxxx00101表示数据写入成功。最后进行忙检测,当读到0x00表明SD卡处于忙状态,读到0xff表明写结束。可以进行下一轮的读写逻辑状态。
SD卡读控制流程:首选通过CMD17(单块)或CMD18(多块)读命令,发送SD卡读Block地址,返回0x00表明地址写入成功。然后检测数据开始令牌fe(或fc),当检测数据开始令牌后,接收正式数据512Bytes以及2Byte的CRC校验数据。
其中,该数据输出单元为40为USB数据接口模组时,可以采用的USB2.0芯片CYC68013支持12Mb/s全速速率和480Mb/s的高速传输速率,主要包括USB2.0收发器、串行接口引擎、增强型8051处理器、16KB的RAM和4KB的FIFO存储器。具有GPIF、Port及Slave FIFO三种模式,并且向下兼容USB1.1。本设计采用USB2.0高速数据通信方式中的Slave FIFO模式,通过固件程序可以配置相应FIFO缓冲的大小。
图4所示为USB数据接口模组的系统架构图。I2C总线连接1片E2PROM,通过烧录器烧录固件程序,上电后能够自动加载到cyc68013的内部RAM中。IFCLK为USB芯片FIFO的时钟信号,由FPGA通过分频为48MHz,FIFO数据将与该时钟同步。
FD是16位数据接口总线,FLAGA/B/C/D可通过编程分别指示不同FIFO的空、满标志,SLRD/SLWR分别为FIFO的读写使能信号,SLOE为FIFO的输出使能信号。将FLAGB设置为USB发送FIFO的非空标志,FLAGC设置为USB接收FIFO的非满标志,都为高有效。FIFOAD[1:0]用于选择cyc68013中的4个缓冲区。
在一些实施例中,该FPAG控制芯片30还包括第一双口ROM;所述第一双口ROM与所述加密模块连接;所述AES加密算法存储在所述第一双口ROM内。FPAG控制芯片还包括解密控制模块、解密模块以及第二双口ROM;所述第二双口ROM以及所述解密控制模块分别与所述解密模块连接,所述解密模块与所述FIFO缓存模块连接;所述第二双口ROM内存储有对应的解密算法;所述解密控制模块用于接收外部输入的解密控制密码;所述解密控制模块用于在接收到所述解密控制密码时控制所述解密模块调用所述第二双口ROM中的解密算法对所述AES加密算法存储从所述第二双口ROM获取的加密数据进行解密。其中,第二FIFO缓存模块34还与该解密模块连接,从而缓存经过解密得到的数据,该解密得到的数据可以从该数据输出单元输出。该解密控制模块用于接入外部输入的校验用的解密控制密码,如果密码正确则允许输出通过解密的数据,否则,只能输出加密数据,从而可以提高安全性。
本申请相对于现有技术具有以下有益效果:
相比传统的存储设备,该加密存储装置能将前端数据采集单元的数据首先进行加密处理,再存储到SD卡等存储器中,保证工程应用数据的安全性和可靠性。采用FPGA实现AES加密处理,便于后期密钥等模块的维护,便于后期系统的升级及维护工作。改进的AES加密算法,采用ROM的方式,可减小寄存器的开销。给工程上寄存器资源较少的项目,提供了一种新的思路。AES加密算法可优化的地方还有很多,比如密钥长度为192位或256位AES的研究,密钥的生成,S表和逆S表的设计等。通过对这些方面的研究,做出安全性更高的产品。
可以理解地,在另一些实施例中,如图5所示,该加密存储装置,包括:数据采集单元10、存储器20、FPAG控制芯片30、数据输出单元40、密钥修改单元80以及修改参数获取单元90。该数据采集单元10、存储器20以及该数据输出单元40分别与该FPAG控制芯片30通信连接。
具体地,数据采集单元10用于接收外部设备传输的第一数据。其中,该数据采集单元可以为USB接口,当然,也可以为其他格式的或者类型的通信接口,有线接口或者无线接口均可。
其中,该存储器20用于存储数据。该存储器可以为SD卡或者FLASH存储器。当然,其并不限于此,采用其他类型的可读可写的存储器也是可以的。
其中,该FPAG控制芯片30用于缓存该数据采集单元10采集的第一数据进行缓存以及加密,并将加密后加密数据存入该存储器20中,并用于读取该存储器20中的加密数据,并将读取的数据仅供该数据输出单元40输出给外部设备。
具体地,该FPAG控制芯片30包括第一FIFO缓存模块31、加密模块32、写控制模块33、第二FIFO缓存模块34以及读控制模块35。
其中,该第一FIFO缓存模块31与所述数据采集单元10连接,以用于接收并缓存所述第一数据;加密模块32与所述第一FIFO缓存模块31连接以用于从所述第一FIFO缓存模块31中取出第一数据进行加密得到加密数据;写控制模块35分别与所述加密模块32以及所述第一FIFO缓存模块31连接,用于将所述加密数据写入所述存储器20中。读控制模块35与所述存储器20连接,以用于读取所述存储器20中的加密数据;第二FIFO缓存模块34与所述读控制模块35以及所述数据输出单元40分别连接,以用于对所述读控制模块35读取的加密数据进行缓存;所述数据输出单元用于根据对应输出接口的时序所述第二FIFO缓存模块34的数据取出,并传输至外部设备。
密钥修改单元80分别与该修改参数获取单元90以及加密模块32连接,该修改参数获取单元90用于获取用户输入的修改参数,该密钥修改单元80基于该修改参数对该加密算法进行修改,得到目标加密算法,该加密模块根据该目标加密算法对该需要加密的第一加密数据进行加密。其中,该密钥修改单元80在该加密模块完成加密工作后,自动删除该目标加密算法。当用户需要获取该数据时,可以先从该加密存储装置中获取对应的加密数据,然后输入其输入的修改参数对解密算法进行对应调整,得到对应的目标解密算法,从而实现对加密数据的解密。
该加密模块32用于采用AES加密算法对所述第一数据进行加密得到所述加密数据。其中,如图2所示,该AES加密算法包括:字节替换、行移位、列混合以及轮密钥加;其中,所述ES加密算法的第1轮为轮密钥加,中间9轮依次为字节替换、行移位、列混合、轮密钥加,最后1轮依次为字节替换、行移位、列混合。
具体地,该字节替换将原数值的高4位作为行地址、低4位作为列地址在1个16*16的表格进行查找,用表格中数值替换原来的数值。行移位将矩阵数据进行一定便宜,即第1行左循环移动0个字节,第2行左循环移动1个字节,第3行左循环移动2个字节,第4行左循环移动3个字节。列混合是将行移位后的矩阵与固定矩阵进行相乘,得到新的矩阵,具体如下式所示:
轮密钥加将列混合的矩阵与每1轮的密钥进行异或计算。
将字节替换、行移位、列混合、密钥加用公式表示,并展开可得:
定义T盒子T0/T1/T2/T3如下:
因此,可以用T盒子查找表进行S查找表的替换。在式3中有3种有限域的计算,分别为01*S、02*S、03*S。其中01*S直接为S盒子,02*S盒子通过S盒子进行1次x乘计算,03*S盒子则把01*S和02*S进行一次异或计算,将计算后的T(上述中的T0、T1、T2、T3)表存放在第一双口ROM中。为了节约寄存器资源,FPGA中采用第一双口ROM的模式,轮密钥加将列混合的矩阵与每1轮的密钥进行异或计算。通过上面的变换,将原来数据按照8bit分成一组进行T盒子的查找,可减少寄存器消耗,从而运算简单。进行仿真运算,得到原数加密密文数据为:0x0336763e966d92595a567cc9ce537f5e,与不改进的AES加密算法的结果一致。
在一些实施例中,当分别对改进的加密算法和原加密算法中FPGA的资源消耗,可以得到原加密算法的LE资源消耗占总资源的84%,改进后的AES算法LE资源消耗只占17%。改进后的算法大大减少了逻辑资源的消耗,在实际工作中存在一定的应用价值。
由上可知,本申请实施例提供的加密存储装置,通过提供用于接收外部设备传输的第一数据的数据采集单元、用于存储数据的存储器以及FPAG控制芯片;所述FPAG控制芯片包括:第一FIFO缓存模块,所述第一FIFO缓存模块与所述数据采集单元连接,以用于接收并缓存所述第一数据;加密模块,所述加密模块与所述第一FIFO缓存模块连接以用于从所述第一FIFO缓存模块中取出第一数据进行加密得到加密数据;写控制模块,所述写控制模块分别与所述加密模块以及所述第一FIFO缓存模块连接,以用于将所述加密数据写入所述存储器中。从而实现在写入存储器数据时先进行加密,可以提高数据安全性。并且通过设置加密算法修改单元,从而使得可以基于用户的需求对加密算法进行修改,从而即使加密算法泄露,也不会导致数据泄露。
本申请实施例还提供了一种电子设备,包括上述任一项所述的加密存储装置。
由上可知,本申请实施例提供的电子设备,通过提供用于接收外部设备传输的第一数据的数据采集单元、用于存储数据的存储器以及FPAG控制芯片;所述FPAG控制芯片包括:第一FIFO缓存模块,所述第一FIFO缓存模块与所述数据采集单元连接,以用于接收并缓存所述第一数据;加密模块,所述加密模块与所述第一FIFO缓存模块连接以用于从所述第一FIFO缓存模块中取出第一数据进行加密得到加密数据;写控制模块,所述写控制模块分别与所述加密模块以及所述第一FIFO缓存模块连接,以用于将所述加密数据写入所述存储器中。从而实现在写入存储器数据时先进行加密,可以提高数据安全性。并且通过设置加密算法修改单元,从而使得可以基于用户的需求对加密算法进行修改,从而即使加密算法泄露,也不会导致数据泄露。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种加密存储装置,其特征在于,包括:用于接收外部设备传输的第一数据的数据采集单元、用于存储数据的存储器以及FPAG控制芯片;
所述FPAG控制芯片包括:
第一FIFO缓存模块,所述第一FIFO缓存模块与所述数据采集单元连接,以用于接收并缓存所述第一数据;
加密模块,所述加密模块与所述第一FIFO缓存模块连接以用于从所述第一FIFO缓存模块中取出第一数据进行加密得到加密数据;
写控制模块,所述写控制模块分别与所述加密模块以及所述第一FIFO缓存模块连接,以用于将所述加密数据写入所述存储器中。
2.根据权利要求1所述的加密存储装置,其特征在于,所述加密存储装置还包括用于输出数据至外部设备的数据输出单元;
所述FPAG控制芯片还包括:
读控制模块,所述读控制模块与所述存储器连接,以用于读取所述存储器中的加密数据;
第二FIFO缓存模块,所述第二FIFO缓存模块与所述读控制模块以及所述数据输出单元分别连接,以用于对所述读控制模块读取的加密数据进行缓存;所述数据输出单元用于根据对应输出接口的时序所述第二FIFO缓存模块的数据取出,并传输至外部设备。
3.根据权利要求2所述的加密存储装置,其特征在于,所述存储器为SD卡或者FLASH存储器。
4.根据权利要求2所述的加密存储装置,其特征在于,所述数据输出单元为USB数据接口模组。
5.根据权利要求1所述的加密存储装置,其特征在于,所述加密模块用于采用AES加密算法对所述第一数据进行加密得到所述加密数据。
6.根据权利要求5所述的加密存储装置,其特征在于,所述AES加密算法包括:字节替换、行移位、列混合以及轮密钥加;其中,所述ES加密算法的第1轮为轮密钥加,中间9轮依次为字节替换、行移位、列混合、轮密钥加,最后1轮依次为字节替换、行移位、列混合。
7.根据权利要求6所述的加密存储装置,其特征在于,所述FPAG控制芯片还包括第一双口ROM;所述第一双口ROM与所述加密模块连接;所述AES加密算法存储在所述第一双口ROM内。
9.根据权利要求7所述的加密存储装置,其特征在于,所述FPAG控制芯片还包括解密控制模块、解密模块以及第二双口ROM;所述第二双口ROM以及所述解密控制模块分别与所述解密模块连接,所述解密模块与所述FIFO缓存模块连接;所述第二双口ROM内存储有对应的解密算法;所述解密控制模块用于接收外部输入的解密控制密码;所述解密控制模块用于在接收到所述解密控制密码时控制所述解密模块调用所述第二双口ROM中的解密算法对所述AES加密算法存储从所述第二双口ROM获取的加密数据进行解密。
10.一种电子设备,其特征在于,包括权利要求1-9任一项所述的加密存储装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110652615.2A CN113392432A (zh) | 2021-06-11 | 2021-06-11 | 加密存储装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110652615.2A CN113392432A (zh) | 2021-06-11 | 2021-06-11 | 加密存储装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113392432A true CN113392432A (zh) | 2021-09-14 |
Family
ID=77620483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110652615.2A Pending CN113392432A (zh) | 2021-06-11 | 2021-06-11 | 加密存储装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113392432A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113742753A (zh) * | 2021-09-15 | 2021-12-03 | 北京宏思电子技术有限责任公司 | 一种数据流加解密的方法、电子设备及芯片系统 |
CN114327255A (zh) * | 2021-11-18 | 2022-04-12 | 北京智芯微电子科技有限公司 | 存储器接口控制器及存储器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001356964A (ja) * | 2000-06-15 | 2001-12-26 | Sony Corp | 暗号化データ記憶装置 |
CN101114903A (zh) * | 2007-03-05 | 2008-01-30 | 中兴通讯股份有限公司 | 一种吉比特无源光网络系统中高级加密标准加密装置及其实现方法 |
CN108183790A (zh) * | 2018-02-13 | 2018-06-19 | 中山大学 | 一种aes加密装置、芯片及系统 |
CN109670344A (zh) * | 2018-12-05 | 2019-04-23 | 珠海全志科技股份有限公司 | 加密装置、方法及片上系统 |
CN111177807A (zh) * | 2018-11-12 | 2020-05-19 | 爱思开海力士有限公司 | 数据储存装置、操作该装置的方法及具有该装置的储存系统 |
-
2021
- 2021-06-11 CN CN202110652615.2A patent/CN113392432A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001356964A (ja) * | 2000-06-15 | 2001-12-26 | Sony Corp | 暗号化データ記憶装置 |
CN101114903A (zh) * | 2007-03-05 | 2008-01-30 | 中兴通讯股份有限公司 | 一种吉比特无源光网络系统中高级加密标准加密装置及其实现方法 |
CN108183790A (zh) * | 2018-02-13 | 2018-06-19 | 中山大学 | 一种aes加密装置、芯片及系统 |
CN111177807A (zh) * | 2018-11-12 | 2020-05-19 | 爱思开海力士有限公司 | 数据储存装置、操作该装置的方法及具有该装置的储存系统 |
CN109670344A (zh) * | 2018-12-05 | 2019-04-23 | 珠海全志科技股份有限公司 | 加密装置、方法及片上系统 |
Non-Patent Citations (1)
Title |
---|
李濛: "基于FPGA的AES算法优化与实现", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113742753A (zh) * | 2021-09-15 | 2021-12-03 | 北京宏思电子技术有限责任公司 | 一种数据流加解密的方法、电子设备及芯片系统 |
CN113742753B (zh) * | 2021-09-15 | 2023-09-29 | 北京宏思电子技术有限责任公司 | 一种数据流加解密的方法、电子设备及芯片系统 |
CN114327255A (zh) * | 2021-11-18 | 2022-04-12 | 北京智芯微电子科技有限公司 | 存储器接口控制器及存储器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3274850B1 (en) | Protecting a memory | |
CN109902043B (zh) | 一种基于fpga的国密算法加速处理系统 | |
CN112329038B (zh) | 一种基于usb接口的数据加密控制系统及芯片 | |
CN202650015U (zh) | 用于经加密存储器存取的系统 | |
US20140164793A1 (en) | Cryptographic information association to memory regions | |
CN101510245B (zh) | 高速加解密usb桥接芯片以及芯片高速加解密方法 | |
CN111400732B (zh) | 一种基于usb通道的加解密模块及设备 | |
CN113392432A (zh) | 加密存储装置及电子设备 | |
KR102488636B1 (ko) | 데이터 및 타임스탬프를 암호화하는 암호화 장치, 이를 포함하는 시스템 온 칩, 및 전자 장치 | |
CN1878055B (zh) | 一种分离式大数据量加/解密设备及实现方法 | |
CN101540191B (zh) | 实时加密u盘及高速加解密方法 | |
CN103258172A (zh) | 一种芯片片外Nor Flash总线接口硬件加密装置 | |
JP2021507343A (ja) | 高性能周辺バスベースのシリアル周辺インターフェース通信装置 | |
CN102737270A (zh) | 一种基于国产算法的银行智能卡芯片安全协处理器 | |
CN112084138A (zh) | 一种用于可信存储的SoC安全盘控芯片架构设计方法 | |
CN101561888B (zh) | 一种实时加密sd卡及高速加解密方法 | |
CN111566987B (zh) | 数据处理方法、电路、终端设备及存储介质 | |
CN102184143A (zh) | 一种存储设备数据的保护方法、装置及系统 | |
CN100545861C (zh) | 一种带传输加密和访问权限控制的射频标签存储结构的传输方法 | |
JP2007310601A (ja) | マイクロコンピュータおよびそのソフトウェア保護方法 | |
CN111767586A (zh) | 内置硬件密码学算法协处理器的微处理器及安全芯片 | |
CN101482909B (zh) | 加密算法模块加速器及其数据高速加解密方法 | |
KR101070766B1 (ko) | 메모리 기능과 보안토큰 기능을 구비한 usb 복합장치 | |
CN103077362A (zh) | 具有安全机制的gpio ip核 | |
CN109726566A (zh) | 基于安全内存加密技术的加密系统和加密方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information |
Inventor after: Wei Dongpo Inventor after: Zhao Hongxia Inventor after: Zheng Dongdong Inventor after: Lv Jing Inventor before: Wei Dongpo Inventor before: Zhao Hongxia Inventor before: Zheng Dongdong Inventor before: Lv Jing |
|
CB03 | Change of inventor or designer information |