CN112787820B - 一种适用于硬件实现的轻量级认证加密解密实现方法 - Google Patents

一种适用于硬件实现的轻量级认证加密解密实现方法 Download PDF

Info

Publication number
CN112787820B
CN112787820B CN202110000330.0A CN202110000330A CN112787820B CN 112787820 B CN112787820 B CN 112787820B CN 202110000330 A CN202110000330 A CN 202110000330A CN 112787820 B CN112787820 B CN 112787820B
Authority
CN
China
Prior art keywords
mode
encryption
plaintext
decryption
working mode
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
Application number
CN202110000330.0A
Other languages
English (en)
Other versions
CN112787820A (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.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
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 Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN202110000330.0A priority Critical patent/CN112787820B/zh
Publication of CN112787820A publication Critical patent/CN112787820A/zh
Application granted granted Critical
Publication of CN112787820B publication Critical patent/CN112787820B/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/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/3234Cryptographic 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 involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal

Landscapes

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

Abstract

本发明公开了一种适用于硬件实现的轻量级认证加密解密实现方法,可在同一硬件电路中同时实现加密、解密、认证的功能,串行发送的数据帧通过起始位(SOF)进行位置标定,通过工作模式位(Mode)进行加密解密功能选择,通过认证加密算法核心进行数据的加密和解密过程,通过认证码(Tag)进行数据源认证,加密、解密过程复用算法硬件资源,可以轻松应用在各种数据通信领域的硬件安全部分,极具实用价值。

Description

一种适用于硬件实现的轻量级认证加密解密实现方法
技术领域
本发明涉及认证加密算法领域,具体涉及一种适用于硬件实现的轻量级认证加密解密实现方法,对硬件安全的发展有着重要意义。
背景技术
随着科技飞速发展,人们生活越来越信息化,数字化,生活变得更加丰富更加便利的同时,信息安全也变得越来越重要。不法分子和黑客技术发展同样迅速,信息泄露,电信诈骗,银行卡盗取等严重危害人们日常生活的现象比比皆是,保障信息数据的机密性、真实性和完整性成了迫切需求。
信息传输过程中有可能遭到窃取或篡改,导致信息数据不可信,需要一定的信息安全手段来保证数据的安全。认证加密算法是基于对称密码学的密码技术,能够保证数据在信道传输过程中的机密性、真实性同时兼具数据源认证,让不法分子难以伪造、篡改或干扰信息,可用于解决这一问题。
认证加密算法在软件方面有着优良的表现,但在应用领域,硬件安全也是信息安全领域的重中之重。诸如银行卡,NFC,物联网等与硬件相关的涉及信息保存和通讯的应用场景越来越广泛,如何在硬件领域实现高效的认证加密功能将极大程度的降低硬件成本和功耗,提升产品的实用性和安全性,成为亟需解决的问题。
发明内容
为了解决上述问题,本发明提出一种适用于硬件实现的轻量级认证加密解密实现方法,可对通信串行数据流进行数据安全处理,同时兼具加密、解密和认证功能。
一种适用于硬件实现的轻量级认证加密解密实现方法,包括:
步骤S1、根据帧起始位(SOF)从输入信息中提取出工作模式位Mode;
步骤S2、若工作模式位Mode为0,表示输入有效数据为明文P,需要加密操作,则继续从输入信息中提取出明文P;若工作模式位为1,表示输入有效数据为已加密后的密文C,需要解密操作,则继续从输入信息中提取出密文C、Nonce和认证码Tag;
步骤S3、若工作模式位Mode为0,则DRBG生成Nonce,明文P按照64比特分组,一同输入算法核心进行加密操作,生成密文C与Tag;若工作模式位Mode为1,则密文C按照64比特分组,与步骤S2中提取的Nonce和Tag一同输入算法核心进行解密运算,生成明文P和认证码Tag’,其中,算法核心采用基于Ascon的认证加密算法;
步骤S4、若工作模式位Mode为0,将帧起始位SOF、解密工作模式位Mode、密文分组、Nonce、认证码Tag合并作为输出数据;若工作模式Mode为1,则比较接收到的认证码Tag与算法核心生成的认证码Tag’是否一致,若一致说明认证成功,则输出明文P,若不一致,则报告错误信息⊥,不输出明文;
其中,所述步骤S3包括:
步骤S31、核心算法的输入S为320比特,由初始化向量IV、密钥K、Nonce拼接组成,其中工作模式位Mode为0时Nonce由DRBG生成,工作模式位Mode为1时Nonce由输入信息中提取;
步骤S32、若工作模式位Mode为0,则将S、关联数据Associated Data(AD)、密钥K、明文分组输入Ascon算法核心进行加密处理:
(C,Tag)=Ascon(S,AD,K,P);
若工作模式位Mode为1,则将S、关联数据Associated Data(AD)、密钥K、密文分组输入Ascon算法核心进行加密处理:
(P,Tag′)=Ascon(S,AD,K,C)。
所述的方法,明文密文长度包括但不限于128比特,通过分组密码迭代模式进行任意比特长度扩展,迭代模式包括但不限于电子密码本(ECB)模式,密码分组链接(CBC)模式,密文反馈(CFB)模式,输出反馈(OFB)模式,计数器(CTR)模式。
所述的方法,初始化向量IV和密钥K固定在硬件内部,仅在使用时读取,并不参与数据传输过程;关联数据Associated Data(AD)分组也事先约定好后固定在硬件内部,不参与数据传输。
本发明的有益效果:
加密解密算法核心可复用,硬件资源消耗小,极适合轻量级硬件使用场景,但不仅限于硬件实现,同样适用于软件实现。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是本发明一实施例提供的认证加解密算法流程示意图。
图2是本发明一实施例提供的芯片物理实现版图。
具体实施方式
下面对本发明的具体实施方式进行详细的描述。所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
参见图1,本发明一实施例提供一种适用于硬件轻量级应用的基于Ascon的认证加解密算法实现方案,包括:
步骤S1、根据帧起始位(SOF)从输入信息中提取出工作模式位Mode,Mode表征了输入数据类型和数据待处理方式。
步骤S2、若工作模式位Mode为0,表示输入有效数据为明文P,需要加密操作,则继续从输入信息中提取出明文P;若工作模式位为1,表示输入有效数据为已加密后的密文C,需要解密操作,则继续从输入信息中提取出密文C、Nonce和认证码Tag。
步骤S3、若工作模式位Mode为0,则DRBG生成Nonce,明文P按照64比特分组,一同输入算法核心进行加密操作,生成密文C与Tag;若工作模式位Mode为1,则密文C按照64比特分组,与步骤S2中提取的Nonce和Tag一同输入算法核心进行解密运算,生成明文P和认证码Tag’。其中,算法核心采用基于Ascon的认证加密算法。
步骤S4、若工作模式位为0,将起始位SOF、解密工作模式位Mode、密文分组、Nonce、认证码Tag合并作为输出数据;若工作模式为1,则比较接收到的认证码Tag与算法核心生成的认证码Tag’是否一致,若一致说明认证成功,则输出明文P,若不一致,则报告错误信息⊥,不输出明文。
其中,所述步骤S3包括:
步骤S31、核心算法的输入S为320比特数据,由初始化向量IV、密钥K、Nonce拼接(||)组成,其中Mode为0时Nonce由DRBG生成,Mode为1时Nonce由输入信息中提取。
IV包含密钥长度k,分组长度r,p函数执行轮次a和b,低位用0填充至64比特,即:
IV=k||r||a||b||0=0x80400c0600000000
为了便于硬件实现,同时减少对称密码密钥配送带来的不可靠问题,IV和K固定在硬件内部,仅在使用时读取,并不参与数据传输过程,更不易被攻击者截获,同时还节省了通讯时间。由于Ascon算法是关联数据的认证加密算法,关联数据Associated Data(AD)分组也事先约定好后固定在硬件内部,不参与数据传输。
步骤S32、若Mode为0,则将S、关联数据AD分组、密钥K、明文分组输入Ascon算法核心进行加密处理:
(C,Tag)=Ascon(S,AD,K,P)
若Mode为1,则将S、关联数据AD、密钥K、密文分组输入Ascon算法核心进行加密处理:
(P,Tag′)=Ascon(S,AD,K,C)
优选地,所述步骤S32具体为:
若Mode为0:
步骤S321、输入数据S切分为高64比特Sr和低256比特Sc
步骤S322、输入S经过12轮p函数处理,与高位0填充至320比特的密钥K异或形成新的S:
Figure BDA0002881292250000041
步骤S323、关联数据AD分组依次与Sr异或,与Sc拼接后经过6轮p函数处理,形成新的S:
Figure BDA0002881292250000042
其中ADi依次从AD的高位分组到低位分组。
步骤S324、S的最后一比特反转:
Figure BDA0002881292250000043
步骤S325、明文分组依次与Sr异或,形成密文分组,与Sc拼接后经过6轮p函数处理,形成新的S:
Figure BDA0002881292250000044
S=pb((Ct||Sc)
其中Pi依次从明文的高位分组到低位分组。
步骤S326、Sr的高128位与K异或后,经过12轮p函数处理形成新的S:
Figure BDA0002881292250000045
步骤S327、S的低128位与K异或形成认证码Tag。
若Mode为1:
步骤S321’、输入数据S切分为高64比特Sr和低256比特Sc
步骤S322’、输入S经过12轮p函数处理,与高位0填充至320比特的密钥K异或形成新的S:
Figure BDA0002881292250000046
步骤S323’、关联数据AD分组依次与Sr异或,与Sc拼接后经过6轮p函数处理,形成新的S:
Figure BDA0002881292250000051
其中ADi依次从AD的高位分组到低位分组。
步骤S324’、S的最后一比特反转:
Figure BDA0002881292250000052
步骤S325’、明文分组依次与Sr异或,形成密文分组,与Sc拼接后经过6轮p函数处理,形成新的S:
Figure BDA0002881292250000053
S=pb((Ct||Sc)
其中Pi依次从明文的高位分组到低位分组。
步骤S326’、Sr的高128位与K异或后,经过12轮p函数处理形成新的S:
Figure BDA0002881292250000054
步骤S327’、S的低128位与K异或形成认证码Tag。
优选地,所述p函数为Ascon算法核心置换函数,其具体步骤为:
步骤SP1、将输入的320比特S分成5组64比特xi,即S=x0||x1||x2||x3||x4。其中0为高位。
步骤SP2、x2与常数cr异或:
Figure BDA0002881292250000055
其中cr根据p函数轮次不同,查表可得:
表1
Figure BDA0002881292250000056
Figure BDA0002881292250000061
步骤SP3、xi分别取出对应位组成5比特xj,进行S盒替换:
Figure BDA0002881292250000068
表2
Figure BDA0002881292250000062
步骤SP4、对x0~x4进行线性移位变换
Figure BDA0002881292250000063
Figure BDA0002881292250000064
Figure BDA0002881292250000065
Figure BDA0002881292250000066
Figure BDA0002881292250000067
图2为本发明一实施例提供的硬件物理实现版图,已验证该轻量级认证加密算法在物理实现上具备可行性,极适合应用于物联网,RFID等信息通讯领域。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (3)

1.一种适用于硬件实现的轻量级认证加密解密实现方法,其特征在于,包括:
步骤S1、根据帧起始位(SOF)从输入信息中提取出工作模式位Mode;
步骤S2、若工作模式位Mode为0,表示输入有效数据为明文P,需要加密操作,则继续从输入信息中提取出明文P;若工作模式位为1,表示输入有效数据为已加密后的密文C,需要解密操作,则继续从输入信息中提取出密文C、Nonce和认证码Tag;
步骤S3、若工作模式位Mode为0,则DRBG生成Nonce,明文P按照64比特分组,一同输入算法核心进行加密操作,生成密文C与Tag;若工作模式位Mode为1,则密文C按照64比特分组,与步骤S2中提取的Nonce和Tag一同输入算法核心进行解密运算,生成明文P和认证码Tag’,其中,算法核心采用基于Ascon的认证加密算法;
步骤S4、若工作模式位Mode为0,将帧起始位SOF、解密工作模式位Mode、密文分组、Nonce、认证码Tag合并作为输出数据;若工作模式Mode为1,则比较接收到的认证码Tag与算法核心生成的认证码Tag’是否一致,若一致说明认证成功,则输出明文P,若不一致,则报告错误信息⊥,不输出明文;
其中,所述步骤S3包括:
步骤S31、核心算法的输入S为320比特,由初始化向量IV、密钥K、Nonce拼接组成,其中工作模式位Mode为0时Nonce由DRBG生成,工作模式位Mode为1时Nonce由输入信息中提取;
步骤S32、若工作模式位Mode为0,则将S、关联数据Associated Data(AD)、密钥K、明文分组输入Ascon算法核心进行加密处理:
Figure 926586DEST_PATH_IMAGE002
若工作模式位Mode为1,则将S、关联数据Associated Data(AD)、密钥K、密文分组输入Ascon算法核心进行解密处理:
Figure 250251DEST_PATH_IMAGE004
2.根据权利要求1所述的方法,其特征在于,明文密文长度包括128比特,通过分组密码迭代模式进行任意比特长度扩展,迭代模式包括电子密码本(ECB)模式,密码分组链接(CBC)模式,密文反馈(CFB)模式,输出反馈(OFB)模式,计数器(CTR)模式。
3. 根据权利要求1所述的方法,其特征在于,初始化向量IV和密钥K固定在硬件内部,仅在使用时读取,并不参与数据传输过程;关联数据Associated Data(AD)分组也事先约定好后固定在硬件内部,不参与数据传输。
CN202110000330.0A 2021-01-02 2021-01-02 一种适用于硬件实现的轻量级认证加密解密实现方法 Active CN112787820B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110000330.0A CN112787820B (zh) 2021-01-02 2021-01-02 一种适用于硬件实现的轻量级认证加密解密实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110000330.0A CN112787820B (zh) 2021-01-02 2021-01-02 一种适用于硬件实现的轻量级认证加密解密实现方法

Publications (2)

Publication Number Publication Date
CN112787820A CN112787820A (zh) 2021-05-11
CN112787820B true CN112787820B (zh) 2022-02-11

Family

ID=75753666

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110000330.0A Active CN112787820B (zh) 2021-01-02 2021-01-02 一种适用于硬件实现的轻量级认证加密解密实现方法

Country Status (1)

Country Link
CN (1) CN112787820B (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050268326A1 (en) * 2004-05-04 2005-12-01 Microsoft Corporation Checking the security of web services configurations
WO2009134432A1 (en) * 2008-04-30 2009-11-05 Intertrust Technologies Corporation Data collection and targeted advertising systems and methods
CN101431405B (zh) * 2008-11-17 2011-09-14 暨南大学 Des加密方法及其硬件电路实现方法
CA2796540A1 (en) * 2011-11-28 2013-05-28 Pika Technologies Inc. Transparent bridge device
CN103179558B (zh) * 2012-09-20 2016-06-22 中兴通讯股份有限公司 集群系统组呼加密实现方法及系统
AU2015357253B2 (en) * 2014-12-03 2018-03-08 Nagravision S.A. Block cryptographic method for encrypting/decrypting messages and cryptographic devices for implementing this method
CN105357218B (zh) * 2015-12-03 2018-07-24 上海斐讯数据通信技术有限公司 一种具备硬件加解密功能的路由器及其加解密方法
CN109962766A (zh) * 2017-12-22 2019-07-02 中国科学院沈阳自动化研究所 基于ieee802-15-4标准的安全服务协处理器的实现方法

Also Published As

Publication number Publication date
CN112787820A (zh) 2021-05-11

Similar Documents

Publication Publication Date Title
CN1993922B (zh) 流密码组合系统和方法
CN101753292B (zh) 用于链接式加密模式的方法和设备
US9031228B2 (en) Systems and methods for implementing block cipher algorithms on attacker-controlled systems
US7978851B2 (en) Keystream encryption device, method, and program
CN109040090A (zh) 一种数据加密方法及装置
JPH1075240A (ja) データ送信を保護する方法およびデータを暗号化または解読化する装置
CN101034978B (zh) 用于执行抵抗密码攻击的密码过程的方法和计算设备、以及数据处理系统
CA3051928A1 (en) Equivocation augmentation
CN106059752B (zh) 一种基于扩张密文的白盒密码加解密方法
CN105306194A (zh) 供加密档案和/或通讯协定的多重加密方法与系统
CN111010266B (zh) 消息的加解密、读写方法、装置、计算机设备和存储介质
CN109861810A (zh) 一种基于混沌块加密算法的数据加密方法及解密方法
CN107257279A (zh) 一种明文数据加密方法及设备
CN114826587B (zh) 一种数据加密方法、解密方法及其装置、设备
CN101867471A (zh) 基于无理数的des认证加密算法
Kuang et al. Quantum encryption and decryption in IBMQ systems using quantum permutation pad
Prihandoko et al. Implementation of super H-antimagic total graph on establishing stream cipher
CN112787820B (zh) 一种适用于硬件实现的轻量级认证加密解密实现方法
Buell Modern symmetric ciphers—Des and Aes
CN115766238A (zh) 一种海量短数据流加密解密方法及系统
CN110474967B (zh) 块链实验系统及方法
JP2013098722A (ja) ストリーム暗号の暗号化装置、ストリーム暗号の復号装置、ストリーム暗号の暗号化方法、ストリーム暗号の復号方法、およびプログラム
CN107766725B (zh) 抗模板攻击的数据传输方法及系统
CN110267267A (zh) 基于非公开加密算法的mesh网络加密方案
Kumar et al. New Symmetric Key Cipher Based on Quasigroup

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