dpglo66848 2016-11-01 01:49
浏览 106
已采纳

Go中正确的非对称文件加密

I need a way to allow multiple people encrypting various files but only one party been able to read them all. I wrote a program in Go by following various online examples but at some point I got the following error:

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

Is RSA the wrong way to go? Is it ok if I break the file into multiple chunks and encrypt them? Is there an asymmetric block cipher that I can easily use?

I read the discussion here and it is said that RSA is not the proper way to go.

Can you also provide with an example?

  • 写回答

2条回答 默认 最新

  • dpdkqls6399 2017-08-11 11:01
    关注

    So I ended up using GPG and my service has one unique private key and I share the public one with my users.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • doumiao0498 2016-11-01 02:10
    关注

    If you need public key asymmetric encryption for data larger than the key size you need to use hybrid encryption. Essentially this is how HTTPS works.

    Hybrid encryption is where the data is encrypted with symmetric key encryption such as AES and that key is encrypted with asymmetric key encryption such as RSA or EC (Elliptic Curve) Cryptography.

    Do not break the file into multiple chunks and encrypt them.

    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 matlab+波形匹配算法
  • ¥15 转录组分析做聚类树图时癌旁组被分到了癌组
  • ¥15 大一Python字典
  • ¥15 multisim电路设计(相关搜索:设计报告)
  • ¥15 PC-lint Plus
  • ¥15 gpl24676注释
  • ¥15 php5.3内存泄露
  • ¥15 DigSilent如何复制复合模型到自己案例?
  • ¥15 求日版华为b610s-77a 官方公版固件,有偿
  • ¥15 关于#java#的问题,请各位专家解答!(相关搜索:java程序)