从另一台服务器访问RSA密钥


accessing RSA Key from another server

解密过程的一部分是使用RSA私钥解密部分数据。我将我的私人RSA密钥存储在一个单独的服务器上(以及私人RSA密钥的密码),从那里我可以处理解密请求。

我的SQL数据库中的信息经常被解密。所以我正试图找出最有效的方法来获取我的钥匙和钥匙密码,这样我就不会让服务器太麻烦了。

注意:我不知道这会给服务器带来多大压力,所以我可能完全错了

现在,我唯一能想到的方法就是登录服务器,获取文件内容,然后关闭请求。

有人有什么建议吗?

大致如下:

$connection = ssh2_connect('domain.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$sftp = ssh2_sftp($connection);
$file = fopen("ssh2.sftp://$sftp/path/to/file", 'r');

我不知道你为什么要把你的RSA密钥和密码存储在另一台服务器上,因为如果你的服务器可以用任何方式访问它们,黑客也可以做同样的事情。在您的代码中,黑客只需要使用硬编码的用户名和密码通过SSH连接到服务器。

在SSH连接的情况下,将它们放入web请求的一部分也不是一个好主意(我认为这是一个web应用程序,因为我看到了PHP:)。SSH连接需要花费大量时间来建立。

一个更轻松的解决方案是在RSA密钥服务器上创建一个https web服务器,并只列出web服务器ip地址的白名单。它和SSH(SSL)一样加密,但速度要快得多。

同样,根据您的场景,似乎没有必要将RSA密钥和密码放在另一台服务器上。