ML-KEM- ja ML-DSA-standardit sallivat yksityisen avaimen tallentamisen kahdella tavalla. On olemassa pieni siemen, 64 tavua ML-KEM:lle ja 32 tavua ML-DSA:lle, ja on olemassa suurempi laajennettu muoto, joka johdetaan siemenestä hash-funktion kautta. Nämä kaksi ovat matemaattisesti samankaltaisia, ja voit siirtyä siemenestä laajennettuun muotoon milloin tahansa, mutta et voi palata takaisin. Jos valitset, mitä säilytät yksityisavaimena, säilytä siemen. Se on todellinen salaisuus, josta kaikki muu johdetaan. Voit laajentaa sen täyteen avaimeen milloin tahansa, ja se vie noin 40 mikrosekuntia, joten laajennettua versiota ei ole oikeastaan tarkoitus tallentaa levylle. Jos tarvitset sitä muistissa toistuvia operaatioita varten, laajenna vain kerran latausaikana. Siemen on vain satunnaisia tavuja, joten mikä tahansa arvo on kelvollinen avain. Laajennetulla muodolla on rakenne; kertoimet, jotka täytyy olla alueella, upotettu julkinen avain, tiiviste, jonka täytyy täsmää, ja standardi vaatii kaiken tämän tarkistamisen tuonnissa. Se on paljon enemmän pintaa, jotta asiat voivat mennä pieleen, mitä siemenen kanssa ei ole. IETF:llä on myös käynnissä oleva serialisointiongelma, jossa nykyinen kompromissimuoto sallii sekä siemenen että laajennetun avaimen sijoittumisen samaan tietorakenteeseen. Se tarkoittaa, että kaksi yhteensopivaa toteutusta voivat lukea eri kenttiä samasta avaimesta ja päätyä eri avainmateriaaliin, mikä ei ole asia, jota näppäinformaatilta toivotaan. TL; DR: säilytä siemen ja laajenna sitä tarpeen mukaan. Täydellinen kirjoitus alla.