CN113742753B - 一种数据流加解密的方法、电子设备及芯片*** - Google Patents
一种数据流加解密的方法、电子设备及芯片*** Download PDFInfo
- Publication number
- CN113742753B CN113742753B CN202111081430.7A CN202111081430A CN113742753B CN 113742753 B CN113742753 B CN 113742753B CN 202111081430 A CN202111081430 A CN 202111081430A CN 113742753 B CN113742753 B CN 113742753B
- Authority
- CN
- China
- Prior art keywords
- module
- data
- encryption
- decryption
- transmitting
- 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
Links
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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/606—Protecting data by securing the transmission between two devices or processes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种数据流加解密的方法,当主控模块调用第一发送接收接口模块时,第一发送接收接口模块接收数据并根据调用指令将数据存储在指定的DRAM模块;当主控模块调用加解密模块时,加解密模块根据调用指令对指定的DRAM模块存储的数据进行加解密操作获得加解密数据,并将加解密数据存储在另外指定的DRAM模块;当主控模块调用第二发送接收接口模块,第二发送接收接口模块根据指令将指定的DRAM模块存储的加解密数据发送。本方法实现了数据流的接收,加解密数据处理和发送的同时进行,提高了数据流加解密的性能和数据处理速度。
Description
技术领域
本发明涉及信息安全领域,特别涉及一种数据流加解密的方法、电子设备及芯片***。
背景技术
在SoC加密***中,数据流加密的过程中通常会使用数据发送接收接口模块以及加解密模块,在现有技术中,通常第一发送接收接口模块接收到数据后,通过第一直接存储器访问模块将数据传送给加解密模块进行加解密操作,加解密模块将经过加解密的数据通过第二直接存储器访问模块发送给第二发送接收模块,第二发送接收模块发送加解密数据。由于这些模块之间属于单向传输,因此加解密模块接收待加解密的数据和发送加解密的数据无法同时进行,需要根据总线仲裁机制的判断来执行其中一项操作,因此数据流加解密的性能较低,数据处理速度慢。
发明内容
本发明提供了一种数据流加解密的方法及装置,解决了上述技术问题。
本发明提供的一种数据流加解密的方法,该方法包括:
步骤1,主控模块上电;
步骤2,主控模块调用第一发送接收接口模块,第一发送接收接口模块接收数据并将数据存储在第一DRAM模块;
步骤3,主控模块同时调用第一发送接收接口模块和加解密模块,第一发送接收接口模块接收数据并将数据存储在第二DRAM模块,同时加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储在第三DRAM模块;
步骤4,主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收数据并将数据存储在第一DRAM模块,同时加解密模块对第二DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储在第四DRAM模块,同时第二发送接收接口模块发送第三DRAM模块存储的加解密数据;
步骤5,主控模块判断是否还有数据需要处理,如果是,执行步骤8;如果否,执行步骤6-7:
步骤6,主控模块同时调用加解密模块和第二发送接收接口模块,加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到第三DRAM模块,同时第二发送接收接口模块发送第四DRAM模块存储的加解密数据;
步骤7,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第三DRAM模块存储的加解密数据,结束;
步骤8,主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收数据并将数据存储到第二DRAM模块,同时加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到第三DRAM模块,同时第二发送接收接口模块发送第四DRAM模块存储的加解密数据;
步骤9,主控模块判断是否还有数据需要处理,如果是,返回步骤4,如果否,执行步骤10;
步骤10,主控模块同时调用加解密模块和第二发送接收接口模块,加解密模块对第二DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到第四DRAM模块,同时第二发送接收接口模块发送第三DRAM模块存储的加解密数据;
步骤11,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第四DRAM模块存储的加解密数据,结束。
可选地,步骤3之后还包括主控模块判断是否还有数据需要处理,如果是,执行步骤4,如果否,执行步骤b1-b2:
步骤b1,主控模块同时调用第二发送接收接口模块和加解密模块,第二发送接收接口模块发送第三DRAM模块的加解密数据,同时加解密模块对第二DRAM模块存储的数据进行加解密后获得加解密数据,并将所得加解密数据存储到第四DRAM模块;
步骤b2,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第四DRAM模块的加解密数据,结束。
可选地,步骤2之后还包括主控模块判断是否还有数据需要处理,如果是,执行步骤3,如果否,执行步骤c1-c2:
步骤c1,主控模块调用加解密模块,加解密模块对第一DRAM模块存储的数据进行加解密后获得加解密数据,并将所得加解密数据存储到第三DRAM模块;
步骤c2,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第三DRAM模块的加解密数据,结束。
进一步地,步骤1具体为:主控模块上电,从数据处理请求方获取加解密的数据的长度,根据加解密的数据的长度和单个DRAM模块的容量大小计算待处理数据包的数量;
主控模块判断是否还有数据需要处理具体为:主控模块根据待处理数据包的数量判断是否还有数据需要处理。
可选地,主控模块调用第一发送接收接口模块后执行将计数器的值加1的操作;
主控模块判断是否还有数据需要处理具体为:主控模块判断计数器的值是否等于待处理数据包的数量。
进一步地,主控模块调用第一发送接收接口模块时,第一发送接收接口模块将数据存储在与调用第一发送接收接口模块指令中的空间初始地址对应的DRAM模块;
主控模块调用第二发送接收接口模块时,第二发送接收接口模块发送与调用第二发送接收接口模块指令中的空间初始地址对应的DRAM模块中的数据;
主控模块调用加解密模块时,加解密模块对与调用加解密模块指令中的第一空间初始地址对应的DRAM模块中的数据进行加解密操作获得加解密数据,并将加解密数据存储在与调用加解密模块指令中的第二空间初始地址对应的DRAM模块中。
本发明还提供一种电子设备,包括至少一个处理器、存储器及存储在存储器上并可被至少一个处理器执行的指令,至少一个处理器执行该指令以实现上述一种数据流加解密的方法。
本发明又提供了一种计算机可读存储介质,该计算机可读存储介质包括计算机程序,当计算机程序在计算机上运行时,使得计算机执行上述一种数据流加解密的方法。
本发明又提供了一种芯片***,该芯片***与存储器耦合,用于执行所述存储器中存储的计算机程序,以执行上述数据流加解密的方法。
本发明的有益效果:本发明提供了一种数据流加解密的方法、电子设备及芯片***,实现了数据流的接收,加解密数据处理和发送的同时进行,提高了数据流加解密的性能和数据处理速度。
附图说明
图1为本发明实施例一提供的一种数据流加解密的方法流程图;
图2为本发明实施例二提供的一种数据流加解密的方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
术语解释:
DRAM:Dual port Static Random-Access Memory,双接口静态随机存取存储器。
实施例一
本实施例提供了一种数据流加解密的方法,如图1所示,包括:
步骤101,主控模块上电;
步骤102,主控模块调用第一发送接收接口模块,第一发送接收接口模块接收数据并将数据存储在第一DRAM模块;
步骤103,主控模块同时调用第一发送接收接口模块和加解密模块,第一发送接收接口模块接收数据并将数据存储在第二DRAM模块,同时加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储在第三DRAM模块;
步骤104,主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收数据并将数据存储在第一DRAM模块,同时加解密模块对第二DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储在第四DRAM模块,同时第二发送接收接口模块发送第三DRAM模块存储的加解密数据;
步骤105,主控模块判断是否还有数据需要处理,如果是,执行步骤108;如果否,执行步骤106:
步骤106,主控模块同时调用加解密模块和第二发送接收接口模块,加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将加解密数据存储到第三DRAM模块,同时第二发送接收接口模块发送第四DRAM模块存储的加解密数据;
步骤107,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第三DRAM模块存储的加解密数据,结束;
步骤108,主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收数据并将数据存储到第二DRAM模块,同时加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到第三DRAM模块,同时第二发送接收接口模块发送第四DRAM模块存储的加解密数据;
步骤109,主控模块判断是否还有数据需要处理,如果是,返回步骤104,如果否,执行步骤110;
步骤110,主控模块同时调用加解密模块和第二发送接收接口模块,加解密模块对第二DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到第四DRAM模块,同时第二发送接收接口模块发送第三DRAM模块存储的加解密数据;
步骤111,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第四DRAM模块存储的加解密数据,结束。
在本实施例一种可能的实现方式中,步骤103之后还包括主控模块判断是否还有数据需要处理,如果是,执行步骤104,如果否,执行步骤b1-b2:
步骤b1,主控模块同时调用第二发送接收接口模块和加解密模块,第二发送接收接口模块发送第三DRAM模块的加解密数据,同时加解密模块对第二DRAM模块存储的数据进行加解密后获得加解密数据,并将所得加解密数据存储到第四DRAM模块;
步骤b2,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第四DRAM模块的加解密数据,结束。
在本实施例一种可能的实现方式中,步骤102之后还包括主控模块判断是否还有数据需要处理,如果是,执行步骤103,如果否,执行步骤c1-c2:
步骤c1,主控模块调用加解密模块,加解密模块对第一DRAM模块存储的数据进行加解密后获得加解密数据,并将所得加解密数据存储到第三DRAM模块;
步骤c2,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第三DRAM模块的加解密数据,结束。
在本实施例一种可能的实现方式中,步骤101具体为:主控模块上电,从数据处理请求方获取加解密的数据的长度,根据加解密的数据的长度和单个DRAM模块的容量大小计算待处理数据包的数量;
主控模块判断是否还有数据需要处理具体为:主控模块根据待处理数据包的数量判断是否还有数据需要处理。
在本实施例一种可能的实现方式中,主控模块调用第一发送接收接口模块后执行将计数器的值加1的操作;
主控模块判断是否还有数据需要处理具体为:主控模块判断计数器的值是否等于待处理数据包的数量。
在本实施例一种可能的实现方式中,主控模块调用第一发送接收接口模块时,第一发送接收接口模块将数据存储在与调用第一发送接收接口模块指令中的空间初始地址对应的DRAM模块;
主控模块调用第二发送接收接口模块时,第二发送接收接口模块发送与调用第二发送接收接口模块指令中的空间初始地址对应的DRAM模块中的数据;
主控模块调用加解密模块时,加解密模块对与调用加解密模块指令中的第一空间初始地址对应的DRAM模块中的数据进行加解密操作获得加解密数据,并将加解密数据存储在与调用加解密模块指令中的第二空间初始地址对应的DRAM模块中。
实施例二
本实施例提供了一种数据流加解密的方法,如图2所示,包括如下步骤:
步骤201,主控模块上电;
在本实施例中,DRAM模块可以为随机存取存储器,其空间大小是有限的,因此需要对要进行加解密的数据进行分包发送和处理。
在本实施例中,主控模块上电后,从数据处理请求方获取待加解密的数据的长度,根据待加解密的数据的长度和单个DRAM模块的容量大小计算待加解密数据的发送数据包的数量,即待加解密的数据需要分多少个数据包进行发送;
具体的,根据待加解密的数据的长度除以单个DRAM模块的容量大小得到的商值来计算发送数据包的数量,可以整除时,则数据包的数量为商值,当无法整除时,则数据包的数量为商值加1。
例如,待加解密数据的总长度为9.5K,单个DRAM模块的容量大小为1K,则待加解密的数据分为10个数据包发送。
步骤202,主控模块调用第一发送接收接口模块,第一发送接收接口模块接收数据并将数据存储在第一DRAM模块;
在本实施例中,第一发送接收接口模块可以为:SPI接口模块、7816接口模块、UART接口模块、USB接口模块、I2C接口模块、SDIO接口模块。
在本实施例中,每次主控模块调用第一发送接收接口模块后都要执行将计数器的值加1的操作,计数器的初始值为0。
本步骤中,主控模块调用第一发送接收接口模块具体为:主控模块调用第一发送接收接口模块,并将计数器的值加1。
本实施例中,主控模块调用第一发送接收接口模块具体为:主控模块根据第一发送接收接口模块的寄存器地址调用第一发送接收接口模块。
在本步骤中,主控模块调用第一发送接收接口模块时,第一发送接收接口模块根据调用第一发送接收接口模块指令中的第一DRAM模块的空间初始地址将接收到的数据存储到第一DRAM模块;
例如,在本步骤中,当主控模块调用第一发送接收接口模块时,第一发送接收接口模块接收第一数据包,并将第一数据包存储在第一DRAM模块中。
步骤203,主控模块判断是否还有数据需要处理,如果是,执行204,如果否,执行步骤21-22;
在本实施例中,主控模块判断是否还有数据需要处理具体为:主控模块根据待处理数据包的数量判断是否还有数据需要处理。
在本实施例中,主控模块判断是否还有数据需要处理具体为:主控模块判断计数器的值是否等于待处理数据包的数量。
在本实施例中,本步骤具体为:主控模块判断计数器的值是否等于待加解密数据的发送数据包的数量,如果是,执行步骤21-22,如果否,执行步骤204;
步骤21,主控模块调用加解密模块,加解密模块对第一DRAM模块存储的数据进行加解密后获得加解密数据,并将所得加解密数据存储到第三DRAM模块;
本实施例中,主控模块调用加解密模块具体为:主控模块根据加解密模块的寄存器的地址调用加解密模块。
步骤22,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第三DRAM模块的加解密数据,结束。
本实施例中,主控模块调用第二发送接收接口模块具体为:主控模块根据第二发送接收接口模块的寄存器地址调用第二发送接收接口模块。
步骤204,主控模块同时调用第一发送接收接口模块和加解密模块,第一发送接收接口模块接收数据并将数据存储在第二DRAM模块,同时加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储在第三DRAM模块;
在本实施例中,加解密模块所使用的算法包括但不限于SM4算法,DES算法,TDES算法和AES算法。
在本步骤中,主控模块调用第一发送接收接口模块时,第一发送接收接口模块根据调用第一发送接收接口模块指令中的第二DRAM模块的空间初始地址将接收到的数据存储到第二DRAM模块;
主控模块调用加解密模块时,加解密模块根据调用加解密模块指令中的第一DRAM模块的空间初始地址对第一DRAM模块的数据进行加解密操作,按照调用加解密模块指令中的第三DRAM模块的空间初始地址将加解密数据存储到第三DRAM模块。
例如,在本步骤中,主控模块同时调用第一发送接收接口模块和加解密模块,第一发送接收接口模块接收第二数据包,并将第二数据包存储在第二DRAM模块,同时加解密模块对第一DRAM模块存储的第一数据包进行加解密操作获得加解密的第一数据包,并将加解密的第一数据包存储在第三DRAM模块;
步骤205,主控模块判断是否还有数据需要处理,如果是,执行步骤206,如果否,执行步骤31-32:
步骤31,主控模块同时调用第二发送接收接口模块和加解密模块,第二发送接收接口模块发送第三DRAM模块的加解密数据,同时加解密模块对第二DRAM模块存储的数据进行加解密后获得加解密数据,并将所得加解密数据存储到第四DRAM模块;
步骤32,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第四DRAM模块的加解密数据,结束。
步骤206,主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收数据并将数据存储在第一DRAM模块,同时加解密模块对第二DRAM模块的数据进行加解密操作获得加解密数据,并将所得加解密数据存储在第四DRAM模块,同时第二发送接收接口模块发送第三DRAM模块存储的加解密数据;
在本实施例中,第二发送接收接口模块可以为:SPI接口模块、7816接口模块、UART接口模块、USB接口模块、I2C接口模块、SDIO接口模块。
在本步骤中,主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收数据并根据第一发送接收接口模块调用指令中的第一DRAM模块的空间初始地址将数据存储在第一DRAM模块,同时加解密模块根据加解密模块调用指令中的第二DRAM模块的空间初始地址对第二DRAM模块的数据进行加解密操作获得加解密数据,并根据加解密模块调用指令中的第四DRAM模块的空间初始地址将所得加解密数据存储在第四DRAM模块,第二发送接收接口模块根据第二发送接收接口模块调用指令中的第三DRAM模块的空间初始地址发送存储在第三DRAM模块的数据。
例如,在本步骤中:主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收第三数据包并将第三数据包存储在第一DRAM模块,同时加解密模块对第二DRAM模块的第二数据包进行加解密操作获得加解密的第二数据包,并将加解密的第二数据包存储在第四DRAM模块,同时第二发送接收接口模块发送第三DRAM模块存储的加解密的第一数据包;
步骤207,主控模块判断是否还有数据需要处理,如果是,执行步骤208,如果否,执行步骤41-42。
步骤41,主控模块同时调用加解密模块和第二发送接收接口模块,加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到第三DRAM模块,同时第二发送接收接口模块发送第四DRAM模块存储的加解密数据;
步骤42,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第三DRAM模块的加解密数据,结束。
步骤208,主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收数据并将数据存储到第二DRAM模块,同时加解密模块对第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到第三DRAM模块,同时第二发送接收接口模块发送第四DRAM模块存储的加解密数据;
例如,在本步骤中,主控模块同时调用第一发送接收接口模块、加解密模块和第二发送接收接口模块,第一发送接收接口模块接收第四数据包并将第四数据包存储到第二DRAM模块,同时加解密模块对第一DRAM模块存储的第三数据包进行加解密操作获得加解密的第三数据包,并将加解密的第三数据包存储到第三DRAM模块,同时第二发送接收接口模块发送第四DRAM模块存储的加解密的第二数据包;
步骤209,主控模块判断是否还有数据需要处理,如果是,返回步骤206,如果否,执行步骤51-52;
步骤51,主控模块同时调用加解密模块和第二发送接收接口模块,加解密模块对第二DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到第四DRAM模块,同时第二发送接收接口模块发送第三DRAM模块存储的加解密数据;
例如,在本步骤中,主控模块同时调用加解密模块和第二发送接收接口模块,加解密模块对第二DRAM模块存储的第十数据包进行加解密操作获得加解密的第十数据包,并将加解密的第十数据包存储到第四DRAM模块,同时第二发送接收接口模块发送第三DRAM模块存储的加解密的第九数据包;
步骤52,主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第四DRAM模块存储的加解密数据,结束。
在本实施例中,本步骤具体为:主控模块调用第二发送接收接口模块,第二发送接收接口模块发送第四DRAM模块存储的加解密的第十数据包。
在本实施例中,由于作为示例的10数据包还剩6个数据包为待处理数据,因此,需要返回步骤206,需要重复执行步骤206和步骤208,直至主控模块判断没有要处理的数据包时,执行相应步骤操作。
例如,在步骤208中,第一发送接收接口模块接收第十数据包并将第十数据包存储到第二DRAM模块,同时加解密模块对第一DRAM模块存储的第九数据包进行加解密操作获得加解密的第九数据包,并将加解密的第九数据包存储到第三DRAM模块,同时第二发送接收接口模块发送第四DRAM模块存储的加解密的第八数据包时,则表示没有待处理的数据,执行步骤51-52。
可选的,本申请的实施例还提供了一种数据流加解密的电子设备,此电子设备包括至少一个处理器、存储器及存储在该存储器上并可被至少一个处理器执行的指令,至少一个处理器执行该指令以实现上述实施例中的一种数据流加解密的方法。该电子设备是芯片***时,可以由芯片构成,也可以包含芯片和其他分立器件,本申请实施例对此不作具体限定;该芯片与存储器耦合,用于执行存储器中存储的计算机程序,以执行上述实施例中公开的数据流加解密的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机程序。在加载和执行计算机程序时,全部或部分地产生按照本申请实施例的流程或功能。该计算机程序可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个基站、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个基站、服务器或数据中心进行传输。计算机可读存储介质可以是本发明的装置能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (9)
1.一种数据流加解密的方法,其特征在于,所述方法包括:
步骤1,主控模块上电;
步骤2,所述主控模块调用第一发送接收接口模块,所述第一发送接收接口模块接收数据并将数据存储在第一双接口静态随机存取存储器DRAM模块;
步骤3,所述主控模块同时调用所述第一发送接收接口模块和加解密模块,所述第一发送接收接口模块接收数据并将数据存储在第二DRAM模块,同时所述加解密模块对所述第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储在第三DRAM模块;
步骤4,所述主控模块同时调用所述第一发送接收接口模块、所述加解密模块和第二发送接收接口模块,所述第一发送接收接口模块接收数据并将数据存储在所述第一DRAM模块,同时所述加解密模块对所述第二DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储在第四DRAM模块,同时所述第二发送接收接口模块发送所述第三DRAM模块存储的加解密数据;
步骤5,所述主控模块判断是否还有数据需要处理,如果是,执行步骤8;如果否,执行步骤6:
步骤6,所述主控模块同时调用所述加解密模块和所述第二发送接收接口模块,所述加解密模块对所述第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到所述第三DRAM模块,同时所述第二发送接收接口模块发送所述第四DRAM模块存储的加解密数据;
步骤7,所述主控模块调用所述第二发送接收接口模块,所述第二发送接收接口模块发送所述第三DRAM模块存储的加解密数据,结束;
步骤8,所述主控模块同时调用所述第一发送接收接口模块、所述加解密模块和所述第二发送接收接口模块,所述第一发送接收接口模块接收数据并将数据存储到所述第二DRAM模块,同时所述加解密模块对所述第一DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到所述第三DRAM模块,同时所述第二发送接收接口模块发送所述第四DRAM模块存储的加解密数据;
步骤9,所述主控模块判断是否还有数据需要处理,如果是,返回步骤4,如果否,执行步骤10;
步骤10,所述主控模块同时调用所述加解密模块和所述第二发送接收接口模块,所述加解密模块对所述第二DRAM模块存储的数据进行加解密操作获得加解密数据,并将所得加解密数据存储到所述第四DRAM模块,同时所述第二发送接收接口模块发送所述第三DRAM模块存储的加解密数据;
步骤11,所述主控模块调用所述第二发送接收接口模块,所述第二发送接收接口模块发送所述第四DRAM模块存储的加解密数据,结束。
2.如权利要求1所述方法,其特征在于,所述步骤3之后还包括所述主控模块判断是否还有数据需要处理,如果是,执行步骤4,如果否,执行步骤b1-b2:
步骤b1,所述主控模块同时调用所述第二发送接收接口模块和所述加解密模块,所述第二发送接收接口模块发送所述第三DRAM模块的加解密数据,同时所述加解密模块对所述第二DRAM模块存储的数据进行加解密后获得加解密数据,并将所得加解密数据存储到所述第四DRAM模块;
步骤b2,所述主控模块调用所述第二发送接收接口模块,所述第二发送接收接口模块发送所述第四DRAM模块的加解密数据,结束。
3.如权利要求1所述方法,其特征在于,所述步骤2之后还包括所述主控模块判断是否还有数据需要处理,如果是,执行步骤3,如果否,执行步骤c1-c2:
步骤c1,所述主控模块调用所述加解密模块,所述加解密模块对所述第一DRAM模块存储的数据进行加解密后获得加解密数据,并将所得加解密数据存储到所述第三DRAM模块;
步骤c2,所述主控模块调用所述第二发送接收接口模块,所述第二发送接收接口模块发送所述第三DRAM模块的加解密数据,结束。
4.如权利要求1至3任一项所述方法,其特征在于,所述步骤1具体为:所述主控模块上电,从数据处理请求方获取加解密的数据的长度,根据所述加解密的数据的长度和单个DRAM模块的容量大小计算待处理数据包的数量;
所述主控模块判断是否还有数据需要处理具体为:所述主控模块根据所述待处理数据包的数量判断是否还有数据需要处理。
5.如权利要求4所述方法,其特征在于,所述主控模块调用第一发送接收接口模块后执行将计数器的值加1的操作;
所述主控模块判断是否还有数据需要处理具体为:所述主控模块判断所述计数器的值是否等于所述待处理数据包的数量。
6.如权利要求1所述方法,其特征在于,所述主控模块调用第一发送接收接口模块时,所述第一发送接收接口模块将数据存储在与调用第一发送接收接口模块指令中的空间初始地址对应的DRAM模块;
所述主控模块调用第二发送接收接口模块时,所述第二发送接收接口模块发送与调用第二发送接收接口模块指令中的空间初始地址对应的DRAM模块中的数据;
所述主控模块调用所述加解密模块时,所述加解密模块对与调用加解密模块指令中的第一空间初始地址对应的DRAM模块中的数据进行加解密操作获得加解密数据,并将加解密数据存储在与调用加解密模块指令中的第二空间初始地址对应的DRAM模块中。
7.一种电子设备,其特征在于,所述电子设备包括至少一个处理器、存储器及存储在所述存储器上并可被所述至少一个处理器执行的指令,所述至少一个处理器执行所述指令以实现权利要求1至6任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1至6任一项所述的方法。
9.一种芯片***,其特征在于,所述芯片***与存储器耦合,用于执行所述存储器中存储的计算机程序,以执行如权利要求1至6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111081430.7A CN113742753B (zh) | 2021-09-15 | 2021-09-15 | 一种数据流加解密的方法、电子设备及芯片*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111081430.7A CN113742753B (zh) | 2021-09-15 | 2021-09-15 | 一种数据流加解密的方法、电子设备及芯片*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113742753A CN113742753A (zh) | 2021-12-03 |
CN113742753B true CN113742753B (zh) | 2023-09-29 |
Family
ID=78739105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111081430.7A Active CN113742753B (zh) | 2021-09-15 | 2021-09-15 | 一种数据流加解密的方法、电子设备及芯片*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113742753B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5568614A (en) * | 1994-07-29 | 1996-10-22 | International Business Machines Corporation | Data streaming between peer subsystems of a computer system |
US5724537A (en) * | 1994-03-24 | 1998-03-03 | Discovision Associates | Interface for connecting a bus to a random access memory using a two wire link |
CN101114903A (zh) * | 2007-03-05 | 2008-01-30 | 中兴通讯股份有限公司 | 一种吉比特无源光网络***中高级加密标准加密装置及其实现方法 |
CN101510245A (zh) * | 2009-03-06 | 2009-08-19 | 苏州国芯科技有限公司 | 高速加解密usb桥接芯片以及芯片高速加解密方法 |
CN101540191A (zh) * | 2009-04-21 | 2009-09-23 | 苏州国芯科技有限公司 | 实时加密u盘及高速加解密方法 |
CN103019983A (zh) * | 2012-11-23 | 2013-04-03 | 北京宏思电子技术有限责任公司 | Usb接口控制模块和usb设备的数据传输控制方法 |
CN103346878A (zh) * | 2013-07-05 | 2013-10-09 | 中国科学院半导体研究所 | 一种基于fpga高速串行io的保密通信方法 |
CN106788975A (zh) * | 2016-12-28 | 2017-05-31 | 北京天融信网络安全技术有限公司 | 基于sm4密码算法的加解密装置 |
CN109325356A (zh) * | 2018-07-28 | 2019-02-12 | 杭州电子科技大学 | 一种加密卡架构 |
CN111814167A (zh) * | 2020-07-14 | 2020-10-23 | 北京九维数安科技有限公司 | 数据加解密处理***及方法 |
CN112417522A (zh) * | 2020-12-01 | 2021-02-26 | 北京华大智宝电子***有限公司 | 一种数据处理方法、安全芯片装置和嵌入式*** |
CN113392432A (zh) * | 2021-06-11 | 2021-09-14 | 山东华宇工学院 | 加密存储装置及电子设备 |
-
2021
- 2021-09-15 CN CN202111081430.7A patent/CN113742753B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724537A (en) * | 1994-03-24 | 1998-03-03 | Discovision Associates | Interface for connecting a bus to a random access memory using a two wire link |
US5568614A (en) * | 1994-07-29 | 1996-10-22 | International Business Machines Corporation | Data streaming between peer subsystems of a computer system |
CN101114903A (zh) * | 2007-03-05 | 2008-01-30 | 中兴通讯股份有限公司 | 一种吉比特无源光网络***中高级加密标准加密装置及其实现方法 |
CN101510245A (zh) * | 2009-03-06 | 2009-08-19 | 苏州国芯科技有限公司 | 高速加解密usb桥接芯片以及芯片高速加解密方法 |
CN101540191A (zh) * | 2009-04-21 | 2009-09-23 | 苏州国芯科技有限公司 | 实时加密u盘及高速加解密方法 |
CN103019983A (zh) * | 2012-11-23 | 2013-04-03 | 北京宏思电子技术有限责任公司 | Usb接口控制模块和usb设备的数据传输控制方法 |
CN103346878A (zh) * | 2013-07-05 | 2013-10-09 | 中国科学院半导体研究所 | 一种基于fpga高速串行io的保密通信方法 |
CN106788975A (zh) * | 2016-12-28 | 2017-05-31 | 北京天融信网络安全技术有限公司 | 基于sm4密码算法的加解密装置 |
CN109325356A (zh) * | 2018-07-28 | 2019-02-12 | 杭州电子科技大学 | 一种加密卡架构 |
CN111814167A (zh) * | 2020-07-14 | 2020-10-23 | 北京九维数安科技有限公司 | 数据加解密处理***及方法 |
CN112417522A (zh) * | 2020-12-01 | 2021-02-26 | 北京华大智宝电子***有限公司 | 一种数据处理方法、安全芯片装置和嵌入式*** |
CN113392432A (zh) * | 2021-06-11 | 2021-09-14 | 山东华宇工学院 | 加密存储装置及电子设备 |
Non-Patent Citations (2)
Title |
---|
"Triad-NVM: Persistency for Integrity-Protected and Encrypted non-Volatile Memories";Amro等;2019 ACM/IEEE 46th Annual International Symposium on Computer Architecture(ISCA);第104-115页 * |
"基于IBE和FUSE的双向透明文件加密***的研究与实现";何翔;中国优秀硕士学位论文全文数据库 信息科技辑(第2019年第(02)期);第I138-212页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113742753A (zh) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11088846B2 (en) | Key rotating trees with split counters for efficient hardware replay protection | |
US20220027288A1 (en) | Technologies for low-latency cryptography for processor-accelerator communication | |
US10171440B2 (en) | Method and apparatus for managing encryption keys for cloud service | |
US10943020B2 (en) | Data communication system with hierarchical bus encryption system | |
KR101668033B1 (ko) | 시스템 온 칩 장치에서 강력하고 안전한 콘텐츠 보호를 구현하는 개선된 기법 | |
CN107679409B (zh) | 一种数据加密的加速方法和*** | |
US11503000B2 (en) | Technologies for establishing secure channel between I/O subsystem and trusted application for secure I/O data transfer | |
CN112788111B (zh) | 多节点设备的算法协同处理方法、节点设备及联盟网络 | |
CN101655894B (zh) | 在通用串行总线加密锁设备上提高分组算法吞吐量的方法 | |
WO2019224374A1 (en) | Multi-master security circuit | |
CN113742753B (zh) | 一种数据流加解密的方法、电子设备及芯片*** | |
KR20170105393A (ko) | 스토리지 디바이스의 인증 방법 및 시스템 | |
CN113542224B (zh) | 培训数据的处理方法、装置、服务器及介质 | |
CN113923167B (zh) | 联邦学习中数据传输优化方法 | |
CN116070239A (zh) | 文件加密、解密方法、装置、设备及存储介质 | |
CN116048716A (zh) | 一种直接存储访问方法、装置及相关设备 | |
CN117083612A (zh) | 处置未对齐事务以用于内联加密 | |
EP2675105B1 (en) | Apparatus and method for providing security service | |
CN111209544B (zh) | Web应用安全保护方法、装置、电子设备及存储介质 | |
US9760693B2 (en) | Method and apparatus for a content protecting and packaging system for protecting a content package | |
CN113556333A (zh) | 一种计算机网络数据安全传输方法、装置 | |
CN112887263A (zh) | 设备内数据传输方法、实现设备内数据传输的方法及装置 | |
CN106533674B (zh) | 加密数据的共享方法、装置及*** | |
CN111859351A (zh) | 向芯片写入信息的方法、***、服务器及存储介质 | |
CN111159780A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |