CN104995866A - 使用利用无进位乘法计算的通用哈希函数的消息认证 - Google Patents

使用利用无进位乘法计算的通用哈希函数的消息认证 Download PDF

Info

Publication number
CN104995866A
CN104995866A CN201480009254.8A CN201480009254A CN104995866A CN 104995866 A CN104995866 A CN 104995866A CN 201480009254 A CN201480009254 A CN 201480009254A CN 104995866 A CN104995866 A CN 104995866A
Authority
CN
China
Prior art keywords
message
bit words
bit
calculate
authentication code
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
CN201480009254.8A
Other languages
English (en)
Other versions
CN104995866B (zh
Inventor
B·B·布伦利
A·W·登特
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN104995866A publication Critical patent/CN104995866A/zh
Application granted granted Critical
Publication of CN104995866B publication Critical patent/CN104995866B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/106Packet or message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

描述了一种用于通过无线设备认证消息的方法。所述无线设备获得输入消息。所述无线设备生成密钥流。无线设备使用该密钥流和通用哈希函数计算消息认证码。使用无进位乘法来计算通用哈希函数。

Description

使用利用无进位乘法计算的通用哈希函数的消息认证
技术领域
概括地说,本公开内容涉及无线通信系统。具体地说,本公开内容涉及用于使用利用无进位乘法的通用哈希函数的消息认证的系统和方法。
背景技术
为了提供诸如话音、视频和数据之类的各种通信内容,广泛部署了无线通信系统。这些系统可以是能够支持多个移动设备与一个或多个基站同时通信的多址系统。
为了向无线通信提供额外的安全性,可使用加密技术。加密是为了防止窃听者或黑客读取消息和/或改变消息而对消息进行编码的过程。只有被授权方可使用解密算法来解码经加密的消息。即使有了加密/解密技术,可能需要其它技术来保护消息的完整性和真实性。通过用于认证经加密的消息的改进的方法可实现有益效果。
附图说明
图1示出了具有多个无线设备的无线通信系统;
图2是示出了在发送无线设备和接收无线设备之间的认证过程的框图;
图3是向发送消息提供认证的方法的流程图;
图4是用于认证所接收的消息的方法的流程图;
图5是示出在本系统和方法中使用的128-EIA3模块的框图;
图6是用于使用输入消息(M)计算消息认证码(MAC)的方法的流程图;
图7是示出使用无进位乘法来计算消息认证码(MAC)的框图;
图8示出了在无线通信设备内可包括的某些部件;
图9示出了在基站内可包括的某些部件。
具体实施方式
消息认证可用于无线通信以为无线发送的消息提供完整性和真实性的保证。该消息认证可包括使用通用哈希函数来生成消息认证码(MAC)。通用哈希函数充当(密钥流中的)密钥以认证输入消息。然而,这样的认证可能要求极大数量的机器指令。通过使用无进位乘法来计算通用哈希函数,可极大减少所需的机器指令的数量,从而实现更有效率的工作。继而这可以改善完整性算法的吞吐量。此外,可以以独立于消息比特值的挂钟时间执行使用无进位乘法计算通用哈希函数。
在以下描述中,出于简要和清楚的目的,按照国际电信联盟(ITU)在第三代合作伙伴计划(3GPP)所发布的,使用与LTE标准相关的术语。应注意的是本发明还可应用于其它技术,诸如与码分多址(CDMA)、时分多址(TDMA)、频分多址(FDMA)、正交频分多址(OFDMA)之类相关的技术以及相关标准。与不同技术相关的术语可以不同。例如,根据所考虑的技术,无线设备有时可以被称为用户设备、移动台、移动终端、订户单元、接入终端等,这里仅举出几例。同样,基站可有时被称为接入点、NodeB、演进型NodeB等。这里应注意的是不同的术语在适用时可应用于不同技术。
图1示出了具有多个无线设备的无线通信系统100。为了提供诸如声音、数据等等之类的各种通信内容,广泛地部署无线通信系统100。无线设备可以是基站102或无线通信设备104。基站102和无线通信设备104两者都可以被配置为认证经加密的消息(例如为了向所发送的消息提供认证并获得所接收的消息的认证)。在认证期间,可使用无进位乘法来计算通用哈希函数。下面关于图5和图6更详细地讨论使用无进位乘法来计算通用哈希函数。
基站102是与一个或多个无线通信设备104通信的站。基站102还可以被称为接入点、广播发射器、NodeB、演进型NodeB等,并可包括接入点、广播发射器、NodeB、演进型NodeB等的部分或所有的功能。本文中将使用术语“基站”。每个基站102为特定的地理区域提供通信覆盖。基站102可以为一个或多个无线通信设备104提供通信覆盖。根据术语所用的上下文,术语“小区”可指的是基站102和/或其覆盖区域。
可通过无线链路上的传输来实现无线系统中的通信(例如,多址系统)。可经由单输入单输出(SISO)系统、多输入单输出(MISO)系统或多输入多输出(MIMO)系统建立这样的通信链路。MIMO系统包括分别配备有用于数据传输的多个(NT个)发射天线和多个(NR个)接收天线的发射器和接收器。SISO和MISO系统是MIMO系统的特定实例。如果使用由多个发射和接收天线形成的额外维度,MIMO系统可提供改善的性能(例如,更高的吞吐、更大的容量或改善的可靠性)。
无线通信系统100可使用MIMO。MIMO系统可支持时分双工(TDD)系统和频分双工(FDD)系统两者。在TDD系统中,上行链路和下行链路传输位于相同的频率区域以使得互易原理能够实现从上行链路信道估计下行链路信道。这使得发射无线设备能够从发射无线设备所接收的通信中提取发射波束成形增益。
无线通信系统100可以是多址系统,该多址系统通过共享可用系统资源(例如带宽和发射功率)能够支持与多个无线通信设备104的通信。该多址系统的例子包括码分多址(CDMA)系统、宽带码分多址(W-CDMA)系统、时分多址(TDMA)系统、频分多址(FDMA)系统、正交频分多址(OFDMA)系统、单载波频分多址(SC-FDMA)系统、第三代合作伙伴计划(3GPP)长期演进(LTE)系统和空分多址(SDMA)系统。
术语“系统”和“网络”通常互换使用。CDMA网络可以实现无线技术,例如,通用地面无线接入(UTRA)、cdma2000等。UTRA包括W-CDMA和低码片速率(LCR),而cdma2000涵盖IS-2000、IS-95和IS-856标准。TDMA网络可以实现无线技术,例如,用于移动通信的全球系统(GSM)。OFDMA网络可实现诸如演进型UTRA(E-UTRA)、IEEE 802.11、IEEE802.16、IEEE 802.20、Flash-OFDMA等等之类的无线技术。UTRA、E-UTRA和GSM是全球移动电信系统(UMTS)的一部分。长期演进(LTE)是使用E-UTRA的UMTS版本。在来自名为“第三代合作伙伴计划”(3GPP)的组织的文档中描述了UTRA、E-UTRA、GSM、UMTS和长期演进(LTE)。在来自名为“第三代合作伙伴计划2”(3GPP2)的组织的文档中描述了cdma2000。
第三代合作伙伴计划(3GPP)是电信协会团体之间的合作,其目标是规定全球可应用的第三代(3G)移动电话规范。3GPP长期演进(LTE)是致力于改善通用移动电信系统(UMTS)移动电话标准的3GPP计划。3GPP可规定下一代移动网络、移动系统和移动设备的规范。
在3GPP长期演进(LTE)中,无线通信设备104可被称为“用户设备”(UE)。无线通信设备104还可以被称为终端、接入终端、订户单元、站等,并可包括终端、接入终端、订户单元、站等的部分或所有的功能。无线通信设备104可以是蜂窝式电话、个人数字助理(PDA)、无线设备、无线调制解调器、手持设备、膝上电脑等。
无线通信设备104可在任何给定的时间在下行链路106和/或上行链路108上与零个、一个或多个基站102进行通信。下行链路106(或前向链路)指的是从基站102到无线通信设备104的通信链路,上行链路108(或反向链路)指的是从无线通信设备104到基站102的通信链路。
无线通信设备104和基站102两者均包括加密/解密模块110a至110b。加密/解密模块110可实现在无线通信设备104和基站102之间无线发送的消息的加密和解密。例如,加密/解密模块110a可使得无线通信设备104加密消息。之后,可经由上行链路108向基站102发送该已加密的消息。基站102可使用加密/解密模块110b来解密该消息。
当使用已加密的消息时,可使用认证过程来认证消息并检测伪造(forgery)。认证过程可包括在传输之前将认证插入消息中和改变所接收的消息中的认证。加密/解密模块110可包括128-EIA3模块112a至112b。128-EIA3模块112可使用无进位乘法对已加密的消息执行认证过程(例如,在传输之前插入认证和获得所接收的消息的认证)。因此,128-EIA3模块112可使用通用哈希函数用于完整性算法,该通用哈希函数使用无进位乘法函数139a至139b。在下面关于图5和图6更详细地讨论无进位乘法函数139。
在LTE系统的安全构架内,存在用于保密性和完整性的标准化算法。(在3GPP保密性和完整性算法;文档1:f8和f9规范;(3GPP TS35.201版本6)和3GPP系统构架演进(SAE);安全性构架;(3GPP TS33.401版本9)中)已规定了两个算法集(128-EEA1/128-EIA1和128-EEA2/128-EIA2)。128-EIA3基于流密码(ZUC)应用用于完整性的第三种算法(即,认证)。128-EIA3算法可使用完整性密钥(IK)来计算给定输入消息的32比特消息认证码(MAC)。由消息认证码(MAC)所采用的核心算法是通用哈希和流密码(ZUC)。128-EIA3算法从而在软件中计算消息认证码(MAC),其中每个消息比特需要一个32比特的异或(XOR)指令。
图2示出了发送无线设备214a和接收无线设备214b之间的认证过程的流程图。发送无线设备214a既可以是无线通信设备104也可以是基站102。接收无线设备214b既可以是无线通信设备104也可以是基站102。在发送无线设备214a和接收无线设备214b两者中的认证过程可使用128-EIA3算法。
发送无线设备214a可获得发送消息218(即,通过生成发送消息218)。在一个配置中,发送无线设备214a上的处理器可生成发送消息218。发送消息218可被提供至128-EIA3模块212a。128-EIA3模块212a可包括无进位乘法函数239a(在下面关于图5和图7讨论)。通过使用发送消息218,128-EIA3模块212a可输出发送消息认证码(MAC)220a。可向发射器222提供发送消息218和发送消息认证码(MAC)220a二者。发射器222可组合发送消息218和发送消息认证码(MAC)220a以获得消息224。之后,发射器222可发送该消息224(连同发送消息认证码(MAC)220b一起)。
接收无线设备214b可获得消息224(例如,通过使用接收器228接收消息224)。在一种配置中,接收无线设备214b可使用天线获得消息224。接收器228可从消息224中提取发送消息认证码(MAC)220c。接收器228可向认证模块226提供发送消息认证码(MAC)220c。接收器228还可向128-EIA3模块212b提供接收消息230。128-EIA3模块212b可使用接收消息230来计算接收消息认证码(MAC)220d。128-EIA3模块212b可包括无进位乘法函数239b(下面关于图5和图7进行讨论)。128-EIA3模块212b可向认证模块226提供该接收消息认证码(MAC)220d。之后,认证模块226可对比发送消息认证码(MAC)220c与接收消息认证码(MAC)220d以确定所接收的消息224是否是可信的。
消息认证码(MAC)算法(诸如128-EIA3算法)还可被称为带密钥式(密码式)哈希函数。消息认证码(MAC)算法可接受密钥和待认证的任意长度的消息(例如,发送消息218或接收消息230)作为输入,并输出消息认证码(MAC)220标签。使用消息认证码(MAC)算法可保护消息224的数据完整性和真实性两者,因为接收无线设备214b可检测对消息内容的任何改变(诸如,伪造)。
图3是用于向发送消息218提供认证的方法300的流程图。可通过发送无线设备214a(诸如基站102或无线通信设备104)执行该方法300。发送无线设备214a可生成302发送消息218。发送无线设备214a可将128-EIA3算法应用304至发送消息218以获得发送消息认证码(MAC)220a。发送无线设备214a可在单个消息224中将发送消息218和发送消息认证码(MAC)220a发送306至接收无线设备214b。
图4是用于认证接收消息224的方法400的流程图。可由接收无线设备214b(诸如基站102或无线通信设备104)执行该方法400。接收无线设备214b可接收402包括发送消息认证码(MAC)220b的消息224。接收无线设备214b可从接收消息224中提取404发送消息认证码(MAC)220c。接收无线设备214b可将128-EIA3算法应用406至接收消息230以获得接收消息认证码(MAC)220d。接收无线设备214b可对比408接收消息认证码(MAC)220d与发送消息认证码(MAC)220c以确定消息224的认证。例如,如果接收消息认证码(MAC)220d与发送消息认证码(MAC)220c相同,则消息224被认为是可信的。作为又一个例子,如果接收消息认证码(MAC)220d与发送消息认证码(MAC)220c不同,则消息224可被认为是不可信的。
图5是示出在本系统和方法中使用的128-EIA3模块512的框图。图5的128-EIA3模块512可以是图1的128-EIA3模块112a至112b的一个配置。128-EIA3模块512可接收输入消息(M)532并输出消息认证码(MAC)520,使用输入消息(M)532、密钥流552和使用无进位乘法函数539的通用哈希函数H 535计算该消息认证码(MAC)520。可使用流密码(ZUC)544计算该密钥流552。128-EIA3模块512因此可以对输入消息(M)532应用128-EIA3算法以获得消息认证码(MAC)520(并由此提供/获得对输入消息(M)532的认证)。
128-EIA3模块512可包括32比特的计数器COUNT 534。128-EIA3模块512还可包括5比特的承载标识BEARER 536。128-EIA3模块512还可包括1比特的传输方向DIRECTION 538。128-EIA3模块512还可包括128比特的完整性密钥(IK)540。输入消息(M)532的LENGTH 542可以是32比特(即,32比特的LENGTH 542可使用32比特来指示输入消息(M)532的长度)。例如,LENGTH 542指示输入消息(M)532的比特数(在1与65504比特之间)。由128-EIA3模块512输出的消息认证码(MAC)520可以是32比特的。
128-EIA3模块512可包括通用哈希函数H 535。通用哈希函数H 535指的是128-EIA3算法中的将大数据集(即,输入消息(M)532)映射至较小的固定长度的数据集(即,密钥流552)的子例程。可使用无进位乘法函数539计算通用哈希函数H 535。无进位乘法函数539的使用可使得128-EIA3模块能够更有效地计算通用哈希函数H 535。
128-EIA3模块512还可包括面向字的流密码(ZUC)544。流密码(ZUC)544可采用128比特的初始密钥(KEY)546和128比特的初始矢量(IV)548作为输入,并输出32比特字的密钥流z[i]552(其中,每32比特字被称为一个密钥字)。通过流密码(ZUC)544生成的密钥字的数量可通过变量L 550限定。密钥流552可用于加密/解密。下面关于图6和图7更详细地讨论使用输入消息(M)532来计算消息认证码(MAC)520。
图6是用于使用输入消息(M)532来计算消息认证码(MAC)520的方法600的流程图。方法600可由诸如基站102或无线通信设备104这样的无线设备214上的128-EIA3模块512执行。
无线设备214可在生成密钥流552之前利用完整性密钥(IK)540和初始化变量来初始化602初始密钥(KEY)546以及初始化604初始矢量(IV)548。当变量被分为多个子字符串(如在以下等式中所使用的)时,最左边的子字符串是[0],下个最高有效子字符串是[1],以此类推,直到最低有效子字符串。下标2(例如,0002)用于指示是以二进制表示的数。符号a||b用于指示子字符串a和b的级联(concatenation)。符号[x]指的是不少于x的最小的整数。
可使用等式(1)来限定128比特的完整性密钥(IK)540:
IK=IK[0]||IK[1]||IK[2]||...||IK[15].   (1)
在等式(1)中,IK[i](0≤i≤15)是字节。可使用等式(2)设置流密码(ZUC)544的128比特的初始密钥(KEY)546:
KEY=KEY[0]||KEY[1]||KEY[2]||...||KEY[15].   (2)
在等式(2)中,KEY[i](0≤i≤15)是字节。因此,可使用等式(3)初始化602初始密钥(KEY)546。
KEY[i]=IK[i],i=0,1,2,...,15.   (3)
在等式(3)中,初始密钥(KEY)546的每个子字符串被设为等于完整性密钥(IK)540的每个对应的子字符串。可使用等式(4)限定32比特的计数器COUNT 534:
COUNT=COUNT[0]||COUNT[1]||COUNT[2]||COUNT[3].   (4)
在等式(4),COUNT[i],i=0,1,2,3是字节。可使用等式(5)限定128比特的初始矢量(IV)548。
IV=IV[0]||IV[1]||IV[2]||...||IV[15].   (5)
在等式(5)中,IV[i](0≤i≤15)是字节。之后,可使用等式(6)初始化604初始矢量(IV)548:
IV[0]=COUNT[0],IV[1]=COUNT[1],
IV[2]=COUNT[2],IV[3]=COUNT[3],
IV[4]=BEARER||0002,IV[5]=000000002,
IV[6]=000000002,IV[7]=000000002,
IV[8]=IV[0]⊕(DIRECTION<<7),IV[9]=IV[1],.   (6)
IV[10]=IV[2],IV[11]=IV[3],
IV[12]=IV[4],IV[13]=IV[5],
IV[14]=IV[6]⊕(DIRECTION<<7),IV[15]=IV[7]
在等式(6)中,⊕指的是异或运算,a<<t指的是将整数a左移t比特。因此,DIRECTION<<7指的是将DIRECTION 538向左移位7比特。
之后,无线设备214可生成606密钥流552。在一种配置中,密钥流552可以由无线设备214上的处理器生成。在另一种配置中,密钥流552可以使用无线设备214上的存储器来生成。流密码(ZUC)544可生成具有L个550密钥字的密钥流552,其中,个字。密钥流552可通过z[0],z[1],…,z[32×(L-1)]标示,其中,z[0]是流密码(ZUC)544的第一输出字的最高有效比特,z[31]是最低有效比特。对于每一个i=0,1,2,...,32×(L-1),可应用等式(7):
zi=z[i]||z[i+1]||...||z[i+31].   (7)
因此,密钥流552的每个zi是32比特字。之后,无线设备214可在计算消息认证码(MAC)520之前计算608通用哈希函数。T可被限定为32比特字。T初始可以被设为等于0。对于每个i=0,1,2,…,LENGTH-1,如果M[i]=1,则应用等式(8):
T=T⊕zi.   (8)
等式(8)可被称为通用哈希函数H。然而,等式(8)是冗长的(因为必须对输入消息(M)532中的每个单个比特进行通用哈希函数H的计算)。替代地,无进位乘法可用于每次处理输入消息(M)532的32比特以高效地计算608通用哈希函数H。
在无进位乘法中,多项式相乘。一个无进位乘法迭代可替代等式8的32次的迭代。无进位乘法CLMUL(F,G)采用32比特字F和32比特字G作为输入并输出64比特字E,其中,采用F和G的比特作为GF(2)[x]中的多项式的(最大程度为31的)系数,并且其中E是GF(2)[x]中的(最大程度为62的)所得的多项式乘积。这个概念被应用到针对任何给定字长wlog的所有无进位乘法函数。出于简单起见,假定字长wlog是可被32除尽的整数。
为了使用无进位乘法来计算通用哈希函数H,32比特字T可首先被设为0。输入消息(M)532的32比特字(Mi...Mj,其中j=i+31)可根据等式(9)而被反转:
r0=Mj...Mi.   (9)
可使用等式(10)得到第一64比特字E:
E=CLMUL(r0,Z_i...Z_j).   (10)
在等式(10)中,Z_i...Z_j指的是密钥流552的比特,CLMUL指的是无进位乘法函数,该函数越来越多地出现在现代处理器商品中。可使用等式(11)得到第二64比特字F:
F=CLMUL(r0,Z_k...Z_l).   (11)
在等式(11)中,k=j+1和l=k+31(因此,32比特字Z_k...Z_l紧接在32比特字Z_i...Z_j后)。变量m可被设为E的最低的32比特字。变量n可被设为F的最高的32比特字。之后可执行等式(12):
r1=m⊕n.   (12)
之后,使用等式(13)计算608通用哈希函数:
T=T⊕r1.   (13)
之后,根据等式(14)计算610输出消息认证码(MAC)520。
MAC=T⊕z32(L-1).   (14)
消息的每32比特的机器指令成本可以是固定的。在128-EIA3规范的现有方法中,每个消息比特需要至少一条指令(即,条件XOR)。因此,每32个消息比特需要32条指令。使用无进位乘法来计算608哈希函数对于每32个消息比特需要5条指令:一条字的比特反转指令、两条无进位乘法指令和两条XOR指令。使用无进位乘法来计算608通用哈希函数极大地减少了对哈希函数H求值所需要的机器指令的数量。这提高了LTE整体性算法128-EIA3的吞吐量。此外,使用无进位乘法来计算608通用哈希函数是以挂钟时间执行的,该挂钟时间独立于消息比特值(现有的解决方案对消息比特值具有依赖性,因为仅当消息比特=1时,才应用等式(8))。因此,使用无进位乘法来计算608通用哈希函数可提供额外的保护以防大量的边信道攻击(诸如时序和功耗分析攻击),从而提高系统的物理安全。无进位乘法的挂钟执行时间可独立于运算对象的汉明权重,从而增加边信道安全性。
图7是示出使用无进位乘法来计算消息认证码(MAC)220的框图。在一种配置中,可使用无线设备214上的处理器和/或存储器计算消息认证码(MAC)220。接收输入消息(M)732的32比特字Mi...Mi+31。如在等式(9)中所描述的,输入消息(M)732的比特可被反转754以形成Mi+32...Mi。可通过将输入消息(M)732的字映射至其多项式环中的表征来反转输入消息(M)732中的比特。
之后,经反转的消息比特Mi+32...Mi可被提供至第一无进位乘法级752a和第二无进位乘法级752b。每个无进位乘法级752可以是无进位乘法函数739a至739b。如以上在等式(10)中所描述的,密钥流752a的32个比特Zi...Zi+31被提供至第一无进位乘法级752a以形成第一64比特字E。同样,密钥流752b的32个比特Zi+32...Zi+63被提供至第二无进位乘法级752b以形成第二64比特字F(如上面等式(11)描述的)。
第一64比特字E可被分为最高32比特字和最低32比特字。同样,第二64比特字F可被分为最高32比特字和最低32比特字。可通过变量m来标示第一64比特字E的最低32比特字。可通过变量n来标示第二64比特字F的最高32比特字。之后,可在m和n之间进行异或(XOR)756,如上面等式(12)所述。之后,根据上面的等式(13)计算通用哈希函数T 735。
图8示出了用于执行上述方案或过程的无线通信设备804的硬件实现方式的一部分。无线通信设备804包括下述的电路。在本说明书和所附权利要求书中,应清楚的是术语“电路”被解释为结构性术语,而不是功能性术语。例如,电路可以是以处理和/或内存元件、单元、块等(诸如图8中所示出和描述)形式的电路部件的集合,诸如大量的集成电路部件。
无线通信设备804包括将多个电路链接在一起的中央数据总线883。电路包括CPU(中央处理单元)或控制器885、接收电路881、发送电路873和存储器单元879。
接收电路881和发送电路873可被连接至RF(射频)电路(未在图中示出)。接收电路881在向数据总线883发出信号之前,处理并缓冲所接收到的信号。另一方面,发送电路873在将数据发送出无线通信设备804之前,处理并缓冲来自数据总线883的数据。CPU/控制器885执行数据总线883的数据管理的功能以及还执行包括执行存储器单元879中的指令内容在内的通用数据处理的功能。
存储器单元879包括通常由参考数字875表示的模块和/或指令集。在该实施例中,除了其它方面,模块/指令包括执行上述方案和过程的使用无进位乘法的通用哈希函数877。该函数877包括用于执行图1至图6所示和所述过程步骤的计算机指令或代码。在该函数877中可选择性地实现特定于某实体的专用指令。
在本实施例中,存储器单元879是RAM(随机访问存储器)电路。诸如函数877的示例性函数包括一个或多个软件例程、模块和/或数据集。存储器单元879可与另一存储器电路(未示出)捆绑在一起,该另一存储器电路既可以是易失性的,也可以是非易失性的。作为一种替换,存储器单元879可以由其它电路类型制成,诸如EEPROM(电可擦除式可编程只读存储器)、EPROM(电可编程只读存储器)、ROM(只读存储器)、ASIC(专用集成电路)、磁盘、光盘、和本领域公知的其它类型。
图9示出了用于执行上述方案或过程的基站902的硬件实现方式的一部分。基站902包括下述电路。在本说明书和所附权利要求书中,应清楚的是术语“电路”被解释为结构性术语,而不是功能性术语。例如,电路可以是以处理和/或存储器元件、单元、块等(诸如图9中所示出和描述)形式的电路部件的集合,诸如大量的集成电路部件。
基站902包括将多个电路链接在一起的中央数据总线983。该电路包括CPU(中央处理单元)或控制器985、接收电路981、发送电路973和存储器单元979。
接收电路981和发送电路973可被连接至RF(射频)电路(未在图中示出)。接收电路981在向数据总线983发出信号之前,处理并缓冲所接收到的信号。另一方面,发送电路973在将数据发出无线通信设备904之前,处理并缓冲来自数据总线983的数据。CPU/控制器985执行数据总线983的数据管理的功能以及还执行包括执行存储器单元979中的指令内容在内的通用数据处理的功能。
存储器单元979包括通常由参考数字975表示的模块和/或指令集。在该实施例中,除了其它方面,模块/指令包括执行上述方案和过程的使用无进位乘法的通用哈希函数977。该函数977包括用于执行图1至图6所示和所述的过程步骤的计算机指令或代码。在该函数977中可选择性地实施特定于实体的专用指令。
在本实施例中,存储器单元979是RAM(随机访问存储器)电路。诸如函数977的示例性功能包括一个或多个软件例程、模块和/或数据集。存储器单元979可与另一存储器电路(未示出)捆绑在一起,该另一存储器电路既可以是易失性的,也可以是非易失性的。作为一种替换,存储器单元979可以由其它电路类型制成,诸如EEPROM(电可擦除式可编程只读存储器)、EPROM(电可编程只读存储器)、ROM(只读存储器)、ASIC(专用集成电路)、磁盘、光盘、和本领域公知的其它类型。
术语“确定”包括广泛种类的动作,因此,“确定”可包括计算、电脑运算、处理、推出、调查、查找(例如,在表格、数据库或其它数据结构中查找)、确知等等。此外,“确定”可包括接收(例如,接收信息)、访问(例如,访问内存中的数据)等等。而且,“确定”可包括分辨、选择、选定、建立等等。
措辞“基于”并不意味着“仅仅基于”,除非用其它方式清楚地特别说明。换句话说,措辞“基于”描述的是“仅基于”和“至少基于”两者。
除非清楚地使用“单元”陈述权利要求元素,或在方法权利要求的情况中,使用措辞“步骤”陈述权利要求元素,否则权利要求元素将不依照35U.S.C.§112的第6节的规定而被解释。
在该说明书和所附权利要求书中,应清楚的是术语“电路”被解释为结构性术语,而不是功能性术语。例如,电路可以是以处理和/或存储器元件、单元、块等(诸如图8和图9中所示出和描述)形式的电路部件的集合群,诸如大量的集成电路部件。
术语“处理器”应被宽泛地解读为包括通用处理器、中央处理单元(CPU)、微处理器、数字信号处理器(DSP)、控制器、微控制器、状态机等等。在某些情况下,“处理器”可指的是专用集成电路(ASIC)、可编程逻辑设备(PLD)、现场可编程门阵列(FPGA)等。术语“处理器”可指的是处理设备的组合,例如,DSP和微处理器的组合、多个微处理器、结合DSP内核的一个或多个微处理器或任何其它这样的配置。
术语“存储器”应被宽泛地解读为包括能够存储电子信息的电子部件。术语存储器可指的是多种类型的处理器可读介质,诸如,随机访问存储器(RAM)、只读存储器(ROM)、非易失型随机访问存储器(NVRAM)、可编程只读存储器(PROM)、可擦除式可编程只读存储器(EPROM)、电可擦除PROM(EEPROM)、闪存、磁或光学数据存储设备、寄存器等。如果处理器可从存储器读信息和/或向存储器写信息,则存储器被认为是与处理器电子通信。整合到处理器的存储器与该处理器进行电子通信。
术语“指令”和“代码”应被宽泛地解读为包括任何类型的计算机可读语句。例如,术语“指令”和“代码”可以指的是一个或多个程序、例程、子例程、函数、规程等。“指令”和“代码”可包括单个计算机可读语句或多个计算机可读语句。
可以以由硬件执行的软件或固件的方式实施本文描述的功能。所述功能可被存储为计算机可读介质上的一个或多个指令。术语“计算机可读介质”或“计算机程序产品”指的是可由计算机或处理器访问的任何有形的存储介质。通过示例的方式而不是限制的方式,计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储介质或其它磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机访问的任何其它介质。如本申请所使用的,磁盘(disk)和光盘(disc)包括压缩光盘(CD)、激光光盘、光盘、数字通用光盘(DVD)、软盘和光盘,其中磁盘通常磁性地复制数据,而光盘则用激光来光学地复制数据。应注意的是计算机可读介质可以是有形的和非临时的。术语“计算机程序产品”指的是结合可由计算设备或处理器执行、处理或计算的代码或指令(例如,“程序”)的计算设备或处理器。如本文所使用的,术语“代码”可以指的是由计算设备或处理器执行的软件、指令、代码或数据。
还可以通过传输介质传输软件或指令。例如,如果使用同轴电缆、光纤、双绞线、数字订户线路(DSL)或诸如红外线、无线电和微波的无线技术从网站、服务器或其它远程源传输软件,则传输介质的定义包括同轴电缆、光纤、双绞线、DSL或诸如红外线、无线电和微波的无线技术。
本文所公开的方法包括用于实现所述方法的一个或多个步骤或动作。在不背离权利要求范围的前提下,方法步骤和/或动作可彼此互换。换句话说,除非对于被描述的方法的适当操作需要具体顺序的步骤或动作,否则可在不背离权利要求的范围的前提下修改具体步骤和/或动作的顺序和/或使用。
此外,应理解的是诸如图3、图4和图6所示的用于进行本文所述方法和技术的模块和/或其它适当的单元可由设备下载和/或以其它方式获得。例如,设备可耦接至服务器以促进用于进行本文所述方法的单元的传输。可选地,可经由存储单元(例如,随机访问存储器(RAM)、只读存储器(ROM)、诸如压缩光盘(CD)或软盘这样的物理存储介质等等)提供本文所述的各种方法,以使得在将存储单元耦接至或提供给设备时该设备可获得所述各种方法。此外,可以使用用于向设备提供本文所述方法和技术的任何其它合适的技术。
应理解的是权利要求书并不受限于上面所示出的明确的配置和部件。在不背离权利要求书的范围的前提下,对本文所描述的系统、方法和装置的配置、操作和细节可进行各种修改、改变和变化。

Claims (43)

1.一种被配置用于认证消息的无线设备,包括:
用于获得所述消息的单元;
用于生成密钥流的单元;以及
用于使用所述密钥流和通用哈希函数来计算消息认证码的单元,其中,所述通用哈希函数是使用无进位乘法来计算的。
2.根据权利要求1所述的无线设备,其中,计算所述通用哈希函数包括:
反转所述消息的32比特字;
使用所述消息的经反转的32比特字与所述密钥流的第一32比特字之间的无进位乘法来计算第一64比特字;
使用所述消息的经反转的32比特字与所述密钥流的第二32比特字之间的无进位乘法来计算第二64比特字;
在所述第一64比特字的最低32比特字与所述第二64比特字的最高32比特字之间进行异或运算以获得第一32比特变量;以及
在第二32比特变量与所述第一32比特变量之间进行异或运算。
3.根据权利要求2所述的无线设备,其中,所述第二32比特变量初始被设定为0。
4.根据权利要求2所述的无线设备,其中,所述密钥流的所述第二32比特字紧接在所述密钥流的所述第一32比特字之后。
5.根据权利要求1所述的无线设备,其中,所述通用哈希函数是通过每32个消息比特使用少于32个的机器指令来计算的。
6.根据权利要求1所述的无线设备,其中,所述通用哈希函数是通过每32个消息比特使用5个机器指令来计算的。
7.根据权利要求1所述的无线设备,其中,所述消息认证码是使用128-EIA3算法来计算的。
8.根据权利要求7所述的无线设备,其中,所述用于获得所述消息的单元包括用于生成发送消息的单元,以及所述无线设备还包括用于在单个消息中发送所述发送消息和所述消息认证码的单元。
9.根据权利要求7所述的无线设备,其中,所述用于获得所述消息的单元包括用于接收包括所述消息和所述消息认证码的单个消息的单元,以及所述无线设备还包括:
用于从所述单个消息中提取发送消息认证码的单元;以及
用于比较所述发送消息认证码与所述消息认证码以确定对所述单个消息的认证的单元。
10.根据权利要求1所述的无线设备,其中,所述密钥流是使用流密码生成的。
11.根据权利要求1所述的无线设备,其中,所述无线设备是无线通信设备。
12.根据权利要求1所述的无线设备,其中,所述无线设备是基站。
13.根据权利要求1所述的无线设备,其中,无进位乘法的挂钟执行时间独立于运算对象的汉明权重。
14.一种被配置用于认证消息的装置,包括:
被配置为获得所述消息、生成密钥流、以及使用所述密钥流和通用哈希函数来计算消息认证码的电路,其中,所述通用哈希函数是使用无进位乘法来计算的。
15.根据权利要求14所述的装置,其中,计算所述通用哈希函数包括:
反转所述消息的32比特字;
使用所述消息的经反转的32比特字与所述密钥流的第一32比特字之间的无进位乘法来计算第一64比特字;
使用所述消息的经反转的32比特字与所述密钥流的第二32比特字之间的无进位乘法来计算第二64比特字;
在所述第一64比特字的最低32比特字与所述第二64比特字的最高32比特字之间进行异或运算以获得第一32比特变量;以及
在第二32比特变量与所述第一32比特变量之间进行异或运算。
16.根据权利要求15所述的装置,其中,所述第二32比特变量初始被设定为0。
17.根据权利要求15所述的装置,其中,所述密钥流的所述第二32比特字紧接在所述密钥流的所述第一32比特字之后。
18.根据权利要求14所述的装置,其中,所述通用哈希函数是通过每32个消息比特使用少于32个的机器指令来计算的。
19.根据权利要求14所述的装置,其中,所述通用哈希函数是通过每32个消息比特使用5个机器指令来计算的。
20.根据权利要求14所述的装置,其中,所述消息认证码是使用128-EIA3算法来计算的。
21.根据权利要求20所述的装置,其中,所述被配置为获得所述消息的电路包括被配置为生成发送消息的电路,以及所述装置还包括被配置为在单个消息中发送所述发送消息和所述消息认证码的电路。
22.根据权利要求20所述的装置,其中,所述被配置为获得所述消息的电路包括被配置为接收包括所述消息和所述消息认证码的单个消息的电路,以及所述装置还包括被配置为从所述单个消息中提取发送消息认证码的电路,和被配置为比较所述发送消息认证码与所述消息认证码以确定对所述单个消息的认证的电路。
23.根据权利要求14所述的装置,其中,所述密钥流是使用流密码生成的。
24.根据权利要求14所述的装置,其中,所述装置是无线通信设备。
25.根据权利要求14所述的装置,其中,所述装置是基站。
26.根据权利要求14所述的装置,其中,无进位乘法的挂钟执行时间独立于运算对象的汉明权重。
27.一种用于通过无线设备认证消息的方法,包括:
获得所述消息;
生成密钥流;以及
使用所述密钥流和通用哈希函数来计算消息认证码,其中,所述通用哈希函数是使用无进位乘法来计算的。
28.根据权利要求27所述的方法,其中,计算所述通用哈希函数包括:
反转所述消息的32比特字;
使用所述消息的经反转的32比特字与所述密钥流的第一32比特字之间的无进位乘法来计算第一64比特字;
使用所述消息的经反转的32比特字与所述密钥流的第二32比特字之间的无进位乘法来计算第二64比特字;
在所述第一64比特字的最低32比特字与所述第二64比特字的最高32比特字之间进行异或运算以获得第一32比特变量;以及
在第二32比特变量与所述第一32比特变量之间进行异或运算。
29.根据权利要求28所述的方法,其中,所述第二32比特变量初始被设定为0。
30.根据权利要求28所述的方法,其中,所述密钥流的所述第二32比特字紧接在所述密钥流的所述第一32比特字之后。
31.根据权利要求27所述的方法,其中,所述通用哈希函数是通过每32个消息比特使用少于32个的机器指令来计算的。
32.根据权利要求27所述的方法,其中,所述通用哈希函数是通过每32个消息比特使用5个机器指令来计算的。
33.根据权利要求27所述的方法,其中,所述消息认证码是使用128-EIA3算法来计算的。
34.根据权利要求33所述的方法,其中,获得所述消息包括生成发送消息,并且所述方法还包括在单个消息中发送所述发送消息和所述消息认证码。
35.根据权利要求33所述的方法,其中,获得所述消息包括接收包括所述消息和所述消息认证码的单个消息,以及所述方法还包括:
从所述单个消息中提取发送消息认证码;以及
比较所述发送消息认证码与所述消息认证码以确定对所述单个消息的认证。
36.根据权利要求27所述的方法,其中,所述密钥流是使用流密码生成的。
37.根据权利要求27所述的方法,其中,所述无线设备是无线通信设备。
38.根据权利要求27所述的方法,其中,所述无线设备是基站。
39.根据权利要求27所述的方法,其中,无进位乘法的挂钟执行时间独立于运算对象的汉明权重。
40.一种用于认证消息的计算机程序产品,该计算机产品包括非临时性计算机可读介质,在所述非临时性计算机可读介质上具有指令,所述指令包括:
用于使得无线设备获得所述消息的代码;
用于使得所述无线设备生成密钥流的代码;以及
用于使得所述无线设备使用所述密钥流和通用哈希函数来计算消息认证码的代码,其中,所述通用哈希函数是使用无进位乘法来计算的。
41.根据权利要求40所述的计算机程序产品,其中,计算所述通用哈希函数包括:
反转所述消息的32比特字;
使用所述消息的经反转的32比特字与所述密钥流的第一32比特字之间的无进位乘法来计算第一64比特字;
使用所述消息的经反转的32比特字与所述密钥流的第二32比特字之间的无进位乘法来计算第二64比特字;
在所述第一64比特字的最低32比特字与所述第二64比特字的最高32比特字之间进行异或运算以获得第一32比特变量;以及
在第二32比特变量与所述第一32比特变量之间进行异或运算。
42.根据权利要求41所述的计算机程序产品,其中,所述第二32比特变量初始被设定为0。
43.根据权利要求41所述的计算机程序产品,其中,所述密钥流的所述第二32比特字紧接在所述密钥流的所述第一32比特字之后。
CN201480009254.8A 2013-02-20 2014-02-13 使用利用无进位乘法计算的通用哈希函数的消息认证 Active CN104995866B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/771,531 US9065632B2 (en) 2013-02-20 2013-02-20 Message authentication using a universal hash function computed with carryless multiplication
US13/771,531 2013-02-20
PCT/US2014/016285 WO2014130341A1 (en) 2013-02-20 2014-02-13 Message authentication using a universal hash function computed with carryless multiplication

Publications (2)

Publication Number Publication Date
CN104995866A true CN104995866A (zh) 2015-10-21
CN104995866B CN104995866B (zh) 2016-09-14

Family

ID=50236281

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480009254.8A Active CN104995866B (zh) 2013-02-20 2014-02-13 使用利用无进位乘法计算的通用哈希函数的消息认证

Country Status (8)

Country Link
US (1) US9065632B2 (zh)
EP (1) EP2959630B1 (zh)
JP (1) JP5902362B1 (zh)
KR (1) KR101615289B1 (zh)
CN (1) CN104995866B (zh)
ES (1) ES2731856T3 (zh)
HU (1) HUE044169T2 (zh)
WO (1) WO2014130341A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110089068A (zh) * 2016-10-13 2019-08-02 西门子股份公司 用于认证和完整性保护消息内容的方法、发送器和接收器

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10313129B2 (en) 2015-06-26 2019-06-04 Intel Corporation Keyed-hash message authentication code processors, methods, systems, and instructions
EP3357187B1 (en) 2015-09-30 2020-10-21 Nokia Technologies Oy Message verification
IL250657A0 (en) 2017-02-19 2017-03-30 Sella Yaron Cooperative computation of an authentication code based on a cryptographic hash function
US11165758B2 (en) * 2018-04-09 2021-11-02 International Business Machines Corporation Keystream generation using media data
US11843689B2 (en) * 2021-08-06 2023-12-12 Samsung Electronics Co., Ltd. Methods and systems for reducing propagation delays in hardware implementation of ZUC cryptographic algorithms

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483519A (zh) * 2008-01-11 2009-07-15 索尼(中国)有限公司 产生哈希函数的压缩函数装置以及哈希函数系统及方法
CN101662366A (zh) * 2009-05-27 2010-03-03 西安西电捷通无线网络通信有限公司 基于哈希函数的双向认证方法及系统
US20110099376A1 (en) * 2009-10-27 2011-04-28 Vikas Gupta Systems and methods for authenticating an electronic transaction

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4538240A (en) * 1982-12-30 1985-08-27 International Business Machines Corporation Method and apparatus for performing hashing operations using Galois field multiplication
ATE504446T1 (de) * 2002-12-02 2011-04-15 Silverbrook Res Pty Ltd Totdüsenausgleich
US20060159260A1 (en) * 2005-01-14 2006-07-20 Eaton Corporation Method and communication system employing secure key exchange for encoding and decoding messages between nodes of a communication network
EP1882346B1 (en) * 2005-05-11 2020-09-09 Nxp B.V. Communication protocol and electronic communication system, in particular authentication control system, as well as corresponding method
US7590930B2 (en) * 2005-05-24 2009-09-15 Intel Corporation Instructions for performing modulo-2 multiplication and bit reflection
JP2007086170A (ja) * 2005-09-20 2007-04-05 Nec Corp 汎用ハッシュ関数族計算装置、方法、プログラム、および共有鍵生成システム
JP4735644B2 (ja) * 2005-11-04 2011-07-27 日本電気株式会社 メッセージ認証装置、メッセージ認証方法、メッセージ認証プログラムとその記録媒体
US7991152B2 (en) * 2007-03-28 2011-08-02 Intel Corporation Speeding up Galois Counter Mode (GCM) computations
US8340280B2 (en) 2008-06-13 2012-12-25 Intel Corporation Using a single instruction multiple data (SIMD) instruction to speed up galois counter mode (GCM) computations
US8891756B2 (en) 2008-10-30 2014-11-18 Certicom Corp. Collision-resistant elliptic curve hash functions
EP2288195B1 (en) * 2009-08-20 2019-10-23 Samsung Electronics Co., Ltd. Method and apparatus for operating a base station in a wireless communication system
US8635262B2 (en) 2010-12-03 2014-01-21 Via Technologies, Inc. Carryless multiplication preformatting apparatus and method
US9166793B2 (en) * 2011-12-05 2015-10-20 University Of Washington Efficient authentication for mobile and pervasive computing
US8732853B1 (en) * 2013-03-22 2014-05-20 Dropbox, Inc. Web-based system providing sharable content item links with link sharer specified use restrictions

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483519A (zh) * 2008-01-11 2009-07-15 索尼(中国)有限公司 产生哈希函数的压缩函数装置以及哈希函数系统及方法
CN101662366A (zh) * 2009-05-27 2010-03-03 西安西电捷通无线网络通信有限公司 基于哈希函数的双向认证方法及系统
US20110099376A1 (en) * 2009-10-27 2011-04-28 Vikas Gupta Systems and methods for authenticating an electronic transaction

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110089068A (zh) * 2016-10-13 2019-08-02 西门子股份公司 用于认证和完整性保护消息内容的方法、发送器和接收器

Also Published As

Publication number Publication date
JP5902362B1 (ja) 2016-04-13
KR20150119338A (ko) 2015-10-23
JP2016513411A (ja) 2016-05-12
CN104995866B (zh) 2016-09-14
US20140237237A1 (en) 2014-08-21
KR101615289B1 (ko) 2016-04-25
EP2959630A1 (en) 2015-12-30
HUE044169T2 (hu) 2019-10-28
ES2731856T3 (es) 2019-11-19
US9065632B2 (en) 2015-06-23
EP2959630B1 (en) 2019-03-20
WO2014130341A1 (en) 2014-08-28

Similar Documents

Publication Publication Date Title
EP3183836B1 (en) Generating cryptographic checksums
Nohl Attacking phone privacy
CN104995866A (zh) 使用利用无进位乘法计算的通用哈希函数的消息认证
US10623176B2 (en) Authentication encryption method, authentication decryption method, and information-processing device
US10623187B2 (en) Generating cryptographic checksums
CN112637836B (zh) 一种数据处理方法、装置、电子设备及存储介质
US20130195266A1 (en) Apparatus and Method for Producing a Message Authentication Code
US10313125B2 (en) Generating cryptographic checksums
US10547449B2 (en) Protection against relay attacks in a white-box implementation
CN108270550B (zh) 一种基于sm4算法的安全高效的白盒实现方法及装置
CN110999253B (zh) 网状设备及其方法、计算机可读介质以及电子装置
US9065631B2 (en) Integrated cryptographic module providing confidentiality and integrity
US9026791B2 (en) Linear feedback shift register (LFSR)
CN115632765A (zh) 加密方法、解密方法、装置、电子设备及存储介质
CN113302961B (zh) 安全信标
KR100294781B1 (ko) 무선통신망에서의인증응답생성방법
EP3258639A1 (en) Cryptography apparatus protected against side-channel attack using constant hamming weight substitution-box
CN114978658B (zh) 数据处理方法及装置
CN113556733A (zh) 签约隐藏标识符生成、解密方法及相关装置
CN117938388A (zh) 一种基于椭圆曲线的解密方法及系统
KR20150097955A (ko) 암호화 시스템 및 그것의 암호 통신 방법
KR20140145967A (ko) 암호화 시스템 및 그것의 암호 통신 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant