1. 58
  1.  

  2. 10

    (author here, any questions or comments and I’ll reply)

    1. 2

      meta question: how did you generate the diagrams? Those are neat!

      1. 4

        Short answer: a <canvas> tag and requestAnimationFrame().

        This MDN page describes the technique with a good example, it’s what I learned from to create my page. Probably the simplest animation on my page is here but it isn’t going to be nearly as easy to follow.

      2. 1

        The paper you linked describes why the specific polynomial was chosen, but not why P=9 was chosen. Why was P=9 chosen?

        Also, it seems like Curve25519 takes its name because the modulus is 2^255-19. However, you use the name Curve61 because your modulus is 61. Shouldn’t you name it Curve63 because the modulus is 2^6-3? Although Curve448 wouldn’t fit into this naming scheme at all…

        1. 1

          I suspect x=9 is the first x-value with a prime and sufficiently large order. On http://safecurves.cr.yp.to/rigid.html djb hints the same:

          The usual choice is the generator with smallest possible x-coordinate for short Weierstrass curves or Montgomery curves, or smallest possible y-coordinate for Edwards curves.

          As for your second point, as the creator of the (flawed, insecure) Curve61 I reserve the right to name it via whatever stupid scheme I want, hah. It wouldn’t have served the document to go into a naming digression when I just needed a name for the toy curve.

          1. 2

            I’ll admit I spent an embarrassingly long time looking for where 25519 showed up as the modulus.

      3. -10

        Here’s my proof for P/NP. Got a problem? No problem? It takes work and computation for anything. Brains manipulate the 12-dimensional Rubik’s cube of life, if you will. Most people are unable to see past P, and think NP is “not a problem;” i.e. it’s incomputable. NP is more like R&D or building a car. P is your budget; P is your car breaking. NP is how to fix P. It’s called computation+work. Therefore, P? NP. QED.