如何在GPG中使用私钥加密任意数据?


2

我去过的所有站点都说明了如何与收件人加密数据。我知道这意味着您正在使用收件人的公共密钥来加密数据,这种加密只能由收件人的私钥解密。我想知道的是,您如何使用私钥加密数据,而加密数据只能用公钥解密?

我正在GPG中进行所有操作,并且在互联网上搜寻了示例和备忘单,但无济于事。

怎么做?

编辑...

不是我想要的。我很确定我知道如何对任意数据进行签名。


“我想知道的是,您如何用私钥加密数据,而只能用公钥解密的加密数据?” -如果可以使用公共密钥解密数据,则意味着任何人都可以解密数据,因为公共密钥是唯一共享的密钥。如果希望如此,则可以共享公钥和私钥,这样每个人都可以解密文件。
Ramhound

您的意思是加密,以便只有您才能使用您的密钥对其进行解密(您可能是指私钥)。不能--recipient与您的ID一起使用吗?
Xen2050'17年

Answers:


2

你不知道 由于您的公钥是公开的,因此这种操作只是签名的一种微弱而晦涩的选择,因此它既不是由GnuPG实现的,也不是由OpenPGP(RFC 4880)定义的。

(除此之外,它也可能仅限于RSA密钥对。)


1

我知道了。此处的目的是使用您的私钥加密数据,以便只有拥有您的公钥的人才能解密它。我的意思是,公钥在某种程度上是一个人或一群人与相应私钥的所有者之间的秘密,但这不是公钥密码学的工作原理;理论上,每个人都可以拥有公共密钥的副本。这意味着公钥不是共享的秘密而是公共的,因此,加密任何人和所有人都可以看到的数据没有任何意义;可能还没有加密!

为了实现我要完成的任务,我们不使用非对称加密(如公钥密码学),而是使用对称密码学(通常称为私钥密码学)。在对称密码学中,我们使用共享机密(例如,密码,尽管可以将任何数据用作共享机密或密码短语)对数据进行加密,并且此机密在一组个人之间共享。只要只有具有所述共享机密的那些人才对共享机密保持机密,那么只有那些人才能使用该共享机密来加密和解密数据。这就是我要寻找的。不幸的是,对称加密不能提供识别和不可否认性。您所知道的有关对称密钥加密数据的发送者的所有信息都是来自拥有对称密钥的人,希望来自应该正确拥有该密钥的一方,

如果您确实想要非对称加密的所有特性(标识,机密性,完整性,不可否认性),那么请聚在一起,抓住对方的公用密钥,然后开始使用对方的公用密钥发送单独的消息。这不能像使用私钥(对称)加密那样向多个收件人发送批量消息的方式起作用,但是当公钥加密提供更多好处时,这并不重要,并且确实很难发送多条消息?


不过,一封邮件可以一次加密给多个收件人...
grawity

是的,您使用私钥加密,拥有公钥的多个接收者可以解密,或者您说可以使用多个公钥加密?
史蒂夫·穆奇

1
我是说后者。从第一天开始,PGP就已经支持了这一点(在此站点上搜索“混合”加密)。有没有必要像一个公共但是,实际上,密钥破解。
grawity

有趣。林基(Linkey)为那里的所有人提供服务;gnupg.org/gph/en/manual.html#AEN210
史蒂夫·穆奇
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.