CN113726503B - 一种保护web交互信息的方法及系统 - Google Patents

一种保护web交互信息的方法及系统 Download PDF

Info

Publication number
CN113726503B
CN113726503B CN202110787986.1A CN202110787986A CN113726503B CN 113726503 B CN113726503 B CN 113726503B CN 202110787986 A CN202110787986 A CN 202110787986A CN 113726503 B CN113726503 B CN 113726503B
Authority
CN
China
Prior art keywords
user
key
web
server
public key
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
CN202110787986.1A
Other languages
English (en)
Other versions
CN113726503A (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.)
State Grid Corp of China SGCC
Information and Telecommunication Branch of State Grid Shandong Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Information and Telecommunication Branch of State Grid Shandong Electric Power Co Ltd
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 State Grid Corp of China SGCC, Information and Telecommunication Branch of State Grid Shandong Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN202110787986.1A priority Critical patent/CN113726503B/zh
Publication of CN113726503A publication Critical patent/CN113726503A/zh
Application granted granted Critical
Publication of CN113726503B publication Critical patent/CN113726503B/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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • 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/3247Cryptographic 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 digital signatures
    • H04L9/3252Cryptographic 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 digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
    • 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/08Randomization, e.g. dummy operations or using noise
    • 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/72Signcrypting, i.e. digital signing and encrypting simultaneously

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种保护web交互信息的方法及系统,所述交互信息包括web程序代码和隐私数据,对于web程序代码的保护,所述方法包括响应于用户的web请求,生成随机数A,对所述随机数A和第一信息进行杂凑运算,得到第一会话对称密钥;对所述随机数A和第二信息进行杂凑运算,得到第一杂凑值,用web服务器的私钥对第一杂凑值进行签名,得到第一签名值;用所述第一会话对称密钥加密所述程序代码明文,得到程序代码密文;将所述程序代码密文和第一数字信封发送给用户。本发明使用公钥加密算法对会话对称密钥进行加密,使得会话对称密钥不会在Web JavaScript程序中泄漏;采用对称加密算法对JavaScript程序代码、敏感数据进行加密,保证程序代码和敏感数据的机密性。

Description

一种保护web交互信息的方法及系统
技术领域
本发明涉及网络信息安全技术领域,尤其是一种保护web交互信息的方法及系统。
背景技术
随着云计算、大数据、5G电信网络、移动互联网、物联网等各种新兴技术的演进,保障网络环境下的信息与数据安全已成为网络信息系统的一个关键问题。浏览器-服务器模式是网络环境下最重要的网络架构之一,浏览器通过执行Web应用程序可以经过网络访问Web服务器的网络服务和数据内容。然而,基于Web的应用程序面临着许多安全威胁和漏洞。
Web应用程序安全最关键的目标之一是确保程序代码的保密性、完整性和真实性,以及在网站和用户浏览器之间传输敏感数据。采用密码算法对关键代码和敏感数据进行加密,是保障Web应用程序安全的重要手段。密码算法通过加密、消息认证码、数字签名等方案提供机密性、完整性、真实性和不可抵赖性。
传统JavaScript加密方案的一个主要缺点是密钥直接存储在Web程序代码中,存在泄露密钥的风险,只要攻击者得到了JavaScript程序代码,就可以获得密钥并对数据进行加密或解密。而且,很多JavaScript程序只实现对称加密,缺乏对密钥和敏感数据的身份验证和数据完整性保护。
发明内容
本发明提供了一种保护web交互信息的方法及系统,用于解决现有web交互信息存在安全隐患的问题。
为实现上述目的,本发明采用下述技术方案:
本发明第一方面提供了一种保护web交互信息的方法,所述交互信息包括web程序代码,所述方法包括以下步骤:
响应于用户的web请求,生成随机数A,对所述随机数A和第一信息进行杂凑运算,得到第一会话对称密钥,所述第一信息包括用户公钥和web服务器公钥;
对所述随机数A和第二信息进行杂凑运算,得到第一杂凑值,用web服务器的私钥对第一杂凑值进行签名,得到第一签名值,所述第二信息包括第一会话对称密钥和程序代码明文;
用所述第一会话对称密钥加密所述程序代码明文,得到程序代码密文;
将所述程序代码密文和第一数字信封发送给用户,所述第一数字信封用用户公钥对第三信息加密所得,所述第三信息包括所述第一签名值、第一会话对称密钥和所述随机数A。
进一步地,所述将所述程序代码密文和第一数字信封发送给用户之后还包括以下步骤:
用户使用用户私钥解密所述第一数字信封,得到所述第一签名值、第一会话对称密钥和所述随机数A;
通过第一会话对称密钥解密所述程序代码密文,得到程序代码明文;
使用服务器公钥验证所述第一签名值,若验证通过,则运行所述程序代码明文。
进一步地,所述响应于用户的web请求之前还包括以下步骤:
生成随机数ks,作为主私钥,对所述主私钥进行椭圆曲线的点乘运算得到主公钥;
将web服务器的ID信息作为服务器公钥,利用加密算法得到服务器私钥;
将用户的ID信息作为用户公钥,利用加密算法得到用户私钥。
进一步地,所述响应于用户的web请求之前的步骤在密钥生成中心中进行。
进一步地,所述利用加密算法得到服务器私钥的具体过程为:
构造中间参数t1,且所述中间参数t1为所述服务器公钥和所述随机数ks的和;
使用t1模逆计算中间参数t2,对所述中间参数t2进行椭圆曲线点乘运算,得到服务器私钥。
本发明第二方面提供了一种保护web交互信息的方法,所述交互信息包括敏感数据,所述方法包括以下步骤:
用户浏览器产生随机数B,对所述随机数B和第四信息进行杂凑运算,得到第二会话对称密钥,所述第四信息包括用户公钥和web服务器公钥;
对所述随机数B和第五信息进行杂凑运算,得到第二杂凑值,用用户的私钥对杂凑值进行签名,得到第二签名值,所述第五信息包括第二会话对称密钥和所述敏感数据;
用所述第二会话对称密钥加密所述敏感数据,得到敏感数据密文;
将所述敏感数据密文和第二数字信封发送给服务器,所述第二数字信封用服务器公钥对第六信息加密所得,所述第六信息包括所述第二签名值、第二会话对称密钥和所述随机数B。
进一步地,所述将所述敏感数据密文和第二数字信封发送给服务器之后还包括以下步骤:
服务器使用服务器私钥解密所述第二数字信封,得到所述第二签名值、第二会话对称密钥和所述随机数B;
通过第二会话对称密钥解密所述敏感数据密文,得到敏感数据;
使用用户公钥验证所述第二签名值,若验证通过,则服务器获取用户的敏感数据。
进一步地,所述用户浏览器产生随机数B之前还包括以下步骤:
生成随机数ks,作为主私钥,对所述主私钥进行椭圆曲线的点乘运算得到主公钥;
将web服务器的ID信息作为服务器公钥,利用加密算法得到服务器私钥;
将用户的ID信息作为用户公钥,利用加密算法得到用户私钥。
进一步地,所述用户浏览器产生随机数B之前的步骤在密钥生成中心进行。
本发明第三方面提供了一种保护web交互信息的系统,所述系统包括密钥生成中心、web用户端和web服务器端,所述密钥生成中心用于分别生成主公钥、主私钥、用户公钥、用户私钥、服务器公钥和服务器私钥,所述web用户端基于方法的步骤向服务端发送隐私数据,所述服务器端基于方法的步骤向用户端发送程序代码。
本发明第三方面的所述保护web交互信息的系统能够实现第一方面及第一方面的各实现方式中的方法,或者能够实现第二方面及第二方面的各实现方式中的方法,并取得相同的效果。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
1、本发明使用公钥加密算法对会话对称密钥进行加密,使得会话对称密钥不会在Web JavaScript程序中泄露;采用对称加密算法对JavaScript程序代码、敏感数据进行加密,保证程序代码和敏感数据的机密性。
2、本发明对会话对称密钥、JavaScript程序代码、敏感数据等进行数字签名,以保证密钥、程序代码、敏感数据的真实性和完整性,验证发送Web应用程序代码或敏感数据的Web服务器或Web用户的身份。
3、本发明使用基于身份的公钥密码方案,将Web服务器的公钥与Web服务器的身份ID、网站所有者、IP地址、网址、密钥有效期、颁发时间、模数等绑定,将Web用户的公钥与用户的身份ID、级别、角色、有权访问的Web网站列表、密钥有效期、颁发时间、模数等绑定,限定了Web用户和Web服务器密钥的适用场景和范围,提高整个信息系统的安全强度。
4、本发明的Web服务器和Web用户每次生成对称密钥时,产生一个随机数,并与用户ID/公钥、Web网站ID/公钥、设备信息、浏览器信息、时间、有效期等一起进行密码杂凑运算,得到对称密钥,使得对称密钥不但与每次产生的随机数相关,而且与双方的身份信息、设备信息等一起绑定,进一步提高了对称密钥的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的密钥生成与分发的整体流程图;
图2是本发明实施例提供的web服务器及微博用户公钥组成示意图;
图3是本发明所述方法实施例1的流程示意图;
图4是本发明实施例提供的web服务器程序代码的加密传输与恢复的流程示意图;
图5本发明实施例提供的生成第一会话对称秘钥的示意图;
图6是本发明实施例提供的生成第一签名值的示意图;
图7是本发明所述方法实施例2的流程示意图;
图8是本发明实施例提供的敏感数据加密传输与恢复的流程示意图;
图9是本发明实施例提供的web用户浏览器生成第二会话对称秘钥的示意图;
图10是本发明实施例提供的生成第二签名值的示意图;
图11是本发明所述系统实施例的结构示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
在实际的Web信息安全传输过程中,生成安全密钥并经安全信道传输给使用者是先决条件。本公开的一个或多个实施例旨在实现通过可信机构密钥生成中心(KeyGeneration Center,KGC),根据用户的公钥(用户身份)生成用户的私钥。本实施例采用SM3密码杂凑算法、SM4对称密码算法和SM9基于身份的密码算法说明详细流程,也可以采用相同安全强度的其他密码算法。
如图1、图2所示,在密钥生成中心进行基于身份的密钥生成与分发,具体过程为:
步骤A:KGC生成一个随机数ks∈[1,N-1]作为主私钥,其中N为正整数,表示模数,通过椭圆曲线上的点乘运算,计算得到主公钥Ppub-s=[ks]P2,P2为曲线参数,主私钥被KGC私密地保存,而主公钥被公开发布;
步骤B:把Web服务器的ID信息作为服务器公钥。用连接运算符“||”表示服务器名称等信息的二进制表示的连接,得到服务器公钥ID_Server=服务器名称||网站所有者||IP地址||网址||密钥有效期,利用SM3算法计算Web服务器公钥Pub_Key_Server=Hash_SM3(ID_Server,Time_Stamp,N),其中Time_Stamp代表当前的时间戳。构造中间参数t1=Pub_Key_Server+ks,使用t1的模逆计算中间参数t2=ks*t1 -1,得到Web服务器私钥Pri_Key_Server=[t2]P1,P1为曲线参数。
步骤C:把Web用户的ID信息作为用户公钥。使用连接运算符“||”连接相关用户信息,得到ID_User=用户身份ID||用户级别||用户角色||有权访问的Web网站列表||密钥有效期,利用SM3算法计算Web用户的公钥Pub_Key_User=Hash_SM3(ID_User,Time_Stamp,N),其中Time_Stamp代表当前的时间戳。构造中间参数t3=Web_User_PubKey+ks,使用t3的模逆计算中间参数t4=ks*t3 -1,得到Web用户私钥Pri_Key_User=[t4]P3,P3为曲线参数。
步骤D:服务器私钥和用户私钥在安全通信通道中分别发送给Web服务器和Web用户,公钥被加载到Web服务器的密码设备和Web用户的浏览器中,用于将来的Web通信。
本发明所述的web交互信息的方法包括web程序代码的交互和敏感数据的交互。
如图3-6所示,当Web用户在浏览器的地址栏中输入URL(统一资源定位器)时,Web服务器会返回相应的HTML页面,其中可能嵌入了JavaScript代码。即交互信息为web程序代码时,所述方法包括以下步骤:
S11:产生一个随机数A,与用户公钥Pub_Key_User、Web服务器公钥Pub_Key_Server、设备信息Device_Info、时间戳Time_Stamp、密钥有效期Key_valid_Period一起进行SM3密码杂凑运算,得到第一会话对称密钥Session_Key_Server=Hash_SM3(A,Pub_Key_User,Pub_Key_Server,Device_Info,Time_Stamp,Key_valid_Period);其中用户公钥Pub_Key_User、Web服务器公钥Pub_Key_Server、设备信息Device_Info、时间戳Time_Stamp、密钥有效期Key_valid_Period为第一信息。
S12:对待发送数据进行签名,即对随机数A、第一会话对称密钥Session_Key_Server、程序代码明文Plain_Program_Code、双方的ID公钥的密码杂凑值使用Web服务器的私钥Pri_Key_Server计算进行签名。第一签名值Signature=Sign_SM9(Hash_SM3(A,Session_Key_Server,Plain_Program_Code,Pub_Key_User,Pub_Key_Server));其中第一会话对称密钥Session_Key_Server、程序代码明文Plain_Program_Code、双方的ID公钥为第二信息。
S13:使用第一会话对称密钥Session_Key_Server加密Web应用程序代码Plain_Program_Code,对称加密采用GCM加密模式的SM4对称算法,生成的程序代码密文为Cipher_Program_Code;
S14:使用SM9加密算法和Web用户公钥生成第一数字信封Pub_Enc(A,Session_Key_Server,Signature),将加密后的Cipher_Program_Code和Pub_Enc(Random_Number,Session_Key_Server,Signature)发送给Web用户;其中随机数A、第一会话对称密钥Session_Key_Server和第一签名值Signature为第三信息。
S15:用户使用私钥Pri_Key_User解密接收到的第一数字信封,并获得随机数A、第一会话对称密钥Session_Key_Server和第一签名值Signature。用户使用第一会话对称密钥Session_Key_Server解密程序代码密文Cipher_Program_Code得到待验证的代码明文Plain_Program_Code,然后用户使用服务器公钥Pub_Key_Server验证第一签名值Signature,如果验证没有通过,Web应用程序将以一个错误结束,如果通过,则Web用户浏览器解密运行解密后的Web应用程序代码。
Web服务器与Web用户之间可能会传输一些重要的数据,包括用户密码、银行帐号、社会保险号等,需要加密算法来加密这些敏感数据。然而,传统的JavaScript加密可能会泄露对称密钥。因此,我们采用基于身份的密码系统来保护会话密钥。敏感数据的传输也可以是从Web服务器一方和Web用户到另一方,由于应用的安全机制非常相似,本实施例描述了保护敏感数据从用户浏览器传输到Web服务器的安全方案。
如图7-10所示,所述交互信息为敏感数据时,所述方法包括以下步骤:
S21:Web用户的浏览器产生一个随机数B,与Web用户公钥Pub_Key_User、Web网站公钥Pub_Key_Server、浏览器信息Browser_Info、时间戳Time_Stamp、密钥有效期Key_valid_Period一起进行SM3密码杂凑运算,得到第二会话对称密钥Session_Key_Server=Hash_SM3(Random_Number,Pub_Key_User,Pub_Key_Server,Browser_Info,Time_Stamp,Key_valid_Period);其中Web用户公钥Pub_Key_User、Web网站公钥Pub_Key_Server、浏览器信息Browser_Info、时间戳Time_Stamp、密钥有效期Key_valid_Period为第四信息。
S22,对待发送数据,随机数B,第二会话对称密钥Session_Key_Server,敏感数据Plain_Data,用户公钥,服务器公钥的密码杂凑值使用Web用户私钥Pri_Key_User计算进行签名。第二签名值Signature=Sign_SM9(Hash_SM3(B,Session_Key_Server,Plain_Data,Pub_Key_User,Pub_Key_Server));第五信息包括待发送数据,随机数B,第二会话对称密钥Session_Key_Server,敏感数据Plain_Data,用户公钥,服务器公钥。
S23:使用第二会话对称密钥Session_Key_Server加密敏感数据Plain_Data,对称加密采用GCM加密模式的SM4对称算法,敏感数据密文为Cipher_Data;
S24:使用SM9加密算法和Web服务器的公钥ID_Server生成第二数字信封Pub_Enc(B,Session_Key_Server,Signature),将加密后的敏感数据密文Cipher_Data和第二数字信封Pub_Enc(B,Session_Key_Server,Signature)发送给Web服务器;第六信息包括随机数B、第二会话对称密钥Session_Key_Server和第二签名值Signature。
S25:Web服务器使用服务器私钥Pri_Key_Server解密接收到的第二数字信封,并获得随机数B、第二会话对称密钥Session_Key_Server和第二签名值Signature。Web服务器使用第二会话对称密钥Session_Key_Server解密敏感数据密文Cipher_Data得到待验证的敏感数据Plain_Data,然后服务器使用Web用户公钥Pub_Key_User验证第二签名值Signature,如果验证没有通过,程序将以一个错误结束,如果通过,则Web服务器可以获取Web用户的敏感数据。
如图11所示,本发明还提供了一种保护web交互信息的系统,所述系统包括密钥生成中心、web用户端和web服务器端,所述密钥生成中心用于分别生成主公钥、主私钥、用户公钥、用户私钥、服务器公钥和服务器私钥,所述web用户端基于步骤S21-S24的方法向服务端发送隐私数据,所述服务器端基于步骤S11-S14的方法向用户端发送程序代码。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (5)

1.一种保护web交互信息的方法,其特征是,所述交互信息包括web程序代码,所述方法包括以下步骤:
响应于用户的web请求,生成随机数A,对所述随机数A和第一信息进行杂凑运算,得到第一会话对称密钥,所述第一信息包括用户公钥和web服务器公钥;
对所述随机数A和第二信息进行杂凑运算,得到第一杂凑值,用web服务器的私钥对第一杂凑值进行签名,得到第一签名值,所述第二信息包括第一会话对称密钥和程序代码明文;
用所述第一会话对称密钥加密所述程序代码明文,得到程序代码密文;
将所述程序代码密文和第一数字信封发送给用户,所述第一数字信封用用户公钥对第三信息加密所得,所述第三信息包括所述第一签名值、第一会话对称密钥和所述随机数A;
所述响应于用户的web请求之前还包括以下步骤:
生成随机数ks,作为主私钥,对所述主私钥进行椭圆曲线的点乘运算得到主公钥;
将web服务器的ID信息作为服务器公钥,利用加密算法得到服务器私钥;
所述利用加密算法得到服务器私钥的具体过程为:
利用SM3算法计算Web服务器公钥;
构造中间参数t1,且所述中间参数t1为所述服务器公钥和所述随机数ks的和;
使用t1模逆计算中间参数t2,对所述中间参数t2进行椭圆曲线点乘运算,得到服务器私钥;
将用户的ID信息作为用户公钥,利用加密算法得到用户私钥;
所述利用加密算法得到用户私钥的具体过程为:
利用SM3算法计算Web用户的公钥;
构造中间参数t3,使用t3的模逆计算中间参数t4,得到Web用户私钥;
所述响应于用户的web请求之前的步骤在密钥生成中心中进行;
服务器私钥和用户私钥在安全通信通道中分别发送给Web服务器和Web用户,公钥被加载到Web服务器的密码设备和Web用户的浏览器中,用于将来的Web通信。
2.根据权利要求1所述保护web交互信息的方法,其特征是,所述将所述程序代码密文和第一数字信封发送给用户之后还包括以下步骤:
用户使用用户私钥解密所述第一数字信封,得到所述第一签名值、第一会话对称密钥和所述随机数A;
通过第一会话对称密钥解密所述程序代码密文,得到程序代码明文;
使用服务器公钥验证所述第一签名值,若验证通过,则运行所述程序代码明文。
3.一种保护web交互信息的方法,其特征是,所述交互信息包括敏感数据,所述方法包括以下步骤:
用户浏览器产生随机数B,对所述随机数B和第四信息进行杂凑运算,得到第二会话对称密钥,所述第四信息包括用户公钥、web服务器公钥、浏览器信息、时间戳、密钥有效期;
对所述随机数B和第五信息进行杂凑运算,得到第二杂凑值,用用户的私钥对杂凑值进行签名,得到第二签名值,所述第五信息包括第二会话对称密钥、所述敏感数据、待发送数据、用户公钥、web服务器公钥;
用所述第二会话对称密钥加密所述敏感数据,得到敏感数据密文;
将所述敏感数据密文和第二数字信封发送给服务器,所述第二数字信封用服务器公钥对第六信息加密所得,所述第六信息包括所述第二签名值、第二会话对称密钥和所述随机数B;
所述用户浏览器产生随机数B之前还包括以下步骤:
生成随机数ks,作为主私钥,对所述主私钥进行椭圆曲线的点乘运算得到主公钥;
将web服务器的ID信息作为服务器公钥,利用加密算法得到服务器私钥;
将用户的ID信息作为用户公钥,利用加密算法得到用户私钥;
所述利用加密算法得到服务器私钥的具体过程为:
利用SM3算法计算Web服务器公钥;
构造中间参数t1,且所述中间参数t1为所述服务器公钥和所述随机数ks的和;
使用t1模逆计算中间参数t2,对所述中间参数t2进行椭圆曲线点乘运算,得到服务器私钥;
将用户的ID信息作为用户公钥,利用加密算法得到用户私钥;
所述利用加密算法得到用户私钥的具体过程为:
利用SM3算法计算Web用户的公钥;
构造中间参数t3,使用t3的模逆计算中间参数t4,得到Web用户私钥;
所述用户浏览器产生随机数B之前的步骤在密钥生成中心进行;
服务器私钥和用户私钥在安全通信通道中分别发送给Web服务器和Web用户,公钥被加载到Web服务器的密码设备和Web用户的浏览器中,用于将来的Web通信。
4.根据权利要求3所述保护web交互信息的方法,其特征是,所述将所述敏感数据密文和第二数字信封发送给服务器之后还包括以下步骤:
服务器使用服务器私钥解密所述第二数字信封,得到所述第二签名值、第二会话对称密钥和所述随机数B;
通过第二会话对称密钥解密所述敏感数据密文,得到敏感数据;
使用用户公钥验证所述第二签名值,若验证通过,则服务器获取用户的敏感数据。
5.一种保护web交互信息的系统,其特征是,所述系统包括密钥生成中心、web用户端和web服务器端,所述密钥生成中心用于分别生成主公钥、主私钥、用户公钥、用户私钥、服务器公钥和服务器私钥,所述web用户端基于权利要求3所述方法的步骤向服务端发送敏感数据,所述服务器端基于权利要求1所述方法的步骤向用户端发送程序代码。
CN202110787986.1A 2021-07-12 2021-07-12 一种保护web交互信息的方法及系统 Active CN113726503B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110787986.1A CN113726503B (zh) 2021-07-12 2021-07-12 一种保护web交互信息的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110787986.1A CN113726503B (zh) 2021-07-12 2021-07-12 一种保护web交互信息的方法及系统

Publications (2)

Publication Number Publication Date
CN113726503A CN113726503A (zh) 2021-11-30
CN113726503B true CN113726503B (zh) 2023-11-14

Family

ID=78673158

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110787986.1A Active CN113726503B (zh) 2021-07-12 2021-07-12 一种保护web交互信息的方法及系统

Country Status (1)

Country Link
CN (1) CN113726503B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116388970B (zh) * 2023-03-03 2023-11-28 京信数据科技有限公司 一种基于多方数据的中心化云计算实现方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106506470A (zh) * 2016-10-31 2017-03-15 大唐高鸿信安(浙江)信息科技有限公司 网络数据安全传输方法
CN108509787A (zh) * 2018-03-14 2018-09-07 深圳市中易通安全芯科技有限公司 一种程序认证方法
WO2018232442A1 (en) * 2017-06-23 2018-12-27 Australian Postal Corporation METHOD AND SYSTEM FOR PROVIDING SECURE ACCESS TO SECRET INFORMATION
CN110351261A (zh) * 2019-06-28 2019-10-18 深圳市永达电子信息股份有限公司 一种基于双因素认证管理设备连接安全服务器的方法和系统
CN110932851A (zh) * 2019-11-29 2020-03-27 四川省数字证书认证管理中心有限公司 一种基于pki的多方协同运算的密钥保护方法
CN111404953A (zh) * 2020-03-24 2020-07-10 广东工业大学 一种消息加密方法、解密方法及相关装置、系统
CN111835752A (zh) * 2020-07-09 2020-10-27 国网山西省电力公司信息通信分公司 基于设备身份标识的轻量级认证方法及网关
CN112511566A (zh) * 2021-02-02 2021-03-16 北京信安世纪科技股份有限公司 Sm9算法无证书机制签名密钥生成方法、设备及存储介质
CN112688784A (zh) * 2020-12-23 2021-04-20 安徽中科美络信息技术有限公司 一种数字签名、验证方法、装置及系统
CN112804205A (zh) * 2020-12-31 2021-05-14 南方电网科学研究院有限责任公司 数据加密方法及装置、数据解密方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9124571B1 (en) * 2014-02-24 2015-09-01 Keypasco Ab Network authentication method for secure user identity verification

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106506470A (zh) * 2016-10-31 2017-03-15 大唐高鸿信安(浙江)信息科技有限公司 网络数据安全传输方法
WO2018232442A1 (en) * 2017-06-23 2018-12-27 Australian Postal Corporation METHOD AND SYSTEM FOR PROVIDING SECURE ACCESS TO SECRET INFORMATION
CN108509787A (zh) * 2018-03-14 2018-09-07 深圳市中易通安全芯科技有限公司 一种程序认证方法
CN110351261A (zh) * 2019-06-28 2019-10-18 深圳市永达电子信息股份有限公司 一种基于双因素认证管理设备连接安全服务器的方法和系统
CN110932851A (zh) * 2019-11-29 2020-03-27 四川省数字证书认证管理中心有限公司 一种基于pki的多方协同运算的密钥保护方法
CN111404953A (zh) * 2020-03-24 2020-07-10 广东工业大学 一种消息加密方法、解密方法及相关装置、系统
CN111835752A (zh) * 2020-07-09 2020-10-27 国网山西省电力公司信息通信分公司 基于设备身份标识的轻量级认证方法及网关
CN112688784A (zh) * 2020-12-23 2021-04-20 安徽中科美络信息技术有限公司 一种数字签名、验证方法、装置及系统
CN112804205A (zh) * 2020-12-31 2021-05-14 南方电网科学研究院有限责任公司 数据加密方法及装置、数据解密方法及装置
CN112511566A (zh) * 2021-02-02 2021-03-16 北京信安世纪科技股份有限公司 Sm9算法无证书机制签名密钥生成方法、设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Clifford Neuman ; John Kohl ; Theodore Ts amp ; apos ; o ; Tom Yu ; Sam Hartman ; Ken Raeburn ; Jeffrey Altman ; Expires 9 March, 2003 ; .The Kerberos Network Authentication Service (V5)draft-ietf-krb-wg-kerberos-clarifications-01.txt.IETF .2002,全文. *
支持国产密码算法的OpenSSL设计实现及应用;蔡成杭;;信息安全研究(第02期);全文 *

Also Published As

Publication number Publication date
CN113726503A (zh) 2021-11-30

Similar Documents

Publication Publication Date Title
US10313133B2 (en) Secure communications providing forward secrecy
US10708072B2 (en) Mutual authentication of confidential communication
CN109347627B (zh) 数据加解密方法、装置、计算机设备及存储介质
Yang et al. Provable data possession of resource-constrained mobile devices in cloud computing
CN106789042B (zh) Ibc域内的用户访问pki域内的资源的认证密钥协商方法
CN104901935A (zh) 一种基于cpk的双向认证及数据交互安全保护方法
CN116614599B (zh) 一种安全加密的视频监控方法、装置及存储介质
Hahn et al. Trustworthy delegation toward securing mobile healthcare cyber-physical systems
JP2014515125A (ja) データの暗号化のための方法、コンピュータ・プログラム、および装置
Kwon et al. (In-) security of cookies in HTTPS: Cookie theft by removing cookie flags
Al Mamun et al. BigCrypt for big data encryption
CN113726503B (zh) 一种保护web交互信息的方法及系统
Luring et al. Analysis of security features in DLMS/COSEM: Vulnerabilities and countermeasures
CN116170131B (zh) 密文处理方法、装置、存储介质及可信执行设备
Das et al. A decentralized open web cryptographic standard
CN101547091A (zh) 一种信息发送的方法及装置
KR101793528B1 (ko) 무인증서 공개키 암호 시스템
CN114866244A (zh) 基于密文分组链接加密的可控匿名认证方法、系统及装置
Wang et al. Public-Key applications in E-commerce
CN114301612A (zh) 信息处理方法、通信设备和加密设备
Shi et al. Verification of LINE encryption version 1.0 using proverif
Téllez et al. Security in mobile payment systems
Shi et al. Verification of LINE encryption version 1.0 using ProVerif
Surya et al. Single sign on mechanism using attribute based encryption in distributed computer networks
Prakasha et al. Enhanced authentication and key agreement mechanism using PKI

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