Bug 280673

Summary: [WebCrypto] EdDSA should reject any small-order point
Product: WebKit Reporter: Javier Fernandez <jfernandez>
Component: WebCore Misc.Assignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://issues.chromium.org/issues/42290573

Javier Fernandez
Reported 2024-10-01 04:12:39 PDT
According to the Secure Curve specification, the Ed25519 'verify' operation should reject any small-order point [1]. > 2. If the key data of key represents an invalid point or a small-order element on the Elliptic Curve of Ed25519, return false. > 3. If the point R, encoded in the first half of signature, represents an invalid point or a small-order element on the Elliptic Curve of Ed25519, return false. There are WPT cases [2] for this scenario, and WebKit fails in cases 0, 1, 2, 12 and 13. [1] https://wicg.github.io/webcrypto-secure-curves/#ed25519-operations [2] https://wpt.fyi/results/WebCryptoAPI/sign_verify/eddsa_small_order_points.https.any.html?label=master&label=experimental&aligned
Attachments
Javier Fernandez
Comment 1 2024-10-01 04:18:58 PDT
There is an ongoing discussion [1] about the possibility if declaring as optionalin Ed25519 to reject any small-order point in signatures, so that WebEngines are allowed to rely on the crypto libraries they ship. [1] https://github.com/WICG/webcrypto-secure-curves/issues/27
Radar WebKit Bug Importer
Comment 2 2024-10-08 04:13:14 PDT
Note You need to log in before you can comment on or make changes to this bug.