CN115396177A - 一种基于WASM实现web端高效通信的加密通信方法 - Google Patents
一种基于WASM实现web端高效通信的加密通信方法 Download PDFInfo
- Publication number
- CN115396177A CN115396177A CN202211011723.2A CN202211011723A CN115396177A CN 115396177 A CN115396177 A CN 115396177A CN 202211011723 A CN202211011723 A CN 202211011723A CN 115396177 A CN115396177 A CN 115396177A
- Authority
- CN
- China
- Prior art keywords
- message
- key
- wasm
- web
- encryption
- 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.)
- Pending
Links
Images
Classifications
-
- 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
- H04L63/045—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 wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
-
- 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/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于WASM实现web端高效通信的加密通信方法,浏览器WEB客户端离线预置密钥和证书并通过口令加密存储在本地浏览器内嵌数据库,同时在浏览器WASM虚拟机产生若干公私钥对,并将公钥上传到WEB服务器存储;消息发送方在WASM虚拟机中生成临时公私钥并结合从WEB服务器获取的消息接收方预存公钥进行运算生成消息加密密钥,消息加密后将通信数据打包上传到对象存储***;消息接收方收到WEB消息推送通知后从对象存储***获取消息密文,协商运算得出消息加密密钥,并在WASM虚拟机中解密消息密文。本发明可实现WEB端消息的“一话一密”加密通信,实现用户身份验证及数据源验证。
Description
技术领域
本发明涉及通信安全技术领域,尤其涉及一种基于WASM实现web端高效通信的加密通信方法。
背景技术
如今的智能手机终端操作***主要有两类:谷歌的Android和苹 果的IOS。而计算机桌面操作***,则有微软的Windows,苹果的 Mac OS和Linux等。要实现加密通信需要为不同的终端类型和操作 ***开发适配不同的即时通信APP软件,存在开发成本高、用户使用成本高、***维护复杂等诸多问题。通过浏览器实现WEB端消息 传输加密,实现客户端的跨平台访问,具有现实意义。
由于传统JavaScript这门解释性脚本语言本身的缺陷,传统浏览 器端JavaScript加密性能很不理想。
发明内容
针对不同操作***的终端设备和不同操作***的计算机,要实现 加密通信需要为不同的终端类型和操作***开发适配不同的即时通 信APP软件,存在开发成本高、用户使用成本高、***维护复杂等 诸多问题。本发明利用WebAssembly技术,提出了一种基于WASM 实现web端高效通信的加密通信方法,将浏览器客户端加密功能代码 进行WebAssembly封装并载入到终端浏览器虚拟机的沙盒环境中, 为传输的消息内容加密保护以及通信双方身份鉴别提供安全保障,同 时搭建OpenStack swift对象存储***和WEB服务器为消息和公钥等 通信数据提供缓存与转发服务。
本发明采用的技术方案如下:
一种基于WASM实现web端高效通信的加密通信方法,包括:
浏览器WEB客户端离线预置密钥和证书并通过口令加密存储在 本地浏览器内嵌数据库,同时在浏览器WASM虚拟机产生若干公私 钥对,并将公钥上传到WEB服务器存储;
消息发送方在WASM虚拟机中生成临时公私钥并结合从WEB 服务器获取的消息接收方预存公钥进行运算生成消息加密密钥,消息 加密后将通信数据打包上传到对象存储***;
消息接收方收到WEB消息推送通知后从对象存储***获取消息 密文,协商运算得出消息加密密钥,并在WASM虚拟机中解密消息 密文。
进一步地,所述打包上传到对象存储***的通信数据包括消息密 文、临时公钥和证书。
进一步地,所述加密通信方法包括如下步骤:
步骤1、消息发送方发起消息通信,并选择消息接收方;
步骤2、消息发送方通过HTTPS加密通道从WEB服务器获取消 息接收方的公钥;
步骤3、消息发送方通过WASM虚拟机中生成ECC临时公私钥, 结合消息接收方公钥进行点乘运算产生消息加密密钥;
步骤4、消息发送方编辑消息,通过消息加密密钥对消息进行加 密,然后将消息密文、消息接收方公钥编号、临时公钥和证书打包上 传到对象存储***进行存储;WEB服务器查找接收对象,若消息接 收方在线,则推送消息提醒给消息接收方;
步骤5、消息接收方从对象存储***获取消息内容,解析出消息 密文、临时公钥和证书,验证证书有效性,解密临时公钥并结合私钥 点乘运算计算出消息加密密钥,对消息进行解密。
进一步地,步骤4中,若消息接收方离线,则待其上线后,向WEB 服务器查询新消息,从对象存储***中获取消息内容,解析出消息密 文、临时公钥和证书,验证证书有效性,解密临时公钥并结合私钥协 商计算出消息加密密钥,对消息进行解密。
进一步地,如果是文字语音类消息,则解密后通过浏览器网页阅 读消息;如果是文件图片视频类消息,则将附件密文存储在本地,通 过浏览器打开附件,在内存中解密阅读。
进一步地,所述对象存储***为OpenStack Swift对象存储***。
本发明的有益效果在于:
(1)本发明将浏览器客户端加密功能代码进行WebAssembly封 装并载入到终端浏览器虚拟机的沙盒环境中,可为传输的消息内容加 密保护以及通信双方身份鉴别提供安全保障,同时搭建OpenStack swift对象存储***和WEB服务器,可为消息和公钥等通信数据提供 缓存与转发服务。
(2)相比于JavaScript,本发明采用WASM技术,浏览器WEB 端应用加载和加解密运行速度都会快很多倍。而且,本发明实现了 WEB端消息的“一话一密”加密通信,通过对消息的完整性验证和 证书验证,实现了用户身份验证及数据源验证。同时攻击者不能得到 消息加密密钥,实现了机密性保护和用户身份认证。
附图说明
图1是本发明实施例的加密消息通信业务流程图。
图2是本发明实施例的消息加密密钥协商计算流程图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现说 明本发明的具体实施方式。应当理解,此处所描述的具体实施例仅用 以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发 明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领 域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施 例,都属于本发明保护的范围。
如图1所示,本实施例提供了一种基于WASM实现web端高效通 信的加密通信方法,浏览器WEB客户端离线预置密钥和证书文件并 通过口令作为密钥加密保护存储在本地浏览器内嵌数据库IndexedDB 内,同时在浏览器WASM虚拟机产生若干ECC公私钥对,私钥加密存 储在数据库IndexedDB内,并将公钥上传到WEB服务器存储。消息发 送方在虚拟机中生成ECC临时公私钥对并结合从WEB服务器获取的 消息接收方预存公钥协商生成消息加密密钥,消息加密后将密文和临 时公钥等数据打包上传到搭建在外网的OpenStack Swift对象存储系 统,消息接收方收到web消息推送通知后从OpenStack swift对象存储 ***获取消息密文,协商运算得出消息加密密钥,并在虚拟机中解密 消息密文。
参阅图1,上述加密通信方法具体包括如下步骤:
步骤1、消息发送方发起消息通信,用户选择消息接收方;
步骤2、消息发送方通过HTTPS加密通道从WEB服务器获取消 息接收方的公钥和公钥编号;
步骤3、消息发送方通过WASM虚拟机中生成临时公私钥,结 合对方公钥进行点乘运算产生消息加密密钥,参阅图2;
步骤4、消息发送方编辑消息,通过消息加密密钥对消息进行加 密,然后将消息密文、接收方公钥编号、临时公钥和证书(预置密钥 加密)通过restfull接口打包上传到搭建在外网的OpenStack Swift对 象存储***存储;同时WEB服务器查找接收对象,若接收方在线, 推送web消息提醒给接收方;若消息接收方离线,则跳转至步骤S7;
步骤5、消息接收方通过restfull接口从OpenStack Swift对象存 储***存储获取消息内容,解析出消息密文、公钥编号、临时公钥和 证书(预置密钥解密),并验证证书有效性;然后从本地浏览器内嵌数 据库IndexedDB内读出公钥编号对应的私钥并通过口令作为密钥解 密,再将临时公钥结合私钥点乘运算计算出消息加密密钥,参阅图2;
步骤6、用消息加密密钥对消息解密,如果是文字语音类消息, 解密后通过浏览器网页阅读消息;如果是文件图片视频类消息,将附 件密文存储在本地,通过浏览器打开附件,在内存中解密阅读;
步骤7、待消息接收方上线后,向WEB服务器查询是否有新消 息通知,有就通过restfull接口从OpenStack Swift对象存储***存储 获取消息内容,解析出消息密文、公钥编号、临时公钥和证书(预置 密钥解密),并验证证书有效性;消息加密密钥生成和消息解密查看 方式和在线时相同。
优选地,消息加密密钥协商和计算过程参阅图2,具体包括如下 步骤:
步骤1、消息接收方B预先上传自己的N_PKB到OpenStack Swift 对象存储***存储,N_PKB为消息接收方B产生的ECC公钥;
步骤2、消息发送方A向OpenStack Swift对象存储***获取N_PKB;
步骤3、消息发送方A产生ECC临时公私钥对T_PKA/T_SKA, 通过私钥T_SKA与N_PKB进行ECC点乘运算得到DAB;
步骤4、消息接收方B向OpenStack Swift对象存储***获取消 息,提取T_PKA和CertA,对CertA证书进行身份验证;
步骤6、消息接收方B通过N_SKB与T_PKA进行ECC点乘运 算得到DAB,协议双方对DAB进行杂凑算法计算得到消息加密密钥 SKEY。
通过上述每条消息的消息加密密钥协商计算,实现了消息的“一 话一密”加密通信和一定时间间隔的前向安全防护。如果攻击者进行 假冒、伪造和替代,由于不知道通信双方的私钥,不能得到消息加密 密钥,攻击者和合法用户接收到的信息为乱码,实现了机密性保护和 用户身份认证。
需要说明的是,对于前述的方法实施例,为了简便描述,故将其 表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并 不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用 其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书 中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定 是本申请所必须的。
Claims (6)
1.一种基于WASM实现web端高效通信的加密通信方法,其特征在于,包括:
浏览器WEB客户端离线预置密钥和证书并通过口令加密存储在本地浏览器内嵌数据库,同时在浏览器WASM虚拟机产生若干公私钥对,并将公钥上传到WEB服务器存储;
消息发送方在WASM虚拟机中生成临时公私钥并结合从WEB服务器获取的消息接收方预存公钥进行运算生成消息加密密钥,消息加密后将通信数据打包上传到对象存储***;
消息接收方收到WEB消息推送通知后从对象存储***获取消息密文,协商运算得出消息加密密钥,并在WASM虚拟机中解密消息密文。
2.根据权利要求1所述的基于WASM实现web端高效通信的加密通信方法,其特征在于,所述打包上传到对象存储***的通信数据包括消息密文、临时公钥和证书。
3.根据权利要求1所述的基于WASM实现web端高效通信的加密通信方法,其特征在于,所述加密通信方法包括如下步骤:
步骤1、消息发送方发起消息通信,并选择消息接收方;
步骤2、消息发送方通过HTTPS加密通道从WEB服务器获取消息接收方的公钥;
步骤3、消息发送方通过WASM虚拟机中生成ECC临时公私钥,结合消息接收方公钥进行点乘运算产生消息加密密钥;
步骤4、消息发送方编辑消息,通过消息加密密钥对消息进行加密,然后将消息密文、消息接收方公钥编号、临时公钥和证书打包上传到对象存储***进行存储;WEB服务器查找接收对象,若消息接收方在线,则推送消息提醒给消息接收方;
步骤5、消息接收方从对象存储***获取消息内容,解析出消息密文、临时公钥和证书,验证证书有效性,解密临时公钥并结合私钥点乘运算计算出消息加密密钥,对消息进行解密。
4.根据权利要求3所述的基于WASM实现web端高效通信的加密通信方法,其特征在于,步骤4中,若消息接收方离线,则待其上线后,向WEB服务器查询新消息,从对象存储***中获取消息内容,解析出消息密文、临时公钥和证书,验证证书有效性,解密临时公钥并结合私钥协商计算出消息加密密钥,对消息进行解密。
5.根据权利要求4所述的基于WASM实现web端高效通信的加密通信方法,其特征在于,如果是文字语音类消息,则解密后通过浏览器网页阅读消息;如果是文件图片视频类消息,则将附件密文存储在本地,通过浏览器打开附件,在内存中解密阅读。
6.根据权利要求1-5任一项所述的基于WASM实现web端高效通信的加密通信方法,其特征在于,所述对象存储***为OpenStack Swift对象存储***。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211011723.2A CN115396177A (zh) | 2022-08-23 | 2022-08-23 | 一种基于WASM实现web端高效通信的加密通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211011723.2A CN115396177A (zh) | 2022-08-23 | 2022-08-23 | 一种基于WASM实现web端高效通信的加密通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115396177A true CN115396177A (zh) | 2022-11-25 |
Family
ID=84120679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211011723.2A Pending CN115396177A (zh) | 2022-08-23 | 2022-08-23 | 一种基于WASM实现web端高效通信的加密通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115396177A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116319763A (zh) * | 2023-05-19 | 2023-06-23 | 北京长亭科技有限公司 | 一种基于wasm技术的文件上传方法以及装置 |
CN116961906A (zh) * | 2023-09-19 | 2023-10-27 | 长春吉大正元信息技术股份有限公司 | 一种网络通信方法、装置、设备及存储介质 |
CN117294541A (zh) * | 2023-11-27 | 2023-12-26 | 浙江深大智能科技有限公司 | 票务***防刷票的多重加密方法、***、设备和介质 |
-
2022
- 2022-08-23 CN CN202211011723.2A patent/CN115396177A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116319763A (zh) * | 2023-05-19 | 2023-06-23 | 北京长亭科技有限公司 | 一种基于wasm技术的文件上传方法以及装置 |
CN116319763B (zh) * | 2023-05-19 | 2023-08-11 | 北京长亭科技有限公司 | 一种基于wasm技术的文件上传方法以及装置 |
CN116961906A (zh) * | 2023-09-19 | 2023-10-27 | 长春吉大正元信息技术股份有限公司 | 一种网络通信方法、装置、设备及存储介质 |
CN116961906B (zh) * | 2023-09-19 | 2023-12-15 | 长春吉大正元信息技术股份有限公司 | 一种网络通信方法、装置、设备及存储介质 |
CN117294541A (zh) * | 2023-11-27 | 2023-12-26 | 浙江深大智能科技有限公司 | 票务***防刷票的多重加密方法、***、设备和介质 |
CN117294541B (zh) * | 2023-11-27 | 2024-04-16 | 浙江深大智能科技有限公司 | 票务***防刷票的多重加密方法、***、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101508360B1 (ko) | 데이터 전송 장치 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 | |
US8499156B2 (en) | Method for implementing encryption and transmission of information and system thereof | |
US9077521B2 (en) | Method and system for secure communication | |
CN115396177A (zh) | 一种基于WASM实现web端高效通信的加密通信方法 | |
CN106788989B (zh) | 一种建立安全加密信道的方法及设备 | |
CN109951381B (zh) | 一种基于量子密钥公共云服务平台的邮件安全传输方法 | |
CN106357690B (zh) | 一种数据传输方法、数据发送装置及数据接收装置 | |
CN105376261B (zh) | 一种用于即时通讯消息的加密方法及*** | |
CN113806772A (zh) | 基于区块链的信息加密传输方法及装置 | |
CN104901935A (zh) | 一种基于cpk的双向认证及数据交互安全保护方法 | |
CN111914291A (zh) | 消息处理方法、装置、设备及存储介质 | |
CN104836784A (zh) | 一种信息处理方法、客户端和服务器 | |
CN114553590B (zh) | 数据传输方法及相关设备 | |
CN113382002B (zh) | 数据请求方法、请求应答方法、数据通信***及存储介质 | |
CN104200154A (zh) | 一种基于标识的安装包签名方法及其装置 | |
CN1316405C (zh) | 一种获得数字签名和实现数据安全的方法 | |
CN107249002B (zh) | 一种提高智能电能表安全性的方法、***及装置 | |
CN111224958A (zh) | 一种数据传输方法和*** | |
CN114154181A (zh) | 基于分布式存储的隐私计算方法 | |
CN114338648A (zh) | 一种基于国密算法的sftp多端文件安全传输的方法及*** | |
CN114257562A (zh) | 即时通讯方法、装置、电子设备和计算机可读存储介质 | |
CN116709325B (zh) | 一种基于高速加密算法的移动设备安全认证方法 | |
CN109492359B (zh) | 一种用于身份认证的安全网络中间件及其实现方法和装置 | |
CN114928503B (zh) | 一种安全通道的实现方法及数据传输方法 | |
CN112995210B (zh) | 一种数据传输方法、装置及电子设备 |
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 |