База на знаење Разговор со луѓе
Квантно отпорно шифрирање
Приватните пораки и групните разговори помеѓу корисниците на Nymchat може да се шифрираат така дека нивното снимање денес не му купува ништо на напаѓачот, дури и кога ќе пристигнат квантните компјутери.
Оваа страница е машински преведена за погодност. Англискиот оригинал е верзијата што се применува.
Проблемот што го решава
Обична Nostr енкрипција - НИП-44, што е што приватни пораки и групни разговори се изградени на — има две половини. Половина од тоа всушност го меша текстот (ChaCha20, HMAC-SHA256, HKDF) се држи добро во однос на квантната компјутер. Половина што се согласува за клучот не.
Тој клучен договор е Дифи-Хелман со елипсовидна крива на secp256k1, истата математика што ја користи Биткоин. Шоровиот алгоритам целосно го решава. Секој што ќе го користи против јавен клуч, го враќа приватен клуч, а со него и секоја заедничка тајна што тој клуч некогаш била произведена.
Ова не е проблем што започнува кога ќе пристигнат квантните компјутери. Противник со доволно складирањето може да снима шифриран сообраќај денес, седнете на него и дешифрирајте го години подоцна. Сè што ќе испратите сега и е важно тогаш е веќе откриено. Тоа е специфичното напад на оваа карактеристика порази.
Како функционира
Nymchat го остава форматот на пораки NIP-44 целосно сам. клучниот договор што веќе го користи е недопрено; вториот, независен еден е додаден околу него.
- стандардот secp256k1 ECDH, токму како порано;
- ML-KEM-768, пост-квантниот алгоритам NIST стандардизиран како FIPS 203. Неговата безбедност се потпира на решетки проблеми, кои Шоровиот алгоритам не ги допира.
Двете се Смешани, а не мешаниПораката е шифрирана со NIP-44 токму како што беше секогаш, а завршениот текст за шифрирање потоа е запечатен втор пат во пост-квантниот слој – ChaCha20-Poly1305, клучен од заедничката ML-KEM тајна. клучот на испраќачот, клучот на примачот, енкапсулацискиот текст за шифрирање и клучот ML-KEM на примачот се врзани во таа деривација како контекст, така што слојот не може да се подигне од една размена и да се репродуцира на друга.
Комбинерот како X-Wing или Signal's PQXDH ги меша двете тајни во еден клуч наместо тоа. Nymchat не го прави тоа, а причината е практична наместо криптографска: мешањето има потреба од суров ECDH излез, а проширувањето на прелистувачот или далечинскиот потписник никогаш нема да го предаде тоа назад - враќа завршен текст за шифрирање, што е целата точка на држење на клучот каде што апликацијата не може да го достигне.
Важна сопственост е иста на секој начин: резултатот е Барем толку силна како силната половинаАко криптографијата на решетката се покаже дека е послаба од очекуваното, кршењето на ML-KEM само го брише надворешниот слој и го остава денешниот NIP-44 под него.
Секоја порака добива нова пост-квантна размена, па откривањето на клучот на една порака ништо за другите.
Пост-квантната половина има потреба од свој клуч, и од каде доаѓа тој клуч е она што одлучува дали целата работа вреди нешто. не Работеше од твоето nsecКвантниот компјутер кој ја крши класичната половина го враќа вашиот
nsec од вашиот јавен клуч, и сè што произлегува од nsec со објавена формула излегува со тоа - две брави се отвораат со еден пауза. Пост-квантниот код за секоја сметка, еднаш, од случајни бајтови кои нема јавна вредност. nympq1… Седи покрај тебе nsec Тоа не е лозинка и не е второ пријавување: тоа е клучен материјал што можете да го зачувате, исто како и nsec.
Нема што да се вклучи
Ова не е поставка. Постквантното шифрирање е едноставно како Nymchat разговара со Nymchat, на на ист начин обичното шифрирање е како зборува со сè друго. Се применува автоматски на секоја приватна порака и групен разговор со друг корисник на Nymchat.
Поставките › Приватност & Безбедност покажува дали е активна и колку од вашите контакти во моментов достигнува, но само како информации - не постои прекинувач.
Ова функционира без оглед на начинот на кој се најавувате. Пријавувањето со проширување на прелистувачот (NIP-07) или на далечен потписник (NIP-46) никогаш не го пренесува вашиот клуч за идентитет на апликацијата, што е целата точка на користење на еден - и тоа не мора да се направи. Двете половини на енкрипцијата се чуваат одделно: вашиот потписник го прави делот што секогаш го направил, а апликацијата го прави пост-квантниот дел со вашиот код за опоравување, кој го држи директно.
Секоја порака во вашата историја останува читлива на секој уред со ништо освен вашиот nsec, исто како и порано, и останува на тој начин за животот на сметката. nympq1… Кодот за враќање е квантно отпорен материјал напишан од сега натаму: нови пораки, и синхронизираните поставки и архивите кои патуваат со нив.
Значи, уредот мора да го задржи тој код пред да може да ги отвори, а додавањето на уредот сега бара уште еден чекор. nympq1…
Кодот од уред кој веќе го има. Тоа е еднаш по уред, а не еднаш по пријавување. Овој чекор не е триење што не успеавме да го отстраниме: код кој би можел да пристигне на нов уред сам ќе мора да патува таму во обична порака, и таа порака е токму она што напаѓачот оваа функција постои за да престане да снима.
Апликацијата го генерира nympq1… код за вас, така што нема ништо да се избере и ништо да се измисли. Преглед или уредување на детали на NymПотоа
Откријте го приватниот клуч и кодот за враќањеСеди директно под вашиот nsec, со истите копчиња за прикажување и копирање. Никогаш не мора да размислувате за тоа до денот кога ќе додадете втор уред.
Во меѓувреме, неповрзан уред не е исклучен. Тој продолжува да чита сè што е напишано под постарото шифрирање и продолжува да испраќа нормално, а откако ќе го поврзете, тој се враќа и ги отвора квантните пораки кои претходно не можеле да ги прочитаат.
На вториот уред му се потребни две работи: тековната верзија на апликацијата и
nympq1… Постариот build продолжува да работи – не е исклучен – но не може да го прочита тековниот формат, па додека сеуште е на сметката, копиите што ги чувате за себе паѓаат назад на постариот што може.
Со кого го добивате
И двете страни имаат потреба од тоа. Секој клиент на Nymchat објавува мала потпишана, истекување на објавата велејќи дека тоа, и вклучува својот пост-квантен клуч кога има еден. Држење на валидна објава за некој е она што ја прави апликацијата користи посилна размена со нив. Нема преговори да се меша: или клучот е таму или не е, и бидејќи објавата е потпишана од нејзиниот автор, заменскиот клуч ќе мора да се фалсификува наместо само да се служи.
Кој напаѓач контролира реле може тоа е задржување на најавата, така што испраќачот никогаш не гледа клуч и се враќа на вообичаеното шифрирање. Тоа е вреди да се каже јасно. Тоа чини пост-квантна заштита за тие пораки; тоа не може да направи еден нечитлив, и тоа не може да ве натера да прифатите клуч кој не е твој.
Овие соопштенија траат една недела и се освежуваат секојдневно додека ја користите апликацијата.Ако сте далеку подолго од тоа, вашите пропуштаат и вие се читате како обичен клиент на Nostr за некое време: пораките испратени до вас во таа празнина се шифрирани на нормален начин наместо на квантен начин. Тие се уште пристигнуваат, и сè уште можете да ги прочитате – и ништо што сте го добиле порано не е погодено.
Сите останати продолжуваат да работат како порано. Bitchat корисниците и секој друг клиент на Nostr добиваат стандард НИП-17, непроменета.Ништо не се скрши кога ќе порака некој надвор од Nymchat.
Пост-квантна порака заменува стандардниот наместо да се испраќа заедно со него. Испраќањето на двете би било бесмислено: напаѓачот едноставно би ја скршил послабата копија.
Копиите упатени до ти добијте го исто така - оној што го читаат другите ваши уреди архива зад неа и вашите синхронизирани поставки, кои патуваат на ист начин и ги носат вашите листа на разговори, вашите групни копчиња и вашата историја на пораки. Оставајќи некој од оние на стариот шифрирањето би ги направило најслабото нешто што го складирате: читливи за секој што ќе раскине денешната криптографија, без разлика колку внимателно биле запечатени самите пораки.
Останувајќи читлив од Bitchat
Bitchat не може да го чита форматот на пораките на Nymchat, така што историски Nymchat испрати втора копија од секоја порака во форматот на Bitchat до секој што можеби ја користи - што, за некого никогаш не сте слушнале, значи сите.
Најавата погоре го прави тоа погодување непотребно. Ако некој има објавено, тој е работи Nymchat, па копијата на Bitchat се испушта и се испраќа само посилната порака. Доколку тие не, ништо не се промени: тие сè уште ги добиваат двата формати, точно како порано, така што ништо што испраќате може да стане нечитливо бидејќи апликацијата погрешно погодила кој клиент го користи некој.
Како и самата шифрирање, ова е автоматско и нема поставка.
Nymchat би можел да заклучи кој што управува од активноста на јавниот канал и ќе забележи луѓе порано. Но, тој заклучок е повремено погрешен, а да се биде погрешен овде значи испраќање некому порака дека неговата апликација не може да се отвори, без грешка и без обиди повторно. Објавено огласот е потпишан од неговиот автор и не може да се лажира, па затоа се користи наместо тоа.
Во групни разговори
Групните пораки се веќе шифрирани посебно за секој член, така што групата може да ги меша двата вида слободно - членовите чии клиенти го поддржуваат добиваат посилно шифрирање, а останатите добиваат стандарден, и групата работи нормално во секој случај.
Поради тоа, групната порака е означена како квантно отпорна само кога секој член го прими на тој начин. Ако дури и една копија користела стандардна размена, таа копија го носи истото порака, така што пораката во целина е заштитена само како нејзината најслаба копија. Апликацијата вели „квантно отпорен на 8 од 10 членови“ наместо да се заокружува.
Групните разговори исто така ги задржуваат своите ротирачки еднократни копчиња, кои кријат кој е во група од секој што гледа реле. Таа заштита не е засегната и функционира токму како што работеше.
Читање на значката
Секоја приватна порака и групна порака носи мала штит Допирање на било која ознака објаснува што покажува.
| Означи | Значење |
|---|---|
| Катанец | Кој го испратил - дали потписот се совпаѓа со авторот за кој се тврди. |
| Штит | Двете страни држеа свој пост-квантен код, а хибридната размена беше користена за секоја копија на оваа порака. |
| Испрекинат штит | Делумно квантно отпорна – група порака само некои членови добиле заштитена копија од. |
| Проширување на штитот | Стандардната NIP-44 енкрипција – сè уште е енд-то-енд енкриптирана, и сè уште не може да се прочита од никого освен од учесниците денес. |
| Нема штит | Јавните постови на каналот се читаат на релеј по дизајн, така што не се применува ознака за шифрирање. |
Забелешка која недостасува би била двосмислена - исто така би можело да значи “не квантно-отпорен”, “оваа конструкција е премногу стара”, или “индикаторот е скршен” - и безбедносен индикатор кој не може да се разликува од скршен еден не ви кажува ништо.
Таа седи покрај капакот наместо да го заменува, бидејќи двајцата одговараат на различни прашања, а пораката може да биде една без друга – квантно отпорна, но од непроверен испраќач, или проверена, но конвенционално шифрирана.
Постарите пораки го чуваат штитот трајно. Сè што беше испратено пред двете страни да бидат на квантно-отпорна конструкција беше запечатено со конвенционалната размена, и дека шифрирачкиот текст веќе постои на релеите - не може да се повторно запечати по фактот.
Она што не го прави
Ова го штити содржината на вашите пораки. Тоа не го прави секој дел од Nostr квантен-доказ, и вреди да се биде прецизен за разликата.
- Потписите се уште се secp256k1. Nostr идентитети потпишуваат со Schnorr на истата крива. Противник кој веќе имал работен квантен компјутер може да фалсификува a потпишете и имитирајте некого во реално време. Она што престанува хибридната размена е читање снимен сообраќај - доверливост, а не автентикација.
- Нема никаква напредна тајност. И двата клучеви се долготрајни: NIP-44 го добива својот клуч од вашиот
nsec, и пост-квантниот слој се вградува во ML-KEM клучот зад вашиотnympq1…Секоја порака добива свежа инкапсулација, така што клучот на една порака не го отвора следниот – но секој кој завршува да ги држи тие долгорочни клучеви може да прочита сè што некогаш е запишано, не само она што дојде потоа. Исчезнати пораки намалување, и затоа оваа функција е насочена кон жетва-сега-дешифрирање-подоцна, наместо на клуч кој се зема. - Метаподатоците се непроменети. Реле сè уште гледа дека настанот бил адресиран клуч, и отприлика кога. Со тоа се ракува пакување подароци и еднократни клучеви, не од ова.
- Bluetooth мрежата не е покриена. Порака пренесена преку Месијата патува во рамките на сесија на бучава XX, која е силна, тековна енкрипција, но класична размена на клучеви - така што не го носи пост-квантниот слој, дури и помеѓу двајца корисници на Nymchat. Знамето го рефлектира ова: пораката испорачана преку мрежата не е означена со квантна отпорност. Додавањето на тоа значи менување на самата рака, што и двајцата врсници би морале да го направат во ист момент, без релеј да падне назад и додека останува читано од Bitchat.
- Вашиот код за враќање е втора работа да се задржи. Започнува со
nympq1И ќе го најдете во Детали за вашиот Нимво истиот панел како вашиотnsec- допрете го вашиот ним, а потоа “Откријте го приватниот клуч и кодот за враќање на овој ним”.nsecсамо по себе не го реконструира вашиот пост-квантен клуч – тоа е токму причината зошто работи – па ако ниту еден уред не го држи тој код и немате копија од него, она што беше запечатено на него не може да се отвори повторно.nsec. - Не може да го заштити она што го прави другата страна. Примачот сè уште може да слика од екранот, копирајте или чувајте порака.
Ова е истата позиција што ја зазема сигналот со сопствената пост-квантна надградба: поправете ја размената на клучеви сега, бидејќи тоа е делот на кој напаѓачот може да дејствува ретроактивно, и да ги третира потписите како а посебен проблем за кога стандардите ќе стигнат.
Проверка на работата
Имплементацијата на ML-KEM се тестира против официјалниот Тест на векторите NIST објави за FIPS 203Веб апликацијата и мобилната апликација дополнително се одржуваат на заеднички сет на тест вектори, што е она што гарантира дека пораката напишана од едниот може да се прочита од другиот.
Двајцата се Отворени извори под AGPL-3.0, и зградите на веб-апликацијата се репродуктивни – видете проверка на градба.
Да одиме подлабоко: Пост-квантен клучен договор во Nymchat - техничка бела книга за тоа како клучот ML-KEM се дистрибуира без директориум, точната конструкција која ги комбинира двете клучни размени и дизајните кои беа отфрлени.