Skip to content

Commit 5c78689

Browse files
authored
docs: mark ML-KEM and encapsulate/decapsulate as implemented (#994)
1 parent 6074c59 commit 5c78689

2 files changed

Lines changed: 58 additions & 34 deletions

File tree

.docs/implementation-coverage.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -371,12 +371,12 @@ These ciphers are **not available in Node.js** but are provided by RNQC via libs
371371
| `HMAC` | | |||| | |
372372
| `KMAC128` | | |||| | |
373373
| `KMAC256` | | |||| | |
374-
| `ML-DSA-44` ||| | | |||
375-
| `ML-DSA-65` ||| | | |||
376-
| `ML-DSA-87` ||| | | |||
377-
| `ML-KEM-512` ||| | | |||
378-
| `ML-KEM-768` ||| | | |||
379-
| `ML-KEM-1024` ||| | | |||
374+
| `ML-DSA-44` ||| | | |||
375+
| `ML-DSA-65` ||| | | |||
376+
| `ML-DSA-87` ||| | | |||
377+
| `ML-KEM-512` ||| | | |||
378+
| `ML-KEM-768` ||| | | |||
379+
| `ML-KEM-1024` ||| | | |||
380380
| `RSA-OAEP` |||| | | | |
381381
| `RSA-PSS` |||| | | | |
382382
| `RSASSA-PKCS1-v1_5` |||| | | | |
@@ -442,12 +442,12 @@ These ciphers are **not available in Node.js** but are provided by RNQC via libs
442442
| `HMAC` | | |||| | |
443443
| `KMAC128` | | |||| | |
444444
| `KMAC256` | | |||| | |
445-
| `ML-DSA-44` ||| | | |||
446-
| `ML-DSA-65` ||| | | |||
447-
| `ML-DSA-87` ||| | | |||
448-
| `ML-KEM-512` ||| | | |||
449-
| `ML-KEM-768` ||| | | |||
450-
| `ML-KEM-1024` ||| | | |||
445+
| `ML-DSA-44` ||| | | |||
446+
| `ML-DSA-65` ||| | | |||
447+
| `ML-DSA-87` ||| | | |||
448+
| `ML-KEM-512` ||| | | |||
449+
| `ML-KEM-768` ||| | | |||
450+
| `ML-KEM-1024` ||| | | |||
451451
| `PBKDF2` | | | ||| | |
452452
| `RSA-OAEP` |||| | | | |
453453
| `RSA-PSS` |||| | | | |

docs/data/coverage.ts

Lines changed: 46 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export const COVERAGE_DATA: CoverageCategory[] = [
3333
},
3434
{
3535
name: 'ML-KEM (Key Encapsulation)',
36-
status: 'missing',
36+
status: 'implemented',
3737
note: 'ML-KEM-512, 768, 1024',
3838
},
3939
],
@@ -181,7 +181,7 @@ export const COVERAGE_DATA: CoverageCategory[] = [
181181
{ name: 'createSecretKey', status: 'implemented' },
182182
{ name: 'createSign', status: 'implemented' },
183183
{ name: 'createVerify', status: 'implemented' },
184-
{ name: 'decapsulate', status: 'missing' },
184+
{ name: 'decapsulate', status: 'implemented' },
185185
{ name: 'sign', status: 'implemented', note: 'One-shot signing' },
186186
{ name: 'verify', status: 'implemented', note: 'One-shot verification' },
187187
{
@@ -193,7 +193,7 @@ export const COVERAGE_DATA: CoverageCategory[] = [
193193
{ name: 'x25519', status: 'implemented' },
194194
],
195195
},
196-
{ name: 'encapsulate', status: 'missing' },
196+
{ name: 'encapsulate', status: 'implemented' },
197197
{
198198
name: 'fips',
199199
status: 'not-in-node',
@@ -301,10 +301,10 @@ export const COVERAGE_DATA: CoverageCategory[] = [
301301
{
302302
name: 'crypto.subtle',
303303
subItems: [
304-
{ name: 'decapsulateBits', status: 'missing' },
305-
{ name: 'decapsulateKey', status: 'missing' },
306-
{ name: 'encapsulateBits', status: 'missing' },
307-
{ name: 'encapsulateKey', status: 'missing' },
304+
{ name: 'decapsulateBits', status: 'implemented' },
305+
{ name: 'decapsulateKey', status: 'implemented' },
306+
{ name: 'encapsulateBits', status: 'implemented' },
307+
{ name: 'encapsulateKey', status: 'implemented' },
308308
{ name: 'getPublicKey', status: 'implemented' },
309309
{ name: 'supports', status: 'implemented' },
310310
],
@@ -414,21 +414,33 @@ export const COVERAGE_DATA: CoverageCategory[] = [
414414
{
415415
name: 'ML-DSA-44',
416416
status: 'partial',
417-
note: 'spki, pkcs8, jwk, raw-public, raw-seed',
417+
note: 'spki, pkcs8, raw-public, raw-seed',
418418
},
419419
{
420420
name: 'ML-DSA-65',
421421
status: 'partial',
422-
note: 'spki, pkcs8, jwk, raw-public, raw-seed',
422+
note: 'spki, pkcs8, raw-public, raw-seed',
423423
},
424424
{
425425
name: 'ML-DSA-87',
426426
status: 'partial',
427-
note: 'spki, pkcs8, jwk, raw-public, raw-seed',
427+
note: 'spki, pkcs8, raw-public, raw-seed',
428+
},
429+
{
430+
name: 'ML-KEM-512',
431+
status: 'partial',
432+
note: 'spki, pkcs8, raw-public, raw-seed',
433+
},
434+
{
435+
name: 'ML-KEM-768',
436+
status: 'partial',
437+
note: 'spki, pkcs8, raw-public, raw-seed',
438+
},
439+
{
440+
name: 'ML-KEM-1024',
441+
status: 'partial',
442+
note: 'spki, pkcs8, raw-public, raw-seed',
428443
},
429-
{ name: 'ML-KEM-512', status: 'missing' },
430-
{ name: 'ML-KEM-768', status: 'missing' },
431-
{ name: 'ML-KEM-1024', status: 'missing' },
432444
{ name: 'RSA-OAEP', status: 'partial', note: 'spki, pkcs8, jwk' },
433445
{ name: 'RSA-PSS', status: 'partial', note: 'spki, pkcs8, jwk' },
434446
{
@@ -448,9 +460,9 @@ export const COVERAGE_DATA: CoverageCategory[] = [
448460
{ name: 'ML-DSA-44', status: 'implemented' },
449461
{ name: 'ML-DSA-65', status: 'implemented' },
450462
{ name: 'ML-DSA-87', status: 'implemented' },
451-
{ name: 'ML-KEM-512', status: 'missing' },
452-
{ name: 'ML-KEM-768', status: 'missing' },
453-
{ name: 'ML-KEM-1024', status: 'missing' },
463+
{ name: 'ML-KEM-512', status: 'implemented' },
464+
{ name: 'ML-KEM-768', status: 'implemented' },
465+
{ name: 'ML-KEM-1024', status: 'implemented' },
454466
{ name: 'RSA-OAEP', status: 'implemented' },
455467
{ name: 'RSA-PSS', status: 'implemented' },
456468
{ name: 'RSASSA-PKCS1-v1_5', status: 'implemented' },
@@ -514,21 +526,33 @@ export const COVERAGE_DATA: CoverageCategory[] = [
514526
{
515527
name: 'ML-DSA-44',
516528
status: 'partial',
517-
note: 'spki, pkcs8, jwk, raw-public, raw-seed',
529+
note: 'spki, pkcs8, raw-public, raw-seed',
518530
},
519531
{
520532
name: 'ML-DSA-65',
521533
status: 'partial',
522-
note: 'spki, pkcs8, jwk, raw-public, raw-seed',
534+
note: 'spki, pkcs8, raw-public, raw-seed',
523535
},
524536
{
525537
name: 'ML-DSA-87',
526538
status: 'partial',
527-
note: 'spki, pkcs8, jwk, raw-public, raw-seed',
539+
note: 'spki, pkcs8, raw-public, raw-seed',
540+
},
541+
{
542+
name: 'ML-KEM-512',
543+
status: 'partial',
544+
note: 'spki, pkcs8, raw-public, raw-seed',
545+
},
546+
{
547+
name: 'ML-KEM-768',
548+
status: 'partial',
549+
note: 'spki, pkcs8, raw-public, raw-seed',
550+
},
551+
{
552+
name: 'ML-KEM-1024',
553+
status: 'partial',
554+
note: 'spki, pkcs8, raw-public, raw-seed',
528555
},
529-
{ name: 'ML-KEM-512', status: 'missing' },
530-
{ name: 'ML-KEM-768', status: 'missing' },
531-
{ name: 'ML-KEM-1024', status: 'missing' },
532556
{ name: 'PBKDF2', status: 'implemented' },
533557
{ name: 'RSA-OAEP', status: 'partial', note: 'spki, pkcs8, jwk' },
534558
{ name: 'RSA-PSS', status: 'partial', note: 'spki, pkcs8, jwk' },

0 commit comments

Comments
 (0)