群数据加密方法与流程

文档序号:16734792发布日期:2019-01-28 12:32阅读:541来源:国知局
群数据加密方法与流程

本公开属于通信技术领域,尤其涉及一种群数据加密方法。



背景技术:

在各种通信系统中,如何实现用户之间交互信息的保护,保证通信内容的安全和保密是需要重点考虑的。特别是在移动通信系统中,数据通过通讯服务器进行传输,通讯服务器端存在获取、查看、泄露用户聊天数据的安全隐患。

现有技术中,多个用户可以通过群聊群的方式进行数据交互,这些群聊群中的聊天数据同样面临上面提到的问题。



技术实现要素:

本公开的目的在于提供一种新的群数据加密方法,来解决以上背景技术中提到的技术问题。本公开通过以下技术方案实现。

群数据加密方法,包括:

多个通讯客户端通过通讯服务器生成群聊群,群聊群具有群标识;

多个通讯客户端接收来自通讯服务器的群标识;以及

密钥管理服务器接收来自通讯服务器的群标识授权关系,群标识授权关系为多个通讯客户端中各个通讯客户端的用户账号与群标识的授权关系。

根据本公开的至少一个实施方式,通讯客户端包括数据模块和加解密模块,数据模块经由通讯服务器接收和/或发送数据,加解密模块对数据模块发送的数据加密,加解密模块对数据模块接收的数据解密。

根据本公开的至少一个实施方式,各个通讯客户端的用户密钥由密钥管理服务器生成。

根据本公开的至少一个实施方式,各个通讯客户端的用户密钥由各个通讯客户端的加解密模块生成。

根据本公开的至少一个实施方式,密钥管理服务器为来自通讯客户端的数据生成加密密钥,并使用该通讯客户端的用户密钥对加密密钥加密。

根据本公开的至少一个实施方式,密钥管理服务器生成加密密钥索引,并记录加密密钥索引与群标识的授权关系。

根据本公开的至少一个实施方式,密钥管理服务器包括用户认证模块、用户密钥管理模块、加密密钥管理模块和加密服务模块;

用户认证模块使用各个通讯客户端的用户信息,对各个通讯客户端进行用户验证和用户账号绑定;

用户密钥管理模块对各个通讯客户端的用户密钥进行管理;

加密密钥管理模块创建加密密钥;

加密服务模块使用用户密钥对加密密钥进行加密。

根据本公开的至少一个实施方式,用户密钥包括公钥和私钥,加密服务模块使用公钥对加密密钥进行加密。

根据本公开的至少一个实施方式,密钥管理服务器的加密服务模块生成加密密钥索引,并记录加密密钥索引与群标识的授权关系。

根据本公开的至少一个实施方式,加解密模块包括用户认证子模块、用户密钥管理子模块、数据加密子模块和数据解密子模块;

用户认证子模块使用用户账号完成用户身份认证;

用户密钥管理子模块保存用户密钥;

数据加密子模块使用用户密钥对加密密钥进行解密,再用加密密钥对要发送的数据进行加密;

数据解密子模块使用用户密钥对加密密钥进行解密,再用加密密钥对接收到的数据进行解密。

根据本公开的至少一个实施方式,用户密钥包括公钥和私钥,数据加密子模块使用私钥对加密密钥进行解密,再用加密密钥对要发送的数据进行加密;数据解密子模块使用私钥对加密密钥进行解密,再用加密密钥对接收到的数据进行解密。

根据本公开的至少一个实施方式,群标识为群账号。

根据本公开的至少一个实施方式,通讯服务器为即时通讯服务器,通讯客户端为即时通讯客户端。

附图说明

附图示出了本公开的示例性实施方式,并与其说明一起用于解释本公开的原理,其中包括了这些附图以提供对本公开的进一步理解,并且附图包括在本说明书中并构成本说明书的一部分。

图1是本公开至少一个实施方式的群数据加密方法使用的数据加密系统的总体结构。

图2是本公开至少一个实施方式的群数据加密方法使用的数据加密系统的具体结构。

具体实施方式

下面结合附图和实施方式对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施方式仅用于解释相关内容,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分。

需要说明的是,在不冲突的情况下,本公开中的实施方式及实施方式中的特征可以相互组合。下面将参考附图并结合实施方式来详细说明本公开。

图1示出了本公开至少一个实施方式的群数据加密方法使用的数据加密系统的总体结构,图2示出了本公开至少一个实施方式的群数据加密方法使用的数据加密系统的具体结构。

群数据加密方法,包括:

多个通讯客户端通过通讯服务器生成群聊群,群聊群具有群标识;

多个通讯客户端接收来自通讯服务器的群标识;以及

密钥管理服务器接收来自通讯服务器的群标识授权关系,群标识授权关系为多个通讯客户端中各个通讯客户端的用户账号与群标识的授权关系。

其中,群标识可以是群账号。通讯服务器是即时通讯服务器,通讯客户端是即时通讯客户端。通讯客户端可以安装在例如手机、个人计算机上,例如app,当然通讯客户端也可以以网页的形式存在于例如手机、个人计算机上。上面提到的数据可以是文字消息、声音文件、图片文件、视频文件等。上面提到的通讯服务器可以是现有技术中能够实现数据通讯的通讯服务器。图1示出了参与群聊的两个通讯客户端(即两个用户)。

本公开的至少一个实施方式中,通讯客户端包括数据模块和加解密模块,数据模块经由通讯服务器接收和/或发送数据,加解密模块对数据模块发送的数据加密,加解密模块对数据模块接收的数据解密。

每个通讯客户端都无法得到其他通讯客户端的明文数据。

本公开的至少一个实施方式中,各个通讯客户端的用户密钥由密钥管理服务器生成。

本公开的至少一个实施方式中,各个通讯客户端的用户密钥由各个通讯客户端的加解密模块生成。

本公开的至少一个实施方式中,密钥管理服务器为来自通讯客户端的数据生成加密密钥,并使用该通讯客户端的用户密钥对加密密钥加密。

本公开的至少一个实施方式中,密钥管理服务器生成加密密钥索引,并记录加密密钥索引与群标识的授权关系。

本公开的至少一个实施方式中,密钥管理服务器包括用户认证模块、用户密钥管理模块、加密密钥管理模块和加密服务模块;

用户认证模块使用各个通讯客户端的用户信息,对各个通讯客户端进行用户验证和用户账号绑定;

用户密钥管理模块对各个通讯客户端的用户密钥进行管理;

加密密钥管理模块创建加密密钥;

加密服务模块使用用户密钥对加密密钥进行加密。

其中,用户密钥包括公钥和私钥。加密密钥优选是随机密钥,通过用户密钥因子和/或单方或多方公钥生成。用户密钥因子基于用户唯一标识由密钥管理服务器生成,用户唯一标识通过通讯客户端生成。

本公开的至少一个实施方式中,各个通讯客户端的用户密钥由密钥管理服务器生成,用户密钥管理模块生成各个通讯客户端的用户密钥,对各个通讯客户端的用户密钥进行管理,将相应的用户密钥发送至各个通讯客户端。

本公开的至少一个实施方式中,各个通讯客户端的用户密钥由各个通讯客户端的端对端加解密模块生成,密钥管理服务器的用户密钥管理模块接收来自各个通讯客户端的用户密钥,对各个通讯客户端的用户密钥进行管理。

本公开的至少一个实施方式中,加密服务模块使用公钥对加密密钥进行加密。

本公开的至少一个实施方式中,密钥管理服务器的加密服务模块生成加密密钥索引,并记录加密密钥索引与群标识的授权关系。

本公开的至少一个实施方式中,加解密模块包括用户认证子模块、用户密钥管理子模块、数据加密子模块和数据解密子模块;

用户认证子模块使用用户账号完成用户身份认证;

用户密钥管理子模块保存用户密钥;

数据加密子模块使用用户密钥对加密密钥进行解密,再用加密密钥对要发送的数据进行加密;

数据解密子模块使用用户密钥对加密密钥进行解密,再用加密密钥对接收到的数据进行解密。

本公开的至少一个实施方式中,各个通讯客户端的用户密钥由密钥管理服务器生成,各个通讯客户端的用户密钥管理子模块接收来自密钥管理服务器的用户密钥,并对用户密钥进行保存。

本公开的至少一个实施方式中,各个通讯客户端的用户密钥由各个通讯客户端的端对端加解密模块生成,用户密钥由端对端加解密模块的用户密钥管理子模块生成,并将用户密钥发送至密钥管理服务器。

本公开的至少一个实施方式中,通讯客户端的用户密钥由通讯客户端的端对端加解密模块的用户密钥管理子模块生成,用户密钥包括公钥和私钥,通讯客户端的端对端加解密模块的用户密钥管理子模块对公钥和私钥进行保存,并将公钥发送至密钥管理服务器,密钥管理服务器的用户密钥管理模块接收来自通讯客户端的公钥,对通讯客户端的公钥进行管理(例如包括保存)。

本公开的至少一个实施方式中,数据加密子模块使用私钥对加密密钥进行解密,再用加密密钥对要发送的数据进行加密;数据解密子模块使用私钥对加密密钥进行解密,再用加密密钥对接收到的数据进行解密。

本公开的至少一个实施方式中,第一用户使用第一通讯客户端创建群聊群,第一通讯客户端向通讯服务器发送创建群聊群请求,通讯服务器基于该请求生成具有群账号的群聊群(群账号可以是群聊群的唯一标识;群聊群还可以包括群信息,例如群名称),通讯服务器将具有群账号的群聊群返回给第一通讯客户端,第一通讯客户端保存群聊群。

通讯服务器向群聊群内的其他群成员例如第二通讯客户端(由第二用户使用)发送建群通知,第二通讯客户端保存群聊群(或提示使用第二通讯客户端的第二用户是否加入和/或保存群聊群),通讯服务器向密钥管理服务器发送群账号授权关系(即各个通讯客户端的用户账号与群账号的对应关系),密钥管理服务器保存该群账号授权关系,当群聊群内的群成员发生变化时,通讯服务器将该变化发送至密钥管理服务器,密钥管理服务器对群账号授权关系进行更新。

第一用户通过第一通讯客户端在群聊群内发送群内数据(例如文字信息、图片、表情、文件等),第一通讯客户端的加解密模块即第一加解密模块被传入第一通讯客户端的用户账号、群账号以及数据内容,第一加解密模块向密钥管理服务器请求基于群账号生成加密密钥,密钥管理服务器生成加密密钥和加密密钥索引,记录加密密钥索引与群账号的授权关系。密钥管理服务器使用第一通讯客户端的用户账号的公钥对上面生成的加密密钥进行加密,将加密后的加密密钥和加密密钥索引发送至第一加解密模块,第一加解密模块使用第一通讯客户端的用户账号的私钥对加密密钥进行解密,再使用加密密钥对数据内容进行加密,封装成加密后的数据体。加密后的数据体中包含加密密钥索引。

第一加解密模块将加密后的数据体传输给第一通讯客户端的数据模块即第一数据模块,第一数据模块将加密后的数据体发布在群内。

第二通讯客户端的第二数据模块接收群内的所述加密后的数据体,第二数据模块将所述加密后的数据体发送给所述第二通讯客户端的加解密模块即第二加解密模块,第二加解密模块向密钥管理服务器发送群账号、第二通讯客户端的用户账号以及加密密钥索引,请求基于加密密钥索引查询加密密钥。

密钥管理服务器基于接收到的群账号、第二通讯客户端的用户账号以及加密密钥索引检查群账号授权关系,群账号授权关系正确,则使用第二通讯客户端的用户账号的公钥对加密密钥进行加密,将加密后的加密密钥发送给第二加解密模块。

第二加解密模块使用第二通讯客户端的用户账号的私钥对加密密钥进行解密,第二加解密模块使用解密后的加密密钥对数据体进行解密,将解密后的数据体即明文数据传输给第二通讯客户端的用户账号。

本领域的技术人员应当理解,上述实施方式仅仅是为了清楚地说明本公开,而并非是对本公开的范围进行限定。对于所属领域的技术人员而言,在上述公开的基础上还可以做出其它变化或变型,并且这些变化或变型仍处于本公开的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1