CN102724041B - 一种基于隐写术的密钥传输与密钥更新方法 - Google Patents

一种基于隐写术的密钥传输与密钥更新方法 Download PDF

Info

Publication number
CN102724041B
CN102724041B CN201210186521.1A CN201210186521A CN102724041B CN 102724041 B CN102724041 B CN 102724041B CN 201210186521 A CN201210186521 A CN 201210186521A CN 102724041 B CN102724041 B CN 102724041B
Authority
CN
China
Prior art keywords
key
communication party
algorithm
communication
transmission
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
CN201210186521.1A
Other languages
English (en)
Other versions
CN102724041A (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.)
Beihang University
Original Assignee
Beihang 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 Beihang University filed Critical Beihang University
Priority to CN201210186521.1A priority Critical patent/CN102724041B/zh
Publication of CN102724041A publication Critical patent/CN102724041A/zh
Application granted granted Critical
Publication of CN102724041B publication Critical patent/CN102724041B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种基于隐写术的密钥传输与密钥更新方法,应用于信息安全领域中。本方法由通信方A设置通信类型、加密算法和隐写算法,选定隐写载体并生成通信标识符,然后进行传输密钥的更新或会话密钥的传输过程;在更新时选定新的传输密钥,生成时戳及签名,对传输密钥加密和隐写,生成密钥更新信息发送给通信方B,通信方B进行验证、解隐写和解密得到传输密钥;在传输时选定会话密钥,生成时戳及签名,将会话密钥加密和隐写,生成密钥传输信息给通信方B,通信方B进行验证、解隐写和解密得到会话密钥。本发明用隐写术将密钥隐藏,有效保护了密钥传输和密钥更新过程中的密文数据格式,并可实现多种加解密算法会话密钥的安全传输。

Description

一种基于隐写术的密钥传输与密钥更新方法
技术领域
本发明涉及密钥管理技术和隐写术,属于信息安全领域,具体是提出一种基于隐写术的密钥传输与密钥更新方法,将隐写术用于包括密钥传输、密钥更新在内的密钥管理过程之中。
背景技术
信息作为一种资源,它的普遍性、共享性、增值性、可处理性和多效用性,使其对于人类具有特别重要的意义。随着科学技术日新月异的发展,互联网络用户日益增多,传输信息在越发海量的同时更为敏感,信息资源受到威胁、干扰和破坏的可能性将大大提高;除了网络安全问题,个人电脑数据存储,电子政务系统(涉及国家机密),及各种银行、股票交易场所等电子商务建设的健康发展都以安全为前提,这些都给信息安全技术的发展带来新的要求和挑战。
信息安全中的关键技术是密码学,密码学是研究密码编制和密码破译的技术科学,密码系统的两个基本要素是数据加解密算法及其相应的密钥管理方案。
数据加解密是一些公式和法则,它规定了明文和密文之间的变换方法。数据加密技术分为两类:对称加密技术(单钥加密)和非对称加密技术(公钥加密),对称加密技术进一步包括分组密码和序列密码。由于密码系统的反复使用,仅靠加密算法难以保证信息的安全。现代密码技术的一个特点是密码算法公开,于是在密码系统中,密钥往往是真正的秘密信息。密钥管理是密码应用领域中最困难也是最关键的一项技术。因为如果密钥本身得不到保护,整个系统的安全性将受到极大威胁。
密钥管理所要解决的最主要问题是密钥的安全共享,为了达到这一目标,一般采用特定的密钥传输或密钥更新方案。然而,现有密钥管理方案大多单纯采用加密算法,仅仅隐藏了传递的信息内容,没有有效保护信息的传递格式。在实际运用中,传递数据的某些特征位信息可能被攻击者破解,而这些特征位信息恰恰包含关键的内容,如数据长度、密钥的最低比特等等,方案仍然存在安全性方面的问题。
另一方面,算法可调对于密钥管理方案变的愈发重要,就单个通信方来讲,由于通信情形和通信对象的不同,会话通信所使用的算法需要灵活变换。比如:对于敏感或私人信息,通信方可选择安全性能较强的分组加密算法加密;而当会话通信数据量很大时,选择加解密速率高的序列加密算法会使通信更加快捷。算法可调给密钥传输、密钥更新等过程提出了更高的要求,但现有方案通常只针对一种加密算法进行处理,很少考虑多种算法的兼容和共用。
在实际运用中,由于非对称加密算法的运行速度比对称加密算法的速度慢很多,当加密大量的数据时,通常采用对称加密算法,提高加解密速度。但用于加密的密钥必须与需要对消息进行解密的所有人一起共享,对称密码的密钥管理也日益暴露出以下两大缺点:
(1)认证问题:对称密码体制不能实现签名,不能防止消息的发送者对消息进行抵赖的行为;
(2)应用基于对称密码的中心服务结构,能缓解上述问题。但要求中心服务器必须随时在线,这就意味着中心服务器是整个通信成败的关键和受攻击的焦点,也将成为一个庞大组织通信服务的“瓶颈”。
发明内容
为了克服上述密钥管理方案的不足,本发明提出一种基于隐写术的密钥传输与密钥更新方法。
本发明的涉及6种密钥类型:主密钥、密钥更新密钥、传输密钥、更新隐写密钥、传输隐写密钥以及会话密钥,具体定义如下:
主密钥:用户自己选择的私有密钥,长度为128比特,采用物理方法存储;
密钥更新密钥:由通信双方约定后保持固定,长度为256比特,用于密钥更新过程中;可根据需要进行截断使用;采用主密钥加密存储;
传输密钥:由通信双方进行密钥更新操作产生,长度为256比特,用于密钥传输过程中;可根据需要进行截断使用;采用主密钥加密存储;
上述本地存储的加解密均使用128位密钥长度的AES(Advanced Encryption Standard,高级加密标准)算法。
更新隐写密钥:为对密钥更新密钥采用SHA-1算法作用后的哈希值,长度为160比特,用于密钥更新过程中;在每次使用时通过计算生成,不进行存储;SHA为Secure HashAlgorithm的简写,译作安全散列算法;
传输隐写密钥:为对传输密钥采用SHA-1算法作用后的哈希值,长度为160比特,用于密钥传输过程中;在每次使用时通过计算生成,不进行存储;
会话密钥:在每次数据通信过程中产生,通信结束后销毁,密钥长度根据不同加密算法可变;会话密钥用于通信中的加解密。
本发明提出的一种基于隐写术的密钥传输与密钥更新方法,所应用的通信双方为A和B,具体包括以下步骤:
步骤1:由通信方A进行通信初始化,即用主密钥解密传输密钥;
步骤2:通信方A进行系统设置,包括:(1)通信设置;(2)总体设置,包括:选择通信类型、加密算法和隐写算法;(3)选定隐写载体;(4)对隐写载体进行白噪声处理;(5)生成5位长度的通信标识符,通信标识符的第1位标识通信类型,第2、3位标识加密算法,第4、5位标识隐写算法;
步骤3:若A需更新传输密钥,则进行传输密钥的更新环节,转步骤4;如不需更新,则进行会话密钥的传输环节,转步骤5;
步骤4:通信方A、B对传输密钥进行更新,然后转步骤2执行;
步骤5:通信方A根据加密算法选定会话密钥;
步骤6:通信方A生成本地时戳,单位精确到秒;
步骤7:通信方A用RSA算法对步骤6中产生的时戳进行签名,生成RSA签名信息;
步骤8:通信方A计算传输隐写密钥,产生密钥传输信号,发送给通信方B;
步骤9:通信方B进行通信初始化,用主密钥解密传输密钥;
步骤10:通信方B识别通信标识符,自动配置所选加密算法及隐写算法,使用相应解密算法和传输密钥解密信息;
步骤11:通信方B对通信方A的签名进行验证。若验证通过,则转步骤12;若不通过,则返回相应的提示信息给通信方A,并中止通信;
步骤12:通信方B进一步对通信方A的时戳进行验证。若验证通过,则转步骤13;若不通过,则返回相应的提示信息给通信方A,并中止通信;
步骤13:通信方B计算传输隐写密钥,并使用传输隐写密钥和相应隐写算法对图像进行解隐写操作,提取出会话密钥的密文;
步骤14:通信方B使用传输密钥和相应解密算法对会话密钥的密文进行解密操作,得到会话密钥;
步骤15:通信方B计算会话密钥的MD5哈希校验值,作为密钥传输验证信号返回给通信方A;
步骤16:通信方A接收通信方B发送的密钥传输验证信号后,进行哈希校验,若验证通过,则通信方A发送传输反馈信号给通信方B;若不通过,则转步骤5,重新进行会话密钥的选取和传输;
步骤17:通信方B接收来自通信方A的传输反馈信号,密钥传输完成;
步骤18:通信方A和B进行会话通信,通信结束后双方使用主密钥加密并存储传输密钥,并销毁会话密钥与传输隐写密钥。
所述的步骤2具体包括如下步骤:
步骤2.1:通信方A进行通信设置,输入B的通信地址X,进行通信连接;
步骤2.2:通信方A进行总体设置,选择通信类型、数据加密算法和隐写算法,其中可选通信类型包括密钥传输和密钥更新;可选加密算法包括AES算法,Camellia算法,ZUC算法,SNOW 3G算法;可选隐写算法包括OutGuess算法,F5算法,位平面LSB(LeastSignificantBits,最低有效位)算法;
步骤2.3:通信方A选定隐写载体,所选载体可为任何格式的图片,通过设定传输信息量,并根据信息所占比例来确定载体大小;
步骤2.4:通信方A对隐写载体进行白噪声处理,得到处理后的隐写载体,同时删除原载体;
步骤2.5:判断系统设置是否完成,若完成则产生5位长度的通信标识符,若设置出现错误,设置尚未完成,则由A重新进行系统设置。
所述步骤4包括如下步骤:
步骤4.1:通信方A启动密钥更新,使用主密钥解密密钥更新密钥;
步骤4.2:通信方A选定新的传输密钥KS′;
步骤4.3:通信方A产生本地时戳,单位精确到秒;
步骤4.4:通信方A用RSA算法对步骤4.3中产生的时戳进行签名,生成签名信息;
步骤4.5:通信方A计算更新隐写密钥,生成密钥更新信号,发送给通信方B;
步骤4.6:通信方B进行通信初始化,用主密钥分别解密传输密钥、密钥更新密钥;
步骤4.7:通信方B识别通信标识符,自动配置所选数据加解密算法及隐写算法,使用相应解密算法和密钥更新密钥解密信息;
步骤4.8:通信方B对通信方A的签名进行验证。若验证通过,则转步骤4.9;若不通过,则返回给A相应的提示信息,并中止通信;
步骤4.9:通信方B进一步对通信方A的时戳进行验证。若验证通过,则转步骤4.10;若不通过,则返回给通信方A相应的提示信息,并中止通信;
步骤4.10:通信方B计算更新隐写密钥,并使用更新隐写密钥和相应隐写算法对图像进行解隐写操作,提取出传输密钥的密文;
步骤4.11:通信方B使用密钥更新密钥和相应解密算法对传输密钥的密文进行解密操作,得到新的传输密钥KS′;
步骤4.12:通信方B计算新的传输密钥KS′的MD5哈希校验值,作为密钥更新验证信号返回给A;
步骤4.13:通信方A接收通信方B发送的密钥更新验证信号后,进行哈希校验,若验证通过,则A发送更新反馈信号给通信方B;若不通过,则转步骤4.2,重新进行传输密钥的选取和传输;
步骤4.14:通信方B接收来自通信方A的更新反馈信号后,密钥更新过程完成;
步骤4.15:通信双方使用新的传输密钥KS′代替原本的传输密钥,同时销毁更新隐写密钥;通信方B使用主密钥加密并存储传输密钥以及密钥更新密钥;通信方A使用主密钥加密并存储密钥更新密钥,并转步骤2。
本发明的有益效果是:
1、本发明方法在密钥传输和密钥更新过程中利用RSA算法进行签名,能够有效验证通信实体的身份信息,这一方式使时戳和签名两者充分结合,签名结果随时戳变化而不同,从而认证强度得到了提升;
2、用隐写术将密钥隐藏,避免暴露密钥传输和密钥更新过程中的密文数据格式,信息可以在开放的环境(不安全信道)中安全地传送,使密钥更安全;将隐写算法与加密算法进行融合,也同时起到增强数据保密强度的效果;
3、本发明方法为用户提供多种加解密算法与隐写算法的选择,可以根据需要和使用情况随时更换,其中加解密算法中既有分组密码(AES,Camellia),也有序列密码(ZUC,SNOW3G),这使得密钥管理具有更好的兼容性和安全性,也增强了使用上的可扩展性和灵活性;
4、不存在任何中心服务结构,进行通信的双方可直接进行密钥传输和密钥更新的操作,从而消除了中心节点遭到攻击导致整个体系面临瘫痪的问题。
附图说明
图1是本发明的密钥传输与密钥更新方法的整体流程示意图;
图2是本发明的密钥传输与密钥更新方法中步骤2的系统设置过程示意图;
图3是本发明的密钥传输与密钥更新方法中步骤4的密钥更新过程示意图。
具体实施方式
下面将结合附图和具体实施例对本发明作进一步的详细说明。
本发明提供的一种基于隐写术的密钥传输与密钥更新方法,一方面能够实现通信双方会话密钥的安全传输,另一方面,为保证系统安全,当密钥过期或者有即将泄露的危险时,可在传输过程中根据需要对传输密钥进行更新。
为方便说明,用A、B表示通信双方;
进一步,用表示使用对称加密算法T进行加密,表示使用对称加密算法T进行解密,k为加密算法使用的密钥;用表示使用隐写算法U进行隐写,表示使用隐写算法U进行解隐写,其中k'为隐写算法使用的密钥,用P表示隐写载体,用W表示对隐写载体进行白噪声处理;用signature表示RSA签名算法,verification表示RSA签名验证算法;time表示时戳产生的函数,check_time表示时戳校验;用hash1、hash2分别表示SHA-1算法和MD5算法。
KC表示会话密钥,KS表示传输密钥,KS′表示新的传输密钥,KCY表示传输隐写密钥,KGY表示更新隐写密钥,KA,KB分别表示通信方A与B各自的主密钥,KG表示通信方A与通信法B共享的密钥更新密钥。
此外,传输内容包括三部分:标识符sign、加密处理后的消息message和隐写后的图片image。用recognise_sign表示标识符识别操作。
本发明方法中涉及的密钥传输过程如下,如图1所示:
步骤1:通信方A启动通信,使用AES算法与主密钥KA解密得到本地存储的传输密钥KS
步骤2:通信方A进行系统设置,包括通信设置和总体设置,生成通信标识符sign,并产生隐写载体。
如图2所示,步骤2具体包括如下子步骤:
步骤2.1:通信方A进行通信设置,输入B的通信地址,这里选用IP地址进行通信连接。
步骤2.2:通信连接完成后,通信方A进行总体设置:首先A选择通信类型,可根据需要选择密钥传输和密钥更新两种通信方式;然后由A选择数据加密算法,可根据通信情形自由选择,数据加密算法包括分组加密算法AES,Camellia以及序列密码算法ZUC,SNOW 3G算法(其中AES密钥长度为128比特,Camellia为192比特;ZUC和SNOW 3G为256比特,其中包括128比特的密钥和128比特的初始向量),下述以Camellia算法为例进行说明;最后通信方A对隐写算法进行确定,用以对通信过程中的密钥密文格式进行保护,可选隐写算法包括OutGuess算法,F5算法,位平面LSB算法,下述以F5算法为例进行说明。
步骤2.3:通信方A选定隐写载体P,所选载体可为任何格式的图片文件。本发明实施例中选定隐写比例为25%,进而使隐写载体的最大不超过128字节(1024比特),在实现有效隐写的同时简化了通信的规模。若在步骤2.2中通信类型选择为密钥传输,Camellia算法的会话密钥的长度为192比特,由于所选加密算法均无数据扩张,会话密钥密文仍为192比特,载体大小选定为密钥长度与隐写比例的比值,从而隐写载体大小为768比特。在密钥更新过程中,传输密钥长度固定为256比特,则同理有隐写载体大小为1024比特。
步骤2.4:通信方A对步骤2.3中获取的隐写载体P进行白噪声处理,得到处理后的隐写载体W(P),同时删除原载体P。
步骤2.5:判断系统设置是否完成,若设置出现错误,设置尚未完成,则由通信方A重新进行系统设置;若设置已完成,则产生5位长度的通信标识符xijuv,其中首位“x”标识通信类型,取0或1,0标识密钥传输,1标识密钥更新,其后两位“ij”标识数据加密算法,分别用00,01,10,11标识选择AES,Camellia,ZUC,SNOW3G算法,最后两位“uv”标识隐写算法,分别用00,01,10标识OutGuess,F5,位平面LSB算法。由上述步骤2.2可知此时标识符为"x0101"。
步骤3:判断通信标识符的首位,若为0,则进行会话密钥传输环节,转步骤5;若为1,则进行传输密钥的更新环节,转步骤4。
步骤4:此时,可知标识符为"10101",通信方A、B更新传输密钥KS
如图3所示,具体步骤4包括如下子步骤:
步骤4.1:通信方A启动密钥更新,使用AES算法以及主密钥KA解密得到本地存储的密钥更新密钥KG
步骤4.2:通信方A在本地产生新的传输密钥KS',KS′可以为任意字母、数字或符号的随机排列组合,也可以在通信方A的本地密钥池中进行随机选取,密钥长度为256比特;
步骤4.3:通信方A产生本地时戳time(T1);T1表示通信方A的当前时间,精确到秒;
步骤4.4:通信方A产生RSA签名信息signature(time(T1));
步骤4.5:通信方A计算更新隐写密钥,即:
KGY=hash1(KG)
将步骤4.3得到的本地时戳time(T1)与步骤4.4得到的RSA签名信息signature(time(T1)),用数据加密算法加密得到密文message,将步骤4.2得到的新的传输密钥KS′用数据加密算法加密,再将加密后的密文用隐写算法以及隐写载体W(P)隐写,隐写使用更新隐写密钥,得到图片image,将sign、message、image三者进行串联,生成密钥更新信号,发送给通信方B。本发明实施例中,将time(T1)与signature(time(T1))用Camellia加密得到密文message,由于使用Camellia算法,故加密仅使用密钥KG的前192比特。将KS′用Camellia算法加密,其中密钥KG也仅使用前192比特,再将加密后的密文用F5算法以及隐写载体W(P)隐写,隐写使用更新隐写密钥,得到图片image。把标识符"10101"、message、image三者进行串联,生成密钥更新信号,发送给通信方B,如下式:
A:sign=10101,
message = E Camellia _ K G 1 ( time ( T 1 ) , signature ( time ( T 1 ) ) ) ,
image = ( E F 5 _ K GY 2 ( E Camellia _ K G 1 ( K S ′ ) ) → W ( P ) )
步骤4.6:通信方B接收到信号后,进行通信初始化,使用AES算法以及主密钥KB解密本地存储的传输密钥KS以及密钥更新密钥KG
步骤4.7:通信方B识别通信标识符"10101",即:
B:recognise_sign(10101)
由首位为1确定通信类型为密钥更新,并由标识符的2、3位和4、5位自动配置所选数据加解密算法及隐写算法。从而使用算法Camellia和密钥更新密钥KG(仅使用前192比特)解密信息,得到time(T1)和signature(me(T1));即:
B : D Camellia _ K G 1 ( message ) = ( time ( T 1 ) , signature ( time ( T 1 ) ) )
步骤4.8:通信方B对解密得到的数据中的signature(time(T1))进行签名验证,即:
B:verification(signature(me(T1)))
若验证通过,则转步骤4.9;若不通过,则返回给A提示信息“认证失败”,并中止通信;
步骤4.9:通信方B产生本地时戳time(T2),单位精确到秒,与解密得到的时戳time(T1)比较以进行时戳校验,即:
B:time(T2),check_time(me(T1),time(T2))
考虑到通信传输可能的延迟以及A、B本身的操作需用时间,若两个时戳相差小于5分钟,则认为时戳新鲜,时戳验证通过,转步骤4.10;若不通过,则返回给通信方A提示信息“时戳失效”,并中止通信;T2为通信方B的当前本地时间;
步骤4.10:通信方B计算更新隐写密钥,即:
KGY=hash1(KG)
并使用更新隐写密钥与F5算法对图像进行解隐写操作,提取出传输密钥KS′的密文,即:
E Camellia _ K G 1 ( K S ′ ) = D F 5 _ K GY 2 ( image )
步骤4.11:通信方B使用密钥更新密钥KG(仅使用前192比特)和Camellia算法对传输密钥的密文进行解密操作,得到新的传输密钥KS′;即:
B : K S ′ = D Camellia _ K G 1 ( E Camellia _ K G 1 ( K S ′ ) )
步骤4.12:通信方B使用MD5算法计算KS′的哈希值hash2(KS′),作为密钥更新验证信号返回给通信方A;
步骤4.13:通信方A接收通信方B发送的密钥更新验证信号后,进行哈希校验,具体是:通信方A使用MD5算法计算KS'的哈希值,然后判断通信方A计算的哈希值和通信方B发送来的哈希值是否相等。若两个哈希值相等,则验证通过,此时通信方A将128比特的全“1”信号作为更新反馈信号发送给通信方B;若两个哈希值不相等,则验证不通过,转步骤4.2执行,重新进行传输密钥的选取和传输;
步骤4.14:通信方B接收来自通信方A的更新反馈信号后,密钥更新过程完成;
步骤4.15:通信双方使用KS′代替原本的传输密钥KS,销毁更新隐写密钥KGY;通信方B使用AES算法以及主密钥KB加密并存储传输密钥KS′、密钥更新密钥KG;通信方A使用AES算法以及主密钥KA加密并存储密钥更新密钥KG,并转步骤2。
步骤5:密钥更新后,进行传输,此时,标识符为"00101",通信方A、B传输会话密钥KC;如图1所示:通信方A根据会话通信的加密算法Camellia选定其会话密钥KC,会话密钥可以为任意字母、数字或符号的随机排列组合,也可以在通信方A的本地密钥池中进行随机选取,密钥长度由Camellia算法确定,为192比特。
步骤6:通信方A生成本地时戳time(t1);t1表示通信方A的当前时间,精确到秒。
步骤7:通信方A生成RSA签名信息signature(time(t1));
步骤8:通信方A计算传输隐写密钥KCY,即:
KCY=hash1(KS)
KS表示当前传输密钥。将步骤6得到的本地时戳time(t1)与步骤7得到的RSA签名信息signature(time(t1)),用数据加密算法加密得到密文message;将会话密钥KC用加密算法加密,再将加密后的密文用隐写算法以及隐写载体W(P)隐写,隐写使用传输隐写密钥,得到图片image,将sign、message、image三者进行串联,生成密钥传输信号,发送给通信方B。本发明实施例中,将time(t1)与sigature(time(t1))用Camellia加密得到密文message,由于使用Camellia算法,故加密仅使用KS的前192比特。将KC用Camellia算法加密,其中KS也仅使用前192比特,再将加密后的密文用F5算法以及隐写载体W(P)隐写,隐写使用传输隐写密钥,得到图片image。把标识符"00101"、message、image三者进行串联,生成密钥传输信号,发送给通信方B;通信方A发送的密钥传输信号如下:
A:sign=00101,
message = E Camellia _ K S 1 ( time ( t 1 ) , signature ( time ( t 1 ) ) ) ,
image = ( E F 5 _ K CY 2 ( E Camellia _ K S 1 ( K C ) ) → W ( P ) )
步骤9:通信方B进行通信初始化,用AES算法以及主密钥KB解密传输密钥KS
步骤10:通信方B识别通信标识符"00101",即:
B:recognise_sign(00101)
由首位为0确定通信类型为密钥传输,并由标识符的2、3位和4、5位自动配置所选加密算法及隐写算法,使用算法Camellia和传输密钥KS(仅使用前192比特)解密信息,得到time(t1)和signature(time(t1));即:
B : D Camellia _ K S 1 ( message ) = ( time ( t 1 ) , signature ( time ( t 1 ) ) )
步骤11:通信方B对通信方A的签名signature(time(t1))进行验证。即:
B:verification(signature(time(t1)))
若验证通过,则转步骤12;若不通过,则返回给A提示信息“认证失败”,并中止通信。
步骤12:通信方B进一步对通信方A的时戳进行验证,产生本地时戳time(t2),单位精确到秒,与time(t1)进行比较,即:
B:time(t2),check_time(time(t1),time(t2))
若两种差值不超过5分钟,则认为时戳新鲜,时戳验证通过,转步骤13;若不通过,则返回给A提示信息“时戳失效”,并中止通信;t2表示通信方B的当前时间。
步骤13:通信方B计算传输隐写密钥KCY
KCY=hash1(KS)
并使用传输隐写密钥与F5算法对图像进行解隐写操作,提取出会话密钥KC的密文,即:
E Camellia _ K S 1 ( K C ) = D F 5 _ K CY 2 ( image )
步骤14:通信方B使用传输密钥KS(仅使用前192比特)和Camellia算法对会话密钥的密文进行解密操作,得到会话密钥KC
B : K C = D Camellia _ K S 1 ( E Camellia _ K S 1 ( K C ) )
步骤15:通信方B使用MD5算法计算会话密钥KC的哈希值hash2(KC),作为密钥传输验证信号返回给通信方A。
步骤16:通信方A接收通信方B发送的密钥传输验证信号后,进行哈希校验,具体是:通信方A使用MD5算法计算会话密钥KC的哈希值,判断通信方A计算得到的哈希值与通信方B发送来的哈希值是否相等。若两个哈希值相等,则验证通过,则通信方A将即128比特的全“0”信号作为传输反馈信号发送给通信方B;若两个哈希值不相等,则验证不通过,转步骤5执行,重新进行会话密钥的生成和传输。
步骤17:通信方B接收来自通信方A的传输反馈信号,完成密钥传输过程。
步骤18:通信方A和B进行会话通信,通信结束后双方使用AES算法以及各自主密钥加密并存储传输密钥KS,并销毁会话密钥KC和传输隐写密钥KCY
本发明方法用隐写术将密钥隐藏,避免暴露密钥传输和密钥更新过程中的密文数据格式,实现多种加解密算法会话密钥的安全传输,并可在传输过程中根据需要对传输密钥进行密钥更新,避免了现有对称密码的密钥管理方案中中心节点遭到攻击导致整个体系面临威胁的问题。
显而易见地,以上描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

Claims (8)

1.一种基于隐写术的密钥传输与密钥更新方法,应用的通信双方为A和B,其特征在于,该方法包括如下步骤:
步骤1:由通信方A进行通信初始化,用主密钥解密传输密钥;
步骤2:通信方A进行系统设置,包括:(1)通信设置;(2)总体设置,包括:选择通信类型、加密算法和隐写算法;(3)选定隐写载体;(4)对隐写载体进行白噪声处理;(5)生成5位长度的通信标识符sign,通信标识符的第1位标识通信类型,第2、3位标识数据加密算法,第4、5位标识隐写算法;
步骤3:若通信方A需更新传输密钥,执行步骤4,如不需更新,转步骤5执行;
步骤4:通信方A和通信方B对传输密钥进行更新,然后转步骤2执行;
步骤5:通信方A根据加密算法选定会话密钥;
步骤6:通信方A生成时戳,单位精确到秒;
步骤7:通信方A用RSA算法对步骤6中产生的时戳进行签名,生成RSA签名信息;
步骤8:通信方A计算传输隐写密钥,产生密钥传输信号,发送给通信方B;
步骤9:通信方B进行通信初始化,用主密钥解密传输密钥;
步骤10:通信方B识别通信标识符,自动配置所选的加密算法及隐写算法,使用相应的解密算法和传输密钥解密密钥传输信号中的密文message;所述的密文message,是将步骤6得到的时戳time(t1)与步骤7得到的RSA签名信息signature(time(t1)),用加密算法加密得到;
步骤11:通信方B对通信方A的签名进行验证,若验证通过,则转步骤12;若不通过,则返回相应的提示信息给通信方A,并中止通信;
步骤12:通信方B对通信方A的时戳进行验证,若验证通过,则转步骤13;若不通过,则返回相应的提示信息给通信方A,并中止通信;
步骤13:通信方B计算传输隐写密钥,并使用传输隐写密钥和隐写算法,对图像进行解隐写操作,提取出会话密钥的密文;
步骤14:通信方B使用传输密钥和相应解密算法对会话密钥的密文进行解密操作,得到会话密钥;
步骤15:通信方B计算会话密钥的MD5哈希校验值,作为密钥传输验证信号返回给通信方A;
步骤16:通信方A接收通信方B发送的密钥传输验证信号后,进行哈希校验,若验证通过,则通信方A发送传输反馈信号给通信方B;若不通过,则转步骤5;
步骤17:通信方B接收来自通信方A的传输反馈信号,密钥传输完成;
步骤18:通信方A和通信方B进行会话通信,通信结束后双方使用主密钥加密并存储传输密钥,并销毁会话密钥与传输隐写密钥。
2.根据权利要求1所述的密钥传输与密钥更新方法,其特征在于,所述的步骤2具体包括如下子步骤:
步骤2.1:通信方A进行通信设置,输入通信方B的通信地址X,进行通信连接;
步骤2.2:通信方A进行总体设置,选择通信类型、加密算法和隐写算法;其中通信类型包括密钥传输和密钥更新,加密算法包括AES算法、Camellia算法、ZUC算法和SNOW 3G算法;隐写算法包括OutGuess算法、F5算法和位平面LSB算法;其中,AES表示高级加密标准算法;位平面LSB算法表示基于位平面的最低有效位隐藏算法;
步骤2.3:通信方A选定隐写载体,所选载体为任何格式的图片,并通过设定传输信息所占比例,根据传输信息所占比例来确定载体的大小;
步骤2.4:通信方A对隐写载体进行白噪声处理,得到处理后的隐写载体,同时删除原载体;
步骤2.5:判断系统设置是否完成,若完成则产生5位长度的通信标识符,若设置出现错误,设置尚未完成,则由通信方A重新进行系统设置,转步骤2.1执行;所述的5位长度的通信标识符,首位取0或1,0标识密钥传输,1标识密钥更新,其后两位分别用00,01,10,11标识选择AES算法,Camellia算法,ZUC算法,SNOW 3G算法,最后两位分别用00,01,10标识OutGuess,F5,位平面LSB算法。
3.根据权利要求2所述的密钥传输与密钥更新方法,其特征在于,步骤2.3中所述的根据传输信息所占比例来确定载体的大小,其中传输信息所占载体的比例为25%。
4.根据权利要求1所述的密钥传输与密钥更新方法,其特征在于,所述的步骤4具体包括如下子步骤:
步骤4.1:通信方A启动密钥更新,使用主密钥解密,得到密钥更新密钥;
步骤4.2:通信方A选定新的传输密钥KS';
步骤4.3:通信方A产生时戳,单位精确到秒;
步骤4.4:通信方A用RSA算法对步骤4.3产生的时戳进行签名,生成RSA签名信息;
步骤4.5:通信方A根据密钥更新密钥,采用SHA-1算法计算更新隐写密钥,生成密钥更新信号,发送给通信方B;
步骤4.6:通信方B进行通信初始化,用主密钥分别解密传输密钥和密钥更新密钥;
步骤4.7:通信方B识别通信标识符,确定数据加密算法及隐写算法,使用相应解密算法和密钥更新密钥,解密密钥更新信号中的密文message2;所述的密文message2,是将步骤4.3得到的时戳time(T1)与步骤4.4得到的RSA签名信息signature(time(T1)),用加密算法加密得到;
步骤4.8:通信方B对通信方A的RSA签名信息进行验证,若验证通过,则转步骤4.9;若不通过,则返回相应的提示信息给通信方A,并中止通信;
步骤4.9:通信方B对通信方A的时戳进行验证,若验证通过,则转步骤4.10;若不通过,则返回相应的提示信息给通信方A,并中止通信;
步骤4.10:通信方B计算更新隐写密钥,并使用更新隐写密钥和相应隐写算法,对图像进行解隐写操作,提取出传输密钥的密文;
步骤4.11:通信方B使用密钥更新密钥和相应解密算法,对传输密钥的密文进行解密操作,得到新的传输密钥KS';
步骤4.12:通信方B计算新的传输密钥KS'的MD5哈希校验值,作为密钥更新验证信号返回给通信方A;
步骤4.13:通信方A接收到通信方B发送的密钥更新验证信号后,进行哈希校验,若验证通过,则通信方A发送更新反馈信号给通信方B,执行下一步;若不通过,转步骤4.2;
步骤4.14:通信方B接收来自通信方A的更新反馈信号后,密钥更新过程完成;
步骤4.15:通信双方使用新的传输密钥KS'代替原本的传输密钥,同时销毁更新隐写密钥;通信方B使用主密钥加密并存储传输密钥以及密钥更新密钥,通信方A使用主密钥加密并存储密钥更新密钥,然后转步骤2执行。
5.根据权利要求4所述的密钥传输与密钥更新方法,其特征在于,所述的步骤4.5具体是:通信方A计算得到的更新隐写密钥KGY为:
KGY=hash1(KG)
hash1表示SHA-1算法,KG表示步骤4.1得到的密钥更新密钥;
首先,用加密算法加密得到密文message2;然后,将步骤4.2得到的新的传输密钥KS′用加密算法加密,再将加密后的密文用隐写算法以及隐写载体隐写,隐写使用更新隐写密钥,得到图片image;最后,将sign、message2、image三者进行串联,生成密钥更新信号,发送给通信方B。
6.根据权利要求4所述的密钥传输与密钥更新方法,其特征在于,步骤4.9中所述的通信方B对通信方A的时戳进行验证,具体是:通信方B产生时戳time(T2),与解密得到的时戳time(T1)进行比较,若两者差值小于5分钟,则认为时戳新鲜,时戳验证通过,否则,时戳验证不通过。
7.根据权利要求1所述的密钥传输与密钥更新方法,其特征在于,所述的步骤8具体是:通信方A计算得到的传输隐写密钥KCY为:
KCY=hash1(KS)
hash1表示SHA-1算法,KS表示当前传输密钥;
将会话密钥KC用加密算法加密,再将加密后的密文用隐写算法以及隐写载体W(P)隐写,隐写使用传输隐写密钥,得到图片image,将sign、message、image三者进行串联,生成密钥传输信号,发送给通信方B。
8.根据权利要求1所述的密钥传输与密钥更新方法,其特征在于,步骤12中所述的通信方B对通信方A的时戳进行验证,具体是:通信方B产生时戳time(t2),与解密得到的时戳time(t1)进行比较,若两者差值小于5分钟,则认为时戳新鲜,时戳验证通过,否则,时戳验证不通过。
CN201210186521.1A 2012-06-07 2012-06-07 一种基于隐写术的密钥传输与密钥更新方法 Active CN102724041B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210186521.1A CN102724041B (zh) 2012-06-07 2012-06-07 一种基于隐写术的密钥传输与密钥更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210186521.1A CN102724041B (zh) 2012-06-07 2012-06-07 一种基于隐写术的密钥传输与密钥更新方法

Publications (2)

Publication Number Publication Date
CN102724041A CN102724041A (zh) 2012-10-10
CN102724041B true CN102724041B (zh) 2014-12-24

Family

ID=46949712

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210186521.1A Active CN102724041B (zh) 2012-06-07 2012-06-07 一种基于隐写术的密钥传输与密钥更新方法

Country Status (1)

Country Link
CN (1) CN102724041B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9419792B2 (en) * 2012-12-28 2016-08-16 Intel Corporation Instruction for accelerating SNOW 3G wireless security algorithm
CN103987037A (zh) * 2014-05-28 2014-08-13 大唐移动通信设备有限公司 一种保密通信实现方法及装置
CN104217175B (zh) * 2014-09-05 2018-04-20 北京邮电大学 一种数据读写方法和装置
CN104579645B (zh) * 2015-01-26 2017-07-14 中国科学院半导体研究所 基于aes加密系统的密钥更新方法
CN105025036B (zh) * 2015-08-07 2018-08-17 北京环度智慧智能技术研究所有限公司 一种基于互联网的认知能力测试值加密和传输方法
CN105429959B (zh) 2015-11-02 2019-08-16 北京旷视科技有限公司 图像处理方法及客户端设备、图像验证方法及服务器
CN105719225B (zh) * 2015-12-31 2018-12-11 杨春芳 一种基于小波绝对矩的图像lsb匹配隐写的密钥还原方法
CN107579818B (zh) * 2017-09-15 2020-06-30 杭州安恒信息技术股份有限公司 通信数据交互方法及通信系统
CN110189486A (zh) * 2019-05-24 2019-08-30 上海银行股份有限公司 自助机具密钥自动下发方法
CN110289950B (zh) * 2019-05-29 2021-11-09 北京链化未来科技有限公司 一种密钥信息生成方法及装置
CN111314207B (zh) * 2020-01-20 2022-04-05 合肥高维数据技术有限公司 一种即时通讯接收方法、装置和设备
CN111988639B (zh) * 2020-06-16 2022-10-21 北卡科技有限公司 一种基于国密算法和可逆隐写术的视频加密及解密方法
CN115065472B (zh) * 2022-08-18 2022-11-08 广州万协通信息技术有限公司 基于多密钥加密解密的安全芯片加密解密方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101282211A (zh) * 2008-05-09 2008-10-08 西安西电捷通无线网络通信有限公司 一种密钥分配方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1033008A2 (en) * 1997-08-28 2000-09-06 Syndata Technologies, Inc. Encryption system for secure data
FR2944667A1 (fr) * 2009-04-16 2010-10-22 Miyowa Procede pour authentifier un terminal mobile client aupres d'un serveur distant

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101282211A (zh) * 2008-05-09 2008-10-08 西安西电捷通无线网络通信有限公司 一种密钥分配方法

Also Published As

Publication number Publication date
CN102724041A (zh) 2012-10-10

Similar Documents

Publication Publication Date Title
CN102724041B (zh) 一种基于隐写术的密钥传输与密钥更新方法
US11271730B2 (en) Systems and methods for deployment, management and use of dynamic cipher key systems
CN104270249B (zh) 一种从无证书环境到基于身份环境的签密方法
CN108683688A (zh) 一种基于数字信封技术实现信息传输安全的方法
EP2461564A1 (en) Key transport protocol
US9705683B2 (en) Verifiable implicit certificates
CN101296075B (zh) 一种基于椭圆曲线的身份认证系统
US10742426B2 (en) Public key infrastructure and method of distribution
US20210357914A1 (en) Constructing a Distributed Ledger Transaction on a Cold Hardware Wallet
US11870891B2 (en) Certificateless public key encryption using pairings
CN110198295A (zh) 安全认证方法和装置及存储介质
CN104901935A (zh) 一种基于cpk的双向认证及数据交互安全保护方法
CN104301108A (zh) 一种从基于身份环境到无证书环境的签密方法
CN109309566B (zh) 一种认证方法、装置、系统、设备及存储介质
CN111277412A (zh) 基于区块链密钥分发的数据安全共享系统及方法
CN110545169A (zh) 基于非对称密钥池和隐式证书的区块链方法和系统
CN103493428A (zh) 数据加密
CN110519226B (zh) 基于非对称密钥池和隐式证书的量子通信服务端保密通信方法和系统
CN102598575A (zh) 用于对密码保护的有效数据单元加速解密的方法和系统
CN108933659A (zh) 一种智能电网的身份验证系统及验证方法
JPH0969831A (ja) 暗号通信システム
KR20060078768A (ko) 사용자 개인키의 분산 등록을 이용한 키 복구 시스템 및그 방법
CN104184581B (zh) 一种带符号二次剩余类群中的公钥加密方法
JP5932709B2 (ja) 送信側装置および受信側装置
KR20200055672A (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
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Zhang Xiao

Inventor after: Guo Binghui

Inventor after: Tang Shaoting

Inventor after: Zheng Zhiming

Inventor after: Yao Wang

Inventor after: Wang Sitao

Inventor after: Wang Zhao

Inventor after: Yao Dandan

Inventor before: Zheng Zhiming

Inventor before: Zhang Xiao

Inventor before: Qiu Wangjie

Inventor before: Zhang Yao

Inventor before: Yao Dandan

Inventor before: Wang Chengqi

Inventor before: Gao Yujuan

Inventor before: Li Ying

Inventor before: Wu Yanfei

Inventor before: Wang Sitao

Inventor before: Wang Zhao

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: ZHENG ZHIMING ZHANG YAO YAO DANDAN WANG CHENGQI GAO YUJUAN LI YING WU YANFEI WANG SITAO WANG ZHAO ZHANG XIAO QIU WANGJIE TO: ZHANG XIAO GUO BINGHUI TANG SHAOTING ZHENG ZHIMING YAO WANG WANG SITAO WANG ZHAO YAO DANDAN

C14 Grant of patent or utility model
GR01 Patent grant