Nymchat tekniku qillqa
Kuantikta qhipaq kiru rimanakuy Nymchat-pi
ML-KEM-768 llapa runapaq llaqtankunata Nostr nisqapi paqariy, manan qillqasqa k'allpachaykunapas kanchu, hinallataq huk manan riqsisqamanta qallariy, manan pacha llaqtakunapas riqsisqachu.
Messenger nisqapi post-quantum killa qatichiyta qusqayqa manam kriptografia llakiy kanchu. Churanaykunam allin t'aqasqa kachkan, librerikunapas kashan. Sasachaq kaqmi: tukuy ruraykunapacha kunanqa... Iskayniyuq p'unchay qillqasqa, hinallataq manan hukllamanchu kachkan ñan chayta churaypaq riqsisqapi. Kay qillqasqaqa Nymchat imaynatam chayta kutichin — iskay ñiqin qillqasqa maymantam hamun, imaynatam chayta munawanpas runaman chaskichin, hinallataq interfaz imatapas chay llamkaypaq nina nina — hinallataq, tukuy ñiqinpi, chay llamkayqa imatapas manan waqaychancu.
Kay p'anqaqa makinawan tikrasqa kachkan, allin kananpaq. Inglés simipi original nisqataqmi chaypaq hina.
1Chay asnakay
Nostr manan riqsisqachay rimaykuna chinkachisqa kachkan [blank]-wan. NIP-44 nisqa, iskay qonqayta qarqachispa kachkan. Qelqa qelqata pachaqchaq qonqay — ChaCha20 HMAC-SHA256 qelqawan, ... HKDF (RFC 5869) — quantum computer nisqawanqa manam ancha allinchu manchachisqan; Grover nisqapa algoritmunqa symmetric key nisqata square-root nisqawanta pakasqan, hinallataq 256 bits nisqapqa chayta qichun. Chay hap'iq mitan Allin kashan Key-pi elliptic-curve Diffie-Hellman kashan. secp256k1, hinaspa Shor's algoritmu chay discrete logarithm-ta chaypachata tantiyachin. Huk mich'i killi-ta llanq'a killi-mantapas tarispanqa, chay killi rurasqan llapan churanakuq iskayniykunatañataq rikuchin.
Kay ruraypaqqa, chay mashin kaqtinqa manan kutichisunchu chay manchayqa. Huk malla, kay tapakuq qillqasqakunata qillqaspa, chay k'umuy kaqtinqa tukuyta pukaqarinanpaq. Kunan qillqasqa, chay wataqa allin kasqapas, p'akiykusqa kachkan. Chaymi post-quantum llaqta rurayqa atipan, chaymi rurayqa manan chay mashin ruwakusqan chaskinanchu.
1.1 Kay qillqasqa kutichisqa tapuy
Allin kachayqa allintam yachakurqan: post-quantum kachi llimp'iyta (key encapsulation mechanism) qhipaq ruraywan (classical exchange) iskaynintapas kaspas, chaymi huk qhichariqqa imatapas ñawiyänapaqqa iskaynintapas p'akichanan. Nymchatqa ML-KEM-768ta usachan (FIPS 203). Chayqa hinitaq huk repartichiy llaqta kayta churan:
Kunanqa Alice-man qillqanapaq, hukmi rurananpaq: npubn. Post-quantum rimaykunata kutichiyta munaspayki, iskayninkunapaq munayki: ML-KEM k'umuy qillqan. Chay qillqa maypin kawsan, chaytaq imatapas payman qoyqaytaq qallarashaspaqtaq maymantataq chaskinki?
Huk npubqa hukllapacha kachkan. Qillqaytaq qillqaytaq, rimaytaq rimay, icha rikuchisqaytaq rikuytaq, chaymi qelqaykipaq kaqnin. Huk ML-KEM-768 llamkaytaqa 1,184 bytes kachkan. Mana rimaytaqmi kanman, mana sutiyuqpiypas kanmanchu, hinallataq mana QR codepi hinaqllachu huk 32 bytesllapacha kanasqanpaq.
Hatun kayqaqa allinmi. Aswan sasachakuqqa chaymi, iskay ñiqin killaqa kimsa sapaq llant'uykunata apamun, chaymi kay qillqasqapaq qhipanqa paykunata kutichiyllapuni kani:
- Huqmantataq churanataq. Mana imaynatapas rikuyta atisqachu kachkaq llaveqa, chaymi hatun munaq (attacker) paypa sutinwan t'ikraspa apachin. Tawa ñiqin qillqasqapiqa, sutichasqawan runapa sutinman t'inkachin, chayqaqa chaytaqa allichan.
- Chayqa usrariypaqpa llamkanqankunapi allin tantakunan kachkan. Celularmanta, laptopmantaqa hukmi account kachkan; chay kachi (key) nisqataq hukmi kachkan, manan chay pachata p'akusqa willakuykunataqa huk pachamanqa p'akiyta atinkichu. Sección 3.2 nisqapi chayta yachachin.
- P'itisqa kanman. Allin riqsichisqa killaqa huk chaka machaymantam qayqapin, chaymiqa chay chaka machayllatam qhipanqa — hinallataq, mana huk pasillachu chayta allichanqa. 10.1 sutiqa chaypa chaninqa imataq kananta qelqasqan, chunki kayqa mana allichan kanchu, aswanqa chaypa chaninta pagasun.
2Ruraypa llimp'iykuna
Tawa sayaykunam kutichiyta llimp'irqan, hinaspaqa mayqallapas qillqaspaqtaqpas ancha riqsisqallan llimp'iykunata qatun.
- Pisi pakakakuykunallataq. Nostr machaqkunaqa hukllapi chaskisqa kachkan, nsec nisqata. Chay aswan hukllapi chaskisqaqa ñawpaq wasichasqaykita usunapa imaynataq kanqa, nsec nisqata waqaychayta yachaqqa, hukchaypas hukta waqaychayta mana yachunanchu. 3.1 nisqapi riqsinchik chayqa mana allintachus tukusqanchu — nsec nisqamanta riqsisqa post-quantum llaveqa mana post-quantum waqaychayta qowanchu — chaymi kay ruranayqa hukllapi chaskichkan, aswanqa mana: hukllapi llave material, huk wataq rurasqa kachkasqan, nsec hina imayna kachkasqanwan, chaypi kachkasqanwan, chaymi hukta waqaychayta yachaqqa hukninpaqtaq yachanan. 10.1 nisqapi anchatam riqsinchik chayqa imaynataq qallichkan.
- Mana kamachiy kanchu. Manam kanchu imayqallay imayqataq kashan nispa fiar kanchu servidor. Chay hina servidorqa willakuykunata llawispaq pacha kanku.
- Aypachawan llank'aykuna, huk kaynin. Nostr ruraqqa ancha usachisqa kachkan huk ch'aqan pacha. Mayqaspas key material kaqpas, tukuy chaypi imaynan kachkan, chayñata apanqapis ñankunaqa manam chay phanichiqqa ñawinchiyta atisunchu, chay rurayqa chayta waqaychasqan.
- Mana rimanakuychu. “Imayna qhichwakunata rurayta atinkichu?” nisqata rimayqa, wankachaqqa k'iriyta atin chaymanta mana kallpachasqa nisqata pakichanapaq. Kay rurayqa manam imataq uriyta atinichu.
3Qamchay raki ch'ikay
Kay kararim: ML-KEM decapsulation llaqtanchisqa chay manam imaymana rikuchisqa kaqkunapas rikuchisqachu llaqtamanta kachkan. Sapaq identityqa huk sapaq root secretta qun, huk kutilla rurasqa:
pqRoot = 32 bytes from a CSPRNG, generated ONCE per identity
seed = HKDF-Expand(
HKDF-Extract(salt = "nym-pq-root-v2", IKM = pqRoot),
info = "mlkem768/epoch/" || epoch,
64 bytes)
(ek, dk) = ML-KEM-768.KeyGen(seed)
Sapaqqa nsec hina usuwariqman rikhachkan: bech32 Runa unay ñawpaq simiwan
nympq, chayqa hinataq qillqasqa kashan nympq1…, nsec nisqawan qispasqa identity screen nisqapi, chay reveal interaction nisqawanmi, chaylla control nisqawanmi qillqasqa, manam pasaspaqpas qillqasqachu, manam imaypipas qhepachispaqpas apasqachu. Manam password kanchu, manam login kanchu. Chayqa usuarim qhepachisqan key materialmi, nsec nisqallaman hina.
K'alluqa munaypaqmi t'aqasqa kachkan, chayraykunqa huk chaca k'allpachasqapas mana huk chaynallataq keypair chaska chaska nanqa. Kay... epoch Counterqa tuyayta kamachin (9 ñiqin sapa).
3.1 ¿Imanrayku key-qa identity key-mantapachus pakasqachu?
Qhichqa rurayqa, chay usuy qhichqa kashan chay kimsaymantapas kipu watata ruraymi:
seed = HKDF(salt = "…", IKM = nsec) // do not do this
Tawa patakunayuqmi, chaykunaqa pacha kaqmi: manañam musuqta rurananchis, nsecqa chaymi kachkan; llapan chakachakunapas rimanakun, manañam pacha ruraykuna llasachinankupaq; huk chaskiyqa allinmi, chayqa llapan chakachakunapas k'uyuchaymanta rimanakunankupaq; chaymanta k'uyuchayqa willaychaytaq ñaypata kachkan, chaymi huk clientqa qallariypiña huk imata p'anchanay (seal) can.
Tawa allin kaqkunaqa mana imayuqchu, huk pacha rayku. Shor's algorithm huk publikataq npubwan lliwta rurashan, chayqa nsecta apamun. Seed derivationqa nsecmanta rurasqa huk public algorithmmi. Chayrayku, qhawayqan (adversary) qhipa lliwta p'akarispan, nispaq lliwta pasanchin, lliw runakunapi rurashan hina HKDFta ruraspam. "Harvest-now-decrypt-later" — chaymi kay rurayqa sayachinanchik p'akaymanta — kayta ruraymanta lliwta rurashanqa, manam imallatapas apunanchikchu.
ML-KEM decapsulation llaqtaqa entropy-mantan qallarinanchik; manam nsec-mantam qallariyta atisunanchu, chaymantapas classical-only encryption nisqapi mañachisunanchu.
Chay ley nisqapa iskay kaqninqa sut'in kaqninwan hina llamkan. Sapallan rurasqa imaynam yachayniyuq, chayqa NIP-44 nisqa rimaypi ruraykunapi t'inkasun, chayqa hukmi huk p'aquypaq, ichaqa aswan pasosniyuq: huk qhipaqqa chay rimayta hap'in chaynapi, chaymantapas huk keyta tarin, chaymantapas asllacha chawpin p'aquypaq. Chaymi chay qhipa ruranakuna chay hinallapi kashan, chaymantapas manam huk chaynachu “otro machaykunaman churay” ninkun.
3.2 Usuyarinpa huk imaymana kaqninman root-ta apachiy.
Iskay kaq qelqasqapa huk kaq llimp'iy — huk kikin, imaymana llamk'aqkunawan — kaypi aritmetikawan manam tukuchisunchu, chaymantam chayqa, chay k'uyuchiqqa llamk'aqkunapas ñawpaqtaqa k'anpas manam imapas hinachu. Chayqa apakuyninwanmi tukuchunanchik, hinallataq huk ñanmi kachkan: llamk'aqqa ... pachachin nympq1… Kodiq qillqankukuna.
Sapaqa kaynina rikuchkan nympq1… nsec nisqawan, hinaspa chay iskay ñiqin llasaqqa hukmi panelpi churashqata qatun. Chaymi chay imaymanay. Chay k'aspa manam quqchisqachu, chay llasaqqa manam chaskichu, chaytaqa Seccion 4.2 nisqapi riman.
Manumay rurayqa sut'ichisqa sapaq pacha kachkan, manam ñawpaq t'aqay riqraykuchu. 3.1 nisqa qelqasqapi willakuyninqa nini: sapaq k'anchayqa manam antiq ruraypi purichu, hinallataq imaymana ruraykuna chayta sapaq-sapachayta rurayta munashqaku — relay nisqapi kuska ruray, llaqtachay llaqtachaspa — chayta sapaqman much'un. Runallap rurayninmi chay waqaychayqa añay kachkan.
Kay tinkuyqa wrap-chasqa ñanpaq churan: huk qillqasqa wrap-kunamanta lista hapin, chay wrap-kunaqa AEAD blob riq, huk kipi (key) hina, chay kipiqa runaqa huk kutimmi huk llamkanapim (device) qichasqanman — hinallataq passkey PRF output nisqamanta. Kunanqa manam huk nisqapas apamusunkuchu, hinallataq hukmi chayamunankama, chayqa... nympq1… code kachkan
hukllachari patakuypaq ñan.
10.1 nisqan sut'iqa imataq chanin nin.
Qillqaqa paypaq allinchay tantakuyninpi kawsan, nymchat-pq-root, hinallataq paykunachus ruranchis hina tinkunmi. Chunka wrappakunapas manapas kachkashpasqaqa, lliw rurayta ruran: paypa kachkayninmi iskay kaq ruraykunata yachachin kay kawsay (identity) sapaq ruku (root) kachkashqanta, chaymi huk ñawqa ruku rurayta qhipachin (Section 3.3).
-qa nymchat-pq-root Luyunqa chakan mana ML-KEM kiy-rayku-pachamanta rurasqa kiywan qelqasqa kanqa. Chay lliqllayqa rayku-pachapa hukllachay qelqanllantami apan, chaymi, rayku-pachamanta rurasqa kiywan tutupayqa, chay kiyqa qolqaspa (box) purinmi: manañam imaypapas (device) atuypunchu, chayta qillqasqanpastaq. Chayqa killa-pachallapi (classically) tutupayqa kanqa — NIP-44 kantsiqpaq — ichaqa manañam tutupaychasqachu. Kayqa chayllam ruraqkunapaq (design) killa-pachallapi tutupayta qanqayta (accept) allinyachisqan, hinaspa chayta ruranapaq kashan: chay lliqllayqa manañam rayku-pachata apan khipan, huk rayku-pacha kaqmantallan yachachin.
Qunqaykunap huk chaskin qatirinpas, ñawpaq wata nisqamanta hamuqta allichayta munay kaspapas ruranay kaspapas. Kayqa hukchari pasaymi, hinataq pasayqa p'unchay nisqamanta kachkan, kallpachay nisqamantaqa manam.
3.3 Paqarimuy hinataq chaskiy
Qallariypi, manan chinkaq sutinwan, huk llamkaq kay ordenpi llamkan:
- Kaqta maskay
nymchat-pq-rootQillqay - Qillqasqa tarisqa, hinallataq kay llinchiyqa hayk'iyta atin. — chayta qhapaqchiy hinallataq willay kay k'annintata post-quantum qhapaq kaq hina.
- Qillqa tarisqa, hinallataq kay llasaqqa manan unp'ichiytaq atinanchu. — musuq sapaqtaqa ama ruraychu, hinallataq mana willakuykunatapas ama willakuychu. Kay qelqata qelqaspa, runata kay kaykayta t'inkunapaq k'ikichiy
nympq1…Chayta qhasqan machaymanta qillqa. - Manan qillqasqachu — sut'iyta ruray, qillqasqata yayariy, willay, hinallataq rikuchiy
nympq1…Usuariosman huk kutillan kodi, paykuna waqaychasqankupaq.
Taway ñiqinqaqa huch'uyta ruranapaqqa allinmi, chaymiqa imaymana ruraykunaman mana qallariypaqmi qillqasqa kachkan. Iskay k'anakaqa, huk sutillapi iskay iskay pacha rurachispa, chay huch'uyta chinkachinapaqmi kay taripayqa kachkan.
4Allin llank'aypa willakuy
Allichasqa k'ay wankallanpa qelqa qananta qillqasqa kachkan chaymanmi puriyta atisqa.
NIP-01
pasakuy — rupa 30078, allichasqa nym-pq:
{
"kind": 30078,
"tags": [
["d", "nym-pq"],
["t", "nym-pq"],
["expiration", "<unix seconds>"]
],
"content": {
"v": 2,
"alg": "mlkem768",
"nym": 1,
"epoch": 0,
"pk2": "<base64url ML-KEM-768 encapsulation key>",
"exp": <unix seconds>,
"devices": [ ... ]
}
}
Addressable nispaqa, relayqa (kind, pubkey, d-tag) nisqapi hukllachallan willakuyta qhawaykun, chaymi hukta qhipa willakuyta chaypiñan tukuchin. Chayrayku, imaymana runapas hukllachallan qhipan kachkan, chaymi “Alicepa churan (key) maskayqa” mana lliw nisqata qatipayta mantsachaspa, hukllachallanmi rikuchin.
Qillqayqa hukchaymi kan. Kay sapaq pacha kuyuchasqa kikin llaqtayki nisqawanmi, chaymi “kay ML-KEM llaqtayqa kay npub nisqamanta kachkan” nispa rimayqa npub nisqapas hina k'umuy kachkan. Huk chaya encapsulation llaqtata rastiyqa secp256k1 kuyuchiyta sumaqta rurayta (forge) reqirin. Chayta ruriyta atiqqa manañam KEM nisqata llakichinanchu.
Willakuykuna tukukun. Qanchaq p'unchay NIP-40 nisqa Puchukuy, chunka ishkay p'unchaykuna anewachasqawan, chay qillqaqa kachkan mana tukurqanchu chay llamkayuqta, huk tukurqanataqa manañam. Chay sapaqqa manañam tukukun; chaypi kachqanmi tukukun.
Ñawpaqta qollusqa willakuyqa chay hina qelqaymi, manam kawsayta (key) apasqachu: runakunaqa sumaq NIP-44-ta apamunku, chaytaqa tukuy login-kuna qelqan, chaymanta clientqa post-quantum rimanakunata kutim riqsinakuypi kutichin, kutim qillqaspan. Chayraykun huk siman hina rimayta manaraq rimayqa, chay pacha qillqasqa willakuykunata waqaychayta manqarin — chay willakuykunaqa quantum-man atipanapaqqa manam, sumaq qillqaywan (classically) ima — hinaspataq manam huk pasqachu manqarin. Apakuyninqa manam muchkusqa, qelqasqa willakuykunaqa manañam qelqayta manañaymanchu, chaymanta kutim riykuspaqa manam huk imatapas ruwanachu.
Chay mana t'ikrayaq kayqa tukuy pacha tukuypa imaynanmi, manañan chaspapas mana chayraykuchu. Manataq chayqa, huk willakuyqa imaynan kichaymanta aswan kashan: huk makina limpichasqa, kawsaynin qallarisqa, icha sapaq kachkasqa, manataq pipas kachkanchu chay kichaywan willakuykunata apananchispaq nisqata qhipan, chaymantapas willakuykuna chinkapun, manataq huk pipas hampichanachu. Qanchis p'unchawmi chay pacha t'aqan, chaymantapas apanakuqkunam willakuyta chinkachisun, manañan qatunakunata qatunachispaqqa.
Killa lliqp'iqa paypa rikchayninta sutichan. Chakraqa pk2, chay lloqsiypaqqa sumaqchasqapas mana, rimanakuy nisqapi kashan: chayqa, chay lloqsiypaqwan ruraymanta nisqata sutichan. Chay qelqata mana riqsisqapas ñawinchakuq, 'Nymchat client, mana post-quantum key kanchu' nispa yachaynin, chaymantataq mana allinpas NIP-44 nisqata apamun, chayqa imaymana login nisqakunapas ñawinchisqanku. Chayqa allinmi mana allinchay nisqapi, chaymi rurananchis ichaqa kayta qelqananchis: chay ruranakuy nisqata allichanapaqmi kachkan: mana riqsisqapas imaymana ruranakuyqa hap'inchiqta chinkachin, manam qelqata chinkachinmanchu. Huk lloqsiypaqqa, manapas hukmanpas mana usachispaqa, mana lloqsiypaq kachkantaqchá aswan pisiyachkan, chayqa qillqasqata mana imapas riqsimanapaq chinkachinmi.
4.1 Mananchayqa sut'iqmi, hinataq kimsa sut'iyuqmi.
Huk p'iti, ichaqa ancha allin yachay: llapan Nymchat client-kunam willakuyta qillqanku, manam post-quantum ruranapaqkunallachu, hinallataq kichay qillqapas manam obligatorion kanchu. Chámiqa iskaymantaqa kimsa sapaq kawsaykunata qun:
| Qhawariwasqa | Kaqkuna | Imayna kawsayta qhayachiy. |
|---|---|---|
| Willakuy huk kiya-wan. | Nymchat, kwantum qhipata atisqan | Misk'iy |
| Willakuy, manañam llapi kanchu | Nymchat, tukuy kawsayllam — musuq kawsay mana kanchu, ukllachay chayqa manaraq kikinpa sapaq sapaqninman tinkukunaspas. | Antiq'a NIP-17 |
| Manam willakuy kanchu | Mana riqsis | Tradicional, hinataq allin kachkay pachakuy. |
Kimsa kaq patata tawa kaq pataman hukllachiyqa ñiqin p'anqa kaymantam. Kipu manachaq willakuyninqa qowasqan Nymchatta apasqan nisqata qillqasqa rimaymi, chayqa qoway ñanta manataqtaq rinchayta yanapan, manan riqsisqachu chaytaqa apanan.
4.2 Sapaqta p'akiyta manaq atinqachaq k'uñichiyqa manam rimaykachunchu.
Willayqa tukuyta chaskinakuqmi: sapa imaymana runapaq huk hatunpas, qayna qillqasqanmi allin. Chaymi huk qillqasqallapacha rurayta llank'achin, hinallataq mana t'inkuypaq llamkanqa willakuspasqa hatun p'anqay kaqta. Huk llamkanqa, k'umuyta qayna rurasqan tantayta willakuspanqa, chayqa huk qillqasqata tukuyta qichuspa, hinallataq huk ñawpaqkunapas qillqayta munanankupaq, chay k'umuytaqa huk llamkanapas manan p'akiyta atinkuchu.
Chayrayku, sapaq kawsay kashanta yachan chay pero manapas qallariyta atipanachu, manataq manapuninchu willayta. Manapas p'akikuchu, manapas llank'aymanta qatichikuchu: chay k'anapa kachkan qillqakunata qillqan, chaymanta imaynataq qhipakun, runataq chayta t'inkuchiyta mañakun. Ch'in kayqa allinmi chay ruranaqpaq, qampa kawsayniykitaq manapas rimayta atisqachu.
5Taripaywan qhaywarina karay
Llamkaykuna payakunapaq killa (keys) iskay ñanwan yachakunku. Huk munasqan (subscription) paykunata coverin runakunata huk runa rimanakusqanwan — rimanakuykuna hinaspa grupupi kawsakunapaq runakuna — chaymi paykunapa willakuyninnaq rimaykunata k'acha kaspim chayamun. Kutichisqa rimanakusqayku runakunapaq, huk kutillan tapuy (query) kachay pacha purin, iskay chunka pichqa segundo (2.5 s) nisqapi; chayqa manapas llank'asunchu, chayqa qamanta (classical) willayllam kachkan, chayqa post-quantum manaraq apakunapaqllapi kaspallan, manam musuq huk mana llank'anay (failure mode) kasqanrayku.
Mana allin kutichiyqa chunka minutuqama allichasqa kachkan, manam wiñaypaqpas. Musuq masina t'aqachisqan runa, icha browser-extension nisqapi hina manam kanunpaqqa llank'ay kachiman llamkanaq, rimanakuspa pachaqa post-quantum llamkanaq kan, hinallataq wiñaypaq allichasqa “mana” nisqawanqa, paykunata klasiko encryption nisqapi qichachin willakuy tukukunankama.
5.1 ¿Imanraykutaq manan downgrade attack kanchu?
Ruta rurana kararqa huk tapuyllamanmi kutichkan:
pq = (we hold a signed, unexpired ML-KEM key for this recipient)
Manan allin llank'aykunata rimanakuy kanchu, manan allin k'aspiykunapa lista kanchu, hinallataq manan huk qhipaqqa hina hina ñanta rurachinankupaq huk ch'aqwayta ch'aqyaspa atinanchu. Willakuyta qaqachkan. is Rimanakuy, chaymi qillqasqa kachkan. Huk ch'akasqa icha manaraq willakusqa willakuypa munanqanqa, chay willakuyqa ñawpaqtaq kachkaq hina kachkan — kay yachaymanachaq ñawpaqtaqa kachkaq hina — manam hukmiyawraq willakuyqa qillqasqata manchaypaq hina kachqanqakuqa.
Chaymi chaypis kachkan, hinataq aswan allinmi: huk client hybrid nisqata apamun. llamanta Klluyta apaspa, chay klluyta apasqanqa qelqasqata lluqchiy atiyanta rikuchin. Post-quantum kawaymanta qhipamanta, manan qillqasqata mana ñawinchinata atiqnapasmanqa apasqachu.
6Allinchaq allichay
Nymchatqa NIP-44ta manam tikrachu. Payqa payta p'akichin. Manan t'ikrakusqachu NIP-44 ciphertextqa chawpi kamachiy kasqanmi, hinallataq ML-KEM keysqa qhipa AEAD kamachiyta paypa washipaqmi:
inner = nip44_encrypt(plaintext, conversation_key(sender, recipient))
info = "nymchat-pq2" || sender_secp_pk || recip_secp_pk || kem_ct || recip_kem_pk
prk = HKDF-Extract(salt = "nymchat-pq2-v1", IKM = kem_ss)
key = HKDF-Expand(prk, info || "key", 32)
nonce = HKDF-Expand(prk, info || "nonce", 12)
outer = ChaCha20-Poly1305(key, nonce, plaintext = inner, aad = info)
payload = "pq2." || base64url(kem_ct) || "." || base64url(outer)
Willayta ñawinchanapaqqa iskay imaymana llanthunmi tarisqa kachkan: qallari llantunqa NIP-44 qelqasqataqa mayllanmi, chayta pacha nunaqqa classical ECDH yanapan. Secp256k1ta pacha kachichiq quantum achaqqa, ukhu k'uyuchinta tarin, ichaqa ML-KEMtaqa allichanmi; ML-KEMta pacha kachichiyqa qallari llantunta chinkachin, NIP-44taq qhipakun. Mayqaykunaqpas, kayninpaq kachkan:
kem_ssqallari wankalla wenllapata kachichin. Kay llamk'aypiqa imapas ECDH ñawpaq rurayninmanqa manam llamkanchu, chayqa 6.1 nisqan qallarin.kem_ct,recip_kem_pkhinallataq, chay kikin identidad llaqtaykunaqa kuska kachkaq datoskuna hina t'ikrakun, chaymi qallari pachaqa chaymi rurasqa nisqa rimaywan kuska kashan. Huk ciphertext nisqata huk kutichiqpa identidadninman t'ikrarayqa, lluqchiytaqa manam, chaskichiytaqa manan chaskikunchu.
Encapsulation qallarinmi chiqayllam qillqakunapi. Qelqakuqpa ML-KEM kiyninqaqaqaq kaq, ichaqa chiqayllam qillqakunapi huk huk rayku ciphertext kaq, hinallataq huk huk rayku...
kem_ssChaymi nonce nisqata sapaqchayachiy manan, hamuyachiy chayqa allin kaqta ruran:
ChaCha20-Poly1305
(key, nonce) llant'uwan kutimuy nispaqa allin mana kanchu, hinallataq kaypi, key nisqapas chaki rimaykunapaqmi kachkan, chaymi manañam kutimuyta atinanchu.
6.1 ¿Imaraykuta q'anqakuna makaypi kayanku?
Huk kutichiyqa iskay imaymanakunata huk rimanakuy k'uch
ck = HKDF-Extract(salt = "…",
IKM = ecdh_x || kem_ss || …) // do not do this
Chay rurayqa qillqakunata waskhachiy hina allinmi kachkan. Huk ruway nisqanpi huk nanay kachkan: kayqa...
ecdh_x, ECDH chiqayninpa raw x-koordinadannin, key material hina — hinaspa browser extension (NIP-07 nisqa) wenan huk sapaq upalliq (NIP-46 nisqa) chay allichataqa manam kutichinmanchu. Qhapaqpa yanapayninpiqa NIP-44ta ruran, hinallataq ciphertext nisqata qun; chayqa, llaveqa applicationqa manan chayamunanchispaqmi kachkan chaypi.
Llapa imaymanakunata kuskanayqa, qhipaqchakuqpi kawsay ñawinchayta qhipaqchasqan llapan qhipaqchaykunatapas manan allintachu qhipaqchan, chayqa ancha allin rurakuq runakunataqmi, hinallataq chay kaman ruraykunapas manam allichanmanchu. Kamachiykunawanqa chay yanapanakuyta qallichiy, NIP-44qa ancha allinmi kachkan, chaymi imaymanachayta qhipaqchasqanwanmi rurakun, signerpas chaypi kachkan, hinallataq KEM ninanqa chaymi runaqa k'anchayta qhipaqchasqanwanmi rurakun. Signer login-kunapas chaymi post-quantum kachaqkunawanmi kachkan imaymanachay kachkanpi.
Bandwidthmi churiynin, manam michiychu. ML-KEM ciphertextqa 1,088 bytesmi, chayqa imaymana rimaykunapi kachkan, base64url-encoded nispa 1,451 caracteresmanta; chay wankallan AEADqa 16-byte Poly1305 tagta qun, chayqa NIP-44 payload nisqata huk qayata wiñachin. 50 caracteres hina rimayqa 176 bytesmanta 1,712 bytesman wiñan, 2,000 caracteres hina rimaytaq 2,820 bytesmanta 5,238 bytesman wiñan. Rimay hina qallariypas, imaymanapas 1.5 KB nispa chaynallan kachkan, chayqa mana hukta qatichispa, huktaq pacha kashan.
6.2 Kaypaq rimariq imaykunakuna
-qa pq2. Prefix nisqaqa llamkayta qallariykunata allichan: kayqa imataq kasqanpas imaynan qillqan, chaymi pillqa qillqasqata riqsispa k'anchay ñaninta akllan, manan huk imata yupaychaspa chayraqtaqa, manan huk runapa imatapas ruranman chayta yuyarinapaqpas. Ñawiq mana riqsisqapas, manan hukkuna qillqata ñawinchaspa, chay qillqata p'akiyta atisunman chayraqtaqa; hinallataq, post-quantum manaraq rurasqa kaspa, chay qillqakunaqa NIP-44 hina hinataq ñawinchayta atisun, manas imatapas t'ikrayta munaqpas.
ML-KEM decapsulationqa manan pacha munasqachu: mana allin rurasqa ciphertext kaqtinqa, Fujisaki-Okamoto transformqa error nisqata manan qun, aswanqa deterministic pseudo-random secret nisqata qun. Chayraykun mana allin k'uyaqa KEM kamachiykunapi (layer) manan rikunmanchu — NIP-44 nisqapi HMAC llaqtachiy hina rikun, chayqa mana allin classical k'uya rikun hina. Callersqa iskayninkutapas imaymanasmi ruranku, chayraykun mana imaymanas riqsichiq signal kanchun. Chaymi Section 9.1 nisqapi k'uyakuna llamk'achin: huk clientqa k'uyakunata imaymanas ruraykun, chaynataq NIP-44 nisqawan imayna allin kasqanta riqsin.
6.3 Haywari p'aqarichiypa iskaynin capaqnin.
A NIP-17 nisqa Huch'uy willakuyqa huk NIP-59 nisqa allichay: mana qillqasqa willakuy, qhipaqpa k'ispaypa k'uskuypaq (kunkay 13) hina ch'akaykusqa, chaymantaqa mayqachaqpa k'uskuypaq (kunkay 1059) hina allichasqa. Hampina k'ispaypa k'uskuwan ch'aqanachiypi, Nymchatmi iskaynintin yapuchin, k'uspichi k'uspichasqankunawan.
Qillqakuqpa chaskikuyninqa qallariq wajchataqa chayllam chaskin. Sigllataq qillqakuqmi NIP-44 hina ruran — chayta rurananpaqqa hampinaqaqa chay qillqaytaqa manañam rikun — chaymi manañam chaypi wankachiyta atinkuchu. Kayqa manan chay ataqayta qallarinanchikpaqtaqtaqa imatapas wakichinqachu: sigllataqa chay wajchata (wrap) hinaqa chaymantapuni chaskinchik, chay wajchataqmi qoraq (recorder) tupuchin. Tupuchasqa rimaykunata qapan ataqayqa, ML-KEMta pacha manañam sigllata rikunapaqtaqtaqa atipananchik.
7Willaykuna huñunakuy hinataq ch'aqwa llasaq.
Ayllupaq rimayqa manam huklla ciphertext kanchu. Huklaqallan qelqasqaqa ayllu nisqa runakunaqman apasqa kachkan, huk-huk qelqasqataq runapa sutinpi kaq ML-KEM kiyayninman chinkachasqa kachkan. Kiyayninniytam qillqarusqa runaqqa hybrid chinkachayta chaskin; manaraq qillqarusqataq classical chinkachayta chaskin.
Kayqa yupayninapaq mantsakayta ruran, chayqa allin mana yachaq ruwayqa chayta allin mana riqsikunchu. Chunka runakunapaq phesqayuq hinallataq hukmi qillqata chaskispa, willakuyninqa... mana Pusaq chunka nisqan qaripaykusqa. Mallaqqa chunka nisqapi hinallataq kachkan huk qillqasqa rimaypa huk nisqata munakun, chaymi rimayqa qaripaykusqa kachkan chayqa sapa Allichasqa kachkan.
Nymchatmi chayrayku fan-out kachkaspanmi qillqay pachakunata yupaykun — chay yupayqa p'acha rurachkaspanmi riqsinki — hinaspa chay markaqa “chunka patakunaqa pusaqkunaman quantum-resistant kachkan” nispa qillqan, manam qillqayqa llanth'asqam ninchu. Yachay yupayqa manam kanchu chaypi, chayqa aswan k'amacha kasqanmi huk... Chaskisqa llapaq rimay (qhepisqallanmi chayta yachaq), interfaceqa tukuy mana, chawpi kachkan chayta willan. Qunqaykichikpaqllata hinapas tukuyta kachkan nispaqa, llapallan rimaymantaqa ancha hatun ninchik.
7.1 Qollqa imatataq willan
Wasqhaqa ...-manta chikniyta niman. Willakuy, manam chayta apamusqan software-mantaq:
- Tukuy waqay: kay qillqapa tukuy qillqakuna mixtu nisqawan rirqaku.
- Ch'aqwa: huk ayllu willakuy nisqapaq qillqasqankuna sumaqta manam kacharqan. Tukuyqa manam kancharqan, aswanqa qasqallam kacharqan; chayraykun huk qillqasqa (plaintext) tukuy nisqakunapi rikchay kachaq kaspa, huk chunka kachaqqa mallaqpaq hinam allin.
- Classical nisqaqa maymanta willakun, manam emblema kachqan nichan; chayraykun mana kachqan qhichuqa "mana waqaychasqa", "paqasqa", chaywan "kay rurayqa kay imata mana kanchu" nisqakunata mana allin riqsimuyta qun.
Willakuy qillqasqa kachkaptinmi kutichiyqa qillqasqa kan, manas huk runaqa qhipaqpi willakusqanmanta kutichikunanchispaqchu. Kañan kachkan qhuchu qillqasqaqa mana aswan allinta qaqachisqa kanmanchu, hinallataq musuq willakuywan ñawpaq willakuykunata kutichiq tinkunapaq wasiqa, relay-pi kachkan qillqamanta hallaq nisqata ninchik.
Chay supraqniykuna kaypaqtaqmi kanku, manam kayta tukuchispaqchu: hukllachasqa qillqasqanqa allin qhichariq kanqa llapallan runakunapa qillqasqanmi qhichariq kasqanwan, hinallataq manam qhichariy nin'aq qillqasqaqa ch'aqmanmi kanku.
8Qamman qillqasqa qillqakuna
Client nisqaqa aswan ruraykunata paypa kikin riqsisqanman qillqasqa chinkachisqa ruran: allin kachisqa ruraykuna, rimaykunapa lista ninkun, llapaqkunapa kimsan, hinaspa rimaykunapa qatun. Kaykunapiqa aswan runapa kawsayninta riqsichin huk rimayllataqa, chayraykun chaykunata manañam saqiyanchu, manan rimaykunata allin chinkachisqa ruraykuspaykuqa, chaykunataqa llapallan mana kallpapasqa ruraykunatachan. Paykunapiqa hukmi allin ruray kashan, paypa kikin qallariy qallanmanta hamuq kimsanman apasqa — Section 3.2 nisqapi willasqa huk nisqallataqa manañam, nymchat-pq-root Kay kategoria imaymanapas, payallan rurachin huk k'iruy nisqapi mana allichanmanchu.
Kay ruraykunapiqa aswan chaninchasqa kachkan ruray. Huk settings ruray icha huk archive qillqa huk mayupi watakunapas tiyakun, chayqa chaymi chay qilla qapan—chayqa "kuti qapan, kutim qillqan" qillakunawan hina, huk mensajimanta aswan, chayqa runaq yuyaynillapiqa tapuykunaq hina chayllam.
Kaypi huk sapa sapa kirkayta kamachin, manan qhipaq hinaqa manañu. Kikin sutiyuq qillqasqa ñawinchiyta atipaq... sapa Kontupi kaq k'uñi, chaymi k'uñi nisqakunapichaqmi mayqataq qallarinmi chaynin willakuyninpi kaq listapi, hinaspataq kontuqa chaykunallataq qillqan, hukkunaqmi llik'anankupaq. Hukpasqa qillqayqa, huk k'uñita paypaqtaq k'achiyta k'allpachin — chay mana riqsichinraqchu nisqata Section 3.2-qa huk sapañitataq, huk sapañitataq qallarin hina, huk sapañitataq ushachin.
Identidadta chaskisqan, ichaqa hallp'ata manan chaskisqan chay ruraqqa, hallp’manta hamuq kallpata qelqasqata imatapas manañam pirkinkichu, kikinpa rurayninkunatañataq. Chayqa ruranmi, manañam llulla kanchu; chaymi 3.3 nisqapi unaychay ruranapaq rurachik kanchis, manañam musuq hallp'ata ruray nispa: iskay kaq hallp'qa chay qelqata manañam ñawinchayta atichinkuchu, kikin identidadpa kallpanta iskaytami ruran. Runachis unaychaychikunanchis, chay ruraqqa rurayta qallin — kallpanta chaskisqanmi ñawinchan, chaymanta kikin rurayninkunaman hina apan.
Browser extensionta kamachikuq icha huk washan ruray (NIP-46) manam nsec kachkan kikinpaq rurunapaq, ichaqa recovery code-ta kachkan; Section 6.1-pa kamachikunankuna hina, chayqa post-quantum chakaqa chayllatami munan: signerqa kashan hina NIP-44 kamachikunata ruran, hinaspa clientqa qhipa kamachikunata kikinmi ruran. Chay hina loginqa imaymanapas huk sumaq chaskikuq hina chaynallam.
9Tulluy
-qa epoch Derivacionpi kaq yupaymi t'ikrayta allin rurayta alliniyan, mana musuq kipunichiykunata bichaspa. Yupayta wiñachiyqa musuq kipunichikunata tukuyta qallarin, hinaspa musuq willakuytapas apamun; masikunapas musuq kipunichita t'ikrarina qillqasqamanta riqsinku. Chayraykun t'ikrayqa manam runata iskay ñiqin qillqayta mañakinchu: hamuqqa sapaqpaqqa iskay ñiqinmi rurakun, pachaqa t'ikrayta ruran.
9.1 Ñawpa pachakuna waqaychasqa kán, hinataq manataq imatapas kuska maskhaykuchu.
Kallpachina k'uñiq t'ikrayninpiqa, imatapas manañam tukuchikunichu. Clientqa lipinakuyta allichanapaq k'uñiqkunata kunan pachamanta pachäkuna (epoch - 3) kachkanankama rurakun; chaymi, t'ikray qallarinaspaq pachapak willayqa, willasqa pacha kachkan chay kallpachina k'uñiqwan allichanari.
Chay pacha chaymi kutichiyta allin ruwayta churan: chaymantapas manapas, kutichiyqa imapas quiteqanta uyarichinman. Tukuy ñawpaqtan chupan chayqa identity kawsan kaspanpash ñawichinaypaq allin kashan, chayraykun ruraqqa manañan willayta p'akiyta atipanman, chayqa manan allin kanchu, chayqa manan imapas waqaychayta ñawpaqta allichayta atipanman (Section 10.5).
10Imataq kayqa manam waqaychanchu.
Llamkayninmantallataq qillqasqaqa, sistemataqa manam rimaykunichu; hinallataq rimanakuypi rakiyta hatuniyqa, manam qillqaspaqpasqa aswan pisraqmi. Kaykunapas kay ruraypa rakisqanwan mana tinkunchu.
10.1 Ruq'aqqa iskay iskan huch'uymi, hinallataq chayta p'ispaqa manañam kutichisqaykuchu.
Kaymi kay ruraypaqa chanin. Iskay ñiqin (Section 2) nisqapiqa, ruraqqa hukcharaqmi qhawan, chayqa manam allintachu rurachkanchu: nsec-llaqa post-quantum key-ta manam kallpachinmanchu, chayqa imaynan kani: manam public value icha otarpaqa kanchariqchu. Manan pipas root-ta qhayanmanchu chaywan, Section 3.2 nisqapi qillqasqataq manam pukaq icha, root-manta rurasqa key-pi qhipaq kaqkunataqa manam kutichinmanchu. Manam escrow kaqchu, hinallataq manam manchakuspa huk authority kaqchu chayta qhayananpaq.
Manul kamachiyqa huk ñanllam, chayqa ñawpaqta qillqasqanmanta pasallan sut'in. Manan qelqasqapas qelqan... nympq1… Maypapasmi kachkaq qillqayqa hukllapacha huk mashinapi kachkan, chay mashinata chinkachispaqa, chaywan hukllachisqa post-quantum rimaykunata, settings blob-ta, hinallataq archive row-ta chinkachin. Chay...
nsec Mana yanapankuchu; chayqa tukuy ruraypa patanmi.
Chaymanta kutimuchisqa k'aspa ñankunaqa, chayqa manamanta qallariq ñankunapas hinaqmi allin kachaq kachun. Millay runaqa aswan ch'aka ñantami k'asqan, chaymi rurayqa chaypisiyachisqa kutichiy ñankunapas hinaqmi kaqman chayan — hinataq, yuyaynaq rimayqa, chayqa ruraytapas chay rimay hinaqmi ch'akachin, chayqa k'aspa rurayqa kunan chaskiy, chaymanta pacha k'aspay millay runakuna qhasqankuna ruraymi, chaytaq unay pacha manan hinallapas ruranku.
10.2 Riqsichiy, sut'ichasqa kaymanta kachaq.
Nostr-pi qillqasqapasqaqa Schnorr secp256k1 nisqapi kachkan, chayqa manañam cambiasqachu kachkan kaypi. Quantum computer qhawayuq huk qhipisqaqa qillqasqakunata kallpachispa huk runa hina rikchayta atin. Hybrid key exchange nisqapa allinchayninqa "kaytin qhapaqchiy, qhipaqta qhiriy" nisqata: huk qhipisqaqa kay pacha qillqasqata qhipaqta manañam ñawpaqta qhiriyta atin. Manan huk qhipisqaqa chay masin qhawayuq runata qillqasqa mana kallpachispa ruranraku. Chay sapaq kayninqa hampiqkunapi kutichisqa kachkan — padlock nisqaqa kachkan runa hina kachkanchis, shield nisqataq kachkan chupan, chaymi sapaq kachkan, chunka qillqasqaqa hukllam kachkan chaymanta.
Chayqa 4 kaq secciónpi willakuypaqtaq imatataq promesasqan chaytaq limallinmi. Npubwan ML-KEM keywan tarpusayninqa secp256k1 signature kachkan, chayrayku chaykunata qarpayta (forge) atiq wasichaqqa paypaqmi huk keyta apachiy atin. Hamuq wasichaqpaqtaq confidentiality kachkaspas, authenticity hinaqa manam kanchu.
10.3 Yachaykunapa yachaynin
Q'umuykunata p'akichiyqa maskhan qaywariqta, qaykuqta hukllapi hina p q'umuy, chay ruraq sapa, hinaspa chay asiku qillqasqapa punchay pacha. Manam huk pasakuy kaqta, chaypa hatun kaqta, ichaqa imayna huk t'aqaspa chayta chaskisqanpas kunuykachinchu. Kay ruray nisqapa imaynanpas traffic analysis nisqata manam llamk'achin.
10.4 Mana kawsariq pachancha
Nymchatpa Bluetooth mesh transportninqa huk sapaq protocolmi, paypaq kikin handshake-ninwan, chaymantaq kay llank'aypi mana kachkanchu. Mesh nisqapi qhipaq rimaykunaqa classical rimaykunam.
10.5 Willaykuna qhipachisqa kachkan
Huk waskaqa manam qhapaq-kay kasqanpas qillqasqa qatitayqa, chayqa pacha wata manam qhapaq-kay kaniychun. Chayqa kashanmi, manam kutimuchisqa qatichisqachu. Waqaychayqa qallarinmi chay willakuypaq, iskayninkunapas qhapaq-kay qillankunawan kaspanku, manam chay imaymana qallariypaqchu.
11Yuyaykusqa pasakuna
| Chkay | Imanraykutaq manan? |
|---|---|
| Identidad llavemanta post-quantum llaveta ruriy. | Qaykurqanchu. Derivacionqa nsec-pi kashan publiku algoritmun hina, hinaspa quantum adversary-qa npub-mantam nsec-ta kutichin, chaymi classical mitata quebrantashpaqa post-quantum mitatapas kuskanwan qon. Kay qillqapiqa imaymana distribution imaykunatapas allicharqan, ichaqa manam pipas defendarqanchu. Sección 3.1. |
| Rootta usuarip huk kutichiykunaman NIP-44 nispa kachariy. | Huk imaymananmi, hukkunawanmi rikuchisqa kachkan. Chay sapaq wata (root) sapaqllamta manchay nisqawan qelqasqa kachkaqqa, chay qelqasqata qillqasqa runa, chaymanta chay llanchanata (key) tukuchispa qelqata kutichispa qhapaqchispa, chaytaqmi kachkan; chayqa chay sapaq wata sawarinanpaqmi kachkan. |
| Huk huk rurasqa ML-KEM keypair chakrapas. | Qarpisqa. K'usniykuna hukkallan decapsulation k'umuykunataq qhawan, hinallataq huk identity nisqapaq huk qallarichisqapas tukuykunataqa manan apinkuchu. Kunan kawsayniyuq runakunaqa qhipamanta qillqasqa k'umuymanmi qillqan, hinallataq huk k'usniypas chayta manan ñawinchinchu. Huk identity nisqapaq huk sapa sapa, Section 3.2 nisqapi qatiriq ñankunawan, chaymi chayta qarpin. |
| Root nisqata PIN nisqapi llamachiy. | Mana allinchu. Tawa qillqasqa PINqa chunka kimsayuq bit-llam kachkan, manan kachkasqachu kachkan k'iriyuq runa llank'asqa qillqata qhasqan. Iskay 256-bit ñankunawan qayllapi qillqayqa, ancha chinkasqallan llimp'iyqa mana allin riqsichin. |
| Npub-ta iskay k'elisninllanta apanankupaq lliwkachiy. | 1,184 bytesqa manam qatichisqan identifier kanchu, hinallataq Nostr client nisqakunapa 32 bytes nisqapi kanq address-ta llik'anankupaqtaqa llank'achinman. |
| Hatun qillqanakuna yanapay | Kamachikuqta kutichin, chay allin ñan manachaypaq kashan. Tapuyta kutichiqqa, pitataq willakuyta ñawinchaqta allinchin. |
| Imaymana qillqakunaman llapita kachay. | Imatapas manan allichanchu: qelqakuqqa ... munan qaywarikuqpa Ñawpaq rimay qallarinanpaq llave, chayqa chaymi kachkan manan ñawpaq rimaypas kanchu chayta apanapaq. |
| K'anpi imaymana k'an rimanakuy | Manan allin kaqman kutichiyta ruwananpaq llasaqta ruran. Huk allquchiy, huk k'aspa (capability flag) chinkachispa, ñawpaq ñanta yapachin. |
| Post-kuantikullataqa, mana klasiku t'aqi kanchu. | Secp256k1 nisqapaq chunka wata yachaykunata chakiypun, huk aswan musuq pichaypaq. Huk aylluqa chayrayku mana llamk'an... iskaynin Mana allinchu. |
12Ruway ch'inlay
Nymchat kay ruraykunata iskay sapaq ruraykunawan apamun — huk JavaScript-pi web suyupaq, huk Dart-pi celular suyupaqkunapaq, hinaspa sapaqchaymantapacha ruwasqa ML-KEM-768 nisqata. Huk imaymanata iskay ruraykunawan rurayqa ancha mayaykunata apan, chayraykunqa iskayninmi tutukunankupaq rurakun, manañan iskayninmi allin kasqanta yupaychaypaqchu.
Dart ML-KEM kamachiyqa qhipayniyuq kaqwan pruekan allin kasqanta.
NIST ACVP
ML-KEM-768-paq riqsisqa kutichikunawan pruebanakuna (ML-KEM-*-FIPS20325 key-generation, 25 encapsulation hinaspa 10 decapsulation nisqakuna, paykunaqa imaymanachay nisqankunapaqllam llamkayku. Kaykunaqa NIST qillqasqankuna imaymanachay (validate) imaymanachay nisqapaq, chayraykun allin kachkan chayta riqsinanpaq, manam iskay ruraykunapas (clients) hinallataq rimanakusqankunachu. Chaymantapas, imaymanachay nisqakunapaq (test vectors) pacha kachkan — seed derivation, encapsulation, chaymanta payload formats, hinaspa complete gift wraps nisqakuna — JavaScript nisqamanta rurakun, chaymantapas iskay test suites-wan qillqakun. Root secret nisqapas chayta manam chinkachinchu, aswanqa kutichin: root to seed, root to keypair, root-pa public fingerprint-nin, hinaspa chay key, nonce, hinaspa qelqa qelqa (outer layer) nisqa data nisqakunapas paykunaqa imaymanankunachu, chayraykun iskay ruraykunapas manam iskayllam kanchu imaymanachay nisqapaq...
nympq1… Kipuqa willayta huk k'umuywan p'ak'asqan bytes-kunawan kachkan. Ruraykunapi t'aqay kaspan, rurayqa manan allinchu, manan huk qolipa lukhayta atinanchu kachkan willayta.
Kaykunapi sutichayqa allinmi manumanta saphikunata. Chayqa, llamkayniyoqta "kayqa ñuqa ruran ñawpaqmi" hinallataq "kayqa huk ñanqañami" nispa riqsichin; hinallataq, huk qelqayqa huk paya manumanta saphinman mana tapuyta atisunchu, chayqa manam kachkanchu nispallan qillqasqata riqsin — hinaspataq, 3.3 nisqallapi ninqta ruraspam, huk ñanqa ñawpaqta rurayta, chaymanta sutichayta lloqespa. Chayraykun chayqa huk lloqsiypaq kachkan.
Nymchatqa Pakiq sors AGPL-3.0 nisqapi. Kaypi rimaykusqa k'uchi chawpinqa...
js/nym-crypto.js chaymanta js/modules/pq.js web client-pi, hinataq
lib/core/crypto/ -wan lib/features/identity/pq_registry.dart Móvil klientekunapi.
Aswan huch'uy, manam sasa nispa willakuyta rikuy chayta... Kuantumta kutichiq qillqay k'uchuymanta yachay wasi qillqasqa.