CN101478548A - 数据传输的加密和完整性校验方法 - Google Patents

数据传输的加密和完整性校验方法 Download PDF

Info

Publication number
CN101478548A
CN101478548A CNA2009100459558A CN200910045955A CN101478548A CN 101478548 A CN101478548 A CN 101478548A CN A2009100459558 A CNA2009100459558 A CN A2009100459558A CN 200910045955 A CN200910045955 A CN 200910045955A CN 101478548 A CN101478548 A CN 101478548A
Authority
CN
China
Prior art keywords
data
key
encryption
message authentication
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
CNA2009100459558A
Other languages
English (en)
Other versions
CN101478548B (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.)
Guanyuan (Shanghai) Technology Co., Ltd
Original Assignee
Shanghai Jiaotong University
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 Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN2009100459558A priority Critical patent/CN101478548B/zh
Publication of CN101478548A publication Critical patent/CN101478548A/zh
Application granted granted Critical
Publication of CN101478548B publication Critical patent/CN101478548B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及一种电信技术领域的数据传输的加密和完整性校验方法。本发明中,源节点与目的节点共享一个不为攻击者所知的根密钥,由根密钥以及先前所有被传输数据的消息认证码,生成加密当前被传输数据的加密密钥;当前由源节点传输到目的节点的是一个被加密了的数据以及同该数据对应的消息认证码。本发明能够加密和校验节点间所传输的数据,并具备安全与高性能的优点。

Description

数据传输的加密和完整性校验方法
技术领域
本发明涉及一种电信技术领域的数据传输方法,具体地说,涉及的是一种数据传输的加密和完整性校验方法。
背景技术
为保护信息,传输中的数据需要予以加密和完整性校验。加密在于保护数据的机密性,使得攻击者不能理解在传输路径上所截获的数据的本来含义;完整性校验在于防范攻击者对所传输的数据进行恶意的修改、注入伪造的数据、重放过去传输的数据、阻塞当前传输的数据、颠倒数据传输的顺序等篡改行为。这种对数据传输的保护需求存在于多种领域;比如,数据由同一计算机内部的某一处理器传向另外的处理器;再比如,网络中数据由一个计算机系统传向另外的计算机系统。
为了实现对数据传输的保护,存在多种方法和技术措施。通常,加密可以采用非对称密钥加密(又称公钥加密)或者对称密钥加密(又称私钥加密);对于大量数据的加密,往往是采用对称密钥加密;而在采用对称密钥加密时,又可以采用分组密码加密技术(如Advanced Encryption Standard,简称AES)或者序列密码加密技术。完整性校验的方法通常是为所传输的数据附着消息认证码(Message Authentication Code,简称MAC);由于非法篡改将导致数据与其MAC之间不匹配,从而发现篡改行为。然而,单纯地依赖消息认证码来检测每一被传输数据的完整性,存在不能对抗重放等攻击形式的缺点,因而不具备足够充分的安全性。
经对现有技术的文献检索发现:W.Shi等人在《Proceedings of theInternational Conference on Parallel Architectures and CompilationTechniques,2004,pp.123-134》(并行体系结构与编译技术国际会议会议录,2004年,页123-页134)上发表的“Architectural Support for High SpeedProtection of Memory Integrity and Confidentiality in MultiprocessorSystems”(体系结构支持的多处理器系统储存器完整性与机密性的高速保护),该文中提出处理器间数据通信的机密性与完整性保护技术,具体是采用处理器间能够共享监听的总线序列号来生成加密密钥,再结合每一被传输数据的消息认证码,实现对总线数据的加密和校验;其不足在于:并不是所有情况下的通信节点都能够在相互之间共享同样的序列号(比如,非总线形式的多处理器互连结构),从而该技术不能普遍应用,另外,该技术不能阻止通过破坏共享序列号在各处理器之间的同步来实施的攻击行为。
发明内容
本发明的目的在于针对现有技术的不足,提供一种数据传输的加密和完整性校验方法,使其能够加密和校验节点间所传输的数据,并具备安全与高性能的优点。
本发明是通过以下的技术方案实现的,本发明中,源节点与目的节点共享一个不为攻击者所知的根密钥;由根密钥以及先前所有被传输数据的消息认证码,生成加密当前被传输数据的加密密钥;当前由源节点传输到目的节点的是一个被加密了的数据以及同该数据对应的消息认证码。
所述由根密钥以及先前所有被传输数据的消息认证码,生成加密当前被传输数据的加密密钥,具体为:由先前所有被传输数据的消息认证码生成密钥向量的当前值,再由根密钥和密钥向量的当前值,生成加密当前被传输数据的加密密钥。
所述由先前所有被传输数据的消息认证码生成密钥向量的当前值,是指源节点与目的节点具有相同的密钥向量初始值,当前被传输数据的消息认证码,同密钥向量的当前值相运算,运算的结果在下一次传输时,作为生成加密密钥所使用的密钥向量值。
所述由根密钥以及先前所有被传输数据的消息认证码,生成加密当前被传输数据的加密密钥,是指生成分组密码算法的加密密钥,或者是生成序列密码算法的加密密钥流。
本发明所具有的有益效果在于:首先,通过对所传输数据的加密,攻击者无法理解在传输路径上所截获的数据;其次,由于数据附着有消息认证码,因此能够校验当前所传输数据的完整性。从提高安全性的角度来说,由于加密密钥的导出与消息认证码的全部历史信息相关,也就因而与先前所传输数据的全部历史信息相关,因此,攻击者在传输路径所实施的重放、阻塞等攻击行为,将导致源节点和目的节点所使用的当前加密密钥(对目的节点而言为当前解密密钥)不一致,从而造成目的节点解密当前数据错误,从而导致被解密的数据及所接收到的相应的消息认证码无法匹配,从而最终造成数据完整性校验违例而检测到攻击行为的发生;也就是,能够有效解决诸如破坏序列号同步所实现的数据篡改行为。从提高性能的角度来说,由于导出当前加密密钥不要求当前数据首先准备就绪,有利于采取高效的加密算法,比如能够通过预先准备序列密码加密所需的密钥流而在转换数据明文为密文时只需异或操作的代价。从适用范围的角度来说,不要求通信节点之间共享与同步诸如序列号之类的参数,从而能够应用于各种互连形式的数据通信。
附图说明
图1是应用本发明进行数据传输加密和完整性校验的逻辑图。
具体实施方式
下面结合附图对本发明的实施例作详细说明。本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程;但本发明的保护范围不限于下述的实施例。
如图1所示,数据500当前由源节点100传输到目的节点200。为对所传输的数据500进行加密和实施完整性校验,源节点按照如下过程进行:
为数据500生成消息认证码501;
将数据500加密得到密文数据502;
发送到传输路径上的结果是密文数据502和消息认证码503;
在不对消息认证码进行加密的情况下,所发送的消息认证码503就是数据500所对应的消息认证码501。
如图1所示,加密引擎902对数据500实施加密操作。不管是采用分组密码加密还是序列密码加密,加密引擎902实施加密需要一个加密密钥(这里,也称序列密码使用的密钥流为加密密钥)。为加密当前所传输的数据500,加密引擎902所使用的当前的加密密钥901是按照如下过程生成的:
源节点100和目的节点200具有一个相同的且不为攻击者所知的根密钥800;
由根密钥800和密钥向量801的当前值作为密钥发生器900的输入参数,密钥发生器900的输出值作为当前的加密密钥901。
如附图所示,密钥向量801来自密钥向量运算器802的输出;其过程是:
密钥向量运算器802具有一个在源节点和目的节点相同的初始值;
每次传输时,被传输数据的消息认证码输入密钥向量运算器802,同密钥向量运算器802所保持的当前值相运算,所得到的结果作为新的密钥向量运算器802的当前值,并同时,所得到的结果输入密钥向量801,用于后续一次数据传输时生成加密密钥。
下面的本实施例所提出的方法,实现多处理器系统中处理器间安全的数据传输。
在系统初始化阶段,处理器P1和处理器P2采用预先共享的办法或者采用内置公钥引擎进行协商的办法,在处理器P1和P2之间约定相同的根密钥KeyROOT,取KeyROOT的长度为1024bit。
取一次P1和P2之间的传输事务由128字节的数据组成;即,当前由P1传输到P2的数据DataCURRENT为128Byte。P1为DataCURRENT计算消息认证码如下:
MACCURRENT=HMACMD5(DataCURRENT)
一般地,消息认证码计算函数HMAC需要一个密钥;该密钥可以是P1和P2另外秘密约定的,也可以由KeyROOT导出;由于这并不涉及该发明的技术本质,这里不对此作具体的规定。取MD5哈希算法实现HMAC函数,则MACCURRENT的长度为128bit。
为提高加密的运行时性能,采用序列密码算法来加密DataCURRENT;为此,P1需要预先导出一个长度为1024bit(128Byte×8bit/Byte)的加密密钥流。基于根密钥KeyROOT和当前密钥向量KeyIV,存在多种途径能够导出所需的密钥流。取KeyIV为128bit,取如下方式生成所需的1024bit加密密钥流KStreamENCRYPTION
KStreamSEED=Low896(KeyROOT)||KeyIV
即:截取KeyROOT的低896bit,并将截取的结果与KeyIV相连接而得到1024bit的KStreamSEED
KStreamENCRYPTION=AES(High128(KeyROOT),KStreamSEED)
即:截取KeyROOT的高128bit作为AES的加密密钥,加密KStreamSEED而得1024bit的密文结果,并将这一结果作为所需的KStreamENCRYPTION
P1将待传送的数据与加密密钥流实施异或(XOR,Exclusive OR)操作,从而将数据转换为密文形式;然后,连同其消息认证码,一并发送给P2:
DataCIPHERTEXT=DataCURRENT.XOR.KStreamENCRYPTION
Sends out(DataCIPHERTEXT,MACCURRENT).
当前数据的消息认证码馈入P1处理器的密钥向量运算逻辑,产生新的密钥向量,从而为生成下一次的加密密钥流作准备。密钥向量运算逻辑计算密钥向量如下:
KeyIV=HMACMD5(KeyIV||MACCURRENT)
即:连接当前的密钥向量(也即密钥向量运算逻辑所保持的当前值)和消息认证码的当前值,并将连接的结果使用消息认证码计算函数得出一个新的结果;以MD5哈希算法实现消息认证码函数HMAC,则生成一个新的128bit结果作为KeyIV的新数值,即用于生成下一次加密密钥流的密钥向量。
为在P2导出与P1所用加密密钥流相同的解密密钥流,密钥向量KeyIV在P1和P2之间是取值相同。为此,在第一次传输之前,KeyIV应当在P1和P2上具有相同的初始值;这可以采用预先约定的办法或者在系统初始化时进行协商的办法来达成。
处理器P2按照与处理器P1相同的过程,取得与P1发送数据时相同的密钥流来解密所接收到的数据;然后,重新为所解密的数据计算消息认证码,并与所接收的消息认证码结果相比对;若二者一致,则数据传输正确;否则,指示安全违例。
从本实施例上述过程可知:源节点与目的节点之间所传输的数据是被加密的,从而保护了数据的机密性;通过为数据附着消息认证码,能够阻止对数据本身的篡改;由于密钥流生成函数与全部所发送数据的消息认证码信息相关,从而对数据传输的重放、阻塞等攻击将导致数据解密不正确,从而发现此类攻击;由于生成当前数据的加密密钥流只取决于先前数据的消息认证码,并不需要等待当前数据准备就绪,从而使得发送节点能够预先生成密钥流而在加密时只需异或操作的运行代价,基于同样的道理,接收节点也可以先于数据到达而生成解密密钥流,从而减小数据解密带来的传输延迟。因此,本实施例所提出的方法具有安全和性能两方面的优势。

Claims (4)

1.一种数据传输的加密和完整性校验方法,其特征在于:源节点与目的节点共享一个根密钥,由根密钥以及先前所有被传输数据的消息认证码,生成加密当前被传输数据的加密密钥,当前由源节点传输到目的节点的是一个被加密了的数据以及同该数据对应的消息认证码。
2.根据权利要求1所述的数据传输的加密和完整性校验方法,其特征是:所述的由根密钥以及先前所有被传输数据的消息认证码,生成加密当前被传输数据的加密密钥,具体为:
由先前所有被传输数据的消息认证码生成密钥向量的当前值;
由根密钥和密钥向量的当前值,生成加密当前被传输数据的加密密钥。
3.根据权利要求2所述的数据传输的加密和完整性校验方法,其特征是:所述的由先前所有被传输数据的消息认证码生成密钥向量的当前值,具体为:
源节点与目的节点具有相同的密钥向量初始值;
当前被传输数据的消息认证码,同密钥向量的当前值相运算,运算的结果在下一次传输时,作为生成加密密钥所使用的密钥向量值。
4.根据权利要求1或者2所述的数据传输的加密和完整性校验方法,其特征是:所述的由根密钥以及先前所有被传输数据的消息认证码,生成加密当前被传输数据的加密密钥,是指生成分组密码算法的加密密钥,或生成序列密码算法的加密密钥流。
CN2009100459558A 2009-01-22 2009-01-22 数据传输的加密和完整性校验方法 Active CN101478548B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100459558A CN101478548B (zh) 2009-01-22 2009-01-22 数据传输的加密和完整性校验方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100459558A CN101478548B (zh) 2009-01-22 2009-01-22 数据传输的加密和完整性校验方法

Publications (2)

Publication Number Publication Date
CN101478548A true CN101478548A (zh) 2009-07-08
CN101478548B CN101478548B (zh) 2012-07-04

Family

ID=40839180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100459558A Active CN101478548B (zh) 2009-01-22 2009-01-22 数据传输的加密和完整性校验方法

Country Status (1)

Country Link
CN (1) CN101478548B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102291377A (zh) * 2010-06-17 2011-12-21 侯方勇 一种数据安全传送方法和装置
CN102355352A (zh) * 2011-07-24 2012-02-15 哈尔滨工程大学 一种数据机密性和完整性保护方法
CN103684790A (zh) * 2013-12-17 2014-03-26 北京邮电大学 基于历史数据的验证方法和系统
CN104350703A (zh) * 2012-06-04 2015-02-11 西门子公司 消息的安全传输
CN104506560A (zh) * 2015-01-13 2015-04-08 中国人民解放军总参谋部工程兵科研三所 一种动态参量无线测试网络的安全保密方法
CN104852922A (zh) * 2015-05-26 2015-08-19 陈彬 基于分布式文件系统的大数据加解密方法
CN106067871A (zh) * 2015-04-23 2016-11-02 恩智浦有限公司 用于确保在网络中传送的数据的安全的方法和系统
CN106411964A (zh) * 2016-12-16 2017-02-15 北京瑞卓喜投科技发展有限公司 可追溯的加密数据的传输方法及装置
CN106603534A (zh) * 2016-12-16 2017-04-26 北京瑞卓喜投科技发展有限公司 共享可追溯的加密数据的系统
CN108369628A (zh) * 2015-12-18 2018-08-03 亚马逊科技公司 提供可运送存储装置以及从可运送存储装置提取数据
CN109479194A (zh) * 2016-07-18 2019-03-15 瑞典爱立信有限公司 加密安全性以及完整性保护
CN110311773A (zh) * 2019-06-28 2019-10-08 兆讯恒达微电子技术(北京)有限公司 一种高级加密标准协处理器防注入式攻击的方法
CN112152805A (zh) * 2020-09-25 2020-12-29 兴唐通信科技有限公司 一种认证加密方法、验证解密方法和通信方法
WO2022174419A1 (zh) * 2021-02-20 2022-08-25 华为技术有限公司 一种根密钥保护方法和系统
US11514175B2 (en) 2015-12-18 2022-11-29 Amazon Technologies, Inc. Provisioning of a shippable storage device and ingesting data from the shippable storage device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040247126A1 (en) * 2003-06-04 2004-12-09 Mcclellan Stanley Archer Wireless network and methods for communicating in a wireless network
CN100337442C (zh) * 2003-06-27 2007-09-12 华为技术有限公司 一种在无线局域网中进行数据完整性保护的方法
KR100930577B1 (ko) * 2006-11-13 2009-12-09 한국전자통신연구원 스트림 암호를 이용한 메시지 인증 코드 생성 방법과스트림 암호를 이용한 인증 암호화 방법 및 스트림 암호를이용한 인증 복호화 방법

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102291377A (zh) * 2010-06-17 2011-12-21 侯方勇 一种数据安全传送方法和装置
CN102355352A (zh) * 2011-07-24 2012-02-15 哈尔滨工程大学 一种数据机密性和完整性保护方法
CN104350703B (zh) * 2012-06-04 2018-01-09 西门子公司 消息的安全传输
CN104350703A (zh) * 2012-06-04 2015-02-11 西门子公司 消息的安全传输
CN103684790A (zh) * 2013-12-17 2014-03-26 北京邮电大学 基于历史数据的验证方法和系统
CN104506560A (zh) * 2015-01-13 2015-04-08 中国人民解放军总参谋部工程兵科研三所 一种动态参量无线测试网络的安全保密方法
CN104506560B (zh) * 2015-01-13 2018-04-27 中国人民解放军总参谋部工程兵科研三所 一种动态参量无线测试网络的安全保密方法
CN106067871B (zh) * 2015-04-23 2021-08-13 恩智浦有限公司 用于确保在网络中传送的数据的安全的方法和系统
CN106067871A (zh) * 2015-04-23 2016-11-02 恩智浦有限公司 用于确保在网络中传送的数据的安全的方法和系统
CN104852922B (zh) * 2015-05-26 2018-10-02 陈彬 基于分布式文件系统的大数据加解密方法
CN104852922A (zh) * 2015-05-26 2015-08-19 陈彬 基于分布式文件系统的大数据加解密方法
CN108369628A (zh) * 2015-12-18 2018-08-03 亚马逊科技公司 提供可运送存储装置以及从可运送存储装置提取数据
US11921870B2 (en) 2015-12-18 2024-03-05 Amazon Technologies, Inc. Provisioning of a shippable storage device and ingesting data from the shippable storage device
US11514175B2 (en) 2015-12-18 2022-11-29 Amazon Technologies, Inc. Provisioning of a shippable storage device and ingesting data from the shippable storage device
CN109479194A (zh) * 2016-07-18 2019-03-15 瑞典爱立信有限公司 加密安全性以及完整性保护
US11569988B2 (en) 2016-07-18 2023-01-31 Telefonaktiebolaget Lm Ericsson (Publ) Security of ciphering and integrity protection
CN106603534A (zh) * 2016-12-16 2017-04-26 北京瑞卓喜投科技发展有限公司 共享可追溯的加密数据的系统
CN106411964A (zh) * 2016-12-16 2017-02-15 北京瑞卓喜投科技发展有限公司 可追溯的加密数据的传输方法及装置
CN110311773A (zh) * 2019-06-28 2019-10-08 兆讯恒达微电子技术(北京)有限公司 一种高级加密标准协处理器防注入式攻击的方法
CN110311773B (zh) * 2019-06-28 2022-05-17 兆讯恒达科技股份有限公司 一种高级加密标准协处理器防注入式攻击的方法
CN112152805A (zh) * 2020-09-25 2020-12-29 兴唐通信科技有限公司 一种认证加密方法、验证解密方法和通信方法
WO2022174419A1 (zh) * 2021-02-20 2022-08-25 华为技术有限公司 一种根密钥保护方法和系统
CN115226416A (zh) * 2021-02-20 2022-10-21 华为技术有限公司 一种根密钥保护方法和系统
CN115226416B (zh) * 2021-02-20 2024-05-03 华为技术有限公司 一种根密钥保护方法和系统

Also Published As

Publication number Publication date
CN101478548B (zh) 2012-07-04

Similar Documents

Publication Publication Date Title
CN101478548B (zh) 数据传输的加密和完整性校验方法
US10482291B2 (en) Secure field-programmable gate array (FPGA) architecture
Aman et al. Low power data integrity in IoT systems
KR101725847B1 (ko) 키 복원 공격들을 좌절시키기 위한 대책으로서 송신기-수신기 페어링을 위한 마스터 키 암호화 기능들
US9166793B2 (en) Efficient authentication for mobile and pervasive computing
CN103986583B (zh) 一种动态加密方法及其加密通信系统
US6535607B1 (en) Method and apparatus for providing interoperability between key recovery and non-key recovery systems
CN104023013A (zh) 数据传输方法、服务端和客户端
KR102619383B1 (ko) 에폭 키 교환을 이용한 종단간 이중 래칫 암호화
KR101608815B1 (ko) 폐쇄형 네트워크에서 암복호화 서비스 제공 시스템 및 방법
CN104158653A (zh) 一种基于商密算法的安全通信方法
WO2016058404A1 (zh) 基于预共享密钥的实体鉴别方法及装置
Rege et al. Bluetooth communication using hybrid encryption algorithm based on AES and RSA
US20220021526A1 (en) Certificateless public key encryption using pairings
Shaikh et al. LSec: Lightweight security protocol for distributed wireless sensor network
CN101808089A (zh) 基于非对称加密算法同态性的秘密数据传输保护方法
CN103117851A (zh) 一种公钥机制实现防篡改防抵赖的加密控制方法及装置
Premnath et al. Application of NTRU cryptographic algorithm for SCADA security
CN113312608A (zh) 一种基于时间戳的电力计量终端身份认证方法及系统
Li et al. Lightweight secure communication mechanism towards UAV networks
CN107659405B (zh) 一种变电站主子站间数据通信的加密解密方法
CN107534552A (zh) 交易完整性密钥的分发和验证
KR101929355B1 (ko) 고유 일련번호 및 대칭키를 이용한 암복호화 시스템
Toğay et al. Secure gateway for the internet of things
CN110365482B (zh) 一种数据通信方法和装置

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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160711

Address after: 200241, building 4, building 555, Dongchuan Road, Shanghai, Minhang District, 303B

Patentee after: SHANGHAI GUANYUAN INFORMATION TECHNOLOGY CO., LTD.

Address before: 200240 Dongchuan Road, Shanghai, No. 800, No.

Patentee before: Shanghai Jiao Tong University

TR01 Transfer of patent right

Effective date of registration: 20200629

Address after: 2 / F, 979 Yunhan Road, Lingang xinpian District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai 200120

Patentee after: Shanghai Guanhui information technology partnership (limited partnership)

Address before: 200241, building 4, building 555, Dongchuan Road, Shanghai, Minhang District, 303B

Patentee before: SHANGHAI GUANYUAN INFORMATION TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201202

Address after: 201601 Shanghai city Songjiang District Sijing Town Cultural Road No. 298

Patentee after: Guanyuan (Shanghai) Technology Co., Ltd

Address before: 2 / F, 979 Yunhan Road, Lingang xinpian District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai 200120

Patentee before: Shanghai Guanhui information technology partnership (limited partnership)

TR01 Transfer of patent right