Bilim binýady: kwant garşylykly şifrleme

Nymchat tehniki ak kagyz

Nymchat-da Kvantdan soňky açar ylalaşygy

ML-KEM-768 açyk açarlaryny Nostr arkaly katalog ýa-da registry bolmazdan paýlamak we olary hiç hili açyk gymmatlyk açyp bilmejek syryndan tohumlamak.

Wersiýa 1.0 Awgust 2026 Nymchat 3.74+ degişlidir

Messenger-e post-kvant açar çalşygyny goşmak esasan kriptografiýa meselesi däl. Primitiwler standartlaşdyryldy we kitaphanalar bar. Iň kyn bölegi bolsa, indi her bir gatnaşyjynyň ... gerek bolýandygydyr. ikinci açyk açar, desentralizirlenen ulgam bolsa ony goýmak üçin anyk ýerini bilmeýär. Bu makala Nymchat-yň muňa nähili jogap berýändigini — ikinji açaryň nireden gelýändigini, ony mätäç adamlara nähili ýetirilýändigini we interfeýsiň netije barada nämäni aýtmagyň rugsatdygyny — hem-de iň soňky bölümde şol netijäniň nämäni goramaýandygyny düşündirýär.

1Mesele

Nostr şahsy hatlary ... bilen şifrirlenýär NIP-44, haýsy-da iki aýrylyp bilinýän ýarymy bar. Teksti garyşdyrýan ýarym — HMAC-SHA256 tagy bilen ChaCha20, açary arkaly HKDF (RFC 5869) — kwant kompýuteri tarapyndan çynlakaý howup astynda däl; Grover algoritmi simmetrik açar garşysynda kwadrat kökden çaltlaşdyrmany üpjün edýär we 256 bit muny ýetirip bilýär. Onuň ýarysy Razylaşýar açaryň üstünde elliptiki egri liniýaly Diffie-Hellman arkaly secp256k1, we Şor algoritmi diskret logarifmi göni çözýär. Bir şahsy açary onuň köpçülikleýin garşylygyndan dikeltmek, şol açaryň öňki döreden ähli umumy gizlinliklerini yzyna dolanyp açyp goýýar.

Bu döredýän howp şeýle bir maşyn bar bolýança ertelendirilmänipdir. Ýatda saklamaga mümkinçiligi bolan garşydaş häzirki şifrany ýazgy edip bilýär we degişli mümkinçilik döredilende ony deşifre edip biler. Häzir iberilýän we geljekde hem ähmiýetini saklaýan islendik zat eýýäm howp astyndadyr. Kuantdan soňky açar çalşyşy hut şu hüjümi ýeňildirýär we bu bolsa işleriň şol maşyn gurulýança garaşyp bilmeýändiginiň sebäbidir.

1.1 Bu işiň jogap berýän soragy

Önleme usuly gowy düşnüldi: klassiki çalşygyň ýany bilen kwantdan soňky açary kapsulasyýa etmek mehanizmini işletmek, şeýlelikde hüjüm edijiniň islendik zady okamak üçin ikisini hem ýarma maly gerek bolýar. Nymchat ML-KEM-768 ulanýar (FIPS 203). Bu derrew paýlanyş meselesini ýüze çykarýar:

Sual

Şu gün Alise habar ýazmak üçin size bir zat gerek: onuň npub-y. Post-kvant çalşygyny goşsaňyz, onda size ikinji zat — onuň ML-KEM açyk açary gerek bolar. Ol açar nirede ýerleşýär we oňa bir zat ibermezden ozal ony nähili alyp bilersiňiz?

Npub özbaşdakdyr. Ony kagyza ýazyp, ses bilen okap ýa-da ekrandan skanir edip bilersiňiz we bu size şifrlemek üçin gerek bolan ähli zatdyr. ML-KEM-768 açyk açary 1,184 baýtdyr. Ony ses bilen okap bolmaz, ol ulanyjy adyna syrmaz we diňe 32 baýt bolan şahsyýetiň ýanyndaky QR koduna laýyk gelmez.

Ölçegi aňsat bölegi. Has kyn bölegi bolsa ikinji açaryň üç sany aýry-aýry meseläni getirmegidir we bu işiň galan bölegi esasan şolaryň jogabydyr:

2Taslama çäklendirmeleri

Dört sany çäklendirme jogaby şekillendirdi we olar hiç hili kod ýazylmazdan öň dizaýnyň iň aýdyň görnüşleriniň köpüsini gözden çykarýarlar.

  1. Mümkin boldugyça az syr. Nostr ulanyjylarynyň eýýäm anyk bir syry bar, ol hem nsecdir. Her bir goşmaça syr taryhyňyzy ýitirmegiň ýene bir ýoludyr we nsec-i ätiýaçlyk nusga etmegi bilýän adam başga hiç zatyny ätiýaçlyk nusga etmegi bilmez. 3.1-nji bölüm muny göni çözüp bolmajakdygyny görkezýär — nsec-den alnan post-kvant açary hiç hili post-kvant goragyny bermeýär — şonuň üçin dizaýn diňe bir syry sarp edýär we ondan artyk däl: her bir şahsyýet üçin bir gezek döredilýän, nsec bilen şol bir görnüşde we şol bir ýerde hödürlenýän, şeýlelikde birini saklamagy bilýän adam ikisini hem saklamagy biljek ýeke-täk açar materialy. 10.1-nji bölüm munuň nähili töleg talap edýändigi barada açyklygy bilen aýdýar.
  2. Ygtyýar ýok. Haýsy açaryň kime degişlidigini aýtmak üçin ynam edilip bilinjek hiç bir serwer ýok. Şeýle her bir serwer habarlary ugrukdyryp boljak nokat bolup galýar.
  3. Birnäçe enjam, bir şahsyýet. Nostr kimligi adatça bir wagtda birnäçe klientden ulanylýar. Bar bolan ähli açar materiallary olaryň ählisinde birmeňzeş bolmaly we ony şol ýerlere daşaýan ýollar, bu funksiýanyň garşy durýan duşmany tarapyndan okalmazlygy gerek.
  4. Bargaş ýok. "Haýsy şifrleri goldaýarsyňyz?" diýen soragyň islendik kanal içindäki alyş-çalyş edilmegi, hüjüm edijiniň gowşak görnüşe geçmäge mejbur etmek üçin peýdalanyp biljek hüjüm ýüzüdir. Taslama aşaklandyryp (downgrade) boljak hiç zat içermeli däldir.

3Garaşsyz esasy syr

Esasy karar şüdür: ML-KEM desapsulaşdyryş açary hiç haýsy açyk gymmatlyk tarapyndan açylmaýan açar materialy esasynda döredilýär. Her bir agzalyga bir gezek döredilýän bir sany kök gizlinlik berilýär:

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)

Kök ulanyja nsec ýaly görkezilýär: bech32 adam okap bilýän prefiks bilen nympq, şeýle okalýar nympq1…, şol bir açmak (reveal) interaksiýasynyň arkasynda, identity ekranynda nsec-iň ýanynda görkezilýär, şol bir dolandyryş bilen nusgalanýar, hiç wagt log edilmeýär we hiç ýere açyk görnüşde iberilmeýär. Bu parolda däl we login däl. Bu edil nsec ýaly, ulanyjynyň saklap biljek açar maglumatydyr.

Duz tykanlylyk bilen domen boýunça aýrylaşdyrylan, şonuň üçin hiç haýsy başga syr şol bir açar jübütini döredip bilmez. Şol epoch Kontr aýlawy hereketlendirýär (9-njy bölüm).

3.1 Açar näme üçin identifikasiýa açaryndan alnyp bolmaýar

Aýdyň dizaýn — açar jübütini ulanyjynyň eýer bolan sekretinden tohumlamakdyr:

seed = HKDF(salt = "…", IKM = nsec)          // do not do this

Ol dört sebäp bilen özüne çekiji, olaryň hemmesi hakyky: täze ätiýaçlandyrmaly zat ýok, sebäbi nsec eýýäm ätiýaçlandyryşdy; her bir enjam gurluşy taýdan ylalaşýar, ýalňyşyp biljek hiç hili senkronizasiýa protokoly ýok; her bir identifikasiýa üçin bir çalşyp bolýan habarnama aýdyňlyk bilen dogry bolýar, sebäbi enjamlar açar barada tapawutly garaşyp bilmeýärler; we açar ýaýlanmazdan öň hem bar, şonuň üçin klient ilkinji gezek işledilende özüne bir zat möhürläp bilýär.

Ähli dört peýdalyk hem bir sebäp bilen ähmiýetsizdir. Paýlaşylan npub-a garşy ulanylýan Şor algoritmi nsec-i berýär. Tohum (seed) almagy nsec üstündäki açyk algoritmdir. Şonuň üçin, klassiki ýarymy döwýän duşman, ähli bolanlaryň işleýän şol bir HKDF-i işleterek, post-kvant ýarymy gaýtadan dikeltýär. "Häzir ýygna we soňra çöz" (harvest-now-decrypt-later) — bu funksiýanyň saklamak üçin döredilen ýeke-täk howpy — şeýle usul bilen alnan açar hiç zat goşmaýar.

Ähli zat şundan gelip çykýan düzgün

ML-KEM dekapsulama açary, nsec-den alnyp bolmaýan ýa-da diňe klassiki şifrlemek arkaly hiç wagt geçirilmedik entropiýadan gelmeli.

Şol düzgünniň ikinji maddasy birinji maddasy ýaly möhüm işi ýerine ýetirýär. Adaty NIP-44 habarynyň içinde ulanyjynyň enjamlary arasynda senkronizlenen, garaşsyz döredilen sekret — bu goşmaça ädimleri bolan şol bir kemçiliktir: hüjüm ediji şol habary şu gün ýazgy edip alýar we ony soňra klassiki açaryny tapýar, netijede bolsa esas (root) açylýar. Şonuň üçin indiki bölümde görkezilen ýollar şeýle we olaryň hiç biri “ony beýleki enjamyňa iber” diýen görnüşde däl.

3.2 Root-y ulanyjynyň beýleki enjamlaryna getirmek

2-nji bölümiň 3-nji çäklendirmesi — bir şahsyýet, birnäçe enjam — bu ýerde arifmetiki usul bilen berjaý edilip bolmaz, sebäbi esasy maksat açaryň enjamlaryň eýýäm paýlaşýan hiç zatyna bagly bolmazlygyndadyr. Onuň deregine transport arkaly berjaý edilmelidir we diňe bir ýol bar: ulanyjy... nympq1… özlerini kodlaýarlar.

Kök şu görnüşde görkezilýär nympq1… nsec-iň ýanynda we ikinji enjam ony şol bir panele goýlan görnüşde kabul edýär. Bu bütin mehanizmdir. Kod berilmeyen enjam gatnaşyp bilmez, munuň baradaky maglumat 4.2-nji bölümde beýan edilýär.

El bilen geçirmek ilkinji ädim däl-de, bilinçli goýlan esasdyr. 3.1-nji bölümdäki düzgün köki hiç wagt diňe klassiki şifrleme arkaly geçirmeli däldigini aýdýar we muny awtomatlaşdyrmaga synanyşýan her bir mehanizm — ony reley arkaly senkronizlemek ýa-da şahsyýet açaryna gollamak — hut şol düzgüni bozýar. Ulanyjynyň edýän bu ädimi goragyň hakyky bolmagynyň sebäbidir.

Format päklenen (wrapped) ýol üçin ýer galdyrýar: bir ýazgy päklenen (wraps) sanawyny göterip biler, olaryň her biri ulanyjy başga bir enjamda gaýtadan döredip biljek açaryň astyndaky AEAD bloby bolup biler — mysal üçin, passkey PRF netijesi. Häzirki wagtda hiç zat muny hödürlemeýär we bir zat muny etýänçä... nympq1… kod geçmegiň ýeke-täk ýoly. 10.1-nji bölüm munuň bahasyny görkezýär.

Ýazgy özbaşdak özüniň sazlamalar kategoriýasynda ýerleşýär, nymchat-pq-root, we beýleki kategoriýalar ýaly senkronlaşdyrýar. Hiç hili gaplama (wrap) götermese-de, ol zerur işi ýerine ýetirýär: onuň bardygy ikinji enjabyň bu şahsyýetiň eýýäm kökiniň bardygyny bilmegini üpjün edýär, bu bolsa onuň garşydaş bir kök döretmeginiň öňüni alýar (3.3-nji bölüm).

Dizaýn belligi: täze açary ulanyp bilmeýän ýeke-täk kategoriýa

Şol nymchat-pq-root kategoriýa bolmaly däl kökden gelip çykýan ML-KEM açary bilen şifrelenmeli. Şol setir kökiň ýeke-täk nusgasyny saklaýar, şonuň üçin ony kökden gelip çykýan açar bilen bellenmek — açary kutynyň içinde bolan gulplama ýalydyr: ony ýazan enjam hem unflar, hiç haýsy enjam açyp bilmez. Ol klassiki usulda — NIP-44 arkaly öz-özüne — ýa-da hiç hili bellenmez. Bu dizaýnyň diňe klassiki gorag kabul edýän ýeke-täk ýeridir we munuň üçin mümkinçilik bar: şol setir häzirki wagtda köki saklaýan däl, diňe onuň bardygyny aňladýar.

Beýleki ähli sazlama kategoriýasy kökden alnan açary ulanyp biler we ulanmalydyr. Bu ýeke-täk istisnadyr we bu güýç barada däl-de, eýsem aýlawlylyk baradaky istisnadyr.

3.3 Döredilme we kabul ediliş

Işe düşende, dowamly kimligi saklap, müşderi şu tertipde işleýär:

  1. Bar bolýan birini gözläň nymchat-pq-root ýazgy.
  2. Ýazgy tapyldy we bu enjam ony açyp bilýär — ony kabul ediň we yglan ediň bu kimligi post-kwant ukyply hökmünde.
  3. Ýazgy tapyldy we bu enjam ony açyp bilmeýär — täze kök döretmäň we hiç hili yglanama çap etmäň. Ulanyja ... girizmek arkaly bu enjamy birleşdirmegi soraň nympq1… ol eýýäm bar bolan enjamdan gelen kod.
  4. Maglumat ýok — köki döret, ýazgyny çap et, yglan et we görkez nympq1… Ulanyja kody bir gezek ber, şonda ol ony saklap biler.

3-nji ädim ýalňyşlyk goýmak aňsat bolan ädimdir we bu tertibiň her bir amala aşyryşyň özüne goýberilmeginiň däl-de, ýazgy hökmünde bellenilmeginiň sebäbidir. Her biri kök döretmegi karar berýän iki enjam bir eňňit astynda iki sany garaşsyz kök döredýärler we hut şu ýalňyşlygyň öňüni almak üçin bu tertip döredildi.

4Mümkinçilikler baradaky yglan

Emele getirilen açar jübütiniň köpçülige açyk bölegi salgytlanýan nesne hökmünde paýlaşylýar. NIP-01 waka — görnüş 30078, belgilenen 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": [ ... ]
  }
}

Adreslenip bilinmek diýmek, releýiň her (görüş, pubkey, d-tag) üçin bir waka saklamagydyr, şonuň üçin täzeden paýlaşmak öňki habary ýerine çalşyrýar. Şonuň üçin her şahsyýetiň diňe bir häzirki zaman ýazygy bar, bu bolsa "Alisanyň açaryny gözle" diýen amalyň sanawy deňeşdirmek däl-de, diňe bir anyk maglumat almak bolmagyny üpjün edýär.

Gol baglylykdyr. Hadysa şahsyýet açary bilen gollandygy sebäpli, "bu ML-KEM açary şu npub-a degişlidir" diýen talap npub-yň özi ýaly güýçlidir. Başga enkapsulýasiýa açaryny çalşyrmak secp256k1 goluny galmagy talap edýär. Şuny edip bilýän hüjümçiniň KEM bilen gyzyklanmaga mätäçligi ýok.

Yglanlaryň möhleti dolýar. Ýedi günlük NIP-40 Möhletiniň dolmagy we her 24 sagatdan bir täzeden paýlanmagy, ýazgyny öňki bolan däl-de, häzirki wagtda hem işleýän müşderi baradaky maglumat hökmünde saklaýar. Köki özbaşdak hiç wagt möhletini doldurmaýar; diňe oňa degişli bolan talap möhletini doldurýar.

Möhleti geçen yglan, hiç wagt açar taşymasy bolmadyk yglan edilýän ýaly okalýar: peer-ler her bir login okap bilýän adaty NIP-44 ugradýarlar we klient täzeden yglan edende, özüniň indiki birleşmende post-kvantt çalşygyny dowam etdirýär. Şonuň üçin, bir hepdeden köp wagtlygyna sesiz galmak, aralyk döwründe iberilen habarlaryň goragyny ýitirmek bilen netijelenýär — olar kvantlara garşy durnukly bolman, klassiki usulda şifrelenýärler — we başga hiç zat ýitirilmeýär. Eltip bermek täsir etmeýär, eýýäm alnan hiç zat okap bolmajak ýagdaýa gelmeýär we gaýtalan wagty hiç hili çäre görmegiň gerekligi ýokdur.

Şol asimmetriýa möhletiň tamamlanmagynyň bir hytaý däl-de, esasy sebäbidir. Onda ýazgy özünde görkezýän açaryndan has köp ýaşar: arassalanan, täzelenen ýa-da köküni çalşyrylan enjam, hiç kimde bolmadyk açara inkapsulýasiýa etmek baradaky hemişelik görkezmäni galdyrýar we şol açar bilen iberilen habarlar iki tarapda hem hiç hili ýalňyşlyk görkezmän ýitip gidýär. Ýedi günlük möhlet şol aralygy çäklendirýär we relýelere müşderileriň duýmagyna garaşman, ýazgyny özleri pozmaga mümkinçilik berýär.

Açar meýdança onuň formatyny atlandyrýar. Meýdan... pk2, we san bezeg däl-de, şertnamanyň bir bölegidir: ol açaryň haýsy maglumat formaty bilen ulanylyp bilinjekdigini görkezýär. Bu meýdançany tanamaýan okapjy «Nymchat kliýenti, post-kwant açary ýok» diýen netijä gelýär we her bir giriş ulgamynyň okap biljek adatky NIP-44 formatyny ugradýar. Bu ýalňyşlygyň dogry ugrydyr we format belgiowarynyň ýerine ýetirmegi üçin döredilendigini düzgün hökmünde bellemesi gerek: tanalmaýan mümkinçilik talaby goragy azaltmaly, ýöne ugradyşy däl. Gatnaşyjynyň ulanyp bilmeýän açary hiç hili açaryň bolmazlygyndan hem erbetdir, sebäbi onuň döredýän habary iki tarapda hem hiç hili ýalňyşlyk görkezmezden ýitip gidýär.

4.1 Ýokluk manyly we üç bahalydyr

Inçe, ýöne möhüm detal: habarlaşyk diňe post-kwant ukyply klientler tarapyndan däl, eýsem ähli Nymchat klientleri tarapyndan paýlaşylýar we açar meýdançasy islege baglydyr. Bu bolsa iki däl-de, üç tapawutlandyryjy ýagdaýy emele getirýär:

GözlenenManysyHäsiýeti ugrat
Açary bolan duýndyryş Nymchat, kwantdan soňky ukyply Gibrid
Habarlandyryş, hiç hili açar hem ýok Nymchat, diňe klassiki — post-kvant öçürilen, ýa-da identifikasiýanyň köküne entek birleşdirilmedik enjam. Klassiki NIP-17
Bildiriş ýok Bilinmeýän klient. Islendik Nostr ýa-da Bitchat ulanyjysy bolup biler. Klassiki, plus uýgunlyk gaby

Üçünji setiri dördünji setire birleşdirmek hakyky ýitgi bolardy. Açarsyz bildiriş — bu ugradýan tarapyň Nymchat ulanýandygyny tassyklaýan gol çekilen beýannamadyr, bu bolsa ugratma ýoluna, tanyşdyryp bilmeýän islendik ugradylýan üçin goşmaly boljak çaklama esasly protokollarara aralykly oýalamagy (wrap) geçip geçmäge mümkinçilik berýär.

4.2 Köki açyp bilmeýän enjam dymyk galýar.

Habarlaşyk çalşylýar: her bir şahsyýet üçin bir waka, iň soňky ýazgy ýeňiş gazanýar. Bu bolsa ýeke-täk ýazgy dizaýnynyň işlemegini üpjün edýär we şol bir wagtyň özünde, baglanyşykly däl enjabyň paýlaşmagy ony howply edýär. Özüniň döreden açaryny habar edýän enjap, hakyky ýazgyny pozar we ähli ugurdaşlary beýleki enjaplaryň açyp bilmeýän açar bilen şifrlemä ugar darar.

Şeýlelikde, köki bardygyny bilýän, ýöne ony açyp bilmeýän enjam hiç hili yglanama bermeýär. Ol bozulmady we programma bloklanmady: ol açary bolan ähli habarlary okap durýar we ýene-de klassiki usulda ugradýar, şol bir wagtyň özünde bolsa ulanyjydan ony birikdirmegi soraýar. Şahsyýetiň adyndan gepläp bilmeýän enjam üçin dymmak — dogry özüňi alyp baryşdyr.

5Keşp we ugratmak baradaky karar

Klientler kärdeşleriň açarlaryny iki usul bilen öwrenýärler. Dowamly abonentlik ulanyjy hakykatdan hem aragatnaşyk saklaýan adamlary — açyk söhbetdeşlikleri we toparyň agzalaryny — öz içine alýar, şonuň üçin olaryň habarlary adaty wakalar hökmünde gelýär. Ilkinji gezek duş gelinen kärdeş üçin, ugratmak wagtynda 2,5 sekunt bilen çäklenýän bir gezeklik sorag işledilýär; eger ol netijelenmese, habar klassiki usulda ugradylýar, bu bolsa täze säwlik görnüşi däl-de, kwantdan soňky tehnologiýa goşulmazdan öň bar bolan işjeňlikdir.

Negatiw netije ebedi däl-de, on minutlyk wagt üçin keşpleýnir. Täze enjam birleşdirýän ýa-da brauzer goşundasy arkaly girişden lokal açara geçýän ulanyjy söhbetdeşligiň ortasynda post-kwantum ukyplaryna eýe bolýar we hemişelik keşplenen “ýok” jogaby olary habarlandyryşyň dowamynda klassiki şifrleme derejesinde saklap biler.

5.1 Näme üçin peseltme hüjümi ýok

Marshrutlaşdyryş karary bir sany soraga düşýär:

pq = (we hold a signed, unexpired ML-KEM key for this recipient)

Ukyplyklaryň gepleşigi, goldanylýan algoritmleriň sanawy we hüjüm edijiniň has gowşak ýoly mejmurlap ulanmak üçin arassalap biljek hiç hili meýdançasy ýok. Habarlandyryşy saklamakda. bolup durýar gepleşikler we ol gol çekildi. Maglumatlary aýrylan ýa-da saklanylan habaryň nädogry işleýiş görnüşi, gibrid habaryň galbak edip boljak bir zada düşürilmegine däl-de, eýsem habaryň klassiki görnüşe — bu funksiýadan öňki häzirki ýagdaýa — öwrülmegidir.

Tersi hem dogry we has möhüm: müşderi garyşyk ugradýar diňe açary saklan wagtynda, we açaryň saklanmagy alyjynyň ony açyp bilýändiginiň subutnamasydyr. Habary kwantdan soňky döwürde ony okap bilmeýän adama iberilýän hiç hili ýagdaý ýokdur.

6Gibrid gurluşyk

Nymchat NIP-44-niň ornuny tutmaýar. Ol ony gurşap alýar. Üýtgedilmedik NIP-44 şifrany (ciphertext) içki gatlakdyr, ML-KEM bolsa onuň töweregindäki daşky AEAD-ydyr:

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)

Habary okamak üçin ikileginiň hem yzyna gaýtarylmagy gerek: daşky gatlak diňe NIP-44 şifrlenen tekstini berýär we ony açmak üçin klassiki ECDH talap edilýär. secp256k1-i döwýän kwant garşydaşy içki açary alýar, emma henizem ML-KEM bilen ýüzbe-ýüz bolýar; ML-KEM-iň döwülmegi bolsa daşky gatlagy aýyrýar we NIP-44-i sapaly galdyrýar. Her bir giriş öz ornuna mynasyp:

Inkapsulýasiýa her habar üçin täzeden amala aşyrylýar. Alyjynyň ML-KEM açary uzak möhletlidir, emma her bir habar garaşsyz şifrlenen tekst we şonuň üçin garaşsyz kem_ss. Bu bolsa, nonce-y randomizasiýa etmegiň däl-de, ony deriw etmegi dogry edýän zatdyr: ChaCha20-Poly1305 (key, nonce) jübütini gaýtadan ulanmak arkaly döwülýär, bu ýerde bolsa her habar üçin açaryň özi täze bolansoň, hiç bir jübüt gaýtalanyp bilmez.

6.1 Gatlaklaryň näme üçin aýry galýandygy

Alternatidanyň biri — ikisini hem syra garyşdyryp, ýeke-täk söhbetdeşlik açaryny döretmek we ony NIP-44-e bermekdir:

ck = HKDF-Extract(salt = "…",
                  IKM  = ecdh_x || kem_ss || …)          // do not do this

Ol kriptografiýa taýdan ygtybarly gurluşdyr. Onuň bir struktural meselesi bar: oňa ... gerek ecdh_x, ECDH netijesiniň çig x-koordinatasy, açar material hökmünde — we brauzer goşundysy (NIP-07) ýa-da masofawy gol çekiji (NIP-46) hiç wagt şol bahany bermeýär. Ol çagyryjynyň adyna NIP-44 amalyýetini ýerine ýetirýär we şifrlenen tekst gaýtaryp berýär, bu bolsa açary programmanyň ýetip bilmeýän ýerinde saklamagyň esasy maksadydyr.

Siriýleri garyşdyrmak şonuň üçin şahsyýet açaryny imzalajyda saklaýan ähli girişi çykaryp taşlaýar, bu bolsa iň seresaply ulanyjylary aňlatmakdyr we açary almagyň (key derivation) hiç hili usuly muny üýtgedip bilmez. Gatlamalar baglylygy aýyrýar: NIP-44 bitin galýar we imşaýet açary saklaýan islendik zat, şol sanda imzalajy hem, tarapyndan döredilýär, KEM bölegi bolsa müşderiniň gönüden-göni elinde saklaýan dikeltme kody esasynda hasaplanýar. Imzalajy girişleri iki taraplaýyn hem adaty post-kvant gatnaşyjylarydyr.

Bahasy bitiriji giňişligidir we ol az däldir. ML-KEM şifrany 1,088 baýt bolup, her habaryň bilen bilelikde gidýär we base64url formatynda 1,451 simwola öwrülýär; daşky AEAD 16 baýtlyk Poly1305 tag-yny goşýar we öz içine alýan NIP-44 peýdalanyş maglumatyny üçden bir bölege köpeldýär. 50 simwoly habar 176 baýtdan 1,712 baýta, 2,000 simwoly habar bolsa 2,820 baýtdan 5,238 baýta ulalýar. Habaryň näderejede gysga bolmagyndan garamazdan, her habar üçin minimum möçber takmynan 1,5 KB bolup, bu bolsa umumy gizlinligi gaýtadan ulanmak deregine, her gezek täzeden enkapsulýasiýa etmekdir.

6.2 Öz-özüni beýan edýän maglumatlar

Şol pq2. Prefiks basgançakly orçalylygy üpjün edýär: ol özüni beýan edýär, şonuň üçin klient tegi ynanmak ýa-da kärdeşiniň nämäni goldaýandygyny ýatda saklamak deregine, peýdalanýan maglumaty (payload) barlap, şifrany açmagyň ýoluny saýlaýar. Prefiksi tanamaýan okajy ony ýalňyş okamak deregine, şol maglumaty açyp bilmeýär we her iki tarap hem post-kwant tehnologiýasyna geçmezden ozal şifrlenen habarlar, hiç hili migrasiýasyz, adaty NIP-44 hökmünde okap bolýan bolup galýar.

Gizlin kabul etmezlik

ML-KEM dekapsulasyýasy hiç wagt ýalňyşmaly däl diýlip taslanypdyr: nädogry şifranyň berlen ýagdaýynda, Fujisaki-Okamoto transformasiýasy ýalňyşlyk däl-de, deterministik pseudo-random gizlin maglumaty gaýtaryp berýär. Şonuň üçin, nädogry açar KEM gatlagynda hiç wagt görünmeýär — ol NIP-44 içindäki HMAC ýalňyşlygy hökmünde görünýär, bu bolsa adaty nädogry açaryň görünme ýoluna meňzeşdir. Çağyryjylar ikisini hem birmeňzeş kabul edýärler, şonuň üçin ýalňyşlyk tapawutlandyryjy signal bermeýär. Bu, şol bir wagtyň özünde, 9.1-nji bölümdäki dalaşgäri sanawyň işjeň bolmagyny üpjün edýär: klient her bir açaryňlaryň biri-biri yzly-yzyna synap görýär we NIP-44-niň haýsysynyň dogrydygyny aýtmagyna mümkinçilik berýär.

6.3 Hediýe kagyzynyň iki gatlagy hem

A NIP-17 Şahsy habar bir... NIP-59 sowgat gaplama: gol çekilmedik habar, ugradýan tarapyň şahsyýet açary (görnüşi 13) astynda möhürlenen, soňra bolsa her habar üçin döredilen wagtlaýyn açaryň (görnüşi 1059) astynda gaplanan. Şahsyýet açaryny göni saklaýan agzalykda, Nymchat her biri öz inkapsulýasiýasy bolan iki gatlagy hem garyşdyrýar.

A hybrid NIP-59 gift wrap: the rumor sealed under the sender's key, that seal wrapped under a per-message ephemeral key, both layers carrying a NIP-44 ciphertext inside a post-quantum AEAD. kind 1059 — wrap  ·  signed by a per-message ephemeral key content = pq2.<kem_ct>.<aead>   inner = NIP-44(eph, recip)   outer key = ML-KEM(recip) kind 13 — seal  ·  signed by the sender's identity key content = pq2.<kem_ct>.<aead>   inner = NIP-44(sender, recip)   outer key = ML-KEM(recip) rumor — unsigned the message: kind, content, tags, author pubkey unsigned on purpose — a signature would be portable proof
Iki şifrleme gatlagy hem hibrid bolup, her biri garaşsyz ML-KEM enkapsulýasiýasyna eýedir. Daşky gatlak bir gezeklik gizlin açar bilen baglanyşykly, şonuň üçin gabyk ugradýan tarapy açyga çykarmaýar.

Imza goýýan ulanyjy diňe daşky gatlagy alýar. Möhür imza goýýan tarap tarapyndan adaty NIP-44 hökmünde döredilýär — programma ony döredýän açary hiç wagt görmeýär — şonuň üçin ony şol ýerde hibridleşdirip bolmaýar. Bu göz öňünde tutulýan hüjüme garşy hiç hili netije bermeýär: möhüri diňe gabyk (wrap) arkaly tapyp bolýar we gabyk ýazgy ediji tarapyndan saklanýan zatdyr. Ýazgy edilen trafikde bolan duşman möhür hüjüm üçin görünmezden ozal ML-KEM-i döwmelidir.

7Topar habarlary we bölekleýin örtüji

Topar habary bir şifranyň teksti däl. Ol her bir agza üçin ýaýradylan şol bir açyk tekstdir we her bir nusga şol agzanyň öz ML-KEM açaryna inkapsulirlenen bolýar. Açary çap eden agza gibrid wrap alýar; açary çap etmedik bolsa klassiki wrap alýar.

Bu, ýönekeý amala aşyryş tarapyndan ýalňyş hasaplanýan hasapçylyk meselesini döredýär. Eger on agzanyň sekizi gibrid nusga alsa, habar şudur: däl on birinden sekizi goragly. Garşydaş ähli onlukda birmeňzeş bolan açyk tekstiniň bir klassiki nusgasyna mätäç, şonuň üçin habar diňe... hersi nusga...

Şonuň üçin Nymchat fan-out döwründe her hat üçin täminlenişi yzarlaýar — san diňe gatlaklar döredilýän wagtynda bilinip bilner — we belgiçe hatyň goralanlygyny iddia etmek deregine "10 agzadan 8-ine kwant durnukly" diýip görkezýär. San bolmasa, bu bir Alyndy toparlaýyn habar (diňe ugradýan tarap ýaýrylmagy hasaplaýar), interfeýs doly gorag däl-de, bölekleýin goragy görkezýär. Diňe öz nusgasynyň esasynda doly gorag bar diýip iddia etmek, habaryň umumy ýagdaýy barada artykmaç baha bermek bolar.

7.1 Gorag nämäni hasabat edýär

Galkan ... barada hakykaty aýdýar habar, ony ugradan programma barada däl:

Karar, habar möhürlenilen wagty bellenýär, ony soňrak bir tarapyň bildirýän maglumatlaryndan gaýtadan hasaplamak däl. Eýýäm bar bolan şifrlenen tekst öňki ýagdaýyndan has gowy goralyp bilmez we täze habar esasynda köne habarlary gaýtadan çyzýan interfeýs, releýdäki baýtlar barada ýalňyş maglumat beripdir.

Ýokardaky topar düzgünleri munuň ornuny tutman, eýsem munuň üstüne goşulýar: topar habary diňe her bir agzanyň nusgasy goralan bolanda doly goralan hasaplanýar, gorag sanawy bolmadyk kabul edilen topar habary bolsa "ýarym" diýlip görkezilýär.

8Özüňize alamatlandyrylan nusgalar

Klient tarapyndan saklanýan birnäçe zat ulanyjynyň öz şahsyýetine şifrelenýär: senkronizirlenen sazlamalar, söhbetdeşlik sanawy, toparlaýyn açarlar we habar arhiwi. Bular ulanyjy barada köp sanly aýry habarlardan has köp maglumat saklaýar, şonuň üçin, habarlaryň özi näderejede ünsli şifrelenenliginden garamazdan, olary klassiki görnüşde goýmak, olary iň gowşak saklanýan artefakt edip biler. Olar ulanyjynyň öz kök açaryndan gelip çykýan açaryna sarp edilen şol bir gibrid usuly ulanýarlar — 3.2-nji bölümde beýan edilen bir ýeke-täk istisna bilen, ... nymchat-pq-root diňe özüniň döredip bilýän açary bilen möhürlenip bilinmeýän kategoriýanyň özi.

Bu artektylar dizaýnyň iň möhüm bolan ýeridir. Sazlamalar toplumy ýa-da arhiw setiri ýyllar boýy bir ýerde durýar, bu bolsa "häzir ýygna, soňra deşifre et" strategiýasyny ulanýan garşydaşlaryň ýygnaýan zatlarynyň edil şol görnüşidir — bu islendik bir habardan has köp, sebäbi habar azyndan ulanyjynyň öz aklynda wagtlaýyn häsiýete eýedir.

Bu ýerde formaty açar däl-de, bir çäklendirme kesgitleýär. Öz-özüne salgylanan nusga ... tarapyndan okalyp bilinmelidir. hersi hasapda duran enjam, şonuň üçin her bir enjam öz bildirişinde getirilen sanawda näme açyp biljekdigini bildirýär we hasap diňe olaryň hemmesi okap biljek zatlary ýazýar. Başga zady ýazmak enjamy öz sazlamalaryndan bloklaýar — 3.2-nji bölüm başga usullar we başga tarapdan gelip, şol bir gizlin säwligi öňläp geçýär.

Aýdylmaga degýän çäk

Şahsyýeti saklaýan, ýöne köki saklamaýan enjam, öz sazlamalaryny hem öz içine alyp, kökden gelýän açar bilen bellenen hiç zatyny açyp bilmeýär. Bu ünsden çykarylan säwlik däl-de, bilýänleýin netije bolup, şonuň üçin hem 3.3-nji bölümde täze kök döretmek deregine birikdirmek üçin şeýle enjam bildirişi bar: ikinji kök maglumat toplumyny (blob) okalýan etmez, ol diňe şahsyýetiň açar materialyny iki bölege böler. Ulanyjy ony birikdirýänçä, enjam işlemegini dowam etdirýär — ol diňe açarlary bolan zatlary okap we adaty usulda ugradyp durýar.

Brauzer goşundysyny dolandyrýan enjam ýa-da uzak aralykdaky golýazgyjy (NIP-46) derileşdirmek üçin hiç hili nsec-e eýe däl, ýöne ol dikeltme kodyny saklaýar we 6.1-nji bölümiň gatlakly gurluşyna görä, bu post-kwant ýarym tarap üçin ähli zerurlykdyr: golýazgyjy elmydama edişi ýaly NIP-44 gatlagyny döredýär, mijen bolsa daşky gatlagy özbaşdak açýar. Şeýle giriş her iki ugra hem adaty gatnaşyjydyr.

9Aýlanma

Şol epoch Derivasiýadaky sanajy, täze açar materiallaryny ulanmazdan rotasiýany mümkin edýän zadyň özüdir. Ony artdyrmak şol bir kökten täze açar jübütini we gaýtadan çap edilen yglanyşy döredýär; peers täze açary çalşylýan ýazgydan alýarlar. Şonuň üçin rotasiýa ulanyjydan islendik zady ikinji gezek ýazmagy talap etmeýär: kök her bir şahsyýet üçin bir gezek döredilýär we epoka aýlanmagy amala aşyrýar.

9.1 Köne epohalar saklanýar we hiç zat gaýtadan şifrellenmeýär

Açar aýlananda hiç zat täzeden ýazylmaýar. Klient häzirki epokadan -3 epoka çenli dekriptleşdirme nusgalaryny taýýarlaýar, şonuň üçin aýlanmadan gysga wagt öň möhürlenen habar, ol iberlen wagty haýsy açar jübütiniň işjeň bolsa, şol açar jübütiniň kömegi bilen henizem açylýar.

Şol wagt aralygy rotasiýanyň hiç hili howpsuz bolmagyny üpjün edýär: oňa eýe bolmasa, her bir rotasiýa prosesiň dowamynda bolan ähli zatlary ulanyp bolmaýan ýagdaýa salardy. Eýýäm möhürlenen ähli zatlar şol identifikasiýanyň ömri dowamynda okap bolýan bolup galýar, sebäbi ulanyjynyň açyp bilmeýän habary, goragy yza seredip gowulandyryp bolmaýan habardan has erbetdir (10.5-nji bölüm).

10Bu nämäni goramaýar?

Diňe dizaýnyň gazanýan netijelerini sanap görkezýän makala ulgamy beýan edýän däl, interfeýsdäki howpsuzlyk häsiýetini aşa ulaltmak bolsa ony sanawa almazlykdan hem erbetdir. Aşakdakylar bu gurluşyň goraýan çägine girmeýär.

10.1 Köki ikinji bir syrdyr we ony ýitirmek dikeldip bolmaýar.

Bu dizaýnyň hakyky bahasydyr. 2-nji bölümde ulanyjynyň saklamaly takyk bir zady bolmaly diýen çäklendirme berlip bilinmeýär: nsec diňe bir post-kwant açaryny täzeden gurup bilmez, sebäbi esasy maksat — hiç hili açyk gymmatlyk ýa-da başga hiç hili syr ony açyp bilmezligidir. Eger hiç bir enjam kök (root) açaryny saklamasa we 3.2-nji bölümdäki gurşawlar (wraps) açylyp bilinmese, kökden gelip çykýan açara berkidilen maglumatlar dikeldip bolmajakdyr. Bu ýerde escrow ýok we bilenligine ony saklap biljek hiç hili edara hem ýok.

Golgay geçirme ýeke-täk ýol bolsa, bu ilkinji okalanda duýulandan has ýiti. Hiç wagt ... göçürmeýän ulanyjy nympq1… code anywhere onuň diňe bir nusgasy, bir enjamda bar we şol enjamy ýitirmek oňa möhürlenen her bir post-kwant habaryny, sazlama toplumyny we arhiw setirini ýitirmekdir. Şol nsec kömek etmeýär; ähli dizaýn şol häsiýete esaslanýar.

Soňradan goşulan islendik paketlenen ýol hem el bilen döredilen ýol ýaly şol bir talaby ýerine ýetirmelidir. Hüjüm ediji elýeterli iň arzan ýola hüjüm edýär, şonuň üçin usulyň gymmaty onuň iň gowşak dikeltme ýolunyň gymmatyna deňdir — mysal üçin, ýatda saklap bolýan bir parol, ähli ulgamyň gymmatyny şol parolyň gymmatyna deň derejä düşürer, paketlenen setir bolsa "häzir ýygna, soňra dekript et" strategiyasy bilen hereket edýän hüjüm edijiniň rahat wagtynda oflain rejimde ýygnaýan we işleýän nesnedir.

10.2 Awtentifikasiýa, gizlinlikden tapawutlylykda

Nostr-daky her bir gol çekiş secp256k1 üstündäki Schnorr bolup, bu ýerde hem üýtgedilmändir. Kwant kompýuteri bolan duşman gol çekişleri ýalanyndan ýasap we ulanyjynyň adyndan real wagtda hereket edip biler. Gibrid açar çalşyşyň ýeňip geçýän zady "häzir ýygna-soňra deşifre et" (harvest-now-decrypt-later) usulydyr: şu günki trafigi ýazyp alýan hüjümçi ony soňra okap bilmez. Bu bolsa eýýäm şol enjamy bolan duşmana garşy habary ýalanyndan ýasap bolmazlyga öwürmeýär. Bu tapawut maksatly görnüşde programmalara degişli edilýär — kilit (padlock) görkezijisi autentifikasiýany, galkan bolsa gizlinligi (confidentiality) habarlaýar we olar aýry-aýry simwollar bolup durýarlar, sebäbi habaryň biriniň bolup, beýlekisiniň bolmazlygy mümkindir.

Ol şeýle hem 4-nji bölümde duýduryşyň nämäni wada berip biljekdigini çäkleýär. npub we ML-KEM açarynyň arasyndaky baglanyşyk secp256k1 golundyr, şonuň üçin şol golundary ýalňyş döredip bilýän duşman öz açaryny çalşyp biler. Geljekdäki duşmana garşy gizlinlik, duşmana garşy hakykylyk bilen bir zat däl.

10.3 Metadata

Sowgat gaplamak ugradýan adamy gizleýär, alyjyny bolsa bir... p içki habaryň tegi, görnüşi we wagt belgisi. Ol wakanyň bardygyny, onuň ölçegini ýa-da relay ony haçan kabul edenini gizlemeýär. Bu taslamanyň hiç bir bölegi trafik seljermesine seretmeýär.

10.4 Oflaýn mesh

Nymchat-yň Bluetooth mesh transporty özbaşdak handshake-ly aýry bir protokoldur we ol bu işe degişli däldir. Mesh arkaly iberilýän habarlar klassiki dädir.

10.5 äýýäm iberilen habar

Iki tarapyň biri hem entek klassiki bolan wagty ýazgy edilen şifrlenen maglumat hemişelik klassiki bolup galýar. Ol eýýäm bar we ony täzeden şifrlemek mümkin däl. Gorag funksiýanyň işe girizilen pursadyndan däl-de, iki tarapyň hem kwantdan soňky açarlary bolan habar bilen başlanýar.

11Göz öňünde tutulan alternatiwalar

ÇemeleşmeNäme üçin bolmaz?
Post-kwant açaryny identifikasiýa açaryndan gelip çykaryň Red edildi. Derivasiýa nsec üstündäki açyk algoritmdyr we kwant duşmany çap edilen npub-dan nsec-ni dikeltýär, şonuň üçin klassiki ýarymy döwmek onuň bilen bilelikde post-kwant ýarymy hem elden berýär. Ol bu makaladaky ähli paýlaşdyryş meselelerini çözdi we hiç kime garşy goranmady. 3.1-nji bölüm.
Root-y NIP-44 arkaly ulanyjynyň beýleki enjamlaryna Ûgrat Dürli görnüşde bolsa-da, şol bir sebäp bilen ret edildi. Diňe klassiki şifrleme arkaly geçirilýän köki, şol habary ýazyp alan we soňra onuň açaryny çöken islendik kişi tarapyndan gaýtadan alyp bolýar, bu bolsa köki duruzmak üçin bar bolan garşydaşdyr.
Her bir enjamda aýratyn döredilen ML-KEM açar jübüt Red edildi. Enjamlar dürli dekapsulama açarlaryny saklar we her bir eýelik üçin bir çalşylýan bildiriş olaryň ählisini götermän biler. Deňeşýän taraplar iň soňky çap edilen haýsy açar bolsa, şoňa şifrälerler we beýleki ähli enjamlar netijäni okap bilmezler. 3.2-nji bölümdäki ýollar arkaly üýtgedilýän, her bir eýelik üçin bir kök bolmagy munuň öňüni alýar.
Köki PIN astynda dolalyň Ret edildi. Dolanylan setiri elinde saklaýan oflaýn hüjümçä garşy, dört belgili PIN takmynan 13 bitdir. Ony iki sany 256-bitlik ýol bilen deňeşdirip bermek, iň gowşak dolanjynyň güýjüni ýalňyş beýan eder.
Npub-y ikisini hem açary götermek üçin giňelt. 1,184 baýt paýlaşyp boljak identifikator däl we ol 32 baýt hökmünde kesgitlenen salgynyň bar bolan ähli Nostr klientleriniň analiz etmegini bozardy.
Esasy katalog hyzmaty Tor ... gaçmak üçin bar bolýan häkimiýeti täzeden getirýär. Gözlegden kim jogap berse, habary kim okap biljekdigine ol karar berýär.
Her habara açary goşuň Hiç zat çözmeýär: ugradýan tarapa ... gerek alyjynyň Ilkinji habardan öňki açar, bu bolsa ony daşamak üçin öňki habaryň hiç hili ýok bolan hut şol ýagdaýydyr.
Kanal içindäki ukyplylygyň ylalaşygy Düşürme zähmetini döredýär. Mümkinçilik belgisini aýyryp bilýän hüjüm ediji klassiki ýola mejbur edýär.
Diňe kwantdan soňky, klassiki bölegi ýok secp256k1-iň onlarýyllyklaryň dowamyndaky seljermesini has täze bir primitive bilen çalşyp taşlaýar. Hibrid diňe şu ýagdaýda başarýatsyz bolýar: ikisem başarısyzlyk.

12Amala aşyrmak deňligi

Nymchat bu gurluşyň iki sany garaşsyz realizasiýasyny hödürleýär — biri web programmasy üçin JavaScript-de, beýlekisi bolsa mobil programmalar üçin Dart-da, şol sanda noldan döredilen ML-KEM-768 porty hem bar. Birmeňzeş primitifiň iki sany realizasiýasy adatça töwekgelçilikdir, şonuň üçin olar utlaşjakdygyna ynanmak deregine, biri-biri bilen deňeşdirilip barlanylýar.

Dart ML-KEM implementasiýasy resmi garşysynda tassyklanylýar NIST ACVP ML-KEM-768 üçin bilinen jogap synaglary (ML-KEM-*-FIPS203) — 25 açar döretmek, 25 kapsulirleme we 10 dekapsulirleme ýagdaýy, öz toplumynyň içinde işledilýär. Bular NIST tarapyndan amala aşyrylýan programmany barlamak üçin çap edilýän wektorlardyr, şonuň üçin olaryň üstünden geçmek diňe bir iki klientiň biri-biri bilen ylalaşýandygyny däl-de, eýsem portuň dogrydygynyň subutnamasydyr. Ondan başga-da, umumy test wektorlarynyň guraly — tohum almagy, kapsulirleme, iki görnüşli peýdaly maglumat formatlary we doly paketleme — JavaScript nusgasyna görä döredilýär we oba iki test toplumynyň tarapyndan barlanýar. Kökli gizlinlik şol guraly çalşyrmak däl-de, ony giňeltmek üçin ulanylýar: kökden tohumga, kökden açar çyftyna, kökiň köpçülik barmak yzy we gelip çykan açar, nonce we daşky gatlagyň baglanyşykly maglumatlary özbaşdak wektorlardyr, şonuň üçin iki klient näme barada... nympq1… Kod habaryň bitirilýän baýtlaryny aňladýar ýa-da şol baýtlar baradadyr. Amala aşyryşlaryň islendik birindäki tapawut, beýleki klient açyp bilmeýän habary döretmegiň deregine, gurluşy (build) başarýatsyz edýär.

Bu aralaryň içinde barmak yzy agzalmaga mynasypdyr. Ol enjamy "bu meniň elimde bolan kökdir" we "bu başga biridir" diýip tapawutlandyrýan zatdyr; başga bir kliýentiniň barmak yzyny gaýtadan döredip bilmeýän kliýent, kämil ýazgyny hiç hili ýazgy däl ýaly okap biler — we soňra, 3.3-nji bölüme laýyklykda, ikinji köki döredip, kimligi bölüp biler. Ol hut şu sebäbi ýüzünden bir vektordur.

Nymchat - bu açyk çeşme AGPL-3.0 astynda. Bu ýerde beýan edilen kriptografik ýadro js/nym-crypto.js we js/modules/pq.js web klientda, we lib/core/crypto/ bilen lib/features/identity/pq_registry.dart mobil klientlerde.

Gysgaçak we tehniki däl düşündiriş üçin, serediň: Kvant durnukly şifrleme baradaky bilim binýady sahypasy.