【问题标题】:RSA_generate_key() openssl: exp argumentRSA_generate_key() openssl: exp 参数
【发布时间】:2012-08-30 10:34:46
【问题描述】:

我在互联网上发现函数的 exp 参数“通常为 3,17 或 65,537”。

如何选择,使用3,17和65,537有什么区别?

【问题讨论】:

    标签: c unix openssl rsa


    【解决方案1】:

    这是您问题的一个很好的答案:Should RSA public exponent be only in {3, 5, 17, 257 or 65537} due to security considerations?

    如果你喜欢数学,你也可以浏览这个:

    some math

    【讨论】:

      【解决方案2】:

      你应该选择你的指数,以便它对于除模的所有素数 p 都是 p-1 的相对素数。尽管如果您尝试使用除3,5,17,257,65537 以外的其他值,您可能会遇到某些库的问题(Wikipedia 提供了有关 RSA 密钥生成的更多详细信息)

      Here 是对相关问题的很好描述。

      【讨论】:

        【解决方案3】:

        我建议坚持 NIST 今天在 SP 800-56B 中推荐的值:值 65'537(实际上他们推荐任何不小于该值的奇数正整数)。

        选择较小数字(例如 3 或 17)的唯一原因与:

        • 与仅支持特定公共指数的现有系统的兼容性
        • 验证签名或加密负载时的性能问题。

        如果这些对您来说是合理的担忧,您应该考虑使用较低的指数,但您应该意识到您对 RSA 实现中的缺陷变得更加敏感。

        【讨论】:

          猜你喜欢
          • 2017-03-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-08-22
          • 2020-01-26
          • 1970-01-01
          相关资源
          最近更新 更多