我需要一种允许多人对各种文件进行加密的方法,但只有一方能够读取所有文件。我通过遵循各种在线示例在Go中编写了一个程序,但有时会出现以下错误:

Error from encryption: crypto/rsa: message too long for RSA public key size

RSA是错误的方法吗?如果将文件分成多个块并加密,可以吗?有没有我可以轻松使用的不对称分组密码?

我在这里阅读了讨论,并且说RSA不是正确的选择。

您还可以提供一个示例吗? ?

因此,我最终使用了GPG,并且我的服务具有一个唯一的私钥,并且与我的用户共享了一个公钥。

如果对于大于密钥大小的数据需要公共密钥非对称加密,则需要使用混合加密。本质上就是HTTPS的工作方式。

混合加密是使用对称密钥加密(例如AES)对数据进行加密,而密钥则通过非对称密钥加密(例如RSA或EC(椭圆曲线)密码学)进行加密的方式。 >

请勿将文件分成多个块并进行加密。