Ugrás a tartalomhoz
Vissza a Nymchathoz

Tudásbázis Beszélgetés az emberekkel

Kvantumálló titkosítás

A Nymchat felhasználók közötti privát üzenetek és csoportos csevegések titkosíthatók hogy ezek ma rögzítése semmit sem vásárol a támadónak, még akkor sem, ha megérkeznek a kvantumszámítógépek.

A probléma, amit megold

Közönséges Nostr titkosítás - NIP-44, melyik mi privát üzeneteket és csoportos csevegéseket ráépülnek — két fele van. Az a fele valójában összekeveri a szöveget (ChaCha20, HMAC-SHA256, HKDF) jól bírja a kvantumokat számítógép. Az a fele, amelyik egyetért a kulcsban, nem.

Ez a legfontosabb megállapodás a Diffie-Hellman elliptikus görbe a secp256k1-en, ugyanaz a matematika, amelyet a Bitcoin használ. Shor algoritmusa egyenesen megoldja. Bárki, aki nyilvános kulccsal futtatja, visszaszerzi a privát kulcs, és vele együtt minden, a kulcs által valaha előállított megosztott titok.

Betakarítás most, dekódolás később

Ez nem olyan probléma, amely akkor kezdődik, amikor a kvantumszámítógépek megérkeznek. Egy ellenfél, akinek elég a tárhely titkosított forgalmat rögzíthet maüljön rá, és évekkel később dekódolja. Bármi, amit most elküld, és akkor még számít, már látható. Ez a konkrét támadás ezt a funkciót legyőzi.

Hogyan működik

A Nymchat teljesen egyedül hagyja a NIP-44-es üzenetformátumot. A kulcsmegállapodás, amelyet már használ, érintetlen; egy második, független hozzáadódik körülötte.

  • a szabvány secp256k1 ECDH, pontosan úgy, mint korábban;
  • ML-KEM-768, a posztkvantum algoritmus NIST szabványosított mint FIPS 203. Biztonsága rácsproblémákon nyugszik, amelyeket Shor algoritmusa nem érint.

A kettő az Összetett, nem vegyesAz üzenetet NIP-44-vel titkosítják, ahogy mindig is volt, és a befejezett titkosított szöveget ezután másodszor lezárják a poszt-kvantum rétegben – a ChaCha20-Poly1305-ben, az ML-KEM megosztott titkából.A küldő kulcsa, a címzett kulcsa, az encapsuláció titkosító szövege és a címzett ML-KEM kulcsa össze vannak kötve a származékba, mint kontextusba, így egy réteget nem lehet eltávolítani az egyik csereről, és újra lejátszani a másikra.

Egy kombinátor, mint például az X-Wing vagy a Signal PQXDH kever mindkét titkot egy kulcsba. A Nymchat nem, és az ok praktikus, nem pedig kriptográfiai: a keverésnek szüksége van a nyers ECDH kimenetre, és a böngészőbővítmény vagy a távoli aláíró soha nem adja vissza azt - egy kész titkosított szöveget ad vissza, ami a kulcs tartásának teljes pontja, ahol az alkalmazás nem érheti el.

A lényeges tulajdonság mindkét módon ugyanaz: az eredmény Legalább olyan erős, mint az erősebb feleAz üzenet olvasása azt jelenti, hogy átmegy mindkét rétegben.Ha a rácsos kriptográfia gyengébbnek bizonyul, mint amire számítottunk, az ML-KEM megszakítása csak a külső réteget vágja le, és a mai NIP-44-et hagyja alatta.Ha a secp256k1 egy kvantumszámítógépre esik, a belső réteg megnyílik, de a külső nem.

Minden üzenet friss kvantumcserét kap, így az egyik üzenet kulcsának visszaállítása felfedi semmit a többiekről.

A poszt-kvantum felének szüksége van egy saját kulcsra, és az, hogy honnan származik ez a kulcs, eldönti, hogy az egész dolog ért-e valamit. nem dolgozott ki a tiédből nsecEgy kvantumszámítógép, amely megszakítja a klasszikus felét, visszaállítja a nsec nyilvános kulccsal, és bármi, ami a nsec egy közzétett képlet jön ki vele – két zár nyílik egy szünet. így Nymchat generál külön Post-kvantum kód minden fiókra, egyszer, véletlenszerű bájtokból, amelyeket nem tár fel nyilvános érték. nympq1… A te oldaladon ülve nsec Ez nem egy jelszó, és nem egy második bejelentkezés: ez a kulcsfontosságú anyag, amit menthet, pontosan úgy, mint a nsec.

Nincs mit bekapcsolni

Ez nem beállítás. A kvantum utáni titkosítás egyszerűen az, ahogy a Nymchat beszél Nymchattal, a ugyanúgy a közönséges titkosítás is, ahogy minden mással beszél. Automatikusan vonatkozik minden privát üzenetet és csoportos csevegést egy másik Nymchat felhasználóval.

Beállítások › Adatvédelem & Biztonság azt mutatja, hogy aktív-e, és hogy jelenleg hány kapcsolatot ér el, de csak információként - nincs kapcsolás.

A böngészőbővítmény (NIP-07) vagy a távoli aláíró (NIP-46) bejelentkezése soha nem adja át a személyazonossági kulcsot az alkalmazáshoz, ami az egyik használatának teljes pontja - és nem kell. A titkosítás két felét elkülönítik: az aláíró elvégzi azt a részét, amit mindig tett, és az alkalmazás elvégzi a posztkvantum részét a helyreállítási kódjával, amelyet közvetlenül tart.

A történelem minden üzenete minden eszközön olvasható marad, csak a saját nsec, mint korábban, és így marad a számla életében. nympq1… A helyreállítási kód a kvantumrezisztens anyag, amelyet mostantól írok: új üzenetek, valamint a velük együtt utazó szinkronizált beállítások és archívumok.

Tehát egy eszköznek meg kell tartania ezt a kódot, mielőtt megnyithatná azokat, és egy eszköz hozzáadása most egy további lépést igényel. nympq1… Ez a lépés nem a súrlódás, amit nem tudtunk eltávolítani: egy kódot, amely önmagában érkezhet egy új eszközre, egy közönséges üzenetben kell utaznia, és ez az üzenet pontosan az, amit a támadó ez a funkció létezik, hogy megállítsa a rögzítést.

Az app generálja a nympq1… kódot az Ön számára, így nincs mit választani, és semmi kitalálni. látni: érintse meg a nym megnyitni Nym részletei megtekintése vagy szerkesztéseAztán Nyomja meg a nym privát kulcsát és helyreállítási kódjátközvetlenül az Ön alatti nsec, ugyanazzal a megjelenítési és másolási gombokkal. Soha nem kell gondolni rá, amíg nem ad hozzá egy második eszközt.

Egy nem összekapcsolt eszköz időközben nem záródik ki. Folytatja a régebbi titkosítás alatt írt dolgok olvasását, és továbbra is normálisan küld, és ha egyszer összekapcsolja, visszatér, és megnyitja a kvantumrezisztens üzeneteket, amelyeket korábban nem tudott olvasni.

A többi eszköz

A második eszköznek két dologra van szüksége: az alkalmazás aktuális verziójára és a nympq1… Egy régebbi build továbbra is működik - nem szakad le -, de nem tudja elolvasni az aktuális formátumot, így miközben még a fiókban van, a magának tartott másolatok visszatérnek a régebbihez, amit képes.

Kivel kapod meg

Mindkét félnek szüksége van rá. Minden Nymchat kliens egy kis aláírt, lejárt hirdetést tesz közzé, amely így szól, és magában foglalja a poszt-kvantum kulcsot, amikor van. Valakinek érvényes hirdetés tartása az, ami miatt az alkalmazás erősebb cserét használ velük. Nincs tárgyalás, amellyel beavatkozhat: a kulcs vagy ott van, vagy nincs, és mivel a hirdetést a szerzője írta alá, a helyettesített kulcsot inkább meg kell hamisítani, mint csak kiszolgálni.

Milyen támadó, aki irányítja a relét Lehet Ezért a küldő soha nem látja a kulcsot, és visszatér a szokásos titkosításra.Ezért érdemes egyértelműen kimondani.Ezekre az üzenetekre a post-kvantum védelem költségei vannak; nem teszi az egyiket olvashatatlanná, és nem teszi lehetővé, hogy elfogadjon egy olyan kulcsot, amely nem a tiéd.Az ügyfelek több relétet kérnek, így az elnyomása mindegyikük irányítását igényli.

Ezek a bejelentések egy hétig tartanak, és naponta frissítik magukat, miközben használja az alkalmazást. Ha hosszabb ideig távol van, akkor a lejár, és egy ideig normál Nostr ügyfélként olvashat: az Önnek ebben a szakadékban küldött üzeneteket a normál módon titkosítják, nem pedig a kvantum-ellenálló módon. Még mindig megérkeznek, és még mindig elolvashatja őket - és semmi, amit korábban kapott, nem érinti.

Mindenki más ugyanúgy dolgozik, mint korábban. Bitchat felhasználók és bármely más Nostr ügyfél kapnak szabványos NIP-17, változatlan. Semmi sem szakad meg, ha üzenetet küldesz valakinek a Nymchaton kívül.

Kvantum utáni üzenet helyettesíti a standard, ahelyett, hogy mellé küldenék. Mindkettő elküldése értelmetlen lenne: a támadó egyszerűen megtörné a gyengébb példányt.

A címzett másolatok te szerezze be azt is – amit a többi eszköze olvas, az mögötte lévő archívum, valamint a szinkronizált beállításai, amelyek ugyanúgy közlekednek, és hordozzák az Önt beszélgetéslista, a csoportkulcsok és az üzenetek előzményei. Bármelyiket a régiben hagyva a titkosítás a leggyengébb tárolt tárggyá tette volna őket: bárki számára olvasható lett volna, aki feltöri a mai kriptográfia, függetlenül attól, milyen gondosan lepecsételték le magukat az üzeneteket.

Olvasható marad a Bitchat számára

A Bitchat nem tudja elolvasni a Nymchat üzenetformátumát, ezért történetileg a Nymchat elküldte a második példányt minden üzenetet a Bitchat formátumában mindenkinek, aki esetleg használja – amely valakinek soha nem hallottál, mindenkire gondolt.

A fenti bejelentés szükségtelenné teszi ezt a találgatást. Ha valaki publikált, akkor az Nymchat futtatása, így a Bitchat példány eldobásra kerül, és csak az erősebb üzenet kerül elküldésre. Ha ők nem, semmi sem változott: továbbra is megkapják mindkét formátumot, pontosan úgy, mint korábban, tehát semmi olvashatatlanná válhat, mert az alkalmazás rosszul találta ki, hogy valaki melyik klienst használja.

Magához a titkosításhoz hasonlóan ez is automatikus, és nincs beállítása.

Miért nem csak a közéleti tevékenységből tippeltek

A Nymchat a nyilvános csatorna tevékenységéből következtethetne arra, hogy ki mit irányít, és észrevenné az emberek hamarabb. De ez a következtetés időnként téves, és tévedni itt azt jelenti üzenetet küld valakinek, az alkalmazás nem nyitható meg hiba és újrapróbálkozás nélkül. Egy megjelent a hirdetményt a szerzője írja alá, és nem hamisítható, ezért helyette azt használják.

Csoportos chatekben

A csoportos üzenetek már minden tag számára külön titkosítva vannak, így egy csoport mindkét típust keverheti szabadon – azok a tagok, akiknek kliensei támogatják, erősebb titkosítást kapnak, a többiek a titkosítást szabványos, és a csoport mindkét esetben normálisan működik.

Emiatt egy csoportüzenet csak akkor van kvantumrezisztensnek jelölve, ha minden tagja így fogadta. Ha akár egy példány is a szabványos cserét használta, az a példány ugyanazt hordozza üzenet, így az üzenet egésze csak annyira védett, mint a leggyengébb példánya. Az alkalmazás azt mondja "10-ből 8-ig kvantumellenálló", nem pedig felfelé kerekítés.

A csoportos csevegés is megtartja a sajátját forgó egyszeri gombok, amelyek elrejtik, hogy kik vannak egy csoportban bárkitől, aki közvetítést néz. Ez a védelem nem érinti, és pontosan úgy működik, ahogyan működött.

A jelvény olvasása

Minden privát üzenet és csoportüzenet egy kis pajzs Kattintson mindkét jelzésre, ami megmagyarázza, hogy mit mutat.

MarkJelentése
LakatKi küldte – hogy az aláírás megegyezik-e az igényelt szerzővel.
PajzsMindkét fél saját poszt-kvantum kódot tartott, és a hibrid csereprogramot használták az üzenet minden másolatához.
Szaggatott pajzsRészben kvantum-rezisztens – egy csoportüzenet, amelynek csak néhány tagja kapott védett példányt.Mivel a többiek ugyanazt a szöveget hordozzák, az üzenetet általában titkosítottnak kell tekinteni.
Átlátszó pajzsA szabványos NIP-44 titkosítás – még mindig end-to-end titkosítva, és még ma is olvashatatlan senkinek, csak a résztvevőknek.
Nincs pajzsNem titkosított üzenet.A nyilvános csatornák bejegyzései tervezés szerint olvashatók a továbbítón, így nincs titkosítási jelzés.

A pajzs mindig jelen van egy titkosított üzenetben, és egyértelműen azt mondja, amikor a válasz nem. A hiányzó jel kétértelmű lenne - ez ugyanúgy azt jelentheti, hogy “nem kvantum-ellenálló”, “ez a felépítés túl régi”, vagy “a mutató megszakadt” - és egy biztonsági mutató, amelyet nem lehet megkülönböztetni a megszakítottól, nem mond semmit.

A zár mellett ül, nem pedig helyettesíti, mert a kettő különböző kérdésekre válaszol, és egy üzenet lehet a másik nélkül - kvantum-ellenálló, de egy nem hitelesített feladótól, vagy ellenőrizve, de hagyományosan titkosítva.

Az idősebb üzenetek tartják tartósan a behatoló pajzsot. Bármi, amit mindkét fél a kvantum-rezisztens építés előtt küldött, a hagyományos csereprogrammal volt lezárva, és ez a titkosított szöveg már létezik a reléken - nem lehet újra lezárni a tény után.

Mit nem tesz

Ez megvédi a tartalmat üzenetei közül. Nem teszi minden részét Nostr kvantumbiztos, és érdemes pontosnak lenni a különbséget illetően.

  • Az aláírások továbbra is secp256k1. Nostr személyazonosság jele Schnorr a ugyanaz a görbe. Egy olyan ellenfél, akinek már volt működő kvantumszámítógépe, képes kovácsolni a valós időben írjon alá valakit, és adja ki magát valakinek. Amit a hibrid tőzsde leállít, az olvasás rögzített forgalom – titkosság, nem hitelesítés.
  • Nincs előretekintő titok. Mindkét kulcs hosszú élettartamú: a NIP-44 kulcsát a nsec, és a poszt-kvantum réteg befecskendezi az ML-KEM kulcsot a nympq1… Minden üzenet friss encapsulációt kap, így az egyik üzenet kulcsa nem nyitja meg a következőt - de aki végül megtartja ezeket a hosszú távú kulcsokat, mindent elolvashat, amit valaha rögzítettek, nem csak azt, ami utána jött. Lejárt üzenetek csökken, és ezért ez a funkció a betakarítás-most-decrypt-később, nem pedig egy kulcs, hogy kap.
  • A metaadatok változatlanok. A relé továbbra is látja, hogy az esemény címzettje volt kulcsot, és nagyjából mikor. Ezt kezeli ajándékcsomagolás és egyszeri kulcsok, nem által ezt.
  • A Bluetooth hálózat nem fedett. Egy üzenet, amit átvittünk A Mesh egy Noise XX ülésen belül utazik, amely erős, aktuális titkosítás, de klasszikus kulcscsere - így nem hordozza a poszt-kvantum réteget, még két Nymchat felhasználó között sem. A jelölés ezt tükrözi: a hálón keresztül szállított üzenet nem kvantum-ellenálló.
  • A helyreállítási kód egy második dolog, amit meg kell tartani. Ez kezdődik a nympq1 És meg fogod találni a A Nym részleteiUgyanabban a panelen, mint a nsec - érintse meg a nym, majd “Fedezze fel a nym privát kulcsát és a helyreállítási kódot”. nsec önmagában nem építi újra a poszt-kvantum kulcsot – pontosan ezért működik – tehát ha nincs eszköz, amely a kódot tartja, és nincs másolatod róla, amit lezártál, azt nem lehet újra megnyitni. nsec.
  • Nem tudja megvédeni azt, amit a másik oldal tesz. A címzett továbbra is készíthet képernyőképet, másoljon vagy őrizzen meg egy üzenetet.

Ez ugyanaz a helyzet, mint a Signal saját, kvantum utáni frissítésével: javítsa ki a kulcscserét most, mert ez az a rész, amelyen a támadó visszamenőleg intézkedhet, és az aláírásokat a külön probléma, amikor a szabványok felzárkóznak.

A munka ellenőrzése

Az ML-KEM végrehajtását tesztelik a hivatalos NIST vektorok tesztelése Azért FIPS 203A webalkalmazást és a mobilalkalmazást továbbá egy közös tesztvektor-készlethez tartják, ami garantálja, hogy az egyik által írt üzenetet a másik is el tudja olvasni.

Mindkettő nyílt forrás az AGPL-3.0 alatt, és a webalkalmazás építései reprodukálhatók – lásd összeállítás ellenőrzése.

Még mélyebbre megy: Post-Quantum kulcsmegállapodás a Nymchatben - egy technikai fehér könyv arról, hogy az ML-KEM kulcsot könyvtár nélkül hogyan osztják el, a két kulcscserét egyesítő pontos felépítésről és az elutasított mintákról.