千家信息网

IM系统服务端消息怎么加解密

发表于:2025-01-27 作者:千家信息网编辑
千家信息网最后更新 2025年01月27日,这篇文章主要讲解了"IM系统服务端消息怎么加解密",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"IM系统服务端消息怎么加解密"吧!IM系统中信息可能涉及
千家信息网最后更新 2025年01月27日IM系统服务端消息怎么加解密

这篇文章主要讲解了"IM系统服务端消息怎么加解密",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"IM系统服务端消息怎么加解密"吧!

IM系统中信息可能涉及隐私或秘密,安全显得尤为重要,怎么确保信息的安全呢?

端到端加密是最安全的,只有聊天双方知道具体是什么消息,传输链路和消息服务器端都不知道消息内容。但是端到端加密在有些场景不适用,比如大规模群聊就不太好办。另外基于某些合规性要求,端到端加密也不合适。

如果不采用端到端加密,消息的加密就分为网咯传输加密和服务端存储加密两部分。

传输过程,tcp长连接可以采用ssl协议(当然也可以自己实现加密《为什么相同的消息微信每次加密后发送的内容都不一样?》),websocket采用wss协议。

难点变成了消息在服务端测的安全问题。消息在服务器端的路由过程怎么加密, 存储怎么加密?

IM系统后台逻辑很复杂,涉及众多模块,中间还有消息总线、缓存、数据库等中间件。每个环节消息都需要以密文形式呈现,否则很容易泄漏。

第一反应是简单写个加密算法如AES对数据进行加密解密就搞定了。但是这样存在一个非常大的隐患。密码怎么保存?

日防夜防,家贼难防。写代码的程序员,部署系统的运维人员都可能拿到密码,如果密码写在配置文件里,会与更多人得到密码,比如能够访问git仓库的人……总之,这种方式非常不安全。

因此,一套完善的加密系统显得尤为重要。

加解密系统结构如下图,主要包括4部分。1、加解密服务,2、加解密管理服务,3、加密服务器,4、秘钥存储库。

1、加解密服务。

以HTTP,TCP等方式对业务系统提供加密、解密、转加密等服务,提供加密服务器的负载均衡能力。同时提供业务系统可以直接使用的SDK。加解密服务以IP白名单+App_Key/App_Secret组合的方式对外提供访问授权,确保只有授权的系统才能访问

2、加解密管理服务。

核心是提供密码生成、管理等服务(密码是以加密后形式展示,只有加密服务器才能解密)。以及一些管理配置等功能

3、加密服务器

提供加密、解密的能力。加密服务器内置多种加密算法,通过超级秘钥(root key),实现对加解密秘钥(business key)的加密解密;通过加解密秘钥(business key)实现业务数据的加解密。超级秘钥(root key)被拆成3部分保存在秘钥卡或U盘中。

4、秘钥存储库

以密文形式存储加密机生成的加解密秘钥(business key),秘钥只有加解密服务器能解密。

整个加密方案涉及几个主要流程

1、加解密服务器初始化(或配置参数)

(1)启动加解密服务器,插入3张秘钥卡(U盘)

(2)加解密服务器已内置的算法(加密芯片)对root key进行加密,缓存到内存,同时保存的机器存储介质。因此,内存及存储上的数据处于密文状态。

(3)根据root key初始化business key加解密服务

(4)初始化业务数据加解密服务

2、生成加解密秘钥(business key)

(1)通过加解密管理服务,为即将生成的秘钥起名(名字及秘钥索引号),向加解密服务器发出生成秘钥的命令。

(2)加解密服务器随机生成business key,通过root key进行加密。把加密后的business key返回,关联秘钥索引号,并保存到秘钥存储库。

3、加密及解密业务数据

(1)业务系统调用加解密服务,传入 秘钥索引号、算法以及业务数据

(2)加解密服务调用加密服务器,传入加密后的business key、算法以及业务数据

(3)加密服务器完成加密,并返回结果

加密系统的核心要点是:业务数据和加密服务隔离,算法和秘钥隔离。

感谢各位的阅读,以上就是"IM系统服务端消息怎么加解密"的内容了,经过本文的学习后,相信大家对IM系统服务端消息怎么加解密这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

加密 服务 服务器 系统 消息 业务 数据 存储 密码 算法 生成 安全 管理 内容 只有 密文 形式 方式 管理服务 索引 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 辽宁省沈阳市网络安全周宣传 魔兽世界赛季服务器怎么进 tt服务器远程管理 数据库表中删除某一列 彩虹六号异种怎么选择服务器 网络安全设备资金申请 通信局网络安全防护测评机构 数据库上机实验五 电脑机房服务器巡检表 曙光服务器管理口账号密码 瓜州县中华人民共和国网络安全法 数据库管理自考题 软件开发要如何创业 组装服务器的利润 南京育儿网软件开发怎么样 计算机网络技术专业公考编号 软件开发怎么找到工作 山东沃德网络技术电话 中国网络安全观的核心 inspec数据库入口 电视家 自定义服务器 识骗防骗网络安全主题班会 网络安全维护技术人员培训 深圳鹏城科技互联网有限公司 服务器端口默认有地址怎么回事 基因武器数据库 河北省网络安全专业院校 服务器与空间的区别 苹果手机webdav服务器地址 合阳天气预报软件开发
0