首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >brainpoolP320r1或brainpoolP320t1是SafeCurve吗?

brainpoolP320r1或brainpoolP320t1是SafeCurve吗?
EN

Cryptography用户
提问于 2014-06-19 06:51:29
回答 1查看 1.2K关注 0票数 4

并不是所有的椭圆曲线都可以安全地用于密码学,特别是从ECC安全的角度来看。网站http://safecurves.cr.yp.to/index.html显示,两条经过测试的脑池曲线,brainpoolP256t1和brainpoolP384t1,即使是ECDLP安全的,也不是ECC安全的。然而,并不是所有的脑池曲线都被评估。

我很好奇brainpoolP320r1和brainpoolP320t1的320位曲线是否通过了这些安全测试。这些曲线是在RFC5639中定义的。

我看到Sage验证脚本已经提供了,http://safecurves.cr.yp.to/verify.html。它需要许多参数来设置它来测试这些曲线,例如,对于列表中的每一个Q,都需要一个q-1的所有素数因子的列表。我不知道该怎么做。

是否有任何密码专家或爱好者验证了320位曲线,或者是否有更简单的方法来执行测试(这样的程序不需要如此复杂的设置)?

或者,可以帮助解释如何正确设置Sage脚本的参数来测试这些曲线(或一般情况下的任何曲线)。

说明如下:每个目录包含以下文件:

代码语言:javascript
复制
p: the field prime, in decimal.
l: the prime order of the base point, in decimal.
x1: the x-coordinate of the base point.
y1: the y-coordinate of the base point.
x0: the x-coordinate of a point generating the entire curve.
y0: the y-coordinate of a point generating the entire curve.
shape: the curve shape, either shortw or montgomery or edwards.
a and b, if the curve shape is shortw: the coefficients in the short Weierstrass equation.
A and B, if the curve shape is montgomery: the coefficients in the Montgomery equation.
d, if the curve shape is edwards: the coefficient in the Edwards equation.
primes: all prime divisors of of p, the curve order p+1-t, the twist order p+1+t, and t^2-4p; and, recursively, all prime divisors of q-1 for each q in the list.

曲线的定义是:-

曲线-ID: brainpoolP320r1

代码语言:javascript
复制
  p = D35E472036BC4FB7E13C785ED201E065F98FCFA6F6F40DEF4F92B9EC7893EC
  28FCD412B1F1B32E27

  A = 3EE30B568FBAB0F883CCEBD46D3F3BB8A2A73513F5EB79DA66190EB085FFA9
  F492F375A97D860EB4

  B = 520883949DFDBC42D3AD198640688A6FE13F41349554B49ACC31DCCD884539
  816F5EB4AC8FB1F1A6

  x = 43BD7E9AFB53D8B85289BCC48EE5BFE6F20137D10A087EB6E7871E2A10A599
  C710AF8D0D39E20611

  y = 14FDD05545EC1CC8AB4093247F77275E0743FFED117182EAA9C77877AAAC6A
  C7D35245D1692E8EE1

  q = D35E472036BC4FB7E13C785ED201E065F98FCFA5B68F12A32D482EC7EE8658
  E98691555B44C59311

  h = 1

曲线-ID: brainpoolP320t1 #扭曲曲线

代码语言:javascript
复制
  Z = 15F75CAF668077F7E85B42EB01F0A81FF56ECD6191D55CB82B7D861458A18F
  EFC3E5AB7496F3C7B1

  A = D35E472036BC4FB7E13C785ED201E065F98FCFA6F6F40DEF4F92B9EC7893EC
  28FCD412B1F1B32E24

  B = A7F561E038EB1ED560B3D147DB782013064C19F27ED27C6780AAF77FB8A547
  CEB5B4FEF422340353

  x = 925BE9FB01AFC6FB4D3E7D4990010F813408AB106C4F09CB7EE07868CC136F
  FF3357F624A21BED52

  y = 63BA3A7A27483EBF6671DBEF7ABB30EBEE084E58A0B077AD42A5A0989D1EE7
  1B1B9BC0455FB0D2C3

  q = D35E472036BC4FB7E13C785ED201E065F98FCFA5B68F12A32D482EC7EE8658
  E98691555B44C59311

  h = 1

其中:

代码语言:javascript
复制
  p is the prime specifying the base field.

  A and B are the coefficients of the equation y^2 = x^3 + A*x + B
  mod p defining the elliptic curve.

  G = (x,y) is the base point, i.e., a point in E of prime order,
  with x and y being its x- and y-coordinates, respectively.

  q is the prime order of the group generated by G.

  h is the cofactor of G in E, i.e., #E(GF(p))/q.

  For the twisted curve, we also give the coefficient Z that defines
  the isomorphism F (see requirement 3 in Section 2.2).

因此,对于verify.sage (LHS是验证sage的文件,RHS来自RFC):

代码语言:javascript
复制
  p = int(p)
  l = int(q)   # I think, IIUC
  x1 = int(x)
  y1 = int(y)
  x0 = ???
  y0 = ???
  shape = ??   # for brainpoolP320r1 either "shortw" or "montgomery"? For brainpoolP320t1  "edwards"?
  a = A
  b = B
  A = A
  B = B
  d = int(Z)   # for brainpoolP320t1 only
  primes = ???

注意:当我说int(x)时,它将十六进制表示转换为十进制。结果是保存在文本文件中供verify.sage使用的内容。

恐怕我对ECC、EC和数学的理解太少了,做不到这一点。

如果有人能帮助我,我将不胜感激。

编辑:我想,因为这个问题是迁移的,所以在我的个人资料中,它不会显示为我问的问题,尽管我可以编辑这个问题。我也不能接受下面的答案,即明确指出,曲线也不是安全的。如果可能的话,国防部可以允许我接受答案或者代表我接受吗?

EN

回答 1

Cryptography用户

发布于 2014-06-19 11:51:36

像所有的脑池曲线一样,带有辅助因子1的曲线不可能满足SafeCurves准则,所以你的问题的答案是否定的。

这是否意味着它们实际上在实际使用上是“不安全”的,这是值得商榷的。我认为可以公平地说,在实践中以一种安全的方式实现这样的曲线是完全可行的,但是这样做比使用SafeCurves之一要困难得多,因此性能将受到影响。

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

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

复制
相关文章

相似问题

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