CN113032798A - 一种文件加解密的方法、设备和存储介质 - Google Patents
一种文件加解密的方法、设备和存储介质 Download PDFInfo
- Publication number
- CN113032798A CN113032798A CN202110128745.6A CN202110128745A CN113032798A CN 113032798 A CN113032798 A CN 113032798A CN 202110128745 A CN202110128745 A CN 202110128745A CN 113032798 A CN113032798 A CN 113032798A
- Authority
- CN
- China
- Prior art keywords
- encrypted
- decrypted
- target
- message
- cache queue
- 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
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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
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
本说明书提供一种文件加解密的方法、设备和存储介质,该方法包括:目标核获取待加解密报文,将所述待加解密报文发给目标缓存队列,所述目标缓存队列与CPU的目标核对应,获取所述目标缓存队列输出的加解密后的报文。通过该方法,可以实现基于硬件引擎对文件进行加解密。
Description
技术领域
本公开涉及通信技术领域,尤其涉及一种文件加解密的方法、设备和存储介质。
背景技术
随着网络技术的发展,特别是5G、大数据、云计算快速部署和普及,网络数据剧增。在这种情况下,网络信息的安全问题日益突出,基于密码学原理的各种安全应用越来越广泛,比如数据加解密业务VPN、IPSEC等已经深入到信息应用的各个角落。常用数据加密方式是基于软件的,存在诸多安全问题,比如
软件加解密运算要占用大量的CPU系统资源,给系统带来较大负担,大大地降低了系统的处理性能;
软件加解密运算时,密钥等关键信息在内存中出现,很容易被攻击者通过各种木马、病毒程序获取,从而引起安全问题;
软件加解密算法中产生的随机数是伪随机数,有一定的规律性,很容易被攻破,一旦被攻破后续的随机数将会被模拟产生,攻击者很容易破解整个加密系统中的所有密文信息。
发明内容
本公开提供了一种文件加解密的方法、设备和存储介质,通过该方法、设备、存储介质可以实现基于硬件引擎对文件进行加解密。
本公开提供了一种文件加解密的方法,该方法包括:
目标核获取待加解密报文;
将所述待加解密报文发给目标缓存队列,所述目标缓存队列与CPU的目标核对应;
获取所述目标缓存队列输出的加解密后的报文。
可选的,所述目标核包括:
CPU中的一个或一个以上的数据核。
可选的,所述将所述待加解密报文发给目标缓存队列,具体包括:
目标核通过该待加解密报文的HASH结果,将该待加解密报文发给目标缓存队列。
可选的,获取所述目标缓存队列的方法包括:
根据所述目标核设置目标缓存队列,并建立对应关系。
可选的,所述将所述目标缓存队列输出的加解密后的报文发送给与该目标缓存队列对应的CPU的目标核,包括:
当目标缓存队列对待加解密报文完成加解密后,通知目标核获取加解密后的报文。
通过上述方法可以看出,本方案可将目标缓存队列与CPU的目标核对应,从而可以针对不同目标核处理的报文进行加解密,实现了基于硬件引擎的报文加解密,同时,无需CPU进行轮训加解密文件的进度,节省了CPU的资源。
本公开实施例还提供了一种设备,该设备包括:
获取模块,用于目标核获取待加解密报文;
处理模块,用于将所述待加解密报文发给目标缓存队列,所述目标缓存队列与CPU的目标核对应;
所述获取模块,还用于获取所述目标缓存队列输出的加解密后的报文。
可选的,所述处理模块,具体用于通过该待加解密报文的HASH结果,将该待加解密报文发给目标缓存队列。
可选的,获取所述目标缓存队列的方法包括:
处理模块根据所述目标核设置目标缓存队列,并建立对应关系。
可选的,所述获取模块,还用于当目标核获取目标缓存队列对待加解密报文完成加解密后发送的通知,根据该通知获取加解密后的报文。
本公开实施例还提供了一种设备,该设备包括:处理器和机器可读存储介质;
所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述各实施例中的步骤。
本公开实施例还提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现上述各实施例中的步骤。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
图1为本公开实施例提供的一种文件加解密的方法的逻辑示意图。
图2为本公开实施例提供的一种文件加解密的方法的逻辑示意图。
图3为本公开实施例提供的一种文件加解密的方法的逻辑示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
如图1所示,目前为了实现硬件对文件加解密,主要通过在网络设备中集成硬件加密引擎,驱动软件从设备入接口接收到网络报文(可能是明文或者密文)后,上送到CPU,CPU将报文发送到隧道接口进行加解密,加密引擎对输入报文进行加解密操作,CPU轮询等待加密引擎完成,加密引擎完成报文加解密后,CPU对报文做其他的业务,最终从输出端口转发出去。
然而,由于现有的方案中加密引擎对报文的加解密处理是同步的流程,也就是加密引擎加解密时,CPU一直轮询等待加密引擎返回的结果,因此CPU资源存在一定程度的浪费。特别是在高性能多核CPU系统中,CPU由于轮询等待资源浪费更加严重。
同时,在高性能多核CPU系统中,存在多个数据平面同时对收发报文处理。现有的方案中需要等待当前数据平面完成加解密完成处理后,其他的数据平面才有机会。对资源的强烈的竞争,会导致整个系统的业务处理性能下降。
本公开实施例提供了一种文件加解密的方法,如图2所示,该方法包括:
S201目标核获取待加解密报文;
S202将所述待加解密报文发给目标缓存队列,所述目标缓存队列与CPU的目标核对应;
S203获取所述目标缓存队列输出的加解密后的报文。
在本实施例中,CPU为多核,该CPU具有控制平面的控制核和数据平面的数据核,具体的,在一种实施例中,一颗CPU有24个核,会把0-1核作为控制核,2-23核作为数据核。
在本实施例中,目标核可以是CPU中的某一个数据核,也可以是CPU中的多个数据核,在本实施例中,可以获取CPU中目标核的个数(若以一个数据核作为一个目标核的话,则在24核CPU中,可以获取22个目标核),并创建同等数目的缓存队列,该缓存队列可以为FIFO缓存队列,即每个目标核都有对应各自的目标加解密FIFO队列。(在本实施例中,目标核指的是接收到待加解密报文的数据核,目标缓存队列指的是与目标核对应的缓存队列)
在本实施例中,在创建FIFO缓存队列时,还可以考虑每个FIFO缓存队列的深度,队列深度越大,缓存的报文越多,引擎性能不足时,可以有效缓解丢包,但会消耗较多的内存资源。队列深度越小,缓存的报文越少,引擎性能不足时,容易出现丢包。因此深度的合理取值与加密引擎的处理性能有关,可以根据实际应用场景进行设置。
在步骤S201和S202中,多核CPU的某个目标核接收到待加解密报文后,可以将该待加解密报文发送给其对应的目标缓存队列,加密引擎从FIFO队列取报文进行处理,处理完的数据依然存放在相应的FIFO位置。
其中,在将待加解密报文发送给其对应的目标缓存队列时,可以通过HASH算法,对待加解密报文的五元组进行HASH计算,并根据计算结果将该待加解密报文发送给对应的目标缓存队列。
在本实施例中,当目标缓存队列中的报文完成加解密后,目标缓存队列可向对应的CPU(目标核)发送通知(例如,中断通知),当目标核接收到该通知后,则从对应的目标缓存队列中获取加解密后的报文。
由此,可以看出,CPU把待加解密报文发送给FIFO队列(目标缓存队列),无需轮询等待完成加解密。加密引擎完成加解密处理后通知CPU,此时CPU便可以从FIFO队列中获取处理后的报文数据。可以看到整个加解密过程中,CPU只是把报文放入相应的FIFO队列,CPU没有忙等待,从而可以充分利用CPU做其他的业务。
如图3所示,在一种实施例中,多核CPU中的目标核接收到待加解密报文,并将该待加解密报文发送给对应的FIFO缓存队列;硬件加速引擎对FIFO缓存队列中的待加解密报文进行加解密处理,并在处理后,该FIFO缓存队列向对应的目标核发送中断通知,目标核接收到该中断通知后,从FIFO缓存队列中获取加解密后的报文,并且,在加解密过程中,目标核无需进行轮训,节省了CPU的资源。
本公开实施例还提供了一种设备,该设备包括:
获取模块,用于目标核获取待加解密报文;
处理模块,用于将所述待加解密报文发给目标缓存队列,所述目标缓存队列与CPU的目标核对应;
所述获取模块,还用于获取所述目标缓存队列输出的加解密后的报文。
可选的,所述处理模块,具体用于通过该待加解密报文的HASH结果,将该待加解密报文发给目标缓存队列。
可选的,获取所述目标缓存队列的方法包括:
处理模块根据所述目标核设置目标缓存队列,并建立对应关系。
可选的,所述获取模块,还用于当目标核获取目标缓存队列对待加解密报文完成加解密后发送的通知,根据该通知获取加解密后的报文。
本公开实施例还提供了一种设备,该设备包括:处理器和机器可读存储介质;
所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述各实施例中的步骤。
本公开实施例还提供了一种机器可读存储介质,该存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现上述各实施例中的步骤。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (11)
1.一种文件加解密的方法,其特征在于,所述方法包括:
目标核获取待加解密报文;
将所述待加解密报文发给目标缓存队列,所述目标缓存队列与CPU的目标核对应;
获取所述目标缓存队列输出的加解密后的报文。
2.根据权利要求1所述的方法,其特征在于,所述目标核包括:
CPU中的一个或一个以上的数据核。
3.根据权利要求1所述的方法,其特征在于,所述将所述待加解密报文发给目标缓存队列,具体包括:
目标核通过该待加解密报文的HASH结果,将该待加解密报文发给目标缓存队列。
4.根据权利要求1所述的方法,其特征在于,获取所述目标缓存队列的方法包括:
根据所述目标核设置目标缓存队列,并建立对应关系。
5.根据权利要求1所述的方法,其特征在于,所述将所述目标缓存队列输出的加解密后的报文发送给与该目标缓存队列对应的CPU的目标核,包括:
当目标缓存队列对待加解密报文完成加解密后,通知目标核获取加解密后的报文。
6.一种设备,其特征在于,所述设备包括:
获取模块,用于目标核获取待加解密报文;
处理模块,用于将所述待加解密报文发给目标缓存队列,所述目标缓存队列与CPU的目标核对应;
所述获取模块,还用于获取所述目标缓存队列输出的加解密后的报文。
7.根据权利要求6所述的设备,其特征在于,
所述处理模块,具体用于通过该待加解密报文的HASH结果,将该待加解密报文发给目标缓存队列。
8.根据权利要求6所述的设备,其特征在于,获取所述目标缓存队列的方法包括:
处理模块根据所述目标核设置目标缓存队列,并建立对应关系。
9.根据权利要求6所述的设备,其特征在于,
所述获取模块,还用于当目标核获取目标缓存队列对待加解密报文完成加解密后发送的通知,根据该通知获取加解密后的报文。
10.一种设备,其特征在于,该设备包括:处理器和机器可读存储介质;
所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-5任一所述步骤。
11.一种机器可读存储介质,其特征在于,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现权利要求1-5任一所述步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110128745.6A CN113032798A (zh) | 2021-01-29 | 2021-01-29 | 一种文件加解密的方法、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110128745.6A CN113032798A (zh) | 2021-01-29 | 2021-01-29 | 一种文件加解密的方法、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113032798A true CN113032798A (zh) | 2021-06-25 |
Family
ID=76459980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110128745.6A Pending CN113032798A (zh) | 2021-01-29 | 2021-01-29 | 一种文件加解密的方法、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113032798A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546617A (zh) * | 2011-12-29 | 2012-07-04 | 汉柏科技有限公司 | 多核多线程系统中IPSec转发的方法 |
WO2016011894A1 (zh) * | 2014-07-25 | 2016-01-28 | 华为技术有限公司 | 报文处理方法和装置 |
CN110535742A (zh) * | 2019-08-06 | 2019-12-03 | 杭州迪普科技股份有限公司 | 报文转发方法、装置、电子设备及机器可读存储介质 |
CN111669374A (zh) * | 2020-05-25 | 2020-09-15 | 成都安恒信息技术有限公司 | 一种IPsec VPN单条隧道软件加解密性能扩展方法 |
-
2021
- 2021-01-29 CN CN202110128745.6A patent/CN113032798A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546617A (zh) * | 2011-12-29 | 2012-07-04 | 汉柏科技有限公司 | 多核多线程系统中IPSec转发的方法 |
WO2016011894A1 (zh) * | 2014-07-25 | 2016-01-28 | 华为技术有限公司 | 报文处理方法和装置 |
CN110535742A (zh) * | 2019-08-06 | 2019-12-03 | 杭州迪普科技股份有限公司 | 报文转发方法、装置、电子设备及机器可读存储介质 |
CN111669374A (zh) * | 2020-05-25 | 2020-09-15 | 成都安恒信息技术有限公司 | 一种IPsec VPN单条隧道软件加解密性能扩展方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11372684B2 (en) | Technologies for hybrid field-programmable gate array application-specific integrated circuit code acceleration | |
KR101572799B1 (ko) | 프린터와 프린트 클라이언트 디바이스 사이의 보안 프린팅 | |
US9632977B2 (en) | System and method for ordering packet transfers in a data processor | |
CN110535742B (zh) | 报文转发方法、装置、电子设备及机器可读存储介质 | |
CN104994032B (zh) | 一种信息处理的方法和装置 | |
JP2013501394A (ja) | 協働エージェント暗号化及び復号 | |
CN112217630A (zh) | 用于链路保护的开销减少 | |
CN109543452A (zh) | 数据传输方法、装置、电子设备及计算机可读存储介质 | |
CN110597751A (zh) | 一种pci密码卡访问方法、系统、存储介质及计算机设备 | |
CN111163102B (zh) | 数据处理方法及装置、网络设备、可读存储介质 | |
CN116070240B (zh) | 多芯片调用机制的数据加密处理方法及装置 | |
CN116204911B (zh) | 加解密系统、加解密控制方法、计算机设备及存储介质 | |
CN115795522B (zh) | 多核并发的高速密码引擎数据处理方法及装置 | |
CN113810397B (zh) | 协议数据的处理方法及装置 | |
CN113032798A (zh) | 一种文件加解密的方法、设备和存储介质 | |
US20230117518A1 (en) | Permutation cipher encryption for processor-accelerator memory mapped input/output communication | |
CN115208863B (zh) | 码流加密和解密方法及相关装置、设备、系统和介质 | |
JP5294761B2 (ja) | セキュア通信装置、セキュア通信方法及びプログラム | |
CN113569265B (zh) | 一种数据处理方法、系统及装置 | |
CN110928604B (zh) | 基于无锁环状队列的密码卡异步调用方法 | |
CN113452508A (zh) | 数据加密方法、装置、设备和计算机可读存储介质 | |
CN112491903A (zh) | 多系统间对账方法、装置及系统 | |
CN114222005B (zh) | 请求处理方法、装置、设备、计算机可读存储介质及产品 | |
CN115516454B (zh) | 硬件安全模块和系统 | |
CN107404538B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210625 |