Saltà à u cuntenutu
Torna à Nymchat

Base di cunniscenza Parlà cù a ghjente

Criptazione quantum-resistente

I missaghji privati ​​è i chats di gruppu trà l'utilizatori di Nymchat ponu esse criptati cusì chì l'arregistramentu oghje cumprà un attaccu nunda, ancu una volta chì l'urdinatori quantistici arrivanu.

U prublema chì risolve

Cifratura Nostr ordinaria - NIP-44, chì hè ciò chì missaghji privati è chats di gruppu sò custruiti nantu - hà dui mità. A mità chì in realtà scramble u testu (ChaCha20, HMAC-SHA256, HKDF) resiste bè contr'à un quantum urdinatore. A mità chì accunsente à a chjave ùn hè micca.

Ddu accordu chjave hè a curva ellittica Diffie-Hellman nantu à secp256k1, a stessa matematica chì Bitcoin usa. L'algoritmu di Shor risolve direttamente. Qualchidunu chì u corre contr'à una chjave publica ricuperà u chjave privata, è cun ella ogni sicretu spartutu chì a chjave mai prodotta.

Coglie avà, decifrate dopu

Questu ùn hè micca un prublema chì principia quandu l'urdinatori quantum arrivanu. Un avversariu cù abbastanza u almacenamentu pò arregistrà u trafficu criptatu oghje, siate nantu à ellu, è decifrallu anni dopu. Tuttu ciò chì mandate avà chì importa ancu allora hè digià espostu. Questu hè u specificu attaccà sta funziunalità scunfitta.

Cumu funziona

Nymchat lascia u formatu di messaggi NIP-44 interamente senza toccà. L'accordu di chjave chì u usa già hè senza toccà; un segundu, indipendente, si aghjunge quanhju à ellu. Quindi ci sò dui scambi di chjavi per messaggiu invece

  • u standard secp256k1 ECDH, esattamente cum'è prima;
  • ML-KEM-768, L'algoritmu post-quantum NIST standardizatu cum'è FIPS 203. A so sicurità si basa nantu à i prublemi di lattice, chì l'algoritmu di Shor ùn tocca micca.

I dui sò stratificatu, micca miscatuU messaghju hè criptatu cù u NIP-44 esattamente cum'ellu hè sempre statu, è quellu cifratu finitu hè dopu sigillatu una seconda volta in u stratu post-quanticu — ChaCha20-Poly1305, chjamatu da u secretu cumunitariu ML-KEM. A chìave di u mandante, a chìave di u ricevente, u cifratu di l'incapsulazione è a chìave ML-KEM di u ricevente sò ligati in quella derivazione cum'è cuntestu, cusì un stratu ùn pò micca esse ritagliatu da un scambiu è ripulatu nantu à un altru.

Un combinatore cum'è X-Wing o u PQXDH di Signal mischja invece dui segreti in una sola chiave. Nymchat ùn u fà micca, è a ragione hè pràttica più chì criptografica: a mischia hà bisognu di l'output ECDH primu, è una estensione di u browser o un firmatore remotu ùn u restituirà mai — ellu torna un testu cifratu finitu, chì hè u scopu tuttu di tene a chiave induve l'app ùn pò micca ghjungere. A stratificazione mantene u NIP-44 interu è produttu da quattosìunque tene a chiave d'identità, firmatore inclusu, cusì que chì login sò participanti ordinari invece di esse esclusi.

A propietà impurtante hè a stessa in dui modi: u risultatu hè almenu forti com'a a metà più forteLegge u messaghju significa passà à travers i dui strati. S'ellu a crittografia à reticolu si rivela più debole di ciò chì si sperava, rompe u ML-KEM sottra solu u stratu esternu è lascia u NIP-44 di ghjornu sottu. S'ellu u secp256k1 cade davanti à un computer quantic, u stratu internu si apre ma micca u stratu esternu. Un attaccante deve rompe dui.

Ogni missaghju riceve un novu scambiu post-quantum, cusì ricuperà a chjave di un missaghju revela nunda di l'altri.

A mità post-quantica hà bisognu di una so chiave, è d'onde vene quella chiave hè ciò chì decide s'ellu tutta a cosa vale quarchì cosa. Hè deliberatamente micca calculatu da vostru nsec. Un computer quanticu chì rompe a mità classica ritrova u vostru nsec da a vostra chìave pubblica, è tuttu ciò chì hè derivatu da u nsec per una formula pubblicata ne vene fora — duie serrature aperte da una sola rottura. Quindi Nymchat genera una separata codice post-quanticu per ogni contu, una volta, da byte aleatorji chì nisuna valura publica ùn espone. Si legge accussà nympq1… è si sitta accantu à a tua nsec in i detagli di u vostru Nym, rivelati è copiati in u stessu modu. ùn hè micca una parolla di passu nè un seconde accessu: hè materiale di chiave chì pudete salvà, esattamente cum'è u nsec.

Ùn ci hè nunda per accende

Questu ùn hè micca un paràmetru. L'encryption post-quantum hè simplicemente cumu Nymchat parla à Nymchat, u listessa manera a criptografia ordinaria hè cumu si parla à tuttu u restu. Si applica automaticamente à ogni missaghju privatu è chat di gruppu cù un altru utilizatore Nymchat.

Impostazioni › Privatzza è Sicurezza mostra s'è hè attivu è quanti di i vostri cuntatti chistu atteggi attualmente, ma solu cum'è informazione — ùn ci hè micca un interruttore.

Questu funziona in qualsiasi modu vi cunnettate. Un cunnessione via un'estensione di u navigatore (NIP-07) o un firmatore remotu (NIP-46) ùn consegna micca a vostra chìave d'identità à l'app, chì hè u scopu principale di l'usu di una — è ùn hè micca necessariu. E duie mità di a criptazione sò mantenute separate: u vostru firmatore fà a parte chì hà sempre fatte, è l'app fà a parte post-quantica cù u vostru codici di ricuperu, chì ella detiene direttamente. I cunnessioni cù l'estensione è u firmatore remotu sò participanti ordinari in dui direzioni. A linea di statu in l'Impostazioni dice ciò chì vi riguarda.

Nada di ciò chì avete hè afectatu. Ogni missaghju in a vostra storia resta liggibile nantu à ogni dispositivu cù nenti eccettu u vostru nsec, esattamente cumme prima, è resta accussu per a vita di u cuntu. Chì hà bisognu di u nympq1… u codice di ricuperu hè u materiale resistente à u quantum scrittu da ora in poi: i novi messaggi, è l'impostazioni sincronizati è l'archiviu chì viaggian cù elli.

Dunque un dispositivu deve tene quellu codice prima di pudè apre quelli, è aghjunghje un dispositivu richiede avà un passu extra. In u stessu pannellu nantu à u novu dispositivu incollate u nympq1… codice da un dispositivu chì l'ha già. hè una volta per dispositivu, micca una volta per ogni accessu. Stu passu ùn hè micca un impedimentu chì avemu fallitu à rimuovere: un codice chì puderia arrivà in un novu dispositivu da solu u deve viaggià lì in un messaggiu ordinariu, è quellu messaggiu hè esattamente ciò chì l'attaccante, chì sta funzione esiste per ferma, hè à registrà. Stu passu hè a ragione per chì a protezzione hè reale.

L'app genera u nympq1… codice per voi, dunque ùn c'è micca ch'à sceglie è micca ch'à inventà. Per vedèlu: tocca u vostru nym per apre. Vede o edità i dettagli di Nym, poi Rivelà a chìave privata è u codici di ricuperu di stu nym. Si trova direttamente sottu vostru nsec, cù i medesimi buttone di mostra è di copia. Ùn avete mai à pensà à isso finu à u ghjornu in chì aghjunghjate un sicundu dispusitivu.

Un dispositivu micca ligatu ùn hè micca blocatu trà u tempi. Ellu continua à legge tuttu ciò chì hè scrittu sottu à u vecchiu cifrazimentu è continua à mandà in modu normale, è una volta ligatu, torna indarrè è apre i missaghji resistenti à a quântica chì ùn pudeva micca legge prima. Nenti si perde ligatu tardi.

I vostri altri dispositivi

Un sicondu apparatu hà bisognu di dui cose: una versione attuale di l'app, è u nympq1… codice. Una versione più vecchia continua à funziona — ùn hè micca tagliata — ma ùn pò micca legge u formatu attuale, dunque mentre hè ancu nantu à u contu, e copie chì mantenete per voi tornanu à la versione vecchia chì pò legge. Un dispositivu aggiornatu chì ùn hè micca ancu ligatu legge a vostra storia vecchia è chjamà u codice. Nessun biri ùn pò dicene chì esiste, è per stu motivu chì questu hè un avvisu invece di una cosa chì detettemu per voi.

Cù quale l'avete

I dui lati u hanu bisognu. Ogni cliente Nymchat pubblica un picculu annunziu firmatu chì scade per dì questu, è include a so chjave post-quantica quandu n'havi una. Avè un annunziu validu per qualchissunu hè ciò chì fa ch'ellu app usi u scambiu più forte cù ellu. Ùn ci hè micca nisuna negoziazione da interferisce cù: o a chjave hè lì o ùn hè micca, è perchè l'annunziu hè firmatu da u so autore, una chjave sussustuita avaria da esse falsificata invece di esse solu servita.

Chì un attaccante chì cuntrolla un relay l'azzione hè quella di ritené l'annunziu, per chè u mandante ùn vede mai una chiave è torna à una chifratura ordinaria. Merita di dìlu chiaramente. Hè à u prezzu a protezzione post-quantica per quelli missaghji; ùn pò micca rendere un missaghju indiscifrabile, è ùn pò micca fà in modo chì accettiate una chiave chì ùn hè micca a vostra. I clienti chiedenu à diversi relay, dunque per supprimela hè necessariu di avè u cuntrollu di tutti.

Quelli annuncì duranu una simana è si rinfrescànu ogni ghjornu mentra usate l'app. S'è site fora per più tempu di quella, u vostru scade è si vi legge cum'è un client Nostr ordinariu per un tempu: i messaggi mandati à vostri in quella lacuna sò criptati in u modu normale invece di u modu resistente à u quantum. Arrivanu ancu chì, è pudete ancu leggeghjàli — è nenti di ciò chì avete ricevutu prima ùn hè afectatu. Apertura di l'app ripubblica u vostru annunziu, è a criptazione più forte riprende da sola. ùn c'è nenti da rifà.

Tutti l'altri continuanu à travaglià esattamente cum'è prima. Bitchat utilizatori è qualsiasi altru client Nostr ricevinu u standard NIP-17, senza cambiamenti. Niente si rompe quande mandate un messaghju à qualchedunu fora di Nymchat.

Un missaghju post-quantum rimpiazza u standard piuttostu chè esse mandatu à fiancu. L'invià i dui seria inutile: un attaccu solu romperà a copia più debule.

E copie indirizzate à tu uttene ancu - quellu chì leghje i vostri altri dispositi, u archiviu daretu à ellu, è i vostri paràmetri synced, chì viaghjanu u listessu modu è portanu u vostru lista di cunversazione, i vostri chjavi di gruppu è a storia di u vostru messagiu. Lascià qualcunu di quelli nantu à u vechju a criptografia li avaria fattu a cosa più debule chì guardate: leggibile da tutti quelli chì rompenu a criptografia di l'oghje, ùn importa micca quantu cura i missaghji stessi sò stati sigillati.

Resta leggibile da Bitchat

Bitchat ùn pò micca leghje u furmatu di missaghju di Nymchat, cusì storicamente Nymchat hà mandatu una seconda copia ogni missaghju in u formatu di Bitchat à tutti quelli chì puderanu aduprà - chì, per qualchissia ùn avete mai intesu parlà, significava tutti.

L'annunziu quì sopra rende chì l'invinzione ùn hè micca necessariu. Se qualchissia hà publicatu unu, sò running Nymchat, cusì a copia Bitchat hè abbandunata è solu u missaghju più forte hè mandatu. S'elli ùn anu micca, nunda hà cambiatu: ricevenu sempre i dui formati, esattamente cum'è prima, cusì nunda mandate pò diventà illeggibile perchè l'app hà indovinatu sbagliatu nantu à quale cliente usa qualchissia.

Cum'è a criptografia stessu, questu hè automaticu è ùn hà micca paràmetru.

Perchè micca solu indovinà da l'attività publica

Nymchat puderia inferisce quale hè chì gestisce ciò chì da l'attività di u canali publicu, è l'averia spot ghjente prima. Ma quella inferenza hè in ocasioni sbagliata, è esse sbagliatu quì significa mandendu à qualchissia un missaghju chì a so app ùn pò micca apre, senza errore è senza riprova. A publicatu L'annunziu hè firmatu da u so autore è ùn pò micca esse falsificati, per quessa hè adupratu invece.

In chats di gruppu

I missaghji di u gruppu sò digià criptati separatamente per ogni membru, cusì un gruppu pò mischjà i dui tipi liberamente - i membri chì i clienti supportanu uttene u criptu più forte, u restu uttene u unu standard, è u gruppu travaglia nurmalmente in ogni modu.

Per quessa, un missaghju di gruppu hè marcatu solu quantum-resistente quandu ogni membru ricevutu cusì. Se ancu una copia usava u scambiu standard, quella copia porta u listessu missaghju, cusì u missaghju in generale hè solu prutettu cum'è a so copia più debule. L'app dice "quantum-resistente à 8 di 10 membri" piuttostu cà rounding up.

I chats di gruppu mantenenu ancu i so chjavi rotanti una volta, chì piattanu quale hè in un gruppu da chiunque fighjulà un relay. Sta prutezzione ùn hè micca affettata è funziona esattamente cum'è.

Leghjendu u badge

Ogni messaghju privatu è ogni messaghju di gruppu porta un picculu scudu accantu à u luccu. Tocchendu una di e marche spiega ciò chì mostra.

MarcuSensu
LuttuQuale l'hà mandatu - se a firma currisponde à l'autore rivendicatu.
ScuduResistente à a quantica. Dui lati tenevan un codici post-quanticu propriu, è l'scambiu ibridu hè statu usatu per ogni copia di stu messaghju.
Scudu trattuPartialmente resistente à u quantu — un messaghju di gruppo di u quale solu alcuni membri anu ricevutu una copia prutetta. Siccomu li altri portanu u stessu testu, trattate u messaghju cum'è criptatu cunvenziunalmente in generale.
Scudu barratuÙn hè micca resistente à a quantica. Criptaghjettura standard NIP-44 — sempre criptata da capu à capu, è sempre indiscifrabile à quiconcua eccettu i participanti d'oghje.
Nisun scudoMicca un messaggiu criptatu. I post di i canali publici sò liggibili nantu à u relay per design, dunque ùn si applica nisun segnu di criptazione.

U scudu hè sempre presente nantu à un messaghju criptatu, è dice chiaramente quandu a risposta hè no. Una marca mancante saria ambigua — puderia equamente significà «micca resistente à u quantum», «questu versu hè troppo vecchiu», o «l'indicatore hè rottu» — è un indicatore di sicurezza chì ùn pò esse distinguutu da unu rottu ùn vi dice nente.

Ellu si trova accantu à u lucchetto invece di sostituìlu perchè i dui rispondu à dumande diverse, è un missaghju pò esse unu senza l'altru — resistente à u quantu ma da un mandante micca verificatu, o verificatu ma criptatu in modu cunvensionale.

I vecchi messaggi mantene u scudu barratu permanentemente. Tutte e cose mandate prima chì dui parti eranu nantu à una versione resistente à u quantu hè stata sigillata cù l'échange cunvincional, è quellu testu cifratu esiste digià nantu à i rilè — ùn pò esse sigillatu di novu dopu u fatte. Questu hè esattamente l'esposizione "raccoglie oghje - decifre dopu" chì l'aghjornamentu chiude d'avenidure, dunque u distintivu chì u mostra hè a risposta onesta invece di un difettu.

Chì ùn faci micca

Questu prutege u cuntenuti di i vostri missaghji. Ùn face micca ogni parte di Nostr quantum-proof, è vale a pena esse precisu nantu à a diffarenza.

  • Signature sò sempre secp256k1. Nostr identità signu cù Schnorr nantu à u a stessa curva. Un avversariu chì avia digià un computer quantum chì funziona puderia falsificà a firma è impersonate qualcunu in tempu reale. Ciò chì ferma u scambiu hibridu hè di leghje trafficu arregistratu - cunfidenziale, micca autentificazione.
  • Ùn c'è micca segretezza di marcia avanti. Dui chjavi sò à lunga durata: u NIP-44 deriva u so chjave da u vostru nsec, è u livellu post-quanticu incapsula à a chìave ML-KEM dietri a vostra nympq1… codice. Ogni messaggiu riceve una novella incapsulazione, tachì a chjave di un messaggiu ùn apre micca u successivu — ma chissia chì finisce per avè quesselli chjavi à longu termine pò legge tuttu ciò chì hà registratu, micca solu ciò chì hè venutu dopu. Hè ch è messaggi chì scadenu riduce, è per chì sta funzione hè mirata à u "raccolje avà è decripta dopu" invece chì à una chiave chì hè presa.
  • I metadati ùn sò micca cambiati. Un relay vede sempre chì un avvenimentu era indirizzatu una chjave, è circa quandu. Chì hè trattatu da imballaggio di rigalu è chiavi una volta, micca da questu.
  • U mesh Bluetooth ù hè copertu. Un messaghju trasportatu a rete si viaghja in una sessione Noise XX, chì hè un criptaghju forte è attuale ma un scambiu di chiavi classicu — dunque ùn porta micca u stratu post-quanticu, ancu trà dui utilizatori di Nymchat. U distintivu riflette questu: un missaghju mandatu per a rete mesh ùn hè micca marcatu cum'è resistente à u quanticu. Aggiungerà ciò lì significa cambià u handshake stessu, chì dui pariti avrinte di fà à u stessu momentu, senza nisun relay per ritornà è restendu leggibile da Bitchat.
  • U vostru codice di ricuperu hè una seconda cosa da cunservà. Cumencia cù nympq1 e u troverai in I dettagli di u vostru Nym, in u stessu pannellu chì u vostru nsec — tocca u vostru nym, poi “Rivelate a chiave privata è u codice di ricuperu di stu nym”. U vostru nsec da sola ùn ricostruisce micca a vostra chìave post-quantica — hè proprio per chì funziona — dunque se nisun dispositivu ùn tene quellu codice è micca avete una copia di ellu, ciò chì hè statu sigillatu cù ellu ùn pò micca esse riapertu. Micca c'è un reset è micca c'è nisun da dumandà. Salvatellu induve avete salvatu u vostru nsec.
  • Ùn pò micca prutegge ciò chì face l'altra parte. Un destinatariu pò sempre screenshot, cupià o mantene un missaghju.

Questa hè a stessa pusizioni chì Signal piglia cù u so propiu aghjurnamentu post-quantum: riparà u scambiu chjave avà, perchè hè a parte chì un attaccu pò agisce retroattivamente, è trattà e firme cum'è a prublema separata per quandu i normi ghjunghjenu.

Cuntrollà u travagliu

L'implementazione di ML-KEM hè pruvata contro l'uffiziale vettori di test NIST publica per FIPS 203, quindi hè verificatu contru u standard istessu invece chì solu contru ellu stessu. L'app web è l'app mobile sò ansimanamente sottesi à un set condivisu di vettori di test, chì hè ciò chì garantisce chì un messaghju scrittu da una possa esse lettu da l'altru.

Dii sò sorgente aperta sottu à l'AGPL-3.0, è e build di l'app web sò riproduttibili — vede verificate una custruzzione.

Andà più profondu : Accordu di chjave post-quantica in Nymchat — un documentu biancu tecnicu su cumu a chìave ML-KEM hè distribüita senza un direttoriu, a custruzzione esatta chì cumuna i dui scambi di chìave, è i design chì sònu stati rifiutati.