【问题标题】:Simple Elliptic Curve Cryptography Method简单椭圆曲线密码学方法
【发布时间】:2015-07-05 09:44:40
【问题描述】:

我正在开展一个项目以学习 ECC 加密算法,并且我正在 OCaml 中实现它。我在网上找不到这个问题的答案:

是否有使用 ECC 而非对称密钥协议(即通过 ECC Diffie-Hellman)的非对称加密算法方法(类似于 Elgamal 和 RSA)?一个简单的方法就可以满足我们的目的。

【问题讨论】:

  • ...Elgamal 怎么样?
  • 您可以通过生成临时发送方密钥并使用共享密钥进行加密,在 DH 密钥交换之上轻松构建非对称加密。 ECIES 是一个标准选择(如果需要,您可以简化密钥派生)。我不会使用 ElGamal,除非你需要它的同态属性。
  • 好吧,如果是用于库,您确实可以包含 ElGamal 以确保完整性,但我会注意 CodesInChaos 的警告。除此之外,没有DH的EC是什么?
  • ElGamal 只是使用共享的 Diffie-Hellman 密钥作为一次性密码,无需身份验证。

标签: encryption cryptography public-key-encryption elliptic-curve


【解决方案1】:

是的。例如,Elliptic Curve Elgamal 和其他几个使用椭圆曲线的非对称密码系统。

Elgamal 和 Diffie-Hellman 都基于“离散对数问题”:给定整数 {1, 2, ... , p-1},生成器 g,很容易计算 g^k。但是,给定 {1,2, ... ,p-1} 中的某个元素 x,(据说)很难找到满足 g^k=x 的 k。

对于椭圆曲线,我们有类似的东西:给定一个椭圆曲线和一个生成点 P,很容易将一个点乘以一个整数 k。但我们认为,给定一个点 Q,很难找到满足 Q=kP 的 k。

此问题已在crypto.stackexchange 中提出。

Elliptic Curve Cryptography(包括 ECElgamal)by Martin Leslie of U. of Arizona 也有很好的描述。

一些 cmets,以防你要实现 Elgamal:

  • Elgamal 是同态的,正如 cmets 中已经提到的那样。如果您不想要同态属性,请使用一些致盲技术。
  • Elgamal 会使加密文本比纯文本大很多。
  • 加密方法的“教科书实现”通常存在缺陷。见毛文博的书,Modern Cryptography: Theory and Practice

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-07
    • 2015-05-09
    • 2011-12-06
    • 1970-01-01
    • 2022-10-25
    • 2010-10-15
    • 1970-01-01
    相关资源
    最近更新 更多