首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用EC密码学和secp256k1曲线谈TLS

用EC密码学和secp256k1曲线谈TLS
EN

Cryptography用户
提问于 2019-07-29 15:51:03
回答 2查看 795关注 0票数 2

在secp256k1曲线上说TLS有多合理?我的初步实验表明,OpenSSL支持它(尽管带有特殊标志,请参见下面):在OpenSSL服务器(或我发现的一些随机的node.js服务器)上运行OpenSSL客户机,协商ECDHE-ECDSA-AES128-GCM-SHA 256套件,并建立一个常规的TLS 1.2会话。

另一方面,无论是卷曲还是浏览器似乎都不喜欢这条曲线。(尽管这对于我的用例来说不是必要的。)

我之所以使用secp256k1,是因为有一个很好的算法从现有密钥(BIP 32)中派生新密钥。这些键不能相互关联,这在点对点场景中是一个很大的优势。

现在我的问题是:对于TLS使用像secp256k1这样的不寻常的曲线是否合理?或者,是否存在为另一个(更常见)派生私钥的安全机制?从secp256k1私钥曲线?

我上面提到的标志:-curves "X25519:P-256:P-521:P-384:secp256k1"

编辑:我的问题不是关于secp256k1理论上的弱点,而是期望会出现什么样的实际问题。

EN

回答 2

Cryptography用户

回答已采纳

发布于 2019-07-30 18:16:08

在一些原型实现之后,我学到了以下内容:

  • 这是可能的。OpenSSL和Java支持它,这对于我的用例来说已经足够好了。
  • 客户端证书的工作没有问题。
  • 它需要一些配置工作(特别是对于OpenSSL)。
  • TLS 1.3不支持它,只有1.2支持它。如果这足够好的话,那就没问题了。
票数 0
EN

Cryptography用户

发布于 2019-07-30 05:10:55

BIP32使用secp256k1,因为BIP用于比特币,比特币使用secp256k1。(我感觉就像布菲1.01:"我的原因是现在在这里是,因为现在是我们来到这里的时候“)。同样的方法(Es)也适用于任何椭圆曲线,如果使用非Weierstrass形式(如ser256和parse256 ),则可以明显地替代X25519和X25519。

但是在实践中,TLS需要认证密钥的证书(或者kRSA,不再推荐,在1.3中不再支持),并且证书不能通过BIP32或任何其他方法与快速或动态创建密钥很好地结合在一起,而不管使用何种曲线(S)。(“在实践中”,因为有一个使用原始密钥的RFC,但我从未见过实现,当然在OpenSSL中没有。)

PS:nodejs内置的“tls”是OpenSSL,在下面编译成node[.exe]。您可以获得包含ECC的替代(纯JS)密码,但我还没有看到纯JS。

票数 2
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/72247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档