【发布时间】:2012-01-21 19:57:54
【问题描述】:
我知道非对称加密的工作原理。我知道有两把钥匙(一把私人钥匙和一把公共钥匙)。
当有人想要交流时,他们用这些公钥交换他们的公钥加密消息,然后相应的消息只能由拥有私钥的用户解密。
现在,我正在使用 Node.js,我需要做这样的事情......
我需要一个每小时读取数据库、提取数据并将其保存到需要发送到另一台服务器的文件的应用程序。
我的问题是我不希望该文件对其他人可见,我使用 SSH 进行传输所以没有问题但是
我必须加密该文件,因为我不是该服务器的管理员,所以也许有人可以阅读它。不幸的是,两台服务器的管理员都是相同的。
所以我的想法是用公钥加密文件,然后只有拥有私钥的人(我)才能解密。
我认为使用类似的东西是没有意义的:
var key = 'blablabla'
如果我使用公钥,没有问题,所有人都可以读取它......它确实是公开的。但是有了这个公钥,没有人可以解密消息,所以它是 类似于单向加密。
现在,有人可以告诉我是否需要签名者/验证者来完成这项工作,或者我是否必须使用 openssl 生成两个密钥(公共/私有)并将这些密钥传递给密码器/解密器?
我正在查看加密模块,但没有示例......
【问题讨论】:
标签: node.js cryptography openssl public-key-encryption