CN113872752A - 安全引擎模组、安全引擎装置和通信设备 - Google Patents

安全引擎模组、安全引擎装置和通信设备 Download PDF

Info

Publication number
CN113872752A
CN113872752A CN202111043184.6A CN202111043184A CN113872752A CN 113872752 A CN113872752 A CN 113872752A CN 202111043184 A CN202111043184 A CN 202111043184A CN 113872752 A CN113872752 A CN 113872752A
Authority
CN
China
Prior art keywords
encryption
decryption
module
data
engine
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.)
Granted
Application number
CN202111043184.6A
Other languages
English (en)
Other versions
CN113872752B (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.)
Zeku Technology Beijing Corp Ltd
Original Assignee
Zeku Technology Beijing Corp 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 Zeku Technology Beijing Corp Ltd filed Critical Zeku Technology Beijing Corp Ltd
Priority to CN202111043184.6A priority Critical patent/CN113872752B/zh
Publication of CN113872752A publication Critical patent/CN113872752A/zh
Application granted granted Critical
Publication of CN113872752B publication Critical patent/CN113872752B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例涉及一种安全引擎模组、安全引擎装置和通信设备,安全引擎模组,包括:加解密模块;完整性保护模块;输入存储器,分别与加解密模块、完整性保护模块连接,用于将获取到的待处理数据提供至第一处理模块,第一处理模块为加解密模块和完整性保护模块中的一个;中间存储器,分别与加解密模块、完整性保护模块连接,用于获取并锁存第一处理模块处理后输出的数据,并将锁存的数据提供至第二处理模块,第二处理模块为加解密模块和完整性保护模块中的另一个;输出存储器,分别与加解密模块、完整性保护模块连接,用于获取并锁存第二处理模块处理后输出的数据,并将锁存的数据输出。

Description

安全引擎模组、安全引擎装置和通信设备
技术领域
本申请实施例涉及通信技术领域,特别是涉及一种安全引擎模组、安全引擎装置和通信设备。
背景技术
加解密技术在无线通信中的重要地位是不言而喻的,在4G/5G移动通信中PDCP协议层为通信提供了加解密和完整性保护功能,负责通信数据的安全。在通信协议的设计实现中通常会使用硬件安全引擎,以满足高速的传输速率要求和相应的安全要求。但是,随着通信速度的不断提升,当前通信设备的加解密和完整性保护的处理速度已无法满足人们的需求。
发明内容
本申请实施例提供了一种安全引擎模组、安全引擎装置和通信设备,可以优化安全引擎模组的加解密和完整性保护的处理速度。
一种安全引擎模组,包括:
加解密模块;
完整性保护模块;
输入存储器,分别与所述加解密模块、所述完整性保护模块连接,用于将获取到的待处理数据提供至第一处理模块,所述第一处理模块为所述加解密模块和所述完整性保护模块中的一个;
中间存储器,分别与所述加解密模块、所述完整性保护模块连接,用于获取并锁存所述第一处理模块处理后输出的数据,并将锁存的数据提供至第二处理模块,所述第二处理模块为所述加解密模块和所述完整性保护模块中的另一个;
输出存储器,分别与所述加解密模块、所述完整性保护模块连接,用于获取并锁存所述第二处理模块处理后输出的数据,并将锁存的数据输出。
一种安全引擎装置,包括:
如上述的安全引擎模组;
PCDP加速器,分别与安全引擎模组的输入存储器和输出存储器连接,所述PCDP加速器用于传输待处理数据至所述输入存储器,还用于从所述输出存储器获取加解密处理和/或完整性保护处理后的数据;
其中,所述安全引擎模组还用于从所述PCDP加速器分时接收各组所述待处理数据。
一种通信设备,包括如上述的安全引擎装置。
上述安全引擎模组、安全引擎装置和通信设备,当对同一数据需要分别进行加解密处理和完整性保护处理时,通过设置中间存储器,可以将第一处理模块处理后的数据暂时锁存至中间存储器,并使第二处理模块直接从中间存储器获取数据并进行后续的处理。一方面,通过内部传输处理的方式,无需从外部器件重复获取待处理数据,从而减少了对外部器件的重复调用,简化了软件的复杂度,提高了处理效率。另一方面,第一处理模块对待处理数据完成部分处理后,可以先将已完成的处理结果传输至中间存储器,再进行后续的处理,而第二处理模块此时即可从中间存储器获取数据,并进行其他的处理操作,从而使第一处理模块和第二处理模块可以并行运行,大大减少了第二处理模块在处理前的等待时间,提高了处理效率。因此,本申请实施例提供了一种加解密和完整性保护的处理速度较快的安全引擎模组。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一实施例的安全引擎模组的结构示意图之一;
图2为一实施例的安全引擎模组的结构示意图之二;
图3为一实施例的安全引擎模组的结构示意图之三;
图4为一实施例的加解密模块和数据路径的局部结构框图;
图5为一实施例的安全引擎模组的局部示意图之一;
图6为一实施例的安全引擎模组的局部示意图之二;
图7为一实施例的SNOW3G算法的硬件结构图;
图8为一实施例的ZUC算法的硬件结构图;
图9为一实施例的SNOW3G算法和ZUC算法共用控制电路的结构示意图;
图10为一实施例的SNOW3G算法和ZUC算法共用移位寄存器组的结构示意图;
图11为一实施例的SNOW3G算法的有限状态机的局部结构示意图;
图12为一实施例的AES算法的硬件结构中的置换盒的结构示意图;
图13为一实施例的安全引擎装置的结构示意图。
元件标号说明:
安全引擎模组:10;加解密模块:100;SNOW3G加解密引擎:111;AES加解密引擎:112;ZUC加解密引擎:113;开关器件:114;控制电路:120;开关电路:130;第一运算电路:141;第二运算电路:142;移位寄存器组:143;置换盒:144;完整性保护模块:200;SNOW3G完保引擎:211;AES完保引擎:212;ZUC完保引擎:213;输入存储器:300;第一子存储器:310;中间存储器:400;第二子存储器:410;输出存储器:500;第三子存储器:510;拆包电路:610;组包电路:710;路径选择模块:800;PCDP加速器:20。
具体实施方式
为了便于理解本申请实施例,下面将参照相关附图对本申请实施例进行更全面的描述。附图中给出了本申请实施例的首选实施例。但是,本申请实施例可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本申请实施例的公开内容更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请实施例的技术领域的技术人员通常理解的含义相同。本文中在本申请实施例的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请实施例。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一处理模块称为第二处理模块,且类似地,可将第二处理模块称为第一处理模块。第一处理模块和第二处理模块两者都是处理模块,但其不是同一处理模块。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。在本申请的描述中,“若干”的含义是至少一个,例如一个,两个等,除非另有明确具体的限定。
而且,本申请中的“连接”可以是电连接,既可以是直接电连接,也可以是间接电连接。例如,A与B之间连接,指的是A与B之间可以传输电信号,在具体实现时,既可以是A与B直接电连接,也可以是A与B之间通过C实现间接电连接。
本申请实施例提供了一种安全引擎模组10,其中,安全引擎模组10可以理解为封装结构(封装模组),安全引擎模组10被配置有多个端口,用于与各外部器件进行连接,各个端口可以理解为安全引擎模组10的引脚端子。多个端口至少包括数据接收端口和数据发送端口,数据接收端口用于接收来自外部器件的待处理数据,数据发送端口用于将加解密和/或完整性保护后的数据发送至外部器件。其中,外部器件例如可以为分组数据汇聚协议(Packet Data Convergence Protocol,PCDP)加速器,具体可以为PCDP硬件加速器。
图1为一实施例的安全引擎模组10的结构示意图之一,参考图1,在本实施例中,安全引擎模组10包括加解密模块100、完整性保护模块200、输入存储器300、中间存储器400和输出存储器500。
其中,加解密模块100用于利用密码技术对接收到的数据进行加解密,实现数据的隐蔽,从而起到保护数据安全的作用。具体地,加解密模块100通过加密算法和加密密钥将原来是明文的文件或数据进行处理,使其成不可读的一段代码,也就是密文,来达到保护数据的安全性。其中,加解密模块100可以通过MD5加密算法、SHA1算法、AES加密算法等对数据进行加密,本实施例不做限定。可以理解的是,当安全引擎模组10作为发送方使用时,加解密模块100即用于对数据进行加密处理;当安全引擎模组10作为接收方使用时,加解密模块100即用于对数据进行解密处理。
完整性保护模块200用于根据接收到的数据生成一段对应的短数据,短数据能够用于验证原始数据在传输过程中是否被篡改,即数据是否完整,从而实现对原始数据的校验。其中,完整性模块可以通过AES加密算法、ZUC算法等对数据进行完整性保护,本实施例不做限定。
其中,对于同一个原始数据,可以分别进行加解密处理和完整性保护处理。具体地,根据处理顺序的差异,可以分为加密后完保(Encryption then MAC,EtM)、完保并行加密(Encryption and MAC,E&M)和完保后加密(MAC then Encryption,MtE)三种类型。EtM即是指发送方先对原始数据进行加密处理,然后对加密处理生成的密文进行完整性保护处理,最后把加密后的数据和加密后数据的消息验证码(MAC)拼接起来,发给接收方,接收方先验证MAC,如果验证通过,则证明接收方当前的密钥是正确的,然后接收方可以使用该密钥对接收到的数据执行解密处理。E&M即是指发送方同时对原始数据执行加密和完整性保护处理,把二者拼接起来,发给接收方,接收方先进行解密,然后对解密结果执行完整性保护处理,比对发来的MAC,验证原始数据的正确性。MtE即是指发送方先对待处理的原始数据执行完整性保护处理,将生成的消息验证码与原始数据拼接后,再执行加密处理,并将加密处理后的密文发送给接收方,接受方先进行解密,然后执行完整性保护处理,以验证解密结果是否正确。可以理解的是,通过控制对加解密模块100和完整性保护模块200的调用顺序,本实施例的安全引擎模组10可以用于支持上述任一种处理顺序。
继续参考图1,输入存储器300分别与所述加解密模块100、所述完整性保护模块200连接。其中,输入存储器300通过数据路径分别与所述加解密模块100、所述完整性保护模块200连接,输入存储器300用于获取待处理数据(例如可以从外部器件获取该待处理数据),并将所述待处理数据提供至第一处理模块,所述第一处理模块为所述加解密模块100和所述完整性保护模块200中的一个。其中,当需要进行数据传输的原始数据的数据量较大时,外部器件可以将原始数据拆分为多组待处理数据,并将待处理数据分时发送给输入存储器300,并进而传输至第一处理模块进行相应的处理,以减小第一处理模块的数据处理压力。当需要进行数据传输的原始数据的数据量较小时,外部器件可以直接将全部原始数据一次性发送给输入存储器300,以作为待处理数据进行处理。即,一组待处理数据可以为部分原始数据或全部原始数据,本实施例不做限定。
中间存储器400经数据路径分别与所述加解密模块100、所述完整性保护模块200连接,用于获取并锁存所述第一处理模块处理后输出的数据,并将锁存的数据提供至第二处理模块,所述第二处理模块为所述加解密模块100和所述完整性保护模块200中的另一个。
具体地,若安全引擎模组作为发送方进行EtM处理,则加解密模块100为第一处理模块,完整性保护模块200为第二处理模块,加解密模块100对待处理数据完成加密处理后,将携带待处理数据和加密信息的密文输出至中间存储器400,完整性保护模块200从中间存储器400获取加解密处理后生成的密文,对密文进行完整性保护处理获取消息验证码,再将密文和消息验证码拼接后输出。
若安全引擎模组作为发送方进行E&M处理,则可以是加解密模块100为第一处理模块,完整性保护模块200为第二处理模块;也可以是完整性保护模块200为第一处理模块,加解密模块100为第二处理模块。当加解密模块100为第一处理模块,完整性保护模块200为第二处理模块时,加解密模块100对待处理数据完成加密处理后,将待处理数据和密文输出至中间存储器400,完整性保护模块200从中间存储器400获取待处理数据和密文,对待处理数据进行完整性保护处理获取消息验证码,再将密文和消息验证码拼接后输出。当完整性保护模块200为第一处理模块,加解密模块100为第二处理模块时,完整性保护模块200对待处理数据进行完整性保护处理获取消息验证码,将待处理数据和消息验证码输出至中间存储器400,加解密模块100从中间存储器400获取待处理数据和消息验证码,对待处理数据完成加密处理获取密文后,再将密文和消息验证码拼接后输出。
若安全引擎模组作为发送方进行MtE处理,则完整性保护模块200为第一处理模块,加解密模块100为第二处理模块,完整性保护模块200对待处理数据进行完整性保护处理获取消息验证码后,将待处理数据和消息验证码拼接后共同文输出至中间存储器400,加解密模块100对拼接的数据一并进行加密处理生成密文,再将密文输出。
输出存储器500分别与所述加解密模块100、所述完整性保护模块200连接,用于获取并锁存所述第二处理模块处理后输出的数据,并将锁存的数据输出(例如可以将数据提供给外部器件)。需要说明的是,在一些场景下,安全引擎模组10所需要处理的业务可以只包括加解密处理和完整性保护处理中的一种,对于上述情况,需要进行处理的模块(加解密模块100或完整性保护模块200)从输入存储器300获取待处理数据,并完成对应的处理操作后,可以直接将处理后的数据发送至输出存储器500进行输出,而不必经由中间存储器400进行中转,以提高安全引擎模组10的处理速度。
可以理解的是,对于既需要进行完整性保护也需要进行加密的应用场景,如果不采用本实施例的安全引擎模组10,每次只能选择一个模块进行数据处理,即,需要调用两次安全引擎模组10。例如,对于MtE的应用场景中的发送方,只有等完整性保护处理结束并通过输出寄存器500输出后,外部器件才能再将数据重新输入至输入存储器300,即,再次调用安全引擎模组10的加解密模块100进行加密处理,从而造成管理和调度较为复杂,不仅增加了软件使用的复杂度,而且整体效率较低。
在本实施例中,输入存储器300、中间存储器400和输出存储器500可以均为先进先出存储器(First Input First Output,FIFO),FIFO存储器是先入先出的双口缓冲器,即第一个进入其内的数据第一个被移出,其中一个是存储器的输入口,另一个口是存储器的输出口,从而实现对数据的顺序处理。而且,输入存储器300、中间存储器400和输出存储器500都响应于时钟信号对数据进行锁存和输出,对于包括多个bit的原始数据,可以拆分为多组待处理数据逐步进行处理。示例性地,每组待处理数据的长度例如可以为8bit、32bit、128bit等,具体可以根据实际需求进行设置。
具体地,以先进行加解密处理、后进行完整性保护处理,每次处理8bit的待处理数据为例。若原始数据的长度大于8bit,则响应于第一周期的时钟触发信号,输入存储器300可以接收原始数据中前8bit的数据作待处理数据,对待处理数据进行锁存并输出至加解密模块100,加解密模块100对接收到的数据进行加解密处理,并将处理后的数据传输至中间存储器400的输入端。响应于第二周期的时钟触发信号,输入存储器300可以接收原始数据中第9bit至16bit的数据作为新的待处理数据,对新的待处理数据进行锁存并输出至加解密模块100,以进行相应的加密处理,与此同时,中间存储器400可以对输入端的数据(即前8bit的数据进行加密处理后的数据)进行锁存并输出至完整性保护模块200,完整性保护模块200对接收到的数据进行完整性保护处理,并将处理后的数据传输至输出存储器500的输入端。响应于第三周期的时钟触发信号,输入存储器300可以接收原始数据中第17bit至24bit的数据作为新的待处理数据,对新的待处理数据进行锁存并输出至加解密模块100,以进行相应的加密处理,与此同时,中间存储器400可以对输入端的数据(即第9bit至16bit的数据进行加密处理后的数据)进行锁存并输出至完整性保护模块200,以进行相应的完整性保护处理,而且,输出存储器500可以对输入端的数据(即前8bit的数据进行完整性保护处理后的数据)进行锁存并输出至外部器件。
因此,在本实施例中,通过内部传输处理的方式,无需从外部器件重复获取待处理数据,从而减少了对外部器件的重复调用,简化了软件的复杂度,提高了处理效率。另一方面,完整性保护处理不需要等加密处理结束,只要中间存储器400存入数据后,便开始进行完整性保护处理,从而使第一处理模块和第二处理模块可以并行运行,大大减少了第二处理模块在处理前的等待时间,提高了处理效率,极大地提升了吞吐率。因此,本申请实施例提供了一种加密和完整性保护的处理速度较快的安全引擎模组10。
图2为一实施例的安全引擎模组10的结构示意图之二,参考图2,在本实施例中,数据路径上可以根据需要配置相应的开关器件,所述开关器件分别与所述输入存储器、所述中间存储器以及所述输出存储器连接,以对数据路径的导通方式和导通顺序进行控制。如图2所示,所述加解密模块100包括输入端和输出端,所述完整性保护模块200包括输入端和输出端,路径选择模块800包括有多个第一端、多个第二端和一个控制端,所述开关器件的多个第一端分别与所述输入存储器300、所述中间存储器400以及所述输出存储器500连接。具体地,所述开关器件的多个第一端分别与所述输入存储器300的输出端、所述中间存储器400的输入端、所述中间存储器400的输出端以及所述输出存储器500的输入端一一对应连接。所述开关器件的多个第二端分别与所述加解密模块100的输入端、所述加解密模块100的输出端、所述完整性保护模块200的输入端以及所述完整性保护模块200的输出端一一对应连接。例如,若控制器根据需要处理的业务确定加解密模块100为第一处理模块,则可以控制输入存储器300与加解密模块100之间的数据路径导通,从而使输入存储器300锁存的数据会通过数据路径传输至加解密模块100。上述开关器件可以由路径选择模块800进行控制,即,所述安全引擎模组10还包括作为控制器的路径选择模块800,所述路径选择模块800生成通路选择信号,以控制开关器件导通与所述通路选择信号相对应的数据路径。
图3为一实施例的安全引擎模组10的结构示意图之三,参考图3,在本实施例中,所述加解密模块100可以包括多个加解密引擎。例如图3中加解密模块100包括3个加解密引擎,分别为SNOW3G加解密引擎111、AES加解密引擎112和ZUC加解密引擎113。加解密模块100中,各所述加解密引擎分别与所述输入存储器300、所述中间存储器400和所述输出存储器500连接。其中,各所述加解密引擎分别用于互相独立地对接收到的数据进行加解密处理,示例性地,可以有至少两个加解密引擎被配置有不同的加解密算法,以实现对数据灵活的加密处理。而且,多个加解密引擎在对数据进行加解密处理时,处理的数据可以相同,即对同一数据进行不同类型的加解密,处理的数据也可以不同,从而提高安全引擎模组10的处理速度。可以理解的是,上述加解密引擎的类型和数量仅用于示例性说明,而不用于限定本实施例的保护范围,在其他实施例中,也可以根据通信设备的类型、通信速率要求、加解密类型要求等选择其他的加解密引擎。
图4为一实施例的加解密模块和数据路径的局部结构框图,参考图4,在本实施例中,加解密模块100中还可以包括开关器件114,以实现对不同的加解密引擎的选择。具体地,开关器件114被配置有两个第一端和多个第二端,一个第一端用于从数据路径获取待处理数据,另一个第一端用于向数据路径传输加解密处理后的数据,多个第二端分别与多个加解密引擎一一对应连接,例如分别与图4中的SNOW3G加解密引擎111、AES加解密引擎112和ZUC加解密引擎113一一对应连接。进一步地,开关器件114也可以与路径选择模块800连接,并受控于路径选择模块800进行相应的路径切换。
继续参考图3,所述完整性保护模块200包括多个完整性保护引擎,各所述完整性保护引擎分别与所述输入存储器300、所述中间存储器400和所述输出存储器500连接,各所述完整性保护引擎分别用于互相独立地对接收到的数据进行完整性保护处理。与加解密引擎相似地,虽然在图3中,多个完整性保护引擎分别为SNOW3G完保引擎211、AES完保引擎212和ZUC完保引擎213,可以理解的是,上述完整性保护引擎的类型和数量仅用于示例性说明,而不用于限定本实施例的保护范围,在其他实施例中,也可以根据通信设备的类型、通信速率要求、完整性保护类型要求等选择其他的完整性保护引擎。而且,虽然图3实施例中加解密模块100中的引擎类型与完整性保护模块200相同,但在其他实施例中,也可以采用内部引擎类型不同的加解密模块100和完整性保护模块200。
在其中一个实施例中,所述加解密模块100中的各所述加解密引擎分别一一对应被配置有不同的加解密算法。继续参考图3,采用SNOW3G加解密引擎111实现的加密算法即为NEA1,采用SNOW3G加解密引擎111实现的解密算法即为EEA1。采用AES加解密引擎112实现的加密算法即为NEA2,采用AES加解密引擎112实现的解密算法即为EEA2。采用ZUC加解密引擎113实现的加密算法即为NEA3,采用ZUC加解密引擎113实现的解密算法即为EEA3。在本实施例中,通过为加解密模块100配置多种不同的加解密算法,可以使安全引擎模组10应用于更多类型的通信设备,并扩展通信设备的使用场景。
相似地,采用SNOW3G完保引擎211实现的消息验证码的获取算法即为NIA1,采用SNOW3G完保引擎211实现的消息验证码的验证算法即为EIA1。采用AES完保引擎212实现的消息验证码的获取算法即为NIA2,采用AES完保引擎212实现的消息验证码的验证算法即为EIA2。采用ZUC完保引擎213实现的消息验证码的获取算法即为NIA3,采用ZUC完保引擎213实现的消息验证码的验证算法即为EIA3。在本实施例中,通过为完整性保护模块200配置多种不同的消息验证码的获取和验证算法,可以使安全引擎模组10应用于更多类型的通信设备,并扩展通信设备的使用场景。
图5为一实施例的安全引擎模组10的局部示意图之一,在图5实施例中,示出了输入存储器300和中间存储器400的内部具体结构。具体地,所述输入存储器300包括多个第一子存储器310,所述中间存储器400包括多个第二子存储器410,图5所述加解密模块100还包括多个拆包电路610和多个组包电路710。各所述拆包电路610的输入端分别与一个所述第一子存储器310连接,且各所述拆包电路610的输出端分别与各所述加解密引擎一一对应连接,以对从所述第一子存储器310或所述第二子存储器410获取的数据进行拆包处理,并传输至所述加解密引擎。各所述组包电路710的输入端分别与各所述加解密引擎一一对应连接,且各所述组包电路710的输出端分别与一个所述第二子存储器410连接,以将组包处理后的数据传输至所述第二子存储器410。拆包电路610用于从对应的第一子存储器310获取待处理数据,进行拆包处理后,由对应连接的加密引擎进行加密处理,再由组包电路710进行组包后发送给第二子存储器410,以供后续的完整性保护处理。
基于上述结构,多个加密引擎可以互相独立地进行拆包和组包处理,从而支持了并行的加解密算法,而且由于不同算法对输入数据的位宽要求不同,独立设置的拆包电路610和组包电路710也有利于提升单个算法的运行效率。可以理解的是,在其他实施例中,也可以使输入寄存器包括两个子存储器,并使两个子存储器对应于三个拆包电路610进行数据传输,基于上述设置方式,可以在支持并行加密处理的前提下,在一定程度上减少第一子存储器310的总面积,以适配于较小体积的通信设备,但在数据处理效率上会略逊于图5实施例。
图6为一实施例的安全引擎模组10的局部示意图之二,在图6实施例中,示出了输入存储器300和输出存储器500的内部具体结构。具体地,所述输入存储器300包括多个第一子存储器310,所述输出存储器500包括多个第三子存储器510,所述加解密模块100还包括多个拆包电路610和多个组包电路710。各所述拆包电路610的输入端分别与一个所述第一子存储器310连接,且各所述拆包电路610的输出端分别与各所述加解密引擎一一对应连接,以对从所述第一子存储器310或所述第三子存储器510获取的数据进行拆包处理,并传输至所述加解密引擎。各所述组包电路710的输入端分别与各所述加解密引擎一一对应连接,且各所述组包电路710的输出端分别与一个所述第三子存储器510连接,以将组包处理后的数据传输至所述第三子存储器510。拆包电路610用于从对应的第一子存储器310获取待处理数据,进行拆包处理后,由对应连接的加密引擎进行加密处理,再由组包电路710进行组包后发送给第三子存储器510,以供后续的完整性保护处理。
基于上述结构,多个加密引擎可以互相独立地进行拆包和组包处理,从而支持了并行的加解密算法,而且由于不同算法对输入数据的位宽要求不同,独立设置的拆包电路610和组包电路710也有利于提升单个算法的运行效率。图6实施例也可以理解为一种能够应用于单独的加解密处理的使用场景下的简化硬件结构,基于上述使用场景,可以不限制第二子存储器410的数量,即,可以只设置一个第二子存储器410,甚至不设置第二子存储器410。
在其中一个实施例中,多个所述加解密引擎至少包括SNOW3G加解密引擎111和ZUC加解密引擎113。具体地,图7为一实施例的SNOW3G算法的硬件结构图,参考图7,SNOW3G算法的硬件结构分为两层结构,分别是线性反馈移位寄存器(Linear Feedback ShiftRegister,LFSR)和有限状态机(finite-statemachine,FSM)。线性反馈移位寄存器包含16个32位宽的寄存器(S0至S15),3个异或运算单元,1个位于右侧的MULalpha(α)运算单元,和1个位于左侧的DIValpha(α-1)运算单元。有限状态机使用来自线性反馈移位寄存器的S15和S5的值。有限状态机包含3个32位宽的存储器(R1至R3),2个32位宽的加法运算单元,2个32位宽的异或运算单元,以及对S1和S2的查表运算单元。有限状态机产生的输出结果,与来自线性反馈移位寄存器的寄存器S0进行异或运算,产生SNOW3G算法的32位宽的密钥Zt。
SNOW3G算法的工作模式包括初始化状态、空转状态和工作状态。在初始化阶段,首先要进行32周期的空转运行,用于实现线性反馈移位寄存器的初始化。在空转状态,产生一个不使用的密钥。在工作状态,产生真正参与运算的密钥。
图8为一实施例的ZUC算法的硬件结构图,参考图8,ZUC算法的硬件结构分为上中下三层,分别是线性反馈移位寄存器(Linear Feedback Shift Register,线性反馈移位寄存器)、比特重组(BR)和非线性函数(Function,F)。线性反馈移位寄存器包含16个32位宽的寄存器(S0至S15),每个寄存器在集合{1,2,3,…,231-1}中取值。线性反馈移位存储器以如下所示的有限域GF(231-1)上的16次本原多项式P(X)=x16-215x15-217x13-221x10-220x4-(28+1)为连接多项式。因此,输出为素域GF(231-1)上的m序列,具有良好的随机性。其中,m序列是指最长线性反馈移位存储器序列。
ZUC算法的工作模式包括初始化状态、空转状态和工作状态。在初始化阶段,线性反馈移位寄存器接收一个31比特字u,以使线性反馈移位存储器的状态随机化,其中,u是由非线性函数的32比特输出W通过舍弃最低比特位得到。在空转状态,产生一个不使用的密钥。在工作状态,产生真正参与运算的密钥。
比特重组从线性反馈移位寄存器的移位寄存器组143中的S15、S14、S11、S9、S7、S5、S2和S0中共抽取128比特,以组成4个32比特字X0、X1、X2、X3。具体地,比特重组采用如下方式进行计算:
X0=S15H||S14H,X1=S11L||S9H,X0=S7L||S5H,X0=S2L||S0H
其中,H是指取字的高16比特,L是指取字的低16比特,||表示将两个字符首位拼接。示例性地,若S15=0047ac00,S14=00789a00,则X0=008f9a00。比特重组采用取半合并技术,实现线性反馈移位寄存器到非线性函数和密钥输出的数据转换,从而破坏线性反馈移位寄存器在素域GF(231-1)上的线性结构。
非线性函数包括2个32比特存储单元R0和R1,F的输入为来自比特重组的3个32比特字X0、X1、X2,输出为一个32比特字W。因此,非线性函数是一个把96比特压缩为32比特的一个非线性压缩函数。非线性函数还包括置换盒144组,置换盒144组包括4个置换盒144构成,置换盒144组用于实现对数据的非线性置换。示例性地,假设经过L1计算得到的32bit的数据为ef897a4c,则将ef、89、7a、4c分别送到S0、S1、S0、S1中进行查询,其中高位为行数,低位为列数。例如ef在S0中查询,则得到的是e行f列的值。
在本实施例中,ZUC算法采用了非线性变换置换盒144,从而为ZUC算法提供了非线性。同时,由于线性反馈移位寄存器和比特重组都是线性变换,所以非线性函数就成为了ZUC算法中唯一的非线性部件,从而成为确保ZUC算法安全的关键。
结合参考图7和图8可知,SNOW3G算法和ZUC算法在进行处理时,都是首先要进行32周期的空转运行,用于实现线性反馈移位寄存器的初始化,下一周期产生一个不使用的密钥,再下一周期产生真正参与运算的密钥。即,SNOW3G算法和ZUC算法的实现逻辑相同,因此,SNOW3G算法的硬件结构可以和ZUC算法的硬件结构共用同一套控制电路120,从而达到面积优化。
具体到,图9为一实施例的SNOW3G算法和ZUC算法共用控制电路120的结构示意图,参考图9,所述加解密模块100还包括控制电路120和开关电路130,所述控制电路120分别与所述开关电路130的第一端、控制端连接,所述开关电路130的两个第二端分别与所述SNOW3G加解密引擎111和所述ZUC加解密引擎113连接。所述控制电路120用于控制所述开关电路导通130第一端与任一第二端之间的通路,以将所述状态机控制信号传输至所述SNOW3G加解密引擎111和所述ZUC加解密引擎113中的一个。基于上述结构中开关电路130的切换功能,可以通过同一个控制电路120分别对SNOW3G加解密引擎111和所述ZUC加解密引擎113的状态机进行控制,从而在无需牺牲运行效率的前提下,大大减小了SNOW3G加解密引擎111和ZUC加解密引擎113的总面积。
图10为一实施例的SNOW3G算法和ZUC算法共用移位寄存器组143的结构示意图,参考图10,在其中一个实施例中,所述加解密模块100包括第一运算电路141、第二运算电路142和移位寄存器组143,多个所述加解密引擎至少包括SNOW3G加解密引擎111和ZUC加解密引擎113,所述SNOW3G加解密引擎111包括所述移位寄存器组143和所述第一运算电路141,所述ZUC加解密引擎113包括所述移位寄存器组143和所述第二运算电路142。其中,所述移位寄存器组143包括串联连接的多个寄存器,所述第一运算电路141和所述第二运算电路142分别与所述移位寄存器组143中的一个或多个寄存器连接。
其中,第一运算电路141可以包括ZUC算法的线性反馈移位寄存器中除移位寄存器组143以外的其他硬件电路结构,第二运算电路142可以包括SNOW3G算法的线性反馈移位寄存器中除移位寄存器组143以外的其他硬件电路结构。第一运算电路141和第二运算电路142中的具体结构可以结合参考图7、图8和图10,此处不再进行赘述。其中,第一运算电路141和第二运算电路142可以集成设置,并统一由一个端口进行数据输出,并且可以通过控制数据路径的通断,将输出的数据选择传输至SNOW3G算法的有限状态机,或传输至ZUC算法的比特重组和非线性函数。
在本实施例中,SNOW3G算法的硬件结构和ZUC算法的硬件结构中都包括16个32位宽的寄存器组成的移位寄存器组143。其中,SNOW3G算法每次运算时需要S0,S2,S5,S11和S15参与,ZUC算法每次运算时需要S0,S2,S4,S5,S7,S9,S1O,S11,S13,S14和S15参与。从硬件电路上来看,线性反馈移位寄存器的电路及功能相同,即,移位寄存器组143内的数据每个时钟周期逐级流动。因此,在本实施例中,通过使SNOW3G加解密引擎111和ZUC加解密引擎113共用同一套移位寄存器组143,可以有效地减小电路面积。
在其中一个实施例中,多个所述加解密引擎至少包括SNOW3G加解密引擎111和AES加解密引擎112。其中,图11为一实施例的SNOW3G算法的有限状态机的局部结构示意图,参考图11,有限状态机包括多个置换盒144,以实现对数据的非线性置换。
AES(Advanced Encryption Standard,高级加解密标准)算法为最常见的对称加解密算法。对称加解密算法也就是加解密和解密用相同的密钥。AES算法的处理单位是字节,128位的输入明文分组P和输入密钥K都被分成16个字节,分别记为P=P0 P1…P15,以及K=K0 K1…K15。示例性地,若明文分组为P=abcdefghijklmnop,其中的字符a对应P0,p对应P15进行相应的计算。在AES算法的每一轮中,不断进行字节置换、行位移、列混合和轮密钥加的操作,从而使状态矩阵的内容不断发生变化,最后的结果作为密文输出。
其中,图12为一实施例的AES算法的硬件结构中的置换盒144的结构示意图,参考图12,对于128bit的AES算法,每个置换盒144例如可以用于处理8bit的数据,因此,AES算法需要16个置换盒144进行支持。与ANOW3G算法相似地,AES算法中的字节置换可以理解为查表操作。具体地,在进行字节置换前,先根据明文的数据生成状态矩阵,再将状态矩阵中的元素按照预设规则映射为一个新的字节,然后把该字节的高4位作为行值,低4位作为列值,取出置换盒144或者逆置换盒144中对应的行的元素作为输出。示例性地,若输出的字节S1为0x12,则查置换盒144的第0x01行和0x02列,得到值0xc9,然后替换S1原有的0x12为0xc9。因此,AES算法的硬件结构中也需要多个置换盒144,以实现字节置换的操作。
在本实施例中,所述加解密模块100包括多个置换盒144,各所述置换盒144分别用于置换n个bit的数据,多个所述置换盒144用于分时支持所述SNOW3G加解密引擎111的加解密处理和所述AES加解密引擎112的加解密处理,所述n为正整数。示例性地,加解密模块100可以包括4个、8个、12个等数量的置换盒144。可以理解的是,由于AES算法中所用的置换盒144和SNOW3G算法所使用的置换盒144是相同的,所以,从电路实现角度考虑,可以复用同一套置换盒144来减小总体面积,从而实现体积更小的安全引擎模组10。
在其中一个实施例中,所述SNOW3G加解密引擎111和所述AES加解密引擎112共同包括四个所述置换盒144。根据实际情况,只用4套置换盒144,是较为理想的情况,即兼顾电路速度和面积。相应地,对于128bit的AES算法,需要将输出调整为4n bit,以适配于置换盒144的总数量。即,多个所述置换盒每周期共同用于对来自所述SNOW3G加解密引擎的4n bit的数据进行置换或用于对来自所述AES加解密引擎的4n bit的数据进行置换。示例性地,以每个置换盒用于置换8bit的数据为例,多个所述置换盒每周期可以共同用于对来自所述SNOW3G加解密引擎的32bit的数据进行置换,或用于对来自所述AES加解密引擎的32bit的数据进行置换。可以理解的是,以128bit的AES算法需要16个置换盒144,SNOW3G算法需要4个置换盒144为例,通过本实施例的使SNOW3G加解密引擎111和AES加解密引擎112共用4个置换盒144的方式,可以节省16套置换盒144,从而达到减小面积消耗的目的。
图13为一实施例的安全引擎装置的结构示意图,参考图13,在本实施例中,安全引擎装置包括如上述的安全引擎模组10和PCDP加速器20。PCDP加速器20分别与安全引擎模组10的输入存储器300和输出存储器500连接,所述PCDP加速器20用于传输包括多组待处理数据的原始数据至所述输入存储器300,还用于从所述输出存储器500获取加解密处理和/或完整性保护处理后的数据,所述安全引擎模组还用于从所述PCDP加速器分时接收各组所述待处理数据。在本实施例中,基于前述的安全引擎模组10,可以提供一种处理速度较快的安全引擎装置。
本申请实施例还提供了一种安全芯片,包括如前述的安全引擎模组10。在本实施例中,基于前述的安全引擎模组10,可以提供一种处理速度较快的安全芯片。
本申请实施例还提供了一种通信设备,包括如上述的安全引擎装置。在本实施例中,基于前述的安全引擎模组10,可以提供一种处理速度较快的通信设备。其中,本实施例的通信设备包括但不限于终端和基站,终端例如可以为手机、平板电脑、PDA(PersonalDigital Assistant,个人数字助理)、车载电脑、穿戴式设备等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请实施例的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请实施例构思的前提下,还可以做出若干变形和改进,这些都属于本申请实施例的保护范围。因此,本申请实施例专利的保护范围应以所附权利要求为准。

Claims (11)

1.一种安全引擎模组,其特征在于,包括:
加解密模块;
完整性保护模块;
输入存储器,分别与所述加解密模块、所述完整性保护模块连接,用于将获取到的待处理数据提供至第一处理模块,所述第一处理模块为所述加解密模块和所述完整性保护模块中的一个;
中间存储器,分别与所述加解密模块、所述完整性保护模块连接,用于获取并锁存所述第一处理模块处理后输出的数据,并将锁存的数据提供至第二处理模块,所述第二处理模块为所述加解密模块和所述完整性保护模块中的另一个;
输出存储器,分别与所述加解密模块、所述完整性保护模块连接,用于获取并锁存所述第二处理模块处理后输出的数据,并将锁存的数据输出。
2.根据权利要求1所述的安全引擎模组,其特征在于,所述加解密模块包括多个加解密引擎,各所述加解密引擎分别与所述输入存储器、所述中间存储器和所述输出存储器连接,各所述加解密引擎分别用于互相独立地对接收到的数据进行加解密处理;和/或
所述完整性保护模块包括多个完整性保护引擎,各所述完整性保护引擎分别与所述输入存储器、所述中间存储器和所述输出存储器连接,各所述完整性保护引擎分别用于互相独立地对接收到的数据进行完整性保护处理。
3.根据权利要求2所述的安全引擎模组,其特征在于,所述加解密模块中的各所述加解密引擎分别一一对应被配置有不同的加解密算法。
4.根据权利要求2或3所述的安全引擎模组,其特征在于,所述输入存储器包括多个第一子存储器,所述中间存储器包括多个第二子存储器,所述输出存储器包括多个第三子存储器,所述安全引擎模组还包括:
多个拆包电路,各所述拆包电路的输入端分别与一个所述第一子存储器、以及一个所述第二子存储器连接,且各所述拆包电路的输出端分别与各所述加解密引擎一一对应连接,以对从所述第一子存储器或所述第二子存储器获取的数据进行拆包处理,并传输至所述加解密引擎;
多个组包电路,各所述拆包电路的输入端分别与各所述加解密引擎一一对应连接,且各所述组包电路的输出端分别与一个所述第二子存储器、以及一个所述第三子存储器连接,以将组包处理后的数据传输至所述第二子存储器或所述第三子存储器。
5.根据权利要求2所述的安全引擎模组,其特征在于,多个所述加解密引擎至少包括SNOW3G加解密引擎和ZUC加解密引擎,所述加解密模块还包括控制电路和开关电路,所述控制电路分别与所述开关电路的第一端、控制端连接,所述开关电路的两个第二端分别与所述SNOW3G加解密引擎和所述ZUC加解密引擎连接;
所述控制电路用于控制所述开关电路导通第一端与任一第二端之间的通路,以将状态机控制信号传输至所述SNOW3G加解密引擎和所述ZUC加解密引擎中的一个。
6.根据权利要求2所述的安全引擎模组,其特征在于,所述加解密模块包括第一运算电路、第二运算电路和移位寄存器组,多个所述加解密引擎至少包括SNOW3G加解密引擎和ZUC加解密引擎,所述SNOW3G加解密引擎包括所述移位寄存器组和所述第一运算电路,所述ZUC加解密引擎包括所述移位寄存器组和所述第二运算电路;
其中,所述移位寄存器组包括串联连接的多个寄存器,所述第一运算电路和所述第二运算电路分别与所述移位寄存器组中的一个或多个寄存器连接。
7.根据权利要求2所述的安全引擎模组,其特征在于,多个所述加解密引擎至少包括SNOW3G加解密引擎和AES加解密引擎,所述加解密模块包括多个置换盒,各所述置换盒分别用于置换n个bit的数据,多个所述置换盒用于分时支持所述SNOW3G加解密引擎的加解密处理和所述AES加解密引擎的加解密处理,所述n为正整数。
8.根据权利要求7所述的安全引擎模组,其特征在于,所述SNOW3G加解密引擎和所述AES加解密引擎共同包括四个所述置换盒。
9.根据权利要求8所述的安全引擎模组,其特征在于,多个所述置换盒每周期共同用于对来自所述SNOW3G加解密引擎的4n bit的数据进行置换或用于对来自所述AES加解密引擎的4n bit的数据进行置换。
10.一种安全引擎装置,其特征在于,包括:
如权利要求1至9任一项所述的安全引擎模组;
PCDP加速器,分别与安全引擎模组的输入存储器和输出存储器连接,所述PCDP加速器用于传输包括多组待处理数据的原始数据至所述输入存储器,还用于从所述输出存储器获取加解密处理和/或完整性保护处理后的数据;
其中,所述安全引擎模组还用于从所述PCDP加速器分时接收各组所述待处理数据。
11.一种通信设备,其特征在于,包括如权利要求10所述的安全引擎装置。
CN202111043184.6A 2021-09-07 2021-09-07 安全引擎模组、安全引擎装置和通信设备 Active CN113872752B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111043184.6A CN113872752B (zh) 2021-09-07 2021-09-07 安全引擎模组、安全引擎装置和通信设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111043184.6A CN113872752B (zh) 2021-09-07 2021-09-07 安全引擎模组、安全引擎装置和通信设备

Publications (2)

Publication Number Publication Date
CN113872752A true CN113872752A (zh) 2021-12-31
CN113872752B CN113872752B (zh) 2023-10-13

Family

ID=78989878

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111043184.6A Active CN113872752B (zh) 2021-09-07 2021-09-07 安全引擎模组、安全引擎装置和通信设备

Country Status (1)

Country Link
CN (1) CN113872752B (zh)

Citations (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101082883A (zh) * 2006-05-31 2007-12-05 朴显泽 一种具有多层加密保护的存储装置
CN101194461A (zh) * 2005-06-07 2008-06-04 索尼爱立信移动通讯股份有限公司 用于证书翻转的方法及装置
CN101925121A (zh) * 2009-06-10 2010-12-22 中兴通讯股份有限公司 一种分组数据汇聚协议层重建的方法和装置
CN103368673A (zh) * 2013-07-17 2013-10-23 工业和信息化部电信传输研究所 基于ttcn-3的一致性测试适配器
WO2013169073A1 (en) * 2012-05-10 2013-11-14 Samsung Electronics Co., Ltd. Method and system for connectionless transmission during uplink and downlink of data packets
CN103777918A (zh) * 2012-10-18 2014-05-07 苏州简约纳电子有限公司 一种硬件加速器
CN104753662A (zh) * 2013-12-27 2015-07-01 重庆重邮信科通信技术有限公司 基于aes算法的加密密钥流产生方法
CN106062732A (zh) * 2015-02-06 2016-10-26 华为技术有限公司 数据处理系统、计算节点和数据处理的方法
US20180198605A1 (en) * 2015-08-27 2018-07-12 Huawei Technologies Co., Ltd. Key Distribution and Receiving Method, Key Management Center, First Network Element, and Second Network Element
CN108347410A (zh) * 2017-01-24 2018-07-31 华为技术有限公司 安全实现方法、设备以及系统
CN109150202A (zh) * 2018-06-28 2019-01-04 山东鲁能智能技术有限公司 电力系统集成式软件无线电安全通信系统
CN109413005A (zh) * 2017-08-17 2019-03-01 中兴通讯股份有限公司 数据流传输安全控制方法及装置
CN109586900A (zh) * 2017-09-29 2019-04-05 华为技术有限公司 数据安全处理方法及装置
CN109863769A (zh) * 2016-11-30 2019-06-07 华为技术有限公司 安全处理的方法和装置
CN110825672A (zh) * 2014-06-16 2020-02-21 德州仪器公司 用于联机加密处理的高性能自主硬件引擎
US20200084631A1 (en) * 2017-05-06 2020-03-12 Huawei Technologies Co., Ltd. Key Configuration Method, Apparatus, and System
CN110991619A (zh) * 2019-12-09 2020-04-10 Oppo广东移动通信有限公司 神经网络处理器、芯片和电子设备
CN112182624A (zh) * 2020-10-13 2021-01-05 Oppo广东移动通信有限公司 加密方法、加密装置、存储介质与电子设备
CN112214425A (zh) * 2020-08-24 2021-01-12 Oppo广东移动通信有限公司 数据发送方法、装置、计算机设备以及存储介质
CN112513856A (zh) * 2018-05-30 2021-03-16 北欧半导体公司 存储器高效的硬件加密引擎
CN112651054A (zh) * 2020-12-30 2021-04-13 海光信息技术股份有限公司 一种内存数据完整性保护方法、装置及电子设备
CN112771815A (zh) * 2020-03-31 2021-05-07 华为技术有限公司 密钥处理方法和装置
CN112838925A (zh) * 2020-06-03 2021-05-25 中兴通讯股份有限公司 数据传输方法、装置和系统、电子设备、存储介质
CN112887979A (zh) * 2019-11-14 2021-06-01 华为技术有限公司 一种网络接入方法及相关设备
CN112967172A (zh) * 2021-02-26 2021-06-15 成都商汤科技有限公司 一种数据处理装置、方法、计算机设备及存储介质
CN113343174A (zh) * 2020-03-03 2021-09-03 辉达公司 执行位线性变换的技术

Patent Citations (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101194461A (zh) * 2005-06-07 2008-06-04 索尼爱立信移动通讯股份有限公司 用于证书翻转的方法及装置
CN101082883A (zh) * 2006-05-31 2007-12-05 朴显泽 一种具有多层加密保护的存储装置
CN101925121A (zh) * 2009-06-10 2010-12-22 中兴通讯股份有限公司 一种分组数据汇聚协议层重建的方法和装置
WO2013169073A1 (en) * 2012-05-10 2013-11-14 Samsung Electronics Co., Ltd. Method and system for connectionless transmission during uplink and downlink of data packets
CN103777918A (zh) * 2012-10-18 2014-05-07 苏州简约纳电子有限公司 一种硬件加速器
CN103368673A (zh) * 2013-07-17 2013-10-23 工业和信息化部电信传输研究所 基于ttcn-3的一致性测试适配器
CN104753662A (zh) * 2013-12-27 2015-07-01 重庆重邮信科通信技术有限公司 基于aes算法的加密密钥流产生方法
CN110825672A (zh) * 2014-06-16 2020-02-21 德州仪器公司 用于联机加密处理的高性能自主硬件引擎
CN106062732A (zh) * 2015-02-06 2016-10-26 华为技术有限公司 数据处理系统、计算节点和数据处理的方法
US20180198605A1 (en) * 2015-08-27 2018-07-12 Huawei Technologies Co., Ltd. Key Distribution and Receiving Method, Key Management Center, First Network Element, and Second Network Element
CN109863769A (zh) * 2016-11-30 2019-06-07 华为技术有限公司 安全处理的方法和装置
CN108347410A (zh) * 2017-01-24 2018-07-31 华为技术有限公司 安全实现方法、设备以及系统
US20200084631A1 (en) * 2017-05-06 2020-03-12 Huawei Technologies Co., Ltd. Key Configuration Method, Apparatus, and System
CN109413005A (zh) * 2017-08-17 2019-03-01 中兴通讯股份有限公司 数据流传输安全控制方法及装置
CN109586900A (zh) * 2017-09-29 2019-04-05 华为技术有限公司 数据安全处理方法及装置
CN112513856A (zh) * 2018-05-30 2021-03-16 北欧半导体公司 存储器高效的硬件加密引擎
CN109150202A (zh) * 2018-06-28 2019-01-04 山东鲁能智能技术有限公司 电力系统集成式软件无线电安全通信系统
CN112887979A (zh) * 2019-11-14 2021-06-01 华为技术有限公司 一种网络接入方法及相关设备
CN110991619A (zh) * 2019-12-09 2020-04-10 Oppo广东移动通信有限公司 神经网络处理器、芯片和电子设备
CN113343174A (zh) * 2020-03-03 2021-09-03 辉达公司 执行位线性变换的技术
CN112771815A (zh) * 2020-03-31 2021-05-07 华为技术有限公司 密钥处理方法和装置
CN112838925A (zh) * 2020-06-03 2021-05-25 中兴通讯股份有限公司 数据传输方法、装置和系统、电子设备、存储介质
CN112214425A (zh) * 2020-08-24 2021-01-12 Oppo广东移动通信有限公司 数据发送方法、装置、计算机设备以及存储介质
CN112182624A (zh) * 2020-10-13 2021-01-05 Oppo广东移动通信有限公司 加密方法、加密装置、存储介质与电子设备
CN112651054A (zh) * 2020-12-30 2021-04-13 海光信息技术股份有限公司 一种内存数据完整性保护方法、装置及电子设备
CN112967172A (zh) * 2021-02-26 2021-06-15 成都商汤科技有限公司 一种数据处理装置、方法、计算机设备及存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
3GPP: ""33401-cc0"", 《3GPP TSG_SA\WG3_SECURITY》 *
3GPP: ""33401-cc0"", 《3GPP TSG_SA\WG3_SECURITY》, 23 September 2014 (2014-09-23) *
邓亚平等: "3GPP LTE/SAE安全机制及其在协议栈中的实现", 《电讯技术》 *
邓亚平等: "3GPP LTE/SAE安全机制及其在协议栈中的实现", 《电讯技术》, no. 09, 28 September 2009 (2009-09-28) *

Also Published As

Publication number Publication date
CN113872752B (zh) 2023-10-13

Similar Documents

Publication Publication Date Title
US8983063B1 (en) Method and system for high throughput blockwise independent encryption/decryption
KR100449594B1 (ko) 보조 변환을 이용한 블럭 암호 장치
US8452006B2 (en) Cryptographic processing using a processor
US7907723B2 (en) Device, system and method for fast secure message encryption without key distribution
US7912213B2 (en) Device, system and method for fast secure message encryption without key distribution
US7653196B2 (en) Apparatus and method for performing RC4 ciphering
CN100382485C (zh) 设计最优加密函数的方法和优化的加密设备
US8122075B2 (en) Pseudorandom number generator and encryption device using the same
US9418245B2 (en) Encryption processing device, encryption processing method, and program
CN108183790B (zh) 一种aes加密装置、芯片及系统
CN114844728A (zh) 序列化数据安全通信方法及大数据平台
CN104219045A (zh) Rc4 流密码生成器
CA3135046C (en) Enhanced randomness for digital systems
Rais et al. Efficient hardware realization of advanced encryption standard algorithm using Virtex-5 FPGA
CN113872752B (zh) 安全引擎模组、安全引擎装置和通信设备
CN108494547B (zh) 一种aes加密系统及芯片
JP2000209195A (ja) 暗号通信システム
Rais et al. A novel FPGA implementation of AES-128 using reduced residue of prime numbers based S-Box
JP4395527B2 (ja) 情報処理装置
EP4248433A1 (en) High-speed circuit combining aes and sm4 encryption and decryption
RU2503135C1 (ru) Способ криптографического преобразования информации и устройство для его реализации
CA2391997C (en) Methods and apparatus for keystream generation
US7583800B2 (en) Encryption apparatus and method in a wireless communications system
KR100494560B1 (ko) Rijndael암호를 이용한 블록 데이터 실시간암호복호화 장치 및 방법

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