CN113067705A - 一种连接建立中身份验证的方法 - Google Patents
一种连接建立中身份验证的方法 Download PDFInfo
- Publication number
- CN113067705A CN113067705A CN202110394903.2A CN202110394903A CN113067705A CN 113067705 A CN113067705 A CN 113067705A CN 202110394903 A CN202110394903 A CN 202110394903A CN 113067705 A CN113067705 A CN 113067705A
- Authority
- CN
- China
- Prior art keywords
- password
- hmm model
- server
- client
- generates
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/067—Network architectures or network communication protocols for network security for supporting key management in a packet data network using one-time keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种连接建立中身份验证的方法,属于数据安全传输技术领域。本发明客户端在与服务端建立传输联系前,服务端先发送一段随机的包含隐藏观测序列和可观测序列的数据包给客户端,并据此生成一个口令,然后客户端收到HMM模型后,通过机器学习算法求解出观测序列概率,生成另一口令,并由该口令生成新的HMM模型,再将该HMM模型发送给服务端,服务端收到后据此生成口令,并与最初生成的口令进行验证,在验证正确后,建立连接。
Description
技术领域
本发明涉及数据安全传输技术领域,尤其涉及一种连接建立中身份验证的方法。
背景技术
在通信系统中,客户端请求通信时,服务端在连接建立中需要进行客户端的身份验证,只有验证通过,才认为是合法用户,才会建立连接。因此连接建立过程中的身份验证尤为重要,可以避免非法用户通过非法手段篡改信息,骗取身份验证的合法性。
数据加密一直是保密数据的重要部分,目前已经有很多比较成熟的加密方式。常见的加密算法有可逆加密算法和不可逆加密算法,可逆加密算法又分为对称加密算法和非对称加密算法。在大部分情况下,相互通信的双方都需要建立一个有效和安全的加密和解密方式,并且需要在安全性和性能消耗间做取舍。而且,无论是对称加密还是非对称加密,密钥都是提前生成的,不可以在传输的过程中更改。在通讯过程中密钥是绝对关键的一环,如果密钥在某些情况下,如内部人员泄漏等,也就意味着所有建立的通讯都是不安全的。
中国专利申请文献CN110121170A中,公开了一种基于加密技术的移动网络身份验证方法,通过移动终端与智能设备建立近场通信,所述移动终端发起与移动网络服务器的连接请求并获取动态授权码,智能设备将加密后的身份验证信息、设备参数转发至移动网络服务器,通过两重身份验证能够实现智能设备的方便快捷加入移动网络的同时对使用者的身份进行验证。该方法中智能设备借助移动终端从移动网络服务器获取动态授权码,并将加密的身份验证信息发送至移动网络服务器。虽然是双重身份验证,但是需要借助移动终端完成,授权码提前生成,在传输过程中不可变。
现有技术至少存在以下不足:
1.现有的技术中,密钥提前生成,不可以在传输的过程中更改,有被内部泄漏的风险。
发明内容
为解决现有技术中存在的技术问题,本发明提供了一种连接建立过程中身份验证的方法,该方法在每次建立通讯前,服务端随机生成第一HMM模型,并根据第一HMM模型生成口令K1,然后服务端将第一HMM模型发送给客户端,客户端根据收到的第一HMM模型生成口令K2,并由口令K2生成第二HMM模型,并将第二HMM模型发送给服务端,服务端收到第二HMM模型后生成口令K3,将口令K3与口令K1比较,如果一致,则身份验证通过,建立连接。在通讯连接建立过程中,不传输口令,且生成口令并不是提前生成固定不变的,而是由HMM模型随机生成,可变,使得通信更安全。
隐马尔可夫模型HMM是马尔可夫链的一种,是机器学习算法中的一个典型算法。它的状态不能直接观察到,但能通过观察向量序列观察到,每个观察向量都是通过某些概率密度分布表现为各种状态,每一个观察向量是由一个具有相应概率密度分布的状态序列产生。这也就意味着隐马尔可夫模型是一个双重随机过程。隐马尔可夫模型可以应用于多种机器学习场景,如输入推荐,智能问答等。
HMM基本模型的几个矩阵和参数值,其本身是有一定的限制的,比如HMM是针对概率问题,所以其矩阵中数据基本是取值(0,1)这个范围,还有状态转移概率分布矩阵每行相加为1,每列相加为1,观察状态概率矩阵每行相加为1等等,这些都是由于HMM针对的是概率问题。本发明利用了HMM模型的算法逻辑,但对各矩阵中的数据不设限制,各行各列的和可以大于1,为了计算的方便采用整数。
本发明提供了一种连接建立中的身份验证方法,包括以下步骤:
服务端随机生成第一HMM模型,并根据第一HMM模型生成口令K1;
服务端将第一HMM模型发送给客户端;
客户端根据接收到的第一HMM模型生成口令K2;
客户端根据口令K2生成第二HMM模型,并将第二HMM模型发送给服务端;
服务端根据接收到的第二HMM模型得到口令K3;
服务端判断口令K3与口令K1是否相同,若相同,则建立连接;若不同,则不建立连接,退出程序。
优选地,根据HMM模型生成口令具体为将HMM模型的条件概率作为口令;
优选地,所述客户端根据接收到的第一HMM模型生成口令K2具体为客户端根据接收到的第一HMM模型通过前向算法生成口令K2。
优选地,所述服务端根据接收到的第二HMM模型得到口令K3具体为服务端根据接收到的第二HMM模型通过前向算法得到口令K3。
优选地,根据HMM模型生成口令具体包括如下步骤:
对于HMM模型λ=(A,B,∏)和观测系列O={o1,o2,...oT},计算t=1时刻的各隐藏状态的前向概率;
计算t+1时刻的各隐藏状态的前向概率;
所述前向概率为t时刻隐藏状态i的观测系列为O={o1,o2,...oT}的概率;
T为观测序列长度。
优选地,所述连接建立步骤具体包括如下步骤:
客户端发起连接请求;
服务端接收到连接请求后,随机生成第一HMM模型λ1=(A,B,∏)的一组NxN的状态转移矩阵A、NxM的观察状态概率矩阵B、初始状态转移概率向量∏以及观测序列O={o1,o2,...oT},T为观测序列长度;
服务端根据随机生成的第一HMM模型λ1=(A,B,∏)和观测序列O={o1,o2,...oT}得到口令K1(O|λ1),并保存由αT(i)构成的向量Pα={αT(i)}N;
服务端将第一HMM模型λ1=(A,B,∏)发送给客户端;
客户端接收到第一HMM模型λ1=(A,B,∏)后,根据接收到的第一HMM模型利用所述前向算法生成口令K2(O|λ1);
客户端根据口令K2随机生成第二HMM模型λ2=(A2,B2,∏2),将第二HMM模型发送给服务端;
服务端接收到第二HMM模型后,根据第二HMM模型通过所述前向算法得到口令K3;
如果口令K3与口令K1不同,则身份验证不通过,不建立连接,并记录客户端IP地址;如果口令K3与口令K1相同,则身份验证通过,建立连接。
优选地,通过在(1,N)范围内随机取值,随机生成观测序列O={o1,o2,...oT},其中,N为HMM模型中的状态数,T为观测序列长度。
优选地,在所述HMM模型的各矩阵中,各行的和或各列的和大于1。
本发明提供了一种通信系统,使用上述的连接建立中身份验证的方法。
本发明还提供了一种数据加密传输方法,包括以下步骤:
连接建立后,发送方利用连接建立过程中的口令,对需要加密传输的原始数据进行初步加密,得到结果向量;
发送方根据该结果向量反向构造出对应的HMM模型;
发送方将构造的HMM模型发送给接收端;
接收端根据接收到的HMM模型解密得到初步加密的数据;
接收端再根据连接建立过程中的口令还原出原始数据;
数据传输结束时,将所有口令销毁,断开连接。
优选地,所述数据加密传输方法具体包括如下步骤:
发送端采用连接建立过程中的口令处理需要加密传输的原始向量数据D={di}N,得到初步加密向量D'={d'i}N;
用初步加密数据向量替代向量Pα,令αT(i)=d'i;
其中,Pα为由αT(i)构成的向量,Pα={αT(i)}N,为连接建立过程随机生成并保存的口令;
随机给定状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观测序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-1)xN数据,T为观测序列长度;
根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令Pα={αT(i)}N,求解得到观察概率矩阵B中的N个未知数的值,并确定HMM模型λ=(A,B,∏);
发送端将HMM模型发送给接收端;
接收端接收到HMM模型后,用HMM前向算法得到初步加密向量D'={d'i}N;
接收端根据连接建立过程中保存的口令解密得到原始数据D={di}N;
数据传输结束时,将所有口令销毁,断开连接。
根据口令生成HMM模型的做法,核心是对前向算法的运用。在假定已经随机给出了状态转移矩阵A和初始状态转移概率向量∏之后,根据前向算法求得条件概率的N个累加值,即中的αT(i),事实上由于口令P和N个累加值是已知的,也就意味着可以得到N个方程组成的方程组,方程中的未知数便是观测概率矩阵B,所以解方程前,需要随机生成观测概率矩阵B的N*(N-1)个值,剩余的N个值便可以通过方程求解得到,便得到了完整的HMM模型。
本发明还提供了一种通信系统,使用上述的数据加密传输方法。
本发明还提供了一种数据补全和数据加密传输方法,包括以下步骤:
发送端利用连接建立过程中的口令对要原始数据进行初步加密,得到初始处理数据;
随机给定HMM模型条件,给定的所述HMM模型条件中,观察概率矩阵B中含2N个未知数;
用初始处理数据赋予所述观察概率矩阵B的N个未知数,得到含有N个未知数的观察概率矩阵B;
根据连接建立过程中的口令和已经确定的HMM模型条件,得到不含未知数的观察概率矩阵B;
在观察概率矩阵B中剔除初始处理数据,作为训练数据;
将训练数据发送给接收端;
接收端根据接收到的训练数据及连接建立过程中的口令解密得到原始数据;
数据传输结束时,将所有口令销毁,断开连接。
优选地,数据补全和数据加密传输方法中,发送端为服务端时,采用口令K3得到初始处理数据,发送端为客户端时采用口令K2得到初始处理数据。
优选地,数据补全和数据加密传输方法具体包括如下步骤:
发送端采用连接建立过程中的口令处理需要加密传输的原始向量数据H={hi}N,得到初步加密向量H'={h'i}N;
随机给定状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观测序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-2)xN个数据,T为观测序列长度;
将初步加密向量H'={h'i}N的值赋予观察概率矩阵B中剩余2*N个未知数值中的N个未知数的值;
根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令,求解得到观察概率矩阵B中的剩余N个未知数的值,得到观察概率矩阵B;
对观察概率矩阵B进行原始数据向量缺失处理,得到一个缺失N个原始数据后的观察概率矩阵B’,B'=[b'j(k)]N×N;
确定HMM模型λ'=(A,B',∏);
发送端将HMM模型λ'=(A,B',∏)发送给接收端;
接收端接收到HMM模型λ'=(A,B',∏)后,用HMM前向算法得到缺失的初步加密向量H'={h'i}N;
接收端根据连接建立过程中保存的口令解密得到原始数据H={hi}N
数据传输结束时,将所有口令销毁,断开连接。
本发明提供了一种进行数据补全和数据加密传输的系统,其使用上述的数据补全和数据加密传输方法。
与现有技术相对比,本发明的有益效果如下:
1.本发明在双方通信前,服务端随机生成一组HMM模型概率矩阵,并据此生成口令,将HMM模型发送给客户端,客户端根据HMM模型生成口令,并以此口令再生成另一个HMM模型返回服务端,服务端验证口令一致后才建立链接,保证了连接建立的口令是随机生成,不会被泄漏,与验证码方式的身份验证相比,口令生成方式更复杂,能够防御扫描、爬虫、暴力破解等恶意事件破解口令,使得连接建立更安全。
2.本发明在通信过程中,先将原始数据进行简单初步加密,得到一组结果向量,然后以此向量构造HMM模型,随机给定HMM模型中状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观察序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-1)xN数据,根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令向量,求解得到观察概率矩阵B中的N个未知数的值,确定HMM模型λ=(A,B,∏),发送端将确定的HMM模型发送给接收端,接收端根据HMM前向算法和口令,解密得到原始数据,本发明在数据加密传输过程中,HMM模型条件随机给定,并以此进行加解密,使得数据传输更安全。
3.本发明对于需要隐蔽传输的数据,可以隐藏数据,然后再根据HMM模型的机器学习算法自动填补数据,可以实现隐蔽数据的安全传输。
4.本发明在通讯结束后销毁此次通信密钥,下次再次随机生成一组密钥,能够在一定程度上保护通讯的安全,尤其是对一些对保密性要求较高的通讯。
附图说明
图1是本发明的一个实施例的连接建立流程图;
图2是本发明的一个实施例的连接建立后数据加密传输的流程图;
图3是本发明的一个实施例的连接建立后数据隐藏及补全的流程图。
具体实施方式
下面结合附图1-3,对本发明的具体实施方式作详细的说明。
本发明利用了HMM模型的算法逻辑,实际上对于HMM基本模型的几个矩阵和参数值,其本身是有一定的限制的,比如HMM是针对概率问题,所以其矩阵中数据基本是取值(0,1)这个范围,还有状态转移概率分布矩阵每行相加为1,每列相加为1,观察状态概率矩阵每行相加为1等等,这些都是由于HMM针对的是概率问题。本发明结合其算法逻辑,所以其数据限制没必要遵循,可以为了计算的方便采用整数。
下面对本发明中涉及的HMM模型基本概念进行详细描述。
状态转移矩阵A,在HMM模型中原本是事物由一种状态向另外一种状态转移的概率矩阵。假设某个事物有n种状态,表示为Z(z1,z2,z3...,zi,...zn),矩阵中的每个值Aij代表的是t时刻事物状态是zi,到了t+1时刻,其状态变成zj的概率。由于其现实意义,这也就意味着原有HMM模型中状态转移矩阵A的每列和为1,每行和也为1。但本发明对HMM算法进行了改进,不考虑其实际意义,所以不需要考虑各矩阵的概率大小约束。本发明中的状态转移矩阵可以简单看做就是一组普通的矩阵便可,每行的和或每列的和没有为1的限制。
观察状态概率矩阵B,在HMM模型中原本表示的是在某一时刻、某种状态对应的其观察结果的概率。假设某个事物有n中状态,表示为Z(z1,z2,z3...,zi,...zn),可能的观查结果为V(v1,v2,v3,...,vi,...vn)那么矩阵中的每个值Bij代表的是t时刻事物状态为zi所对应观察状态为vj所对应的概率。矩阵也是每一行和为1。同样的,在本发明中,观察状态概率矩阵可以看做是一组普通的矩阵便可。但值得注意的是,本发明在数据加密和数据补全中,都是先随机生成部分观察状态概率矩阵,剩余部分作为缺失量,缺失量的求解要依赖于前向算法,然后解方程组得到。
初始状态转移概率向量∏,是在开始时刻t=0,各个状态的概率,其累加和为1。同样的,在本发明中不需要考虑其现实意义,其随机得到一组普通的向量便可。
本发明提供了一种连接建立中的身份验证方法,包括以下步骤:
服务端随机生成第一HMM模型,并根据第一HMM模型生成口令K1;
服务端将第一HMM模型发送给客户端;
客户端根据接收到的第一HMM模型生成口令K2;
客户端根据口令K2生成第二HMM模型,并将第二HMM模型发送给服务端;
服务端根据接收到的第二HMM模型得到口令K3;
服务端判断口令K3与口令K1是否相同,若相同,则建立连接;若不同,则不建立连接,退出程序。
作为优选实施方式,根据HMM模型生成口令具体为将HMM模型的条件概率作为口令;
作为优选实施方式,所述客户端根据接收到的第一HMM模型生成口令K2具体为客户端根据接收到的第一HMM模型通过前向算法生成口令K2。
作为优选实施方式,所述服务端根据接收到的第二HMM模型得到口令K3具体为服务端根据接收到的第二HMM模型通过前向算法得到口令K3。
作为优选实施方式,根据HMM模型生成口令具体包括如下步骤:
对于HMM模型λ=(A,B,∏)和观测系列O={o1,o2,...oT},计算t=1时刻的各隐藏状态的前向概率;
计算t+1时刻的各隐藏状态的前向概率;
所述前向概率为t时刻隐藏状态i的观测系列为O={o1,o2,...oT}的概率;
T为观测序列长度。
作为优选实施方式,所述连接建立步骤具体包括如下步骤:
客户端发起连接请求;
服务端接收到连接请求后,随机生成第一HMM模型λ1=(A,B,∏)的一组NxN的状态转移矩阵A、NxM的观察状态概率矩阵B、初始状态转移概率向量∏以及观测序列O={o1,o2,...oT},N为HMM模型中的状态数,T为观测序列长度;
服务端根据随机生成的第一HMM模型λ1=(A,B,∏)和观测序列O={o1,o2,...oT}得到口令K1(O|λ1),并保存由αT(i)构成的向量Pα={αT(i)}N;
服务端将第一HMM模型λ1=(A,B,∏)发送给客户端;
客户端接收到第一HMM模型λ1=(A,B,∏)后,根据接收到的第一HMM模型利用所述前向算法生成口令K2(O|λ1);
客户端根据口令K2随机生成第二HMM模型λ2=(A2,B2,∏2),将第二HMM模型发送给服务端;
服务端接收到第二HMM模型后,根据第二HMM模型通过所述前向算法得到口令K3;
如果口令K3与口令K1不同,则身份验证不通过,不建立连接,并记录客户端IP地址;如果口令K3与口令K1相同,则身份验证通过,建立连接。
作为优选实施方式,通过在(1,N)范围内随机取值,随机生成观测序列O={o1,o2,...oT},其中,N为HMM模型中的状态数,T为观测序列长度。
作为优选实施方式,在所述HMM模型的各矩阵中,各行的和或各列的和大于1。
本发明还提供了一种通信系统,使用上述的连接建立中身份验证的方法。
本发明还提供了一种数据加密传输方法,包括以下步骤:
连接建立后,发送方利用连接建立过程中的口令,对需要加密传输的原始数据进行初步加密,得到结果向量,其为某个HMM模型的求解结果向量;
发送方根据该结果向量反向构造出对应的HMM模型;
发送方将构造的HMM模型发送给接收端;
接收端根据接收到的HMM模型解密得到初步加密的数据;
接收端再根据连接建立过程中的口令还原出原始数据;
数据传输结束时,将所有口令销毁,断开连接。
作为优选实施方式,所述数据加密传输方法具体包括如下步骤:
发送端采用连接建立过程中的口令处理需要加密传输的原始向量数据D={di}N,得到初步加密向量D'={d'i}N;
用初步加密数据向量替代向量Pα,令αT(i)=d'i;
其中,Pα为由αT(i)构成的向量,Pα={αT(i)}N,为连接建立过程随机生成并保存的口令;
随机给定状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观测序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-1)xN数据,T为观测序列长度;
根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令Pα={αT(i)}N,求解得到观察概率矩阵B中的N个未知数的值,并确定HMM模型λ=(A,B,∏);
发送端将HMM模型发送给接收端;
接收端接收到HMM模型后,用HMM前向算法得到初步加密向量D'={d'i}N;
接收端根据连接建立过程中保存的口令解密得到原始数据D={di}N;
数据传输结束时,将所有口令销毁,断开连接。
根据口令生成HMM模型具体为通过前向算法得到HMM模型,在连接建立中的身份验证方法中,也采用同样的方法根据口令生成HMM模型。在假定已经随机给出了状态转移矩阵A和初始状态转移概率向量∏之后,根据前向算法求得条件概率的N个累加值,即中的αT(i),事实上由于口令P和N个累加值是已知的,也就意味着可以得到N个方程组成的方程组,方程中的未知数便是观测概率矩阵B,所以解方程前,需要随机生成观测概率矩阵B的N*(N-1)个值,剩余的N个值便可以通过方程求解得到,便得到了完整的HMM模型。
本发明还提供了一种通信系统,使用上述的数据加密传输方法。
本发明提供了一种数据补全和数据加密传输方法,包括以下步骤:
发送端利用连接建立过程中的口令对要原始数据进行初步加密,得到初始处理数据;
随机给定HMM模型条件,给定的所述HMM模型条件中,观察概率矩阵B中含2N个未知数;
用初始处理数据赋予所述观察概率矩阵B的N个未知数,得到含有N个未知数的观察概率矩阵B;
根据连接建立过程中的口令和已经确定的HMM模型条件,得到不含未知数的观察概率矩阵B;
在观察概率矩阵B中剔除初始处理数据,作为训练数据;
将训练数据发送给接收端;
接收端根据接收到的训练数据及连接建立过程中的口令解密得到原始数据;
数据传输结束时,将所有口令销毁,断开连接。
作为优选实施方式,数据补全和数据加密传输方法中,发送端为服务端时,采用口令K3得到初始处理数据,发送端为客户端时采用口令K2得到初始处理数据。
作为优选实施方式,数据补全和数据加密传输方法具体包括如下步骤:
发送端采用连接建立过程中的口令处理需要加密传输的原始向量数据H={hi}N,得到初步加密向量H'={h'i}N;
随机给定状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观测序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-2)xN个数据,T为观测序列长度;
将初步加密向量H'={h'i}N的值赋予观察概率矩阵B中剩余2*N个未知数值中的N个未知数的值;
根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令,求解得到观察概率矩阵B中的剩余N个未知数的值,得到观察概率矩阵B;
对观察概率矩阵B进行原始数据向量缺失处理,得到一个缺失N个原始数据后的观察概率矩阵B’,B'=[b'j(k)]N×N;
确定HMM模型λ'=(A,B',∏);
发送端将HMM模型λ'=(A,B',∏)发送给接收端;
接收端接收到HMM模型λ'=(A,B',∏)后,用HMM前向算法得到缺失的初步加密向量H'={h'i}N;
接收端根据连接建立过程中保存的口令解密得到原始数据H={hi}N;
数据传输结束时,将所有口令销毁,断开连接。
通信口令是贯穿整个通信过程,包括后续的加密和补充,通信口令是本发明中通信搭建的基础,先是作为身份的验证,其次便是在加密和信息补充中密文数据的初步加密和最后反解(因为这也是需要确定这是本次通信指令,否则其他情况下的通信指令是不能最终得到正确的加密数据和补充数据)。通信口令也就是HMM模型中最后得到的条件概率
在已经通过随机产生的数据得到HMM基本模型后,可以随机指定观测序列。在HMM中,观测序列是实际能看到的观察值,然后再按观察值去确定递推条件概率。事实上,观测序列回归到前向算法的计算步骤,其具体含义便是迭代计算中用观察状态矩阵的哪一列去相乘。所以对于一个观察概率矩阵B=[bj(k)]N×N来说,长度为T的观测序列O={o1,o2,...,oT}就是在(1,N)范围内取值,确定观察概率矩阵的哪一列去和上一次迭代的结果进行相乘。所以对于本发明来说,观测序列的随机生成,便是在(1,N)范围内随机取值。
原始的HMM前向算法,其基本流程便是得到一个HMM基本模型,以及观测序列,首先计算t=1时刻的各个隐藏状态前向概率,然后不断迭代,计算下一个时刻的隐藏状态前向概率。也就是通过下面的公式进行迭代:
本发明提供了一种进行数据补全和数据加密传输的系统,其使用上述的数据补全和数据加密传输方法。
实施例1
参照附图1-3,根据本发明的一个具体实施方案,对本发明提供的连接建立过程进行详细说明。
本发明提供了连接建立过程的身份验证,包括如下步骤:
客户端发起连接请求;
服务端接收到连接请求后,随机生成第一HMM模型λ1=(A,B,∏)的一组NxN的状态转移矩阵A、NxM的观察状态概率矩阵B、初始状态转移概率向量∏以及观测序列O={o1,o2,...oT};通过在(1,N)范围内随机取值,随机生成观测序列O={o1,o2,...oT},其中,N为HMM模型中的状态数,T为观测序列长度。
服务端根据随机生成的第一HMM模型λ1=(A,B,∏)和观测序列O={o1,o2,...oT}得到口令K1(O|λ1),并保存由αT(i)构成的向量Pα={αT(i)}N;本发明中在各步骤中的根据HMM模型得到口令具体为将HMM模型的条件概率作为口令;
服务端将第一HMM模型λ1=(A,B,∏)发送给客户端;
客户端接收到第一HMM模型λ1=(A,B,∏)后,根据接收到的第一HMM模型利用所述前向算法生成口令K2(O|λ1);
客户端根据口令K2随机生成第二HMM模型λ2=(A2,B2,∏2),将第二HMM模型发送给服务端;
服务端接收到第二HMM模型后,根据第二HMM模型通过所述前向算法得到口令K3;
如果口令K3与口令K1不同,则身份验证不通过,不建立连接,并记录客户端IP地址;如果口令K3与口令K1相同,则身份验证通过,建立连接。
在所述HMM模型的各矩阵中,各行的和或各列的和大于1。
根据HMM模型得到口令具体包括如下步骤:
对于HMM模型λ=(A,B,∏)和观测系列O={o1,o2,...oT},计算t=1时刻的各隐藏状态的前向概率;
计算t+1时刻的各隐藏状态的前向概率;
所述前向概率为t时刻隐藏状态i的观测系列为O={o1,o2,...oT}的概率;
T为观测序列长度。
根据口令生成HMM模型具体为通过前向算法得到HMM模型。在假定已经随机给出了状态转移矩阵A和初始状态转移概率向量∏之后,根据前向算法求得条件概率的N个累加值,即中的αT(i),事实上由于口令P和N个累加值是已知的,也就意味着可以得到N个方程组成的方程组,方程中的未知数便是观测概率矩阵B,所以解方程前,需要随机生成观测概率矩阵B的N*(N-1)个值,剩余的N个值便可以通过方程求解得到,便得到了完整的HMM模型。
实施例2
参照附图1-3,根据本发明的一个具体实施方案,对本发明提供的数据加密传输过程进行详细说明。
本发明提供了数据加密传输的方法,包括如下步骤:
发送端采用连接建立过程中的口令处理需要加密传输的原始向量数据D={di}N,得到初步加密向量D'={d'i}N;
用初步加密数据向量替代向量Pα,令αT(i)=d'i;
其中,Pα为由αT(i)构成的向量,Pα={αT(i)}N,为连接建立过程随机生成并保存的口令;
随机给定状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观测序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-1)xN数据,T为观测序列长度;
根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令Pα={αT(i)}N,求解得到观察概率矩阵B中的N个未知数的值,并确定HMM模型λ=(A,B,∏);
发送端将HMM模型发送给接收端;
接收端接收到HMM模型后,用HMM前向算法得到初步加密向量D'={d'i}N;
接收端根据连接建立过程中保存的口令解密得到原始数据D={di}N。
根据口令生成HMM模型具体为通过前向算法得到HMM模型。在假定已经随机给出了状态转移矩阵A和初始状态转移概率向量∏之后,根据前向算法求得条件概率的N个累加值,即中的αT(i),事实上由于口令P和N个累加值是已知的,也就意味着可以得到N个方程组成的方程组,方程中的未知数便是观测概率矩阵B,所以解方程前,需要随机生成观测概率矩阵B的N*(N-1)个值,剩余的N个值便可以通过方程求解得到,便得到了完整的HMM模型。
实施例3
参照附图1-3,根据本发明的一个具体实施方案,对本发明提供的数据加密传输过程进行详细说明。
本发明提供了数据加密传输的中数据的隐藏及补全的方法,包括如下步骤:
发送端采用连接建立过程中的口令处理需要加密传输的原始向量数据H={hi}N,得到初步加密向量H'={h'i}N;
随机给定状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观测序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-2)xN个数据,T为观测序列长度;
将初步加密向量H'={h'i}N的值赋予观察概率矩阵B中剩余2*N个未知数值中的N个未知数的值;
根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令,求解得到观察概率矩阵B中的剩余N个未知数的值,得到观察概率矩阵B;
对观察概率矩阵B进行原始数据向量缺失处理,得到一个缺失N个原始数据后的观察概率矩阵B’,B'=[b'j(k)]N×N;
确定HMM模型λ'=(A,B',∏);
发送端将HMM模型λ'=(A,B',∏)发送给接收端;
接收端接收到HMM模型λ'=(A,B',∏)后,用HMM前向算法得到缺失的初步加密向量H'={h'i}N;
接收端根据连接建立过程中保存的口令解密得到原始数据H={hi}N;
数据传输结束时,将所有口令销毁,断开连接。
实施例4
参照附图1-3,根据本发明的一个具体实施方案,下面对本发明的通信过程进行详细说明。
本发明提供了一种连接建立过程中身份验证的方法,包括以下步骤:
服务端随机生成第一HMM模型,并根据第一HMM模型生成口令K1,将;
服务端将第一HMM模型发送给客户端;
客户端根据接收到的第一HMM模型生成口令K2;
客户端根据口令K2生成第二HMM模型,并将第二HMM模型发送给服务端;
服务端根据接收到的第二HMM模型得到口令K3;
服务端判断口令K3与口令K1是否相同,若相同,则建立连接;若不同,则不建立连接,退出程序。
所述连接建立过程中身份验证的方法具体包括如下步骤:
客户端发起连接请求;
服务端接收到连接请求后,随机生成第一HMM模型λ1=(A,B,∏)的一组NxN的状态转移矩阵A、NxM的观察状态概率矩阵B、初始状态转移概率向量∏以及观测序列O={o1,o2,...oT},N为HMM模型中的状态数,T为观测序列长度;
服务端根据随机生成的第一HMM模型λ1=(A,B,∏)和观测序列O={o1,o2,...oT}得到口令K1(O|λ1),并保存由αT(i)构成的向量Pα={αT(i)}N;
服务端将第一HMM模型λ1=(A,B,∏)发送给客户端;
客户端接收到第一HMM模型λ1=(A,B,∏)后,根据接收到的第一HMM模型利用所述前向算法生成口令K2(O|λ1);
客户端根据口令K2随机生成第二HMM模型λ2=(A2,B2,∏2),将第二HMM模型发送给服务端;
服务端接收到第二HMM模型后,根据第二HMM模型通过所述前向算法得到口令K3;
如果口令K3与口令K1不同,则身份验证不通过,不建立连接,并记录客户端IP地址;如果口令K3与口令K1相同,则身份验证通过,建立连接。
连接建立后,还采用如下数据加密传输方法进行传输,包括如下步骤,
连接建立后,发送方利用连接建立过程中的口令,对需要加密传输的原始数据进行初步加密,得到结果向量,其为某个HMM模型的求解结果向量;
发送方根据该结果向量反向构造出对应的HMM模型;
发送方将构造的HMM模型发送给接收端;
接收端根据接收到的HMM模型解密得到初步加密的数据;
接收端再根据连接建立过程中的口令还原出原始数据;
数据传输结束时,将所有口令销毁,断开连接。
所述数据加密传输方法具体包括如下步骤:
发送端采用连接建立过程中的口令处理需要加密传输的原始向量数据D={di}N,得到初步加密向量D'={d'i}N;
用初步加密数据向量替代向量Pα,令αT(i)=d'i;
其中,Pα为由αT(i)构成的向量,Pα={αT(i)}N,为连接建立过程随机生成并保存的口令;
随机给定状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观测序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-1)xN数据,N为HMM模型中的状态数,T为观测序列长度;
根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令Pα={αT(i)}N,求解得到观察概率矩阵B中的N个未知数的值,并确定HMM模型λ=(A,B,∏);
发送端将HMM模型发送给接收端;
接收端接收到HMM模型后,用HMM前向算法得到初步加密向量D'={d'i}N;
接收端根据连接建立过程中保存的口令解密得到原始数据D={di}N。
在数据加密传输中,还可以对需要隐蔽传输的数据采用数据隐藏和补全方法加密传输,具体包括如下步骤:
发送端利用连接建立过程中的口令对要原始数据进行初步加密,得到初始处理数据;
随机给定HMM模型条件,给定的所述HMM模型条件中,观察概率矩阵B中含2N个未知数;
用初始处理数据赋予所述观察概率矩阵B的N个未知数,得到含有N个未知数的观察概率矩阵B;
根据口令和给定的HMM模型条件,得到不含未知数的观察概率矩阵B;
在观察概率矩阵B中剔除初始处理数据,作为训练数据;
将训练数据发送给接收端;
接收端根据接收到的训练数据及口令解密得到原始数据;
数据传输结束时,将所有口令销毁,断开连接。
所述数据隐藏及补全方法具体包括如下步骤:
发送端采用连接建立过程中的口令处理需要加密传输的原始向量数据H={hi}N,得到初步加密向量H'={h'i}N;
随机给定状态转移矩阵A=[aij]N×N、观察结果V={v1,v2,...,vN}、观测序列O={o1,o2,...oT}以及观察概率矩阵B中的(N-2)xN个数据,N为HMM模型中的状态数,T为观测序列长度;
将初步加密向量H'={h'i}N的值赋予观察概率矩阵B中剩余2*N个未知数值中的N个未知数的值;
根据随机给定的初始状态转移概率向量Π=(πi)N和连接建立过程随机生成并保存的口令,求解得到观察概率矩阵B中的剩余N个未知数的值,得到观察概率矩阵B;
对观察概率矩阵B进行原始数据向量缺失处理,得到一个缺失N个原始数据后的观察概率矩阵B’,B'=[b'j(k)]N×N;
确定HMM模型λ'=(A,B',∏);
发送端将HMM模型λ'=(A,B',∏)发送给接收端;
接收端接收到HMM模型λ'=(A,B',∏)后,用HMM前向算法得到缺失的初步加密向量H'={h'i}N;
接收端根据连接建立过程中保存的口令解密得到原始数据H={hi}N;
数据传输结束时,将所有口令销毁,断开连接。
通过在(1,N)范围内随机取值,随机生成观测序列O={o1,o2,...oT},其中,N为HMM模型中的状态数,T为观测序列长度。
在所述HMM模型的各矩阵中,各行的和或各列的和大于1。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均包含在本发明的保护范围之内。
Claims (8)
1.一种连接建立中身份验证的方法,其特征在于,包括以下步骤:
服务端随机生成第一HMM模型,并根据第一HMM模型生成口令K1;
服务端将第一HMM模型发送给客户端;
客户端根据接收到的第一HMM模型生成口令K2;
客户端根据口令K2生成第二HMM模型,并将第二HMM模型发送给服务端;
服务端根据接收到的第二HMM模型得到口令K3;
服务端判断口令K3与口令K1是否相同,若相同,则建立连接;若不同,则不建立连接,退出程序。
2.根据权利要求1所述的连接建立中身份验证的方法,其特征在于,根据HMM模型生成口令具体为将HMM模型的条件概率作为口令。
3.根据权利要求1所述的连接建立中身份验证的方法,其特征在于,所述客户端根据接收到的第一HMM模型生成口令K2具体为客户端根据接收到的第一HMM模型通过前向算法生成口令K2。
4.根据权利要求3所述的连接建立中身份验证的方法,其特征在于,所述服务端根据接收到的第二HMM模型得到口令K3具体为服务端根据接收到的第二HMM模型通过前向算法得到口令K3。
5.根据权利要求4所述的连接建立中身份验证的方法,其特征在于,所述连接建立步骤具体包括如下步骤:
客户端发起连接请求;
服务端接收到连接请求后,随机生成第一HMM模型λ1=(A,B,∏)的一组NxN的状态转移矩阵A、NxM的观察状态概率矩阵B、初始状态转移概率向量∏以及观测序列O={o1,o2,...oT},T为观测序列长度;
服务端根据随机生成的第一HMM模型λ1=(A,B,∏)和观测序列O={o1,o2,...oT}得到口令K1(O|λ1),并保存由αT(i)构成的向量Pα={αT(i)}N;
服务端将第一HMM模型λ1=(A,B,∏)发送给客户端;
客户端接收到第一HMM模型λ1=(A,B,∏)后,根据接收到的第一HMM模型利用所述前向算法生成口令K2(O|λ1);
客户端根据口令K2随机生成第二HMM模型λ2=(A2,B2,∏2),将第二HMM模型发送给服务端;
服务端接收到第二HMM模型后,根据第二HMM模型通过所述前向算法得到口令K3;
如果口令K3与口令K1不同,则身份验证不通过,不建立连接,并记录客户端IP地址;如果口令K3与口令K1相同,则身份验证通过,建立连接。
6.根据权利要求5所述的连接建立中身份验证的方法,其特征在于,通过在(1,N)范围内随机取值,随机生成观测序列O={o1,o2,...oT},其中,N为HMM模型中的状态数,T为观测序列长度。
7.根据权利要求1所述的连接建立中身份验证的方法,其特征在于,在所述HMM模型的各矩阵中,各行的和或各列的和大于1。
8.一种通信系统,其特征在于,使用权利要求1所述的连接建立中身份验证的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110394903.2A CN113067705B (zh) | 2021-04-13 | 2021-04-13 | 一种连接建立中身份验证的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110394903.2A CN113067705B (zh) | 2021-04-13 | 2021-04-13 | 一种连接建立中身份验证的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113067705A true CN113067705A (zh) | 2021-07-02 |
CN113067705B CN113067705B (zh) | 2022-05-27 |
Family
ID=76566700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110394903.2A Active CN113067705B (zh) | 2021-04-13 | 2021-04-13 | 一种连接建立中身份验证的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113067705B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001009735A1 (fr) * | 1999-07-30 | 2001-02-08 | Comsquare Co., Ltd. | Procede et systeme d'authentification et support d'enregistrement |
CN101102192A (zh) * | 2007-07-18 | 2008-01-09 | 北京飞天诚信科技有限公司 | 认证设备、方法和系统 |
CN103460637A (zh) * | 2011-03-30 | 2013-12-18 | 三菱电机株式会社 | 针对存储在服务器中的隐马尔可夫模型(hmm)评估存储在客户端中的观测值序列的概率的方法和服务器 |
WO2016161889A1 (zh) * | 2015-04-07 | 2016-10-13 | 阿里巴巴集团控股有限公司 | 一种动态口令验证方法及系统、客户端和服务器 |
WO2017185913A1 (zh) * | 2016-04-29 | 2017-11-02 | 上海斐讯数据通信技术有限公司 | 一种无线局域网认证机制的改进方法 |
CN109150891A (zh) * | 2018-09-05 | 2019-01-04 | 北京深思数盾科技股份有限公司 | 一种验证方法、装置和信息安全设备 |
-
2021
- 2021-04-13 CN CN202110394903.2A patent/CN113067705B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001009735A1 (fr) * | 1999-07-30 | 2001-02-08 | Comsquare Co., Ltd. | Procede et systeme d'authentification et support d'enregistrement |
CN101102192A (zh) * | 2007-07-18 | 2008-01-09 | 北京飞天诚信科技有限公司 | 认证设备、方法和系统 |
CN103460637A (zh) * | 2011-03-30 | 2013-12-18 | 三菱电机株式会社 | 针对存储在服务器中的隐马尔可夫模型(hmm)评估存储在客户端中的观测值序列的概率的方法和服务器 |
WO2016161889A1 (zh) * | 2015-04-07 | 2016-10-13 | 阿里巴巴集团控股有限公司 | 一种动态口令验证方法及系统、客户端和服务器 |
WO2017185913A1 (zh) * | 2016-04-29 | 2017-11-02 | 上海斐讯数据通信技术有限公司 | 一种无线局域网认证机制的改进方法 |
CN109150891A (zh) * | 2018-09-05 | 2019-01-04 | 北京深思数盾科技股份有限公司 | 一种验证方法、装置和信息安全设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113067705B (zh) | 2022-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA1292790C (en) | Controlled use of cryptographic keys via generating station establishedcontrol values | |
KR101095239B1 (ko) | 보안 통신 | |
US8526606B2 (en) | On-demand secure key generation in a vehicle-to-vehicle communication network | |
US6987853B2 (en) | Method and apparatus for generating a group of character sets that are both never repeating within certain period of time and difficult to guess | |
CN109543434B (zh) | 区块链信息加密方法、解密方法、存储方法及装置 | |
CN103795534A (zh) | 基于口令的认证方法及用于执行该方法的装置 | |
CN103560879A (zh) | 一种轻量级认证与密钥协商的实现方法 | |
CN110381055B (zh) | 医疗供应链中的rfid系统隐私保护认证协议方法 | |
CN109379176B (zh) | 一种抗口令泄露的认证与密钥协商方法 | |
CN112989426B (zh) | 授权认证方法及装置、资源访问令牌的获取方法 | |
CN101202623A (zh) | 消息验证码产生方法、验证/加密和验证/解密方法 | |
CN109067517B (zh) | 加密、解密装置、加密、解密方法和隐藏密钥的通信方法 | |
CN107241196A (zh) | 基于区块链技术的数字签名方法及系统 | |
CN113297619A (zh) | 基于可扩展精度双混沌哈希和RSA的Mysql敏感数据保护系统 | |
KR20210139344A (ko) | 데이터 기반 활동을 수행하는 방법 및 장치 | |
EP1079565A2 (en) | Method of securely establishing a secure communication link via an unsecured communication network | |
CN110750796A (zh) | 一种支持公开审计的加密数据去重方法 | |
CN108595554A (zh) | 一种基于云环境的多属性范围查询方法 | |
CN108718237A (zh) | 一种基于对称密钥池的改进型aka身份认证系统和方法 | |
CN113067705B (zh) | 一种连接建立中身份验证的方法 | |
CN100561913C (zh) | 一种访问密码设备的方法 | |
Kwon et al. | Efficient and secure password-based authentication protocols against guessing attacks | |
CN113206839B (zh) | 一种数据传输中的数据隐藏及补全方法 | |
CN113179159B (zh) | 一种数据加密传输方法 | |
Abiega-L’Eglisse et al. | A new fuzzy vault based biometric system robust to brute-force attack |
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 |