WO2022142112A1 - 基于区块链的邮件处理方法、邮件发送端、接收端及设备 - Google Patents

基于区块链的邮件处理方法、邮件发送端、接收端及设备 Download PDF

Info

Publication number
WO2022142112A1
WO2022142112A1 PCT/CN2021/096703 CN2021096703W WO2022142112A1 WO 2022142112 A1 WO2022142112 A1 WO 2022142112A1 CN 2021096703 W CN2021096703 W CN 2021096703W WO 2022142112 A1 WO2022142112 A1 WO 2022142112A1
Authority
WO
WIPO (PCT)
Prior art keywords
email
target
mail
exclusive
sender
Prior art date
Application number
PCT/CN2021/096703
Other languages
English (en)
French (fr)
Inventor
王健宗
瞿晓阳
李佳琳
Original Assignee
平安科技(深圳)有限公司
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 平安科技(深圳)有限公司 filed Critical 平安科技(深圳)有限公司
Publication of WO2022142112A1 publication Critical patent/WO2022142112A1/zh

Links

Images

Classifications

    • 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/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • 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
    • 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/0435Network 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 symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Abstract

本申请应用于区块链技术、云存储领域,公开了一种基于区块链的邮件处理方法、邮件发送端、邮件接收端和计算机设备。方法部分包括:获取邮件内容和该邮件发送者的专属信息,并生成专属密钥;通过专属密钥对邮件的邮件内容进行加密得到邮件加密文件,将邮件加密文件存储到第一云服务端;获取邮件加密文件对应的存储索引地址并获取邮件接收者的公钥;根据邮件接收者的公钥,对云存储索引和专属密钥进行加密,得到目标加密消息;确定用于存储目标加密消息的目标区块链网络;将目标加密消息存储在目标区块链网络,并将目标加密消息在目标区块链网络的存储位置信息发送给邮件接收端,以使邮件接收端依据该目标加密消息的存储位置信息获取邮件内容。

Description

基于区块链的邮件处理方法、邮件发送端、接收端及设备
本申请要求于 202012月31日提交中国专利局、申请号为 202011640195.8,发明名称为“基于区块链的邮件处理方法、邮件发送端、接收端及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及区块链技术领域,尤其涉及一种区块链的邮件处理方法、邮件发送端、接收端及设备。
背景技术
传统的电子邮件系统是由用户代理(MUA)、邮件传输代理(MTA)、邮件投递代理(MDA)组成。当邮件从MUA中发送一份邮件时,该邮件会发送到MTA,然后在一系列的MTA中转发,直到它到达最终发送目标为止。
技术问题
发明人发现,传统的电子邮件系统在发送邮件时,仅是简单根据用户名和密码进行身份验证,而邮件从发送端到接受端传送需要经过多个MTA,因此恶意行为者可以利用邮件服务中的漏洞获取邮箱中的敏感信息,因此可能导致在传输过程中被拦截,从而使邮件被任意的阅读,导致邮件中的重要信息被窃取,邮件安全性较低。
技术解决方案
本申请实施例提供一种基于区块链的邮件处理方法、邮件发送端、接收端及设备,以解决邮件安全性较低的问题。
一种基于区块链的邮件处理方法,应用于邮件发送端,方法包括:
当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息,并依据邮件发送者的专属信息生成专属密钥;
通过专属密钥对邮件的邮件内容进行加密,得到邮件加密文件,并将邮件加密文件存储到第一云服务端;
获取第一云服务端反馈的邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;
根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;
确定用于存储目标加密消息的目标区块链网络;
将目标加密消息存储在目标区块链网络,并将目标加密消息在目标区块链网络的存储位置信息发送给邮件接收端,以使邮件接收端依据该目标加密消息的存储位置信息获取邮件内容。
一种基于区块链的邮件处理方法,应用于邮件接收端,方法包括:
接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,目标加密消息为邮件发送端根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密得到,云存储索引地址为邮件发送端通过专属密钥对邮件发送者需发送的邮件的邮件内容进行加密并,将邮件加密文件存储到第一云服务端时对应的存储索引,专属密钥为邮件发送端依据邮件发送者的专属信息所生成;
依据目标加密消息的存储位置信息,从目标区块链网络中读取目标加密消息;
通过邮件接收者的私钥对目标加密消息进行解密,以得到云存储索引地址和专属密钥;
通过云存储索引地址,从第一云服务端读取邮件加密文件;
利用专属密钥对邮件加密文件进行解密,以得到邮件内容。
一种邮件发送端,包括:
第一获取模块,用于当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息;
生成模块,用于依据邮件发送者的专属信息生成专属密钥;
第一加密模块,用于通过专属密钥对邮件的邮件内容进行加密,得到邮件加密文件;
存储模块,用于将邮件加密文件存储到第一云服务端;
第二获取模块,用于获取第一云服务端反馈的邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;
第二加密模块,用于根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;
确定模块,用于确定用于存储目标加密消息的目标区块链网络;
发送模块,用于将目标加密消息存储在目标区块链网络,并将目标加密消息在目标区块链网络的存储位置信息发送给邮件接收端,以使邮件接收端依据该目标加密消息的存储位置信息获取邮件内容。
一种邮件接收端,包括:
接收模块,用于接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,目标加密消息为邮件发送端根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密得到,云存储索引地址为邮件发送端通过专属密钥对邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,专属密钥为邮件发送端依据邮件发送者的专属信息所生成;
第一读取模块,用于依据目标加密消息的存储位置信息,从目标区块链网络中读取目标加密消息;
第一解密模块,用于通过邮件接收者的私钥对目标加密消息进行解密,以得到云存储索引地址和专属密钥;
第二读取模块,用于通过云存储索引地址,从第一云服务端读取邮件加密文件;
第二解密模块,用于利用专属密钥对邮件加密文件进行解密,以得到邮件内容。
一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机可读指令,其中,处理器执行计算机可读指令时实现如下步骤:当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息,并依据邮件发送者的专属信息生成专属密钥;通过专属密钥对邮件的邮件内容进行加密,得到邮件加密文件,并将邮件加密文件存储到第一云服务端;获取第一云服务端反馈的邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;确定用于存储目标加密消息的目标区块链网络;将目标加密消息存储在目标区块链网络,并将目标加密消息在目标区块链网络的存储位置信息发送给邮件接收端,以使邮件接收端依据该目标加密消息的存储位置信息获取邮件内容。
一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机可读指令,其中,处理器执行计算机可读指令时实现如下步骤:接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,目标加密消息为邮件发送端根据邮件接收者的公钥,对云存储索引和专属密钥进行加密得到,云存储索引地址为邮件发送端通过专属密钥对邮件发送者需发送的邮件的邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,专属密钥为邮件发送端依据邮件发送者的专属信息所生成;依据目标加密消息的存储位置信息,从目标区块链网络中读取目标加密消息;通过邮件接收者的私钥对目标加密消息进行解密,以得到云存储索引地址和专属密钥;通过云存储索引地址,从第一云服务端读取邮件加密文件;利用专属密钥对邮件加密文件进行解密,以得到邮件内容。
一个或多个存储有计算机可读指令的可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息,并依据邮件发送者的专属信息生成专属密钥;通过专属密钥对邮件的邮件内容进行加密,得到邮件加密文件,并将邮件加密文件存储到第一云服务端;获取第一云服务端反馈的邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;确定用于存储目标加密消息的目标区块链网络;将目标加密消息存储在目标区块链网络,并将目标加密消息在目标区块链网络的存储位置信息发送给邮件接收端,以使邮件接收端依据该目标加密消息的存储位置信息获取邮件内容。
一个或多个存储有计算机可读指令的可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,目标加密消息为邮件发送端根据邮件接收者的公钥,对云存储索引和专属密钥进行加密得到,云存储索引地址为邮件发送端通过专属密钥对邮件发送者需发送的邮件的邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,专属密钥为邮件发送端依据邮件发送者的专属信息所生成;依据目标加密消息的存储位置信息,从目标区块链网络中读取目标加密消息;通过邮件接收者的私钥对目标加密消息进行解密,以得到云存储索引地址和专属密钥;通过云存储索引地址,从第一云服务端读取邮件加密文件;利用专属密钥对邮件加密文件进行解密,以得到邮件内容。
上述方案中,通过邮件接收者的私钥解密目标加密消息获得专属密钥和云存储器的存储地址索引,这样即使目标加密消息被截取也由于没有邮件接收者私钥而无法获取邮件内容,再通过索引去云存储器中获取邮件并通过专属密钥对邮件加密文件进行解密,从而得到邮件发送端发送的邮件内容。整体方案过程中的加密算法和电子邮件技术的组合,可以有效地解决传统电子邮件中存在的安全隐患问题,由于邮件中会指明发送者和接收者,其身份验证与个人生物特征绑定,无法伪造,邮件内容均使用发送者的专属密钥进行加密,并将存储在公共云存储中,又由邮件接收者的公钥进行加密存储于区块链中,从而保证邮件接收者准确的接收到邮件,过程中涉及到的所有信息都进行了加密处理,与传统的未经加密并经由多方转发的电子邮件传输方式相比,从根本上保证了电子邮件的安全性。
本申请的一个或多个实施例的细节在下面的附图和描述中提出,本申请的其他特征和优点将从说明书、附图以及权利要求变得明显。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,还可以根据这些附图获得其他的附图。
图1是本申请实施例中基于区块链的邮件处理方法的一交互示意图;
图2是本申请实施例中基于区块链的邮件处理方法的另一交互示意图;
图3是本申请实施例中获得专属密钥的一流程示意图;
图4是本申请实施例中获得邮件接收者的公钥和私钥的一流程示意图;
图5是本申请实施例中邮件发送端的一结构示意图;
图6是本申请实施例中邮件接收端的一结构示意图;
图7是本申请实施例中计算机设备的一示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施 例,都属于本申请保护的范围。
本方案所提供的邮件处理系统,包括邮件发送端、邮件接收端、云服务器(本方案主要涉及第一云服务端和第二云服务端)和区块链网络,上述邮件处理方法基于上述邮件处理系统所实现,为便于理解,引出四个概念,分别是邮件发送者、邮件发送端、邮件接收者、邮件接收端,其中,邮件发送端和邮件接收端是指具有邮件收发功能的客户端,该客户端安装于手机、平板电脑等终端设备中,邮件发送者是指通过邮件发送端进行邮件编辑和发送邮件的用户,邮件接收者是指通过邮件接收端接收邮件的用户。终端设备以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。云服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
本方案提供的邮件处理方法,请一并参阅图1-图2所示,为便于理解,以多端的角度进行描述,该邮件处理方法,主要包括如下步骤:
S10:当邮件发送者编辑完邮件时,邮件发送端获取邮件内容和该邮件发送者的专属信息,并依据专属信息生成专属密钥。
可以理解,邮件发送端可以是指安装于手机、电脑等具有邮件发送功能的客户端,在邮件发送者需要向邮件接收者发送邮件时,邮件发送者会在邮件发送端编辑所需的邮件。该邮件对应的邮件内容包括正文信息、邮件附件和收件邮件地址等。
在一些实施例中,当邮件发送者编辑完邮件时,邮件发送端会获取邮件内容。作为一个示例,邮件发送端可以先将该对应的邮件内容缓存在本地,也即邮件发送端本地,便于后续加密处理。
需要说明的是,该邮件发送者的专属信息是指与该邮件发送者相关的信息,示例性的,该专属信息可以是指邮件发送者的指纹信息或面部信息、身份证信息等邮件发送者的唯一专属生物信息;作为另一示例,该专属信息可以是指邮件发送者的专属账号信息,具体本方案不做限定。其中,在一些应用场景中,邮件发送端可以预先指示邮件发送者录入上述专属信息存储在本地,并与邮件发送者的邮件登录账号做关联,在邮件发送者成功登录邮件并编辑完邮件后,便于邮件发送端依据登录账号获取该发送者的专属信息。
邮件发送端获取到专属信息之后,利用专属信息生成专属密钥。
S20:邮件发送端通过专属密钥对该邮件的邮件内容进行加密,得到邮件加密文件。
S30:邮件发送端将该邮件加密文件存储到第一云服务端。
在依据专属信息生成专属密钥之后,邮件发送端从邮件发送端本地提取出邮件内容,并通过专属密钥对邮件内容进行加密,得到邮件加密文件,随后向第一云服务端发送邮件加密文件存储请求,该邮件加密文件存储请求中携带有该邮件加密文件,第一云服务端接收到该邮件加密文件存储请求,将该邮件加密文件存储请求携带的邮件加密文件进行存储,从而完成将该邮件加密文件上传到第一云服务端的过程。
需要说明的是,第一云服务端存储时,会邮记录该邮件加密文件的存储索引地址。该云存储索引地址,是将邮件加密文件存储在第一云服务端时所对应的存储地址,通过该云存储索引地址,可以在第一云服务端的找到存储索引地址对应的邮件加密文件。
S40:邮件发送端获取第一云服务端反馈的邮件加密文件对应的云存储索引地址。
S50:并获取邮件接收者的公钥。
邮件发送端将该邮件加密文件存储到第一云服务端之后,第一云服务端会将该邮件加密文件对应的云存储索引地址反馈回邮件发送端,并且,邮件发送端需进一步获取邮件接收者的公钥。
作为一个示例,该邮件接收者具有自己专属的公钥和私钥,并将其中的公钥上传至第二云服务端,且使第二云服务端依据邮件接收者的邮件地址将邮件接收者的公钥关联存储至第二云服务端,以将邮件接收者的公钥公布。对于邮件发送端而言,可以通过该邮件接收者的邮件地址,从共享云服务端上获取到邮件接收者的邮件接收者的公钥,其中,在一 实施例中,第二云服务端和第一云服务端为不同的云服务端。
需要说明的是,在一些应用场景中,该第一云服务端和第二云服务端可以是指同个共享云服务端,这样,可以将上传邮件加密文件和获取邮件接收者的邮件接收者的公钥的过程一同进行,减少多次发送存储请求和获取公钥请求的过程。
S60:邮件发送端根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息。
邮件发送端获取到邮件接收者的邮件接收者的公钥之后,根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息。
其中,邮件发送端在加密时,可以采用RSA、Elgamal、背包算法、Rabin、Diffie-Hellman、ECC(椭圆曲线加密算法)等,利用邮件接收者的公钥对云存储索引和专属密钥进行加密,得到目标加密消息,在此本方案不做限定。
S70:邮件发送端确定用于存储所述目标加密消息的目标区块链网络。
S80:邮件发送端将该目标加密消息存储在所述目标区块链网络。
邮件发送端在确定用于存储目标加密消息的目标区块链网络之后,将该目标加密消息存储在所述目标区块链网络。需要强调的是,为进一步保证上述目标加密消息的私密和安全性,上述目标加密消息还可以存储于一区块链网络的节点中。
需要说明的是,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
S90:邮件发送端将目标加密消息在所述目标区块链网络的存储位置信息发送给邮件接收端。
邮件发送端在将该目标加密消息存储在所述目标区块链网络之后,该目标加密消息在区块链网络上会有一对应的存储位置信息,邮件发送端将该存储位置信息发送给邮件接收端。
S100:邮件接收端依据该目标加密消息的存储位置信息,从目标区块链网络中读取该目标加密消息。
S110:邮件接收端通过邮件接收者的私钥对目标加密消息进行解密,以得到云存储索引地址和专属密钥。
S120:邮件接收端通过云存储索引地址,从第一云服务端读取邮件加密文件。
S130:邮件接收端利用专属密钥对邮件加密文件进行解密,以得到邮件内容。
对于步骤S90-S120,邮件接收端依据该目标加密消息的存储位置信息之后,从目标区块链网络中读取该目标加密消息,并利用与邮件接收者的公钥相对应的私钥对目标加密消息进行解密,便可得到上述云存储索引地址和专属密钥。此时,邮件接收端得到云存储索引之后,再从第一云服务端获取该云存储索引地址对应的邮件加密文件,继而利用得到的专属密钥对邮件加密文件进行解密,以得到邮件内容,至此,邮件发送者通过邮件发送端所编辑的邮件内容就已经别邮件接收端所接收到。
可见,本方案提供了一种邮件处理方法,邮件发送端在发送邮件时,利用专属密钥对邮件内容进行加密,并将加密后的邮件内容存储到第一云服务端;随后利用邮件接收者的公钥对邮件加密文件的云存储索引地址和专属密钥再次进行加密,以得到目标加密消息并存储在区块链网络中,最后将目标加密消息的存储位置信息并发送给邮件接收端,从该过程可以看出,存储位置信息发送出去时,信息泄露风险的可能性极低,即使存储位置信息被截取,盗取者仅能获取到存储位置信息,即便盗取者依据存储位置信息从区块链网络中读取到依然是被加密的目标加密消息,盗取者也无法破解得到被加密的信息,另外由于目标加密消息是存储在区块链网络中的,其中的信息读取或改变均能被记录到,有利于追溯欲盗取者,极大的提高了邮件内容传输的安全性和可追溯性。
作为一个示例,S10中,也即依据专属信息生成专属密钥,如图3所示,具体包括如下步骤:
S11:对邮件发送者的专属信息进行哈希计算,以获取邮件发送者专属哈希值,并依据该邮件发送者专属哈希值随机生成两个第一随机数,其中,两个第一随机数不相同。
哈希计算,就是把任意长度的输入,通过散列算法,变换成固定长度的输出的散列值的过程。该步骤中,可以采用MD4、MD5、SHA-1及其他等哈希算法对专属信息进行哈希计算,以获取专属的散列值,本方案中称为专属哈希值。在得到该专属哈希值之后,再利用随机数算法对该专属哈希值进行随机数生成处理,随机生成两个随机数,本方案将这随机数称为第一随机数。其中,利用随机数算法所生成的两个第一随机数不同,有助于后续生成所需的专属密钥。
S12:将邮件发送者的专属信息作为目标对称加密算法的密钥,对所述两个第一随机数进行加密,以对应获取两个第一帮助数据。
S13:将两个第一帮助数据分别与对应的第一随机数进行异或处理,以获取两个第一目标数。
对称加密算法,指的是加密和解密使用相同密钥的加密算法,也就是说,加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来,简单而言,对称加密算法大多数是指加密密钥和解密密钥是相同的算法。在该实施例中,可以采用,在得到两个第一随机数之后,将所述专属信息作为目标对称加密算法的密钥,对所述两个第一随机数进行加密,以对应获取两个第一帮助数据。
具体地,在该方案中,可采用高级加密标准(Advanced Encryption Standard,AES)算法作为目标对称加密算法,以专属信息作为密钥,对两个第一随机数进行加密处理,以得到对应的两个第一帮助数据。例如,设AES加密函数为E,则C=E(K,P),其中P为明文,也即随机数;K为密钥,也即专属信息;C为密文,也即第一帮助数据。也就是说,把明文P和密钥K作为加密函数的参数输入,则加密函数E会输出密文C。当然,也可以采用其他的对称加密算法作为本方案中的目标对称加密算法,本方案不做具体限制。
在得到两个第一帮助数据之后,在将这两个第一帮助数据分别与对应的第一随机数进行异或处理,以获取两个第一目标数。
S14:通过大素数生成算法,分别对两个第一目标数进行生成处理,以获取两个第一大素数p1和q1。
S15:计算第一目标乘积n1=p1q1,以及φ(n1)=(p1-1)(q1-1),并选取满足1<e1<φ(n1) 且gcd(φ(n1),e1)=1的第一目标整数e1。
其中,φ(n1)是欧拉函数,gcd(φ(n1),e1)表示非负整数φ(n1)和e1的最大公因数。
S16:计算满足e1d1=1modφ(n1)的第二目标整数d1。
e1d1=1modφ(n1),用于计算e1对于φ(n1)的模反元素d1,本方案称为第二目标整数。
S17:将第一目标整数和第一目标乘积封装成邮件发送者的私钥,并将第二目标整数和第一目标乘积封装成邮件发送者的公钥。
S18:随机选取邮件接收者的私钥或公钥作为专属密钥。
在分别得到第一目标整数和第二目标整数之后,便可将第一目标整数和第一目标乘积封装成邮件发送者的公钥,并将第二目标整数和第一目标乘积封装成邮件发送者的私钥。也即:{e1,n1}为邮件接收者的公钥,{d1,n1}为邮件接收者的私钥。随机利用{e1,n1}或{d1,n1},便可对该邮件的邮件内容进行加密,得到邮件加密文件。
需要说明的是,作为一个示例,邮件发送端获取邮件接收者的公钥之前,邮件接收者可以通过邮件接收端将邮件接收者的公钥公布和利用邮件接收者的私钥解密目标加密消息之前需要生成邮件接收者的公钥和私钥,具体地,本方案也提供了生成邮件接收者的公钥和私钥的方式,可应用于邮件接收端,具体地,如图4所示,包括如下步骤:
S100:对邮件接收者的专属信息进行哈希计算,以获取邮件接收者专属哈希值,并依据该邮件接收者专属哈希值随机生成两个第二随机数,其中,两个第二随机数不相同。
S101:将所述邮件接收者的专属信息作为目标对称加密算法的密钥,对所述两个第二随机数进行加密,以对应获取两个第二帮助数据。
S102:将两个第二帮助数据分别与对应的第二随机数进行异或处理,以获取两个第二目标数。
S103:通过大素数生成算法,分别对两个第二目标数进行生成处理,以获取两个第二大素数p2和q2。
S104:计算第二目标乘积n2=p2q2,以及φ(n2)=(p2-1)(q2-1),并选取满足1<e2<φ(n2)且gcd(φ(n1),e2)=1的第三目标整数e2。
其中,φ(n2)是欧拉函数,gcd(φ(n2),e2)表示非负整数φ(n2)和e2的最大公因数。
S105:计算满足e2d2=1modφ(n2)的第四目标整数d2。
e2d2=1modφ(n2),用于计算e2对于φ(n2)的模反元素d2,本方案称为第四目标整数。
S106:将第三目标整数和第二目标乘积封装成邮件接收者的私钥,并将第四目标整数和第二目标乘积封装成邮件接收者的公钥。
S107:将所述邮件接收者的私钥保存于本地,并将所述邮件接收者的公钥与邮件地址关联存储至第二云服务端。
在分别得到第三目标整数和第四目标整数之后,便可将第三目标整数和第二目标乘积封装成邮件接收者的公钥,并将第四目标整数和第二目标乘积封装成邮件接收者的私钥。也即:{e2,n2}为邮件接收者的公钥,{d2,n2}为邮件接收者的私钥。并将所述邮件接收者的私钥保存于本地,并将所述邮件接收者的公钥与邮件地址关联存储至第二云服务端。
需要说明的是,邮件接收者的公钥和私钥的获取过程,可以对应参阅前述获取邮件发送者的专属密钥的过程,在此不重复一一解释各个步骤。
作为一个示例,S50中,也即邮件发送端确定用于存储所述目标加密消息的目标区块链网络,包括:
S51:邮件发送端判断与邮件接收端是否在同一区块链网络中。
S52:邮件发送端判断与邮件接收端是否在同一区块链网络中。
S53:当邮件发送端与邮件接收端为不在同一区块链网络中,则确定邮件接收端所在的区块链网络作为目标区块链网络。
S54:当邮件发送端与邮件接收端为在同一区块链网络中,则确定邮件发送端所在的 区块链网络作为目标区块链网络。
需要说明的是,邮件发送端和邮件接收端可以部署在同一区块链网络中,但实际应用中,为了减低部署成本,且由于用户数量级别大,为了提高系统的可扩展性,大多数邮件发送端和邮件接收端不同在区块链网络中。因此,依据邮件发送端与邮件接收端所处的区块链网络的不同,会相应有不同的处理逻辑。本方案中,邮件发送端在发送邮件时,会先判断邮件发送端判断与邮件接收端是否在同一区块链网络中。当邮件发送端与邮件接收端为不在同一区块链网络中,则将确定邮件接收端所在的区块链网络作为目标区块链网络,也就是说,邮件发送端会将目标加密消息发送至邮件接收端所在的区块链网络存储,并且,将目标加密消息在邮件接收端所在的区块链网络的存储位置信息发送给邮件接收端,以便邮件接收端从其所在的区块链网络中读取目标加密消息。
另一方面,当邮件发送端与邮件接收端为在同一区块链网络中,则直接确定邮件发送端所在的区块链网络作为目标区块链网络,也就是说,邮件发送端会将目标加密消息发送至邮件发送端所在的区块链网络存储,并且,将目标加密消息在邮件发送端所在的区块链网络的存储位置信息发送给邮件接收端,以便邮件接收端从邮件发送端所在的区块链网络所在的区块链网络中读取目标加密消息。
其中,在一个示例中,在邮件发送端将目标加密消息发送至目标区块链网络存储的过程如下所示:首先将携带目标加密消息存储请求给区块链处理端,该目标加密消息存储请求携带有目标加密消息,区块链处理端接收到目标加密消息存储请求之后,区块链处理端将利用目标加密消息生成区块并存储至邮件接收端所在的区块链中,完成上链过程。
其中,作为一个示例,S60中,也即将目标加密消息在所述目标区块链网络的存储位置信息发送给邮件接收端,包括:
S61:邮件发送端根据存储位置信息生成邮件正文,该邮件正文包含有存储位置信息;
S62:邮件发送端将该包含有存储位置信息的邮件正文通过邮件的形式发送给邮件接收端,以使邮件接收端可以通过该邮件正文获取到目标加密消息的存储位置信息。
值得强调的是,此过程可以通过普通邮件的形式将存储位置信息发送出去,但信息泄露风险的可能性极低,即使该普通邮件被截取,盗取者仅能获取到存储位置信息,即便盗取者依据存储位置信息从区块链网络中读取到目标加密消息,由于目标加密消息是经过加密的,盗取者也无法破解得到被加密的信息。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在一实施例中,提供一种邮件发送端,该邮件发送端与上述实施例中邮件处理方法的邮件发送端一一对应。如图5所示,该邮件发送端包括第一获取模块101、生成模块102、第一加密模块103、存储模块104、第二获取模块105、、第二加密模块106、确定模块107和发送模块108。各功能模块详细说明如下:
第一获取模块101,用于当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息;
生成模块102,用于依据邮件发送者的专属信息生成专属密钥;
第一加密模块103,用于通过专属密钥对邮件的邮件内容进行加密,得到邮件加密文件;
存储模块104,用于将邮件加密文件存储到第一云服务端;
第二获取模块105,用于获取第一云服务端反馈的邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;
第二加密模块106,用于根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;
确定模块107,用于确定用于存储目标加密消息的目标区块链网络;
发送模块108,用于将目标加密消息存储在目标区块链网络,并将目标加密消息在目标区块链网络的存储位置信息发送给邮件接收端,以使邮件接收端依据该目标加密消息的存储位置信息获取邮件内容。
在一实施例中,生成模块102具体用于:
对邮件发送者的专属信息进行哈希计算,以获取邮件发送者专属哈希值,并依据邮件发送者专属哈希值随机生成两个第一随机数,其中,两个第一随机数不相同;
将邮件发送者的专属信息作为目标对称加密算法的密钥,对两个第一随机数进行加密,以对应获取两个第一帮助数据;
将两个第一帮助数据分别与对应的第一随机数进行异或处理,以获取两个第一目标数;
通过大素数生成算法,分别对两个第一目标数进行生成处理,以获取两个第一大素数p1和q1;
计算第一目标乘积n1=p1q1,以及φ(n1)=(p1-1)(q1-1),并选取满足1<e1<φ(n1)且gcd(φ(n1),e1)=1的第一目标整数e1;
计算满足e1d1=1modφ(n1)的第二目标整数d1;
将第一目标整数和第一目标乘积封装成邮件发送者的私钥,并将第二目标整数和第一目标乘积封装成邮件发送者的公钥;
随机选取邮件发送者的私钥或公钥作为专属密钥。
在一实施例中,确定模块107具体用于:
判断邮件发送端与邮件接收端是否在同一区块链网络中;
当邮件发送端与邮件接收端为不在同一区块链网络中,则确定邮件接收端所在的区块链网络作为目标区块链网络;
当邮件发送端与邮件接收端为在同一区块链网络中,则确定邮件发送端所在的区块链网络作为目标区块链网络。
在一实施例中,发送模块108具体用于:
根据存储位置信息生成邮件正文,邮件正文包含有存储位置信息;
将包含有存储位置信息的邮件正文,通过邮件的形式发送给邮件接收端,以使邮件接收端可以通过邮件正文获取到存储位置信息。
在一实施例中,第二获取模块105,具体用于:
获取邮件接收者的邮件地址;
从第二云服务端上获取到邮件接收者的公钥,第一云服务端与第一云服务端为不同的云服务端。
在一实施例中,提供一种邮件接收端,该邮件接收端与上述实施例中邮件处理方法的邮件接收端一一对应。如图6所示,该邮件接收端包括接收模块201、第一读取模块202、第一解密模块203、第二读取模块204和第二解密模块205。各功能模块详细说明如下:
接收模块201,用于接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,目标加密消息为邮件发送端根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密得到,云存储索引地址为邮件发送端通过专属密钥对邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,专属密钥为邮件发送端依据邮件发送者的专属信息所生成;
第一读取模块202,用于依据目标加密消息的存储位置信息,从目标区块链网络中读取目标加密消息;
第一解密模块203,用于通过邮件接收者的私钥对目标加密消息进行解密,以得到云存储索引地址和专属密钥;
第二读取模块204,用于通过云存储索引地址,从第一云服务端读取邮件加密文件;
第二解密模块205,用于利用专属密钥对邮件加密文件进行解密,以得到邮件内容。
关于邮件发送端或邮件接收端的具体限定可以参见上文中对于邮件处理方法中邮件发送端或邮件接收端的限定,在此不再赘述。上述邮件发送端或邮件接收端中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是邮件发送端或邮件接收端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质、内存储器。该存储介质存储有操作系统和计算机可读指令。该存储介质包括非易失性存储介质和易失性存储介质,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的网络接口用于与外部服务器(如第一云服务端或第二云服务端以及目标区块链网络)通过网络连接通信。该计算机可读指令被处理器执行时以实现一种基于区块链的邮件处理方法中邮件发送端或邮件接收端的步骤或功能。
在一个实施例中,提供一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机可读指令,其中,处理器执行计算机可读指令时实现如下步骤:当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息,并依据邮件发送者的专属信息生成专属密钥;通过专属密钥对邮件的邮件内容进行加密,得到邮件加密文件,并将邮件加密文件存储到第一云服务端;获取第一云服务端反馈的邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;确定用于存储目标加密消息的目标区块链网络;将目标加密消息存储在目标区块链网络,并将目标加密消息在目标区块链网络的存储位置信息发送给邮件接收端,以使邮件接收端依据该目标加密消息的存储位置信息获取邮件内容。
在一实施例中,处理器执行计算机可读指令时实现如下步骤:对邮件发送者的专属信息进行哈希计算,以获取邮件发送者专属哈希值,并依据邮件发送者专属哈希值随机生成两个第一随机数,其中,两个第一随机数不相同;将邮件发送者的专属信息作为目标对称加密算法的密钥,对两个第一随机数进行加密,以对应获取两个第一帮助数据;将两个第一帮助数据分别与对应的第一随机数进行异或处理,以获取两个第一目标数;通过大素数生成算法,分别对两个第一目标数进行生成处理,以获取两个第一大素数p1和q1;计算第一目标乘积n1=p1q1,以及φ(n1)=(p1-1)(q1-1),并选取满足1<e1<φ(n1)且gcd(φ(n1),e1)=1的第一目标整数e1;计算满足e1d1=1modφ(n1)的第二目标整数d1;将第一目标整数和第一目标乘积封装成邮件发送者的私钥,并将第二目标整数和第一目标乘积封装成邮件发送者的公钥;随机选取邮件发送者的私钥或公钥作为专属密钥。
在一实施例中,其中,处理器执行计算机可读指令时实现如下步骤:判断邮件发送端与邮件接收端是否在同一区块链网络中;当邮件发送端与邮件接收端为不在同一区块链网络中,则确定邮件接收端所在的区块链网络作为目标区块链网络;当邮件发送端与邮件接收端为在同一区块链网络中,则确定邮件发送端所在的区块链网络作为目标区块链网络。
在一实施例中,其中,处理器执行计算机可读指令时实现如下步骤:根据存储位置信息生成邮件正文,邮件正文包含有存储位置信息;将包含有存储位置信息的邮件正文,通过邮件的形式发送给邮件接收端,以使邮件接收端可以通过邮件正文获取到存储位置信息。
在一实施例中,其中,处理器执行计算机可读指令时实现如下步骤:获取邮件接收者的邮件地址;从第二云服务端上获取到邮件接收者的公钥,第二云服务端与第一云服务端 为不同的云服务端。
在一实施例中,提供了一个或多个存储有计算机可读指令的可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息,并依据邮件发送者的专属信息生成专属密钥;通过专属密钥对邮件的邮件内容进行加密,得到邮件加密文件,并将邮件加密文件存储到第一云服务端;获取第一云服务端反馈的邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;确定用于存储目标加密消息的目标区块链网络;将目标加密消息存储在目标区块链网络,并将目标加密消息在目标区块链网络的存储位置信息发送给邮件接收端,以使邮件接收端依据该目标加密消息的存储位置信息获取邮件内容。
在一实施例中,其中,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:对邮件发送者的专属信息进行哈希计算,以获取邮件发送者专属哈希值,并依据邮件发送者专属哈希值随机生成两个第一随机数,其中,两个第一随机数不相同;将邮件发送者的专属信息作为目标对称加密算法的密钥,对两个第一随机数进行加密,以对应获取两个第一帮助数据;将两个第一帮助数据分别与对应的第一随机数进行异或处理,以获取两个第一目标数;通过大素数生成算法,分别对两个第一目标数进行生成处理,以获取两个第一大素数p1和q1;计算第一目标乘积n1=p1q1,以及φ(n1)=(p1-1)(q1-1),并选取满足1<e1<φ(n1)且gcd(φ(n1),e1)=1的第一目标整数e1;计算满足e1d1=1modφ(n1)的第二目标整数d1;将第一目标整数和第一目标乘积封装成邮件发送者的私钥,并将第二目标整数和第一目标乘积封装成邮件发送者的公钥;随机选取邮件发送者的私钥或公钥作为专属密钥。
在一实施例中,其中,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:判断邮件发送端与邮件接收端是否在同一区块链网络中;当邮件发送端与邮件接收端为不在同一区块链网络中,则确定邮件接收端所在的区块链网络作为目标区块链网络;当邮件发送端与邮件接收端为在同一区块链网络中,则确定邮件发送端所在的区块链网络作为目标区块链网络。
在一实施例中,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:根据存储位置信息生成邮件正文,邮件正文包含有存储位置信息;将包含有存储位置信息的邮件正文,通过邮件的形式发送给邮件接收端,以使邮件接收端可以通过邮件正文获取到存储位置信息。
在一实施例中,提供另一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机可读指令,其中,该处理器执行计算机可读指令时实现如下步骤:接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,目标加密消息为邮件发送端根据邮件接收者的公钥,对云存储索引和专属密钥进行加密得到,云存储索引地址为邮件发送端通过专属密钥对邮件发送者需发送的邮件的邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,专属密钥为邮件发送端依据邮件发送者的专属信息所生成;依据目标加密消息的存储位置信息,从目标区块链网络中读取目标加密消息;通过邮件接收者的私钥对目标加密消息进行解密,以得到云存储索引地址和专属密钥;通过云存储索引地址,从第一云服务端读取邮件加密文件;利用专属密钥对邮件加密文件进行解密,以得到邮件内容。
在一实施例中,提供一个或多个存储有计算机可读指令的可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如下步骤:接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,目标加密消息为邮件发送端根据邮件接收者的公钥,对云存储索引和专属密钥进行加密得到,云存储索引地址为邮件发送端通过专属密钥对邮件发送者需发送的邮件的邮件内容进行加密并将邮件加密文 件存储到第一云服务端时对应的存储索引,专属密钥为邮件发送端依据邮件发送者的专属信息所生成;依据目标加密消息的存储位置信息,从目标区块链网络中读取目标加密消息;
通过邮件接收者的私钥对目标加密消息进行解密,以得到云存储索引地址和专属密钥;通过云存储索引地址,从第一云服务端读取邮件加密文件;利用专属密钥对邮件加密文件进行解密,以得到邮件内容。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性计算机可读取存储介质中,所述计算机可读存储介质可以是非易失性,也可以是易失性,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (20)

  1. 一种基于区块链的邮件处理方法,其中,应用于邮件发送端,所述方法包括:
    当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息,并依据所述邮件发送者的专属信息生成专属密钥;
    通过所述专属密钥对所述邮件的邮件内容进行加密,得到邮件加密文件,并将所述邮件加密文件存储到第一云服务端;
    获取所述第一云服务端反馈的所述邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;
    根据所述邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;
    确定用于存储所述目标加密消息的目标区块链网络;
    将所述目标加密消息存储在所述目标区块链网络,并将所述目标加密消息在所述目标区块链网络的存储位置信息发送给邮件接收端,以使所述邮件接收端依据该目标加密消息的存储位置信息获取所述邮件内容。
  2. 如权利要求1所述的基于区块链的邮件处理方法,其中,所述依据所述邮件发送者的专属信息生成专属密钥,包括:
    对所述邮件发送者的专属信息进行哈希计算,以获取邮件发送者专属哈希值,并依据所述邮件发送者专属哈希值随机生成两个第一随机数,其中,两个所述第一随机数不相同;
    将所述邮件发送者的专属信息作为目标对称加密算法的密钥,对所述两个第一随机数进行加密,以对应获取两个第一帮助数据;
    将两个所述第一帮助数据分别与对应的所述第一随机数进行异或处理,以获取两个第一目标数;
    通过大素数生成算法,分别对两个所述第一目标数进行生成处理,以获取两个第一大素数p1和q1;
    计算第一目标乘积n1=p1q1,以及φ(n1)=(p1-1)(q1-1),并选取满足1<e1<φ(n1)且gcd(φ(n1),e1)=1的第一目标整数e1;
    计算满足e1d1=1modφ(n1)的第二目标整数d1;
    将所述第一目标整数和所述第一目标乘积封装成所述邮件发送者的私钥,并将所述第二目标整数和所述第一目标乘积封装成邮件发送者的公钥;
    随机选取所述邮件发送者的私钥或公钥作为所述专属密钥。
  3. 如权利要求1所述的基于区块链的邮件处理方法,其中,所述确定用于存储所述目标加密消息的目标区块链网络,包括:
    判断所述邮件发送端与所述邮件接收端是否在同一区块链网络中;
    当所述邮件发送端与邮件接收端为不在同一区块链网络中,则确定所述邮件接收端所在的区块链网络作为所述目标区块链网络;
    当所述邮件发送端与所述邮件接收端为在同一区块链网络中,则确定所述邮件发送端所在的区块链网络作为所述目标区块链网络。
  4. 如权利要求1所述的基于区块链的邮件处理方法,其中,所述将所述目标加密消息在所述目标区块链网络的存储位置信息发送给邮件接收端,包括:
    根据所述存储位置信息生成邮件正文,所述邮件正文包含有所述存储位置信息;
    将所述包含有存储位置信息的所述邮件正文,通过邮件的形式发送给所述邮件接收端,以使所述邮件接收端可以通过所述邮件正文获取到所述存储位置信息。
  5. 如权利要求1-4任一项所述的基于区块链的邮件处理方法,其中,所述获取邮件接收者的公钥,包括:
    获取所述邮件接收者的邮件地址;
    从第二云服务端上获取到所述邮件接收者的公钥,所述第二云服务端与所述第一云服务端为不同的云服务端。
  6. 一种基于区块链的邮件处理方法,其中,应用于邮件接收端,所述方法包括:
    接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,所述目标加密消息为所述邮件发送端根据邮件接收者的公钥,对云存储索引和专属密钥进行加密得到,所述云存储索引地址为所述邮件发送端通过所述专属密钥对邮件发送者需发送的邮件的邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,所述专属密钥为所述邮件发送端依据所述邮件发送者的专属信息所生成;
    依据所述目标加密消息的存储位置信息,从所述目标区块链网络中读取所述目标加密消息;
    通过所述邮件接收者的私钥对所述目标加密消息进行解密,以得到所述云存储索引地址和专属密钥;
    通过所述云存储索引地址,从第一云服务端读取所述邮件加密文件;
    利用所述专属密钥对所述邮件加密文件进行解密,以得到所述邮件内容。
  7. 如权利要求1所述的基于区块链的邮件处理方法,其中,所述邮件接收者的公钥和私钥通过如下方式获取:
    对所述邮件接收者的专属信息进行哈希计算,以获取邮件接收者专属哈希值,并依据所述邮件接收者专属哈希值随机生成两个第二随机数,其中,两个所述第二随机数不相同;
    将所述邮件接收者的专属信息作为目标对称加密算法的密钥,对所述两个第二随机数进行加密,以对应获取两个第二帮助数据;
    将两个所述第二帮助数据分别与对应的所述第二随机数进行异或处理,以获取两个第二目标数;
    通过大素数生成算法,分别对两个所述第二目标数进行生成处理,以获取两个第二大素数p2和q2;
    计算第二目标乘积n2=p2q2,以及
    Figure PCTCN2021096703-appb-100001
    并选取满足
    Figure PCTCN2021096703-appb-100002
    Figure PCTCN2021096703-appb-100003
    的第三目标整数e2;
    计算满足
    Figure PCTCN2021096703-appb-100004
    的第四目标整数d2;
    将所述第三目标整数和所述第二目标乘积封装成所述邮件接收者的私钥,并将所述第四目标整数和所述第二目标乘积封装成所述邮件接收者的公钥;
    将所述邮件接收者的私钥保存于本地,并将所述邮件接收者的公钥与邮件地址关联存储至第二云服务端。
  8. 一种邮件发送端,其中,包括:
    第一获取模块,用于当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息;
    生成模块,用于依据所述邮件发送者的专属信息生成专属密钥;
    第一加密模块,用于通过所述专属密钥对所述邮件的邮件内容进行加密,得到邮件加密文件;
    存储模块,用于将所述邮件加密文件存储到第一云服务端;
    第二获取模块,用于获取所述第一云服务端反馈的所述邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;
    第二加密模块,用于根据所述邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;
    确定模块,用于确定用于存储所述目标加密消息的目标区块链网络;
    发送模块,用于将所述目标加密消息存储在所述目标区块链网络,并将所述目标加密 消息在所述目标区块链网络的存储位置信息发送给邮件接收端,以使所述邮件接收端依据该目标加密消息的存储位置信息获取所述邮件内容。
  9. 一种邮件接收端,其中,包括:
    接收模块,用于接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,所述目标加密消息为所述邮件发送端根据邮件接收者的公钥,对云存储索引地址和专属密钥进行加密得到,所述云存储索引地址为所述邮件发送端通过所述专属密钥对邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,所述专属密钥为所述邮件发送端依据所述邮件发送者的专属信息所生成;
    第一读取模块,用于依据所述目标加密消息的存储位置信息,从所述目标区块链网络中读取所述目标加密消息;
    第一解密模块,用于通过所述邮件接收者的私钥对所述目标加密消息进行解密,以得到所述云存储索引地址和专属密钥;
    第二读取模块,用于通过所述云存储索引地址,从第一云服务端读取所述邮件加密文件;
    第二解密模块,用于利用所述专属密钥对所述邮件加密文件进行解密,以得到所述邮件内容。
  10. 一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其中,所述处理器执行所述计算机可读指令时实现如下步骤:
    当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息,并依据所述邮件发送者的专属信息生成专属密钥;
    通过所述专属密钥对所述邮件的邮件内容进行加密,得到邮件加密文件,并将所述邮件加密文件存储到第一云服务端;
    获取所述第一云服务端反馈的所述邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;
    根据所述邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;
    确定用于存储所述目标加密消息的目标区块链网络;
    将所述目标加密消息存储在所述目标区块链网络,并将所述目标加密消息在所述目标区块链网络的存储位置信息发送给邮件接收端,以使所述邮件接收端依据该目标加密消息的存储位置信息获取所述邮件内容。
  11. 如权利要求10所述的计算机设备,其中,所述处理器执行所述计算机可读指令时实现如下步骤:
    对所述邮件发送者的专属信息进行哈希计算,以获取邮件发送者专属哈希值,并依据所述邮件发送者专属哈希值随机生成两个第一随机数,其中,两个所述第一随机数不相同;
    将所述邮件发送者的专属信息作为目标对称加密算法的密钥,对所述两个第一随机数进行加密,以对应获取两个第一帮助数据;
    将两个所述第一帮助数据分别与对应的所述第一随机数进行异或处理,以获取两个第一目标数;
    通过大素数生成算法,分别对两个所述第一目标数进行生成处理,以获取两个第一大素数p1和q1;
    计算第一目标乘积n1=p1q1,以及φ(n1)=(p1-1)(q1-1),并选取满足1<e1<φ(n1)且gcd(φ(n1),e1)=1的第一目标整数e1;
    计算满足e1d1=1modφ(n1)的第二目标整数d1;
    将所述第一目标整数和所述第一目标乘积封装成所述邮件发送者的私钥,并将所述第二目标整数和所述第一目标乘积封装成邮件发送者的公钥;
    随机选取所述邮件发送者的私钥或公钥作为所述专属密钥。
  12. 如权利要求10所述的计算机设备,其中,所述处理器执行所述计算机可读指令时实现如下步骤:
    判断所述邮件发送端与所述邮件接收端是否在同一区块链网络中;
    当所述邮件发送端与邮件接收端为不在同一区块链网络中,则确定所述邮件接收端所在的区块链网络作为所述目标区块链网络;
    当所述邮件发送端与所述邮件接收端为在同一区块链网络中,则确定所述邮件发送端所在的区块链网络作为所述目标区块链网络。
  13. 如权利要求10所述的计算机设备,其中,所述处理器执行所述计算机可读指令时实现如下步骤:
    根据所述存储位置信息生成邮件正文,所述邮件正文包含有所述存储位置信息;
    将所述包含有存储位置信息的所述邮件正文,通过邮件的形式发送给所述邮件接收端,以使所述邮件接收端可以通过所述邮件正文获取到所述存储位置信息。
  14. 如权利要求10-13任一项所述的计算机设备,其中,所述处理器执行所述计算机可读指令时实现如下步骤:
    获取所述邮件接收者的邮件地址;
    从第二云服务端上获取到所述邮件接收者的公钥,所述第二云服务端与所述第一云服务端为不同的云服务端。
  15. 一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其中,所述处理器执行所述计算机可读指令时实现如下步骤:
    接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,所述目标加密消息为所述邮件发送端根据邮件接收者的公钥,对云存储索引和专属密钥进行加密得到,所述云存储索引地址为所述邮件发送端通过所述专属密钥对邮件发送者需发送的邮件的邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,所述专属密钥为所述邮件发送端依据所述邮件发送者的专属信息所生成;
    依据所述目标加密消息的存储位置信息,从所述目标区块链网络中读取所述目标加密消息;
    通过所述邮件接收者的私钥对所述目标加密消息进行解密,以得到所述云存储索引地址和专属密钥;
    通过所述云存储索引地址,从第一云服务端读取所述邮件加密文件;
    利用所述专属密钥对所述邮件加密文件进行解密,以得到所述邮件内容。
  16. 一个或多个存储有计算机可读指令的可读存储介质,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如下步骤:
    当邮件发送者编辑完邮件时,获取邮件内容和该邮件发送者的专属信息,并依据所述邮件发送者的专属信息生成专属密钥;
    通过所述专属密钥对所述邮件的邮件内容进行加密,得到邮件加密文件,并将所述邮件加密文件存储到第一云服务端;
    获取所述第一云服务端反馈的所述邮件加密文件对应的云存储索引地址,并获取邮件接收者的公钥;
    根据所述邮件接收者的公钥,对云存储索引地址和专属密钥进行加密,得到目标加密消息;
    确定用于存储所述目标加密消息的目标区块链网络;
    将所述目标加密消息存储在所述目标区块链网络,并将所述目标加密消息在所述目标区块链网络的存储位置信息发送给邮件接收端,以使所述邮件接收端依据该目标加密消息的存储位置信息获取所述邮件内容。
  17. 如权利要求16所述的可读存储介质,其中,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如下步骤:
    对所述邮件发送者的专属信息进行哈希计算,以获取邮件发送者专属哈希值,并依据所述邮件发送者专属哈希值随机生成两个第一随机数,其中,两个所述第一随机数不相同;
    将所述邮件发送者的专属信息作为目标对称加密算法的密钥,对所述两个第一随机数进行加密,以对应获取两个第一帮助数据;
    将两个所述第一帮助数据分别与对应的所述第一随机数进行异或处理,以获取两个第一目标数;
    通过大素数生成算法,分别对两个所述第一目标数进行生成处理,以获取两个第一大素数p1和q1;
    计算第一目标乘积n1=p1q1,以及φ(n1)=(p1-1)(q1-1),并选取满足1<e1<φ(n1)且gcd(φ(n1),e1)=1的第一目标整数e1;
    计算满足e1d1=1modφ(n1)的第二目标整数d1;
    将所述第一目标整数和所述第一目标乘积封装成所述邮件发送者的私钥,并将所述第二目标整数和所述第一目标乘积封装成邮件发送者的公钥;
    随机选取所述邮件发送者的私钥或公钥作为所述专属密钥。
  18. 如权利要求16所述的可读存储介质,其中,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如下步骤:
    判断所述邮件发送端与所述邮件接收端是否在同一区块链网络中;
    当所述邮件发送端与邮件接收端为不在同一区块链网络中,则确定所述邮件接收端所在的区块链网络作为所述目标区块链网络;
    当所述邮件发送端与所述邮件接收端为在同一区块链网络中,则确定所述邮件发送端所在的区块链网络作为所述目标区块链网络。
  19. 如权利要求16所述的可读存储介质,其中,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如下步骤:
    根据所述存储位置信息生成邮件正文,所述邮件正文包含有所述存储位置信息;
    将所述包含有存储位置信息的所述邮件正文,通过邮件的形式发送给所述邮件接收端,以使所述邮件接收端可以通过所述邮件正文获取到所述存储位置信息。
  20. 一个或多个存储有计算机可读指令的可读存储介质,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如下步骤:
    接收邮件发送端发送的目标加密消息在目标区块链网络的存储位置信息,其中,所述目标加密消息为所述邮件发送端根据邮件接收者的公钥,对云存储索引和专属密钥进行加密得到,所述云存储索引地址为所述邮件发送端通过所述专属密钥对邮件发送者需发送的邮件的邮件内容进行加密并将邮件加密文件存储到第一云服务端时对应的存储索引,所述专属密钥为所述邮件发送端依据所述邮件发送者的专属信息所生成;
    依据所述目标加密消息的存储位置信息,从所述目标区块链网络中读取所述目标加密消息;
    通过所述邮件接收者的私钥对所述目标加密消息进行解密,以得到所述云存储索引地址和专属密钥;
    通过所述云存储索引地址,从第一云服务端读取所述邮件加密文件;
    利用所述专属密钥对所述邮件加密文件进行解密,以得到所述邮件内容。
PCT/CN2021/096703 2020-12-31 2021-05-28 基于区块链的邮件处理方法、邮件发送端、接收端及设备 WO2022142112A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011640195.8 2020-12-31
CN202011640195.8A CN112822255B (zh) 2020-12-31 2020-12-31 基于区块链的邮件处理方法、邮件发送端、接收端及设备

Publications (1)

Publication Number Publication Date
WO2022142112A1 true WO2022142112A1 (zh) 2022-07-07

Family

ID=75858095

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/096703 WO2022142112A1 (zh) 2020-12-31 2021-05-28 基于区块链的邮件处理方法、邮件发送端、接收端及设备

Country Status (2)

Country Link
CN (1) CN112822255B (zh)
WO (1) WO2022142112A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116132166A (zh) * 2023-02-03 2023-05-16 网易(杭州)网络有限公司 基于区块链的通信方法、装置、设备及存储介质
CN116484413A (zh) * 2023-06-25 2023-07-25 上海联鼎软件股份有限公司 面向非结构化数据的高效跨云智能安全布局构建方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112822255B (zh) * 2020-12-31 2023-02-28 平安科技(深圳)有限公司 基于区块链的邮件处理方法、邮件发送端、接收端及设备
CN115426331B (zh) * 2022-08-30 2024-03-22 中国工商银行股份有限公司 邮件传输方法、装置、计算机设备和存储介质
CN116805078A (zh) * 2023-06-14 2023-09-26 深圳市易联锋达科技有限公司 一种基于大数据的物流信息平台数据智能管理系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103248488A (zh) * 2013-05-14 2013-08-14 顾纯祥 一种基于身份的密钥生成方法和认证方法
CN108259169A (zh) * 2018-01-09 2018-07-06 北京大学深圳研究生院 一种基于区块链云存储的文件安全分享方法及系统
US10305833B1 (en) * 2017-07-23 2019-05-28 Turing Technology, Inc. Blockchain based email procedures
CN111464494A (zh) * 2020-02-26 2020-07-28 北京十安赛恩科技有限公司 一种电子邮件加密方法、第一客户端以及区块链系统
CN112822255A (zh) * 2020-12-31 2021-05-18 平安科技(深圳)有限公司 基于区块链的邮件处理方法、邮件发送端、接收端及设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6931532B1 (en) * 1999-10-21 2005-08-16 International Business Machines Corporation Selective data encryption using style sheet processing
CN102340455A (zh) * 2010-07-16 2012-02-01 汉达精密电子(昆山)有限公司 以指纹资料加密的电子邮件传送方法与接收方法
CN103188271A (zh) * 2013-04-19 2013-07-03 国家电网公司 一种安全的邮件客户端本地数据存储、识别方法和装置
CN103281312B (zh) * 2013-05-10 2016-02-17 金硕澳门离岸商业服务有限公司 信息过滤方法
CN103457932B (zh) * 2013-08-15 2016-08-10 中电长城网际系统应用有限公司 一种云计算环境数据安全存储方法和系统
KR101628009B1 (ko) * 2015-04-20 2016-06-13 주식회사 코인플러그 당사자간 블록체인을 갖는 디지털 가상화폐의 거래시스템
CN106453612B (zh) * 2016-11-10 2019-03-05 华中科技大学 一种数据存储与共享系统
CN107508806A (zh) * 2017-08-11 2017-12-22 北京理工大学 基于区块链的互联网金融电子数据保全系统及方法
CN108038128B (zh) * 2017-11-08 2020-02-14 平安科技(深圳)有限公司 一种加密文件的检索方法、系统、终端设备及存储介质
CN110719167B (zh) * 2019-10-16 2022-09-27 郑州师范学院 一种基于区块链的带时效性的签密方法
CN111541678A (zh) * 2020-04-17 2020-08-14 上海朝夕网络技术有限公司 一种基于区块链的代理重加密方法、系统及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103248488A (zh) * 2013-05-14 2013-08-14 顾纯祥 一种基于身份的密钥生成方法和认证方法
US10305833B1 (en) * 2017-07-23 2019-05-28 Turing Technology, Inc. Blockchain based email procedures
CN108259169A (zh) * 2018-01-09 2018-07-06 北京大学深圳研究生院 一种基于区块链云存储的文件安全分享方法及系统
CN111464494A (zh) * 2020-02-26 2020-07-28 北京十安赛恩科技有限公司 一种电子邮件加密方法、第一客户端以及区块链系统
CN112822255A (zh) * 2020-12-31 2021-05-18 平安科技(深圳)有限公司 基于区块链的邮件处理方法、邮件发送端、接收端及设备

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116132166A (zh) * 2023-02-03 2023-05-16 网易(杭州)网络有限公司 基于区块链的通信方法、装置、设备及存储介质
CN116484413A (zh) * 2023-06-25 2023-07-25 上海联鼎软件股份有限公司 面向非结构化数据的高效跨云智能安全布局构建方法
CN116484413B (zh) * 2023-06-25 2023-09-29 上海联鼎软件股份有限公司 面向非结构化数据的高效跨云智能安全布局构建方法

Also Published As

Publication number Publication date
CN112822255B (zh) 2023-02-28
CN112822255A (zh) 2021-05-18

Similar Documents

Publication Publication Date Title
WO2022142112A1 (zh) 基于区块链的邮件处理方法、邮件发送端、接收端及设备
US10673626B2 (en) Threshold secret share authentication proof and secure blockchain voting with hardware security modules
US11159307B2 (en) Ad-hoc trusted groups on a blockchain
Barsoum et al. Enabling dynamic data and indirect mutual trust for cloud computing storage systems
KR101658501B1 (ko) 해시함수 기반의 전자서명 서비스 시스템 및 그 방법
CN111797415A (zh) 基于区块链的数据共享方法、电子设备和存储介质
US11943350B2 (en) Systems and methods for re-using cold storage keys
US11972637B2 (en) Systems and methods for liveness-verified, biometric-based encryption
US10110575B2 (en) Systems and methods for secure data exchange
CN111294203B (zh) 信息传输方法
WO2016122646A1 (en) Systems and methods for providing data security services
US20180063105A1 (en) Management of enciphered data sharing
US10063655B2 (en) Information processing method, trusted server, and cloud server
CN113067699A (zh) 基于量子密钥的数据共享方法、装置和计算机设备
US20140237239A1 (en) Techniques for validating cryptographic applications
CN113726772B (zh) 实现在线问诊会话的方法、装置、设备及存储介质
JP4718552B2 (ja) ブロードキャストマテリアルの使用に対する認証および支払いを管理する方法およびシステム
JP2022545809A (ja) 暗号鍵生成のためのセキュアな環境
CN112187767A (zh) 基于区块链的多方合同共识系统、方法及介质
EP4165851A1 (en) Distributed anonymized compliant encryption management system
CN115426331B (zh) 邮件传输方法、装置、计算机设备和存储介质
US11736462B1 (en) Hybrid content protection architecture for email
US20240048361A1 (en) Key Management for Cryptography-as-a-service and Data Governance Systems
US20240048532A1 (en) Data exchange protection and governance system
US20240107318A1 (en) A method and a system for securely sharing datasets via glyphs

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21912873

Country of ref document: EP

Kind code of ref document: A1