首页 > 解决方案 > 使用 HTTPS 时可以加密服务器端吗?

问题描述

我正在为我正在开发的应用程序创建消息服务。由于消息的性质,重要的是不仅要验证用户,还要验证消息属于哪个会话。所以现在我为每个对话创建一个公钥/私钥对,并使用它来加密/解密消息。基本上,当用户登录时,他们可以访问他们所属对话的密钥对,但这些密钥对仅适用于该特定对话。这允许授予/拒绝对特定对话的访问,同时保持这些相同方之间的其他对话完好无损。目前数据流如下:

发送:

消息发送到服务器 => 消息基于用户的公钥加密并使用密钥签名 => 加密消息保存到数据库

收到:

服务器从数据库接收消息 => 服务器使用公钥验证签名并使用密钥解密消息 => 发送给客户端的解密消息

服务器上的所有加密/解密都依赖于用户的 JWT 令牌进行身份验证。

我有两个主要问题:1.)由于服务器与客户端之间的通信使用 TLS,因此可以在服务器上加密吗?2.) 密钥应该存储在服务器上还是数据库中?

此外,如果此方法不安全、不正确或完全愚蠢,请告诉我。

提前致谢。

标签: encryptionhttpsserverclienttls1.2

解决方案


推荐阅读