Code Monkey home page Code Monkey logo

Comments (2)

Wind4Greg avatar Wind4Greg commented on July 30, 2024 1

Update:

I was able to get a hold of one of the papers authors via a GitHub issue: MystenLabs/ed25519-unsafe-libs#22. They are fine with us quoting definitions and test vectors. They have also written some work on dangers of some Ed25519 APIs which might also be good to mention in the security considerations section.

Proposal for security considerations section:

  1. Explain EdDSA Ed25519 provable security properties.
  2. Explain additional validation tests to ensure highest security
  3. Possibly add Ed25519 API cautions
  4. Add an appendix with test vectors for EdDSA Ed25519 signatures from https://github.com/novifinancial/ed25519-speccheck to allow developers to quickly assess a Ed25519 library. Note: that this is a single JSON file that is relatively small (just 12 test vectors).

Comments?

from vc-di-eddsa.

msporny avatar msporny commented on July 30, 2024

Might we want to capture those in this specification as an appendix?

Yes, we want to capture the concepts in the security considerations section.

Additionally, we will want to add these to the test suite that's in process for vc-di-eddsa.

Opinions on how much guidance we should supply on this issue?

We should speak to each of the items you outline above in the security considerations section IF RFC8032 doesn't already cover them.

Explain EdDSA Ed25519 provable security properties.

Yes, just a paragraph would do with pointers to the papers or RFCs that further elaborate.

Explain additional validation tests to ensure highest security

Yes, high-level overview with references to the papers that discuss them in more depth.

Possibly add Ed25519 API cautions

+1, but not sure which "cautions" you're suggesting. Feel free to go forward with a PR and we can further refine there. Ideally, don't put more than 2-3 paragraphs per PR (as doing more than that can cause the PR to get logjammed).

Add an appendix with test vectors for EdDSA Ed25519 signatures from https://github.com/novifinancial/ed25519-speccheck to allow developers to quickly assess a Ed25519 library. Note: that this is a single JSON file that is relatively small (just 12 test vectors).

I'm a bit on the fence about this one. I think we should definitely put these tests in the test suite and make it mandatory that you pass all of these tests. Whether or not we also put that in the spec is a bit up in the air. I expect that we could safely also put it in the specification. What we might also want to do, which is where the controversy might come in, is add the tests as normative requirements for verification in the specification to ensure that people are aligned with all of the above.

Let's jut get the guidance in the specification in a non-normative capacity for now and then ratchet the requirements up to normative requirements in a separate PR.

from vc-di-eddsa.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.