Nymchat ტექნიკური whitepaper
Post-Quantum Key გარიგება Nymchat- ში
ML-KEM-768 საზოგადოებრივი კლიენტების გაფართოება Nostr- ზე გარეშე დირექტორიის ან რეგისტრაციის გარეშე, და მათი გაფართოება საიდუმლოგან, რომელიც არ არის საზოგადოებრივი ღირებულება.
პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი გადაზიდვა პოსტი კუნთულ კურსი მეორე ამ პრაქტიკაში აღწერილი, თუ როგორ Nymchat პასუხს, რომ - სადაც მეორე key მოდის, თუ როგორ ის მოდის ადამიანებს, ვინც მას სჭირდება, და რა ინტერფეისი შეიძლება მოითხოვოს შედეგად - და, ბოლო ნაწილში, რა ეს შედეგად არ დაცვა.
ეს გვერდი მოხერხებულობისთვის მანქანურად ითარგმნება. ინგლისური ორიგინალი არის ვერსია, რომელიც გამოიყენება.
1პრობლემა
ჩვენი პირადი შეტყობინებები ჩიპტირებული არიან NIP-44შეთავაზება, რომელიც შეიცავს ორი სართულებს. სართულები, რომლებიც ჩართავს პირდაპირი ტექსტი — ChaCha20 ერთად HMAC-SHA256 მაგიდა, დააჭირეთ HKDF (კონტაქტი RFC 5869) — არ არის მნიშვნელოვნად შეუზღუდავი კუნთული კომპიუტერის მიერ; Grover- ის ალგორტიმი იღებს კვადრატული ქსოვილის გააუმჯობესებას symmetrical key- სთან ერთად, და 256 ბიტი იღებს ეს. კონტაქტი Diffie-Hellman- ის ულტრაბგერითი კურსი კაბინეტი256K1, და Shor- ის ალგორტიმი გადაიხადოს дискретული ლოგარტიმას პირდაპირ. ერთი პირადი კურსი გადაიხადოს მისი პირდაპირი პარტნიორს რეტაქციურად აჩვენებს თითოეული საერთო კერძო კერძო კურსი, რომ კურსი pernah წარმოებული.
მას შემდეგ, რაც ეს შექმნილია, არ არის დატოვებული, სანამ ასეთი მანქანა არ არსებობს. კონტაქტი, რომელიც შეიცავს შენახვა, დღეს შეუძლია ჩაწეროს šiftertext და გადაიხადოს მას, როდესაც შესაძლებლობა მოდის. ყველაფერი, რაც ახლა გამოგზავნილია, რომელიც ჯერ კიდევ მნიშვნელოვანია, უკვე შეუზღუდულია. ეს არის სპეციფიკური დაჯავშნა პოსტ-კონტუმული key exchange, და ეს არის მიზეზი, რომ მუშაობა არ შეუძლია დაველოდოთ, რომ მანქანა აშენდება.
1.1 კითხვა, რომელიც ამ სტატიაში პასუხი გთავაზობთ
კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვის მხარდაჭერით კლასიკური გადაზიდვა (FIPS 204) ეს უწყობს გადაზიდვის პრობლემა:
გაგზავნოთ Alice დღეს, თქვენ უნდა ერთი რამ: მისი npub. დაამატოთ პოსტი კუნთული გადაზიდვა და თქვენ უნდა მეორე — მისი ML-KEM საზოგადოებრივი კლიენტები. სადაც ის კლიენტები ცხოვრობს, და როგორ შეგიძლიათ მიიღოთ მას, სანამ შეგიძლიათ გაგზავნოთ მას არაფერი?
NPUB არის თვითმმმართველობის. თქვენ შეგიძლიათ წაიკითხოთ მას ფურცელი, წაიკითხოთ იგი ღრმა, ან scan მას ეკრანზე, და ეს არის ყველაფერი, ვინც უნდა ჩიპტირება თქვენთვის. ML-KEM-768 საზოგადოებრივი კური არის 1,184 ბეტის. იგი არ შეიძლება წაიკითხოთ ღრმა, ეს არ შეესაბამება მომხმარებლის სახელი, და ეს არ მოიცავს QR კოდი, გარდა ამისა, რომ Identity, რომელიც არის მხოლოდ 32 ბეტის.
უფრო რთული ნაწილი არის, რომ მეორე key მოიცავს სამი განსხვავებული პრობლემები, და სხვა ამ პრაქტიკაში არის ძირითადად პასუხი მათთვის:
- ეს შეიძლება შეცვალოს. არავინ არ შეუძლია წაიკითხოთ ღონისძიებაში, ეს არის ის ტიპის რამ, რომელიც თავმჯდომარე შეუზღუდავი საკუთარითვის. სექცია 4 შეუზღუდავი ატვირთებს დატვირთვა, რომელიც შეუზღუდავი ატვირთვა.
- მას უნდა შეესაბამება მთელი მომხმარებლის მოწყობილობები. იგივე ანგარიშის ტელეფონი და laptop უნდა იყოს იგივე key, ან შეკუმშული შეტყობინებები ერთი არ შეიძლება გახდეს სხვა.
- მას შეუძლია დაკარგული. Public key არის ახალი გამოქვეყნდა სათაური, ასე რომ ის, რაც ნამდვილად უნდა გაგრძელდეს, არის ეს სათაური - და მშენებლობა არ არის სხვა reconstruct მას. სექცია 10.1 ჩვეულებრივ აცხადებს, რა ღირს, რადგან ეს არ არის გადაწყვეტა ისევე, როგორც გადაიხადოს.
2დიზაინი შეზღუდვა
ოთხი შეზღუდვა შედგა პასუხი, და ისინი შეშფოთებენ ყველაზე ნათელი დიზაინები, სანამ ნებისმიერი კოდი ჩაწერილი.
- რაც შეიძლება მინიმუმ სექსუალურია. ჩვენი მომხმარებლები უკვე შეიცავს საკმარისი ერთი სარეკლამო, nsec. თითოეული დამატებითი სარეკლამო არის სხვა გზა, რათა დაკარგოთ თქვენი ისტორია, და ვინმეს, ვინც იცის, რომ backup nsec არ იცის, რომ backup ნებისმიერი სხვა. სექცია 3.1 აჩვენებს, რომ ეს არ შეიძლება მოხდეს პირდაპირი - პოსტი კუნთულ კურსი, რომელიც გამოწვეულია nsec არ უზრუნველყოფს პოსტი კუნთულ დაცვის - ასე რომ დიზაინი იღებს საკმარისი ერთი სარეკლამო და არა მეტი: ერთი კურსი მასალები, რომელიც იღებს ერთხელ თითოეულ ინტენსივაციაში, გამოქვეყნდა იგივე ფორმაში, როგორც nsec და იგივე ადგილას, ასე რომ ვინმეს იცის, თუ როგორ უნდა შენარჩუნ
- არ არის Authority. არ არსებობს სერვერზე, რომელიც შეიძლება იყოს საიმედო, რომ ვთქვათ, რა კურსი მოიცავს ვინ. ნებისმიერი ასეთი სერვერზე გახდება ადგილი, სადაც შეტყობინებები შეიძლება გადამცემა.
- მრავალი მოწყობილობები, ერთი Identity. რა თქმა უნდა, ძირითადი მასალები არსებობს, უნდა დასრულდეს იგივე მათ ყველა, და გზა, რომელიც მას შეიცავს, არ უნდა იყოს ხელმისაწვდომი კონტაქტორს, რომელიც ფუნქცია დაცვა.
- არ გაქირავება ნებისმიერი band-in გადაზიდვა, რომ “ რა ciphers თქვენ მხარს უჭერს?” არის ზედაპირზე, რომ საჯარო შეუძლია დაჭეროს, რათა მოცულობა სავარაუდო ვარიანტი. დიზაინით არ უნდა იყოს არაფერი downgrading.
3ინდივიდუალური Root Secret
დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში.
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)
იმიტომ, რომ მომხმარებელს შეესაბამება, რომ nsec: Bech32 საწყისი Human-readable პროგნოზი
nympqეს წაიკითხა როგორც nympq1…, ნაჩვენებია nsec- ის მხარეს identity- ის ეკრანზე იგივე გამოხატვის ინტერაქტიის შემდეგ, იგივე კონტროლის გამოყენებით კუპირებული, არასდროს დარეგისტრირებულია და არასდროს არ გამოგზავნილია ნებისმიერ ადგილას clear- ში. ეს არ არის password და ეს არ არის login. ეს არის ძირითადი მასალა, რომელიც მომხმარებელს შეუძლია შეინახოთ, ისევე როგორც nsec.
ფოლადის დონეზე განსხვავებული გულისხმობს, ასე რომ ნებისმიერი სხვა სექსუალური არასდროს შეუძლია იგივე keypair. epoch კონტაქტი საავტომობილო საავტომობილო საავტომობილო საავტომობილო საავტომობილო საავტომობილო საავტომობილო საავტომობილო საავტომობილო საავტომობილო
3.1 რატომ არ შეუძლია კლიენტების კლიენტების მიღება
ჩვეულებრივი დიზაინი არის keypair სინამდვილეში, რომ მომხმარებლის უკვე აქვს:
seed = HKDF(salt = "…", IKM = nsec) // do not do this
ეს არის მოკლე ოთხი მიზეზით, მათ ყველა რეალური: არაფერი ახალი backup, რადგან nsec უკვე backup; თითოეული მოწყობილობა შეესაბამება შექმნის მიერ, გარეშე სინკრონიზაციის პროტოკოლს არ გაქვთ შეცდომა; ერთ-ერთი შეცდომა განთავსება თითოეულ Identity როგორც ჩვეულებრივ სწორი, რადგან მოწყობილობები არ შეუძლიათ შეესაბამება key; და key არსებობს, სანამ ეს უკვე გამოქვეყნდა, ასე რომ კლიენტს შეუძლია დახურვა რაღაც თავს პირველი.
ყველა ოთხი უპირატესობა არ არის მნიშვნელობა, ერთ მიზეზით. Shor- ის ალგორტიმი იძლევა გამოქვეყნებული npub- ის წინააღმდეგ nsec- ის მიერ. სინათლის გამოქვეყნება არის საზოგადოებრივი ალგორტიმი nsec- ის შესახებ. ასე რომ კონტაქტი, რომელიც გაქვთ კლასიკური ნახევარი, განკუთვნილია პოსტ კუნთულ ნახევარი, იძლევა იგივე HKDF- ის მიერ, რომელიც ყველა სხვა იძლევა. კონტაქტი მცენარეთა- ახლა-Decrypt-მედღე - ერთ-ერთი რისკი, რომ ფუნქცია არსებობს, რომ დაწყება - ამ გზით გამოქვეყნებული კურსი არაფერი დაამატებს.
ML-KEM decapsulation key უნდა იქნას entropy, რომელიც არ არის ნაცვლად ნაცვლად ნაცვლად ნაცვლად ნაცვლად ნაცვლად ნაცვლად ნაცვლად ნაცვლად ნაცვლად.
მეორე სტატისტიკა, რომ წესის მუშაობს, ისევე, როგორც პირველი. დამოუკიდებელი გენერირებული საიდუმლო, რომელიც შემდეგ სინქრონიზირებულია მომხმარებლის მოწყობილობების შორის ჩვეულებრივი NIP-44 შეტყობინება არის იგივე ცუდი დამატებითი ნაბიჯები: კონტაქტი დარეგისტრირებს, რომ შეტყობინება დღეს და იღებს მისი კლასიკური კურსი შემდეგ, და ქსოვილის გამოჩნდა. ეს არის მიზეზი, რომ გზა შემდეგი ნაწილში არიან გზა, რომ ისინი არიან, და რატომ არ არის “შემოთ თქვენი სხვა მოწყობილობს.”
3.2 მიიღეთ root მომხმარებლის სხვა მოწყობილობები
3 სექცია - ერთი Identity, მრავალი მოწყობილობები - არ შეუძლია დააკმაყოფილოს arithmetic აქ, რადგან მთელი მნიშვნელობა არის, რომ key არ არის ფუნქცია არაფერი მოწყობილობები უკვე გაზიარება. იგი უნდა იყოს დააკმაყოფილოს სატრანსპორტო instead, და არსებობს საკმაოდ ერთი გზა: მომხმარებლის გადაზიდვა მოწყობილობები nympq1… კოდი თავს
Root არის გამოქვეყნდა როგორც nympq1… ეს არის მთელი მექანიზმი. მექანიზმი, რომელიც არ აქვს კოდი, არ შეუძლია მონაწილეობა, რომელიც აღწერილი სექცია 4.2.
მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშვეობით მეშ
ფორმატში გაქვთ ადგილი შეფუთული გზა: რეგისტრაცია შეიძლება გაქვთ სია შეფუთვა, თითოეული AEAD blob ქვემოთ ფურცელი, რომელიც მომხმარებლის შეუძლია რეპუტაცია სხვა მოწყობილობები - passkey PRF გამოცემა, მაგალითად. არაფერი გადაცემა ერთი დღეს, და სანამ არაფერი გააკეთებს, nympq1… 10.1 სექციონირებულია, თუ რამდენად ღირს.
სინათლის კლასის კლასის სინათლის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის კლასის nymchat-pq-rootმიუხედავად იმისა, რომ არ გაქვთ შეფუთვა, ეს საჭირო მუშაობს: მისი ხელმისაწვდომობა არის, თუ როგორ მეორე მოწყობილობა გაიგებს, რომ ამ ინდივიდურობას უკვე აქვს root, რაც თავიდან ავიცილოთ კონკურენტს (სექცია 3.3).
ეს nymchat-pq-root კატეგორია Must არა ეს ხაზი შეიცავს მხოლოდ ერთი კუპია ქსელის, ასე რომ დახურვის მას ქვეშ ქსელის ქვეშ, რომელიც შეიცავს ქსელის ქვეშ, არის დახურვა, რომელიც ქსელის ქვეშ არის: არ არსებობს მოწყობილობა, რომელიც შეუძლიათ იღებს მას, მათ შორის ის, რომელიც დაწერა. ეს არის დახურული კლასიკურად - NIP-44 თვითმართველობის - ან არ არის. ეს არის ერთი ადგილი, სადაც დიზაინი მიიღებს კლასიკური მხოლოდ დაცვა, და მას შეუძლია გაძლევთ: ხაზი არ იღებს ქსელის დღეს, მხოლოდ ფაქტი, რომ ერთი არსებობს.
ყველა სხვა პარამეტრების კატეგორიები შეიძლება და უნდა გამოიყენოთ root-derived key. ეს არის ერთ-ერთი შეზღუდვა, და ეს არის შეზღუდვა Circularity ვიდრე ძალა.
3.3 Generation და adoption
დასაწყისში კლიენტს, რომელიც მგრძნობიარე ინტენსიურობა იძლევა, მუშაობს ამ ბრძანებით:
- შეამოწმეთ არსებული
nymchat-pq-rootრეგისტრაცია - შეიტანეთ, და ეს მოწყობილობა შეუძლია გადახურვა - მიიღეთ ეს და აცხადებს, რომ ეს identity არის პოსტ-კონტალური შესაძლებელი.
- შეიტანეთ, და ეს მოწყობილობა არ შეუძლიათ დაიბრუნოს. — არ აწარმოეთ ახალი root და არ გამოქვეყნეთ ნებისმიერი განცხადება. მოთხოვნა მომხმარებელს ამ მოწყობილობს დაუკავშირდეთ, დააწკაპუნეთ
nympq1…კოდი მოწყობილობა, რომელიც უკვე მას აქვს. - არ არის რეგისტრაცია - აწარმოებს root, გამოქვეყნებს შეტყობინება, გამოქვეყნებს და აჩვენებს
nympq1…კოდი მომხმარებელს ერთხელ, ასე რომ მათ შეუძლიათ შენახვა.
3 ნაბიჯი არის ნაბიჯი, რომელიც ადვილად შეცვალოს, და ეს არის მიზეზი, რომ შეტყობინება დატოვე და არა თითოეული შეტყობინება. ორი მოწყობილობები, რომლებიც თითოეული აირჩიონ, რომ იწვევს root, წარმოადგენს ორი დამოუკიდებელი ნაბიჯები ერთი Identity- ში, და ეს არის შეტყობინება, რომ ეს შეტყობინება არსებობს თავიდან ავიცილოთ.
4შესაძლებლობების გამოქვეყნება
Public half of the derived keypair არის გამოქვეყნდა, როგორც addressable
0 0 0 0 0 0
მოვლენები — type 30078, tagged 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 იმას ნიშნავს, რომ relay შენარჩუნებს ერთ მოვლენას თითოეული (kind, pubkey, d-tag), ასე რომ republish შეცვალოს წინა გამოქვეყნება ადგილას. თითოეული identity ასე რომ აქვს საკმაოდ ერთი ამჟამად ანგარიშის, რაც ხდის “ Look up Alice's key” ერთ ერთი უჭერს მოპოვება, ვიდრე სია შეესაბამება.
რეგისტრაცია არის kötelező. ეს მოვლენები დარეგისტრირებულია ინდივიდუალური კურსი, ასე რომ, ამ ML-KEM კურსი დარეგისტრირებულია ამ npub- ში, ეს არის ისე ძლიერი, როგორც npub- ში. განსხვავებული encapsulation კურსი შეცვლა მოითხოვს secp256k1 სქემა. თავმჯდომარე, რომელიც შეუძლია, არ უნდა გაქვთ კურსი KEM- ში.
გამოქვეყნდა გამოქვეყნდა 7 დღე NIP-40 Expiration, ყოველ 24 საათის განმავლობაში ახალი გამოქვეყნდა, შენარჩუნებს დოკუმენტში შეტყობინება კლიენტს, რომელიც ჯერ კიდევ იღებს, ვიდრე ის, რომელიც ადრე იყო. root itself never expires; only the claim about it does.
გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყნებული გამოქვეყ
ეს არზმერიობა არის მიზეზი დასრულების, ვიდრე ცუდი მას. გარეშე ერთი, დოკუმენტი გაგრძელებს, რაც მისი სახელწოდება: მოწყობილობა, რომელიც გაქირავდება, დაჯავშნა, ან მისი root შეიცვალა, გაქირავებს მუდმივი ინსტრუქციას, რათა შეკაპუნოთ კლიენტს, ვინც არ იძლევა, და შეტყობინებები, რომელიც გაგზავნილია მას ქვემოთ, არ არის შეცდომა ნებისმიერ მხარეს. მომდევნო კვირაში, რომ ფანჯარა, და საშუალებას აძლევს რედაქტორებს დატოვოთ დოკუმენტი თავს, ვიდრე დამოკიდებულება კლიენტებს აღიაროს.
ძირითადი ფართობი სახელწოდებს მისი ფორმატში. ფართობი არის pk2, და ციფრული არის ნაწილი კონტაქტი, ვიდრე განკუთვნილია: იგი სახელწოდებს ფურცელი ფორმატში, რომელიც კურსი შეიძლება გამოყენებულ იქნას. წერილი, რომელიც არ აღიარებს ფართობი, დასრულებს “Nymchat კლიენტს, არ არის პოსტი კუნთული კურსი” და გადაცემა ჩვეულებრივი NIP-44, რომელიც თითოეული შეტყობინება შეუძლია წაიკითხოს. ეს არის სწორი შეცდომის გზა, და ღირს აცხადებს, როგორც ნორმით, ფურცელი ნომერი არის აღიარებული: არ აღიარებული შესაძლებლობების მოთხოვნები უნდა შეესაბამება დაცვა, არასდროს მიწოდება. კურსი, რომელიც პარტნიორი არ შეუძლია გამოიყენოს, არის
4.1 შეუზღუდავი არის მნიშვნელობა, და სამი ღირებულება
Subtle მაგრამ მნიშვნელოვანი დეტალურია: განცხადება გამოქვეყნდა ყველა Nymchat კლიენტს, არა მხოლოდ პოსტი კუნთების შესაძლებლობები, და ძირითადი ფართობი არჩეულია. ეს აწარმოებს სამი განსხვავებული სტატისტიკა, ვიდრე ორი:
| შეამოწმეთ | ნიშნავს | შეტყობინება |
|---|---|---|
| კონტაქტი ერთად KEY | Nymchat, პოსტი კუნთული შესაძლებლობები | ჰიბრიდი |
| გამოგზავნილია: No key at all | Nymchat, კლასიკური მხოლოდ — პოსტი კუნთული off, ან მოწყობილობა, რომელიც ჯერ კიდევ არ არის დაკავშირებული identity root | კლასიკური NIP-17 |
| არ არის განცხადება | შეიძლება იყოს ნებისმიერი Nostr ან Bitchat მომხმარებლის | კლასიკური, plus თავსებადი შეფუთვა |
დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში.
4.2 მოწყობილობა, რომელიც არ შეუძლია ღია root მგრძნობიარე
ეს არის ის, რაც ერთ-ერთი ჩანაწერების დიზაინი მუშაობს, და ეს არის ასევე ის, რაც შეუერთებული მოწყობილობა რისკული ხდის, თუ იგი გამოქვეყნდა. მოწყობილობა, რომელიც გამოქვეყნდა კურსი, რომელიც იგი გაქირავდა საკუთარითვის, რეალური ჩანაწერს შეუზღუდავი და მოგცემს თითოეულ პარტნიორს კოდიფიკაციის ქვეშ კურსი, რომელიც სხვა მოწყობილობები არ შეუძლიათ გახსნას.
ასე რომ, მოწყობილობა, რომელიც იცის root არსებობს, მაგრამ არ შეუძლიათ გახსნას, არ გამოქვეყნებს განცხადება. ეს არ არის გაქირავებული და არ არის დახურული პროგრამაში: იგი ჯერ კიდევ წაიკითხა თითოეული შეტყობინება, რომელიც მას აქვს კურსი და ჯერ კიდევ გამოგზავნა კლასიკურად, ხოლო გამოიწვიოს მომხმარებელს, რომ გაქირავდეს. silence არის სწორი ქცევა მოწყობილობისთვის, რომელიც არ შეუძლია საუბარი identity.
5Discovery და გადაცემის გადაწყვეტილება
კლიენტებს ორიგინალური კითხვები იპოვებენ. მუდმივი შეტყობინება მოიცავს ადამიანებს, ვისაც მომხმარებელს ნამდვილად შეესაბამება - ღია კონტაქტები და ჯგუფი წევრები - ასე რომ მათი შეტყობინებები ჩვეულებრივი მოვლენები. კლიენტებს, რომლებიც პირველად შეესაბამება, ერთგული კითხვები გაქირავება გადაცემის დროს, 2.5 წამში; თუ ეს არ გადაწყვეტებს, შეტყობინება კლასიკური იქნება, რაც ქცევა იყო, სანამ პოსტ კუნთულას დაამატა, ვიდრე ახალი ცუდი რეჟიმი.
უარყოფითი შედეგები გაქირავება 10 წუთი, ვიდრე მუდმივად. მომხმარებლის, რომელიც შეუერთებს ახალი მოწყობილობს, ან რომელიც გადასვლა ბრაუზერის გაფართოების დატვირთვა ადგილობრივი კურსი, იქნება პოსტი კუნთალური შესაძლებელი mid-conversation, და მუდმივად გაქირავებული “no” გაქირავება მათ კლასიკური encryption სიცოცხლის განმავლობაში განცხადება.
5.1 რატომ არ არსებობს downgrade თავმჯდომარე
Routing გადაწყვეტილება შეამციროს ერთი კითხვა:
pq = (we hold a signed, unexpired ML-KEM key for this recipient)
არ არსებობს შესაძლებლობების გარიგება, არ არსებობს მხარდაჭერებული ალგორტიმების სია, და არ არსებობს ფართობი, რომელიც თავმჯდომარე შეუძლიათ გააუმჯობესოს, რათა მოცულოს სავარაუდო გზა. არის არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი არასწორი მოდელი
კონტაქტი ასევე შეიცავს და უფრო მნიშვნელოვანია: კლიენტს მიწოდება ჰიბრიდი მხოლოდ მას შემდეგ, რაც მას იძლევა კლიენტს და კლიენტს იძლევა, კლიენტს შეუძლიათ გადაიხადოს. არ არსებობს სტრუქტურა, სადაც შეტყობინება პოსტ კუნთულში გამოგზავნილია ვინმეს, ვინც არ შეუძლია ის წაიკითხოთ.
6ჰიბრიდული სამშენებლო
Nymchat არ შეცვალოს NIP-44. იგი შეფუთვა. არ შეცვალოს NIP-44 ციფრული ტექსტი არის შიდა ფართობი, და ML-KEM დააჭირებს გარე AEAD მას გარშემო:
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)
ორივე სექსუალური ჯერ კიდევ უნდა აღსანიშნოს, რომ წაიკითხოთ შეტყობინება: გარე ფართობი მხოლოდ NIP-44 ციფერის ტექსტი აწარმოებს, და ღილაკს, რომელიც სჭირდება კლასიკური ECDH. კუნთული კონტაქტი, რომელიც გაქვთ secp256k1, მიიღებს ინტერიერის კლიენტს და ჯერ კიდევ ML-KEM- ს შეხვდება; ML-KEM- ის გაქირავება სექსუალური ფართობი გაქირავებს და NIP-44 გაქირავებს. თითოეული ინტერიერი იღებს მისი ადგილი:
kem_ssრა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, რა თქმა უნდა, ეს არის.kem_ct,recip_kem_pkდა ორივე identity keys შეესაბამება, როგორც დაკავშირებული მონაცემები, ასე რომ გარე layer შეესაბამება სწორი transcript, რომელიც აწარმოებს იგი. Splicing ციფრული ტექსტი სხვა გადამცემი identity არ გაქვთ დატვირთვა, ვიდრე გადარჩენის.
ML-KEM key არის ხანგრძლივი სიცოცხლე, მაგრამ თითოეული შეტყობინება შეიცავს დამოუკიდებელი ციფრული ტექსტი და ასე რომ დამოუკიდებელი
kem_ssეს არის ის, რაც გამოიწვიოს nonce, ვიდრე randomizing იგი ხდის:
ChaCha20-პოლი1305
ეს არ არის შეუზღუდავი გამოყენებით (key, nonce) ორმაგი, და აქ კურსი itself არის ახალი თითოეული შეტყობინება, ასე რომ არ არსებობს ორმაგი შეუძლია განახლება.
6.1 რატომ კლასები მგრძნობიარე
ალტერნატივა არის, რომ შეუერთოთ ორი კერძები ერთი კონტაქტი key და გაგზავნა, რომ NIP-44:
ck = HKDF-Extract(salt = "…",
IKM = ecdh_x || kem_ss || …) // do not do this
ეს სტრუქტურა ხდის, როგორც კრეპტოფიკაცია. მას აქვს ერთი სტრუქტურული პრობლემა: მას უნდა
ecdh_x, ECDH გამომავლის ნედლ x-კოორდინატს, როგორც გასაღების მასალას — და ბრაუზერის გაფართოება (NIP-07) ან remote signer (NIP-46ეს აწარმოებს NIP-44 მოვუწოდებლის მისაღებად და გადაიხადოს ციფრული ტექსტი, რომელიც არის მთლიანად ეტაპზე, სადაც განაცხადის არ შეუძლია.
მას შემდეგ, რაც კერძები შეიცვალა, არ შეიცვალა თითოეული შეტყობინება, რომელიც შეინახავს ინდივიდუალური კლიენტს, რაც არის ყველაზე მზრუნველი მომხმარებელს, და არ შეიძლება შეიცვალა კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტების კლიენტ
ML-KEM ციფრული ტექსტი 1088 ბეტისა და იღებს თითოეული შეტყობინება, base64url-კოდრებული 1,451 სიმბოლოს; გარე AEAD დაამატა 16-ბეტის Poly1305 ტაქტი და გააუმჯობესებს NIP-44 ეფექტურობას, რომელიც მას შეფუთვა. 50-ბეტის შეტყობინება იზრდება 176 ბეტისდან 1,712-ზე, და 2,000-ბეტის შეტყობინება 2,820-დან 5,238-ზე. დისკები დაახლოებით 1.5 კბა შეტყობინება თითოეული შეტყობინება, მიუხედავად იმისა, რომ შეტყობინება არის ხარისხი, რაც არის ღირებულება განკუთვნილია ყოველდღიურად, ვიდრე ერთობლივი საიდუმლო გამოყენება.
6.2 Self-describing payloads
ეს pq2. Prefix იძლევა გაფართოება შემდგომი: ეს არის self-describing, ასე რომ კლიენტს აირჩიოს decryption path by inspecting the payload rather than by trusting a tag or remembering what a peer მხარს უჭერს. კლიენტს, რომელიც არ აღიარებს prefix არ იძლევა, რომ payload, ვიდრე შეცდომა, და კომენტარები დახურული სანამ ორივე მხარეს შეიძლება გააკეთოს პოსტ-კონტური გაქირავება ჩვეულებრივი NIP-44 გარეშე გადაზიდვა.
ML-KEM decapsulation განკუთვნილია, რომ არასდროს არ გაქცევა: შეშფოთებული ციფრული ტექსტი, Fujisaki-Okamoto გადამცემა გადაიხადოს დეტალურიური ფსიქო-გურთულური სარეკლამო, ვიდრე შეცდომა. ასე რომ, არასწორი კლიენტს არ იღებს KEM კლასის - იგი იღებს, როგორც HMAC გაქცევა NIP-44, რომელიც არის იგივე გზა, რომ არასწორი კლასიკური კლიენტების ზედაპირზე. კლიენტები ორივე იღებს იგივე, ასე რომ არ არის გაქცევა განსხვავებული სინამდვილე. ეს არის ასევე ის, რაც კლიენტების კლიენტების სია მუშაობა შესაძლებელია: კლიენტმა ყოველ კლიენტს
6.3 ორმაგი ფართები საჩუქარი შეფუთვა
A NIP-17 პირადი შეტყობინება არის a NIP-59 გარიგების შეფუთვა: არ შეფუთული გარიგება, რომელიც შეფუთულია გადამცემი Identity Key- ის ქვეშ (13 ტიპის), შემდეგ შეფუთულია შეფუთვა შეფუთვა შეფუთვა შეფუთვა შეფუთვა შეფუთვა შეფუთვა შეფუთვა (1059 ტიპის). შეფუთვა, რომელიც პირდაპირი შეფუთვა Identity Key- ის ქვეშ, Nymchat ჰიბრიდირებს ორი ფართობი, თითოეული საკუთარი encapsulation.
დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში.
7ჯგუფი შეტყობინებები და ნაწილური აღჭურვილობა
ეს არის იგივე ჩვეულებრივი ტექსტი, რომელიც გამოქვეყნდა თითოეული წევრი, თითოეული კუპია, რომელიც შეკაპუნებულია ამ წევრი საკუთარი ML-KEM Key. წევრი, რომელიც გამოქვეყნდა Key მიიღებს ჰიბრიდული შეფუთვა; ერთი, რომელიც არ მიიღებს კლასიკური შეფუთვა.
ეს შექმნა ანგარიშის პრობლემა, რომ ნეიური განხორციელება შეცდომა. თუ ოქტომბერი 10 წევრები მიიღებენ ჰიბრიდული კოდი, შეტყობინება არის არა 8 / 10 დაცულია. კონტაქტორს საჭიროა ერთი კლასიკური რეპუტაცია ჩვეულებრივი ტექსტი, რომელიც არის იგივე ყველა 10, ასე რომ შეტყობინება დაცულია მხოლოდ თუ ყოველი Copy არ არის.
Nymchat ასე რომ შეამოწმოთ პოსტის შეფუთვა fan-out დროს - რაოდენობა არის მხოლოდ იცვლება, ხოლო შეფუთვა მზადდება - და badge ამბობს “kwantum-resistant to 8 of 10 წევრები” ვიდრე აცხადებს, რომ შეტყობინება დაცულია. სადაც არ არის რაოდენობა ხელმისაწვდომია, რომელიც არის ჩვეულებრივი შემთხვევაში მიიღეთ ჯგუფი შეტყობინება (თუ მხოლოდ გადამცემი შეფასებს fan-out), ინტერფეისი შეტყობინება ნაწილური, ვიდრე სრული დაცვა. მოთხოვნებს სრული დაცვა ძალა საკუთარი კუპის მხოლოდ იქნება overstatement შესახებ შეტყობინება საერთო.
7.1 რა შეტყობინება Shield
Shield ამბობს ნამდვილად, რომ შეტყობინებაარ არის პროგრამული უზრუნველყოფა, რომელიც გაგზავნა მას:
- სრული დაცვა: თითოეული რეპუტაცია ამ ჩვეულებრივი ტექსტის გამოჩნდა ჰიბრიდული.
- ნაწილიური: ზოგიერთი კაბინები ჯგუფი შეტყობინება გამოჩნდა კლასიკურად. გამოჩნდა შემცირებული, ვიდრე სრული, რადგან ერთი კლასიკური კაბინეტი პირდაპირი ტექსტი იმიტომ, რომ ყველა მათ შორის არის წინააღმდეგობის საჭიროება.
- კლასიკური გამოქვეყნდა პირდაპირი, ვიდრე გამოქვეყნდა, როგორც არ არის badge, რადგან არ არსებობს ინდუსტრია შეუზღუდავი შორის “ შეუზღუდავი ”, “ შეუზღუდავი ”, და “ ეს build არ აქვს ფუნქცია ”.
ციფრული ტექსტი, რომელიც უკვე არსებობს, არ შეიძლება იყოს უკეთესი დაცულია, ვიდრე ეს იყო, და ინტერფეისი, რომელიც აღდგა ძველი შეტყობინებები ახალი შეტყობინების ძალადობის შესახებ, არ აცხადებს არაფერი ცუდი bytes on relay.
ჯგუფი წესები ზედაპირზე შეესაბამება, ვიდრე შეცვალოს მას: ჯგუფი შეტყობინება სრულიად დაცულია მხოლოდ როდესაც თითოეული წევრის კოდი იყო, და მიიღო ჯგუფი შეტყობინება არ შეიცავს შეტყობინებები.
8კონტაქტი, რომელიც გაგზავნა თქვენთვის
ზოგიერთი რამ, რაც კლიენტები შენახავს, კლიენტების საკუთარი ინდივიდურობისთვის კრეპტირებულია: სინქრონიზებული პარამეტრები, კონტაქტის სია, ჯგუფი კლიენტები და შეტყობინების არქიტექტურა. ეს უფრო მეტია მომხმარებლის შესახებ, ვიდრე ყველაზე ერთ-ერთი შეტყობინებები, ასე რომ მათ კლასიკური გაქირავება იძლევა უჭერს, თუ რამდენად მკაცრი შეტყობინებები თვითმართველობის შეტყობინება იყო. ისინი იყენებენ იგივე ჰიბრიდს, რომელიც ინკაბუსირებულია მომხმარებლის საკუთარი root-derived კლიენტს - ერთი შეზღუდვა, რომელიც აღწერილია სექცია 3.2, nymchat-pq-root კლასის საკუთარი, რომელიც არ შეიძლება დახურული ქვეშ კურსი, რომელიც მხოლოდ მას შეუძლია წარმოადგინოს.
ეს არქიტექტები არიან, სადაც დიზაინი ყველაზე მნიშვნელოვანია. კონფიგურაცია blob ან არქიტექტურა ხაზი მდებარეობს ერთი ადგილას წლის განმავლობაში, რომელიც არის სწრაფად ფორმული რამ, რომ მოკლე- ახლა-Decrypt-შემდეგი კონტაქტი მოკლე - უფრო მეტი, ვიდრე ნებისმიერი ერთი შეტყობინება, რომელიც მინიმუმ ephemeral მომხმარებლის საკუთარი გონება.
ერთი შეზღუდვა მართავს ფორმატში აქ, ვიდრე key. A self-addressed copy must be readable by ყოველი ყველა მოწყობილობა ანგარიშზე, ასე რომ თითოეული მოწყობილობა გააჩნია, რაც მას შეუძლია გახსნას, და ანგარიშში დააწკაპუნეთ მხოლოდ ის, რაც ყველა მათ შეუძლია წაიკითხოთ. წაიკითხეთ არაფერი, რომ მოწყობილობა დახურვა მისი საკუთარი პარამეტრებისგან - იგივე მშვიდობის ცუდი სექცია 3.2 თავიდან ავიცილოთ სხვა მეთოდები, მოდის განსხვავებული გზა.
3.3 განყოფილება არ არის, და ეს არის მიზეზით, რომ მოწყობილობა შეიცავს მოწყობილობა, რომელიც შეიცავს კავშირი, ვიდრე ახალი კავშირი: მეორე კავშირი არ გაძლევთ blob- ის იზუსტება, იგი მხოლოდ გაზიარებს identity- ის კავშირი მასალები ორი. სანამ მომხმარებლის კავშირი, მოწყობილობა გაგრძელებს მუშაობას - ის იხილებს, რაც მას აქვს კავშირი და გაგზავნა კლასიკურად.
მოწყობილობა, რომელიც იძლევა ბრაუზერის გაფართოება ან remote signer (NIP-46) არ იძლევა nsec მოწყობილობა, მაგრამ იგი არ იძლევა recovery კოდი, და ქვეშ layered სტრუქტურა სექცია 6.1, რომელიც არის ყველა პოსტი კუნთული ნახევარი საჭიროა: signer წარმოადგენს NIP-44 layer როგორც ყოველთვის აქვს, და კლიენტს დააჭირებს გარე layer თავს.
9როტაცია
ეს epoch ეს არის ის, რაც იძლევა rotation შესაძლებელია გარეშე ახალი key მასალები. Incrementing იგი აწარმოებს ახალი keypair ამავე root და ახალი გამოქვეყნებული გამოქვეყნებული; peers მიიღოს ახალი key from replacing record. Rotation ასე რომ არ მოითხოვს მომხმარებელს წაიკითხოთ არაფერი მეორე დროს: root იღებს ერთხელ თითოეულ identity და epoch იღებს turn.
9.1 ძველი ეტაპები შენარჩუნება, და არაფერი არ არის re-encrypted
კლიენტს აშენებს ციკლიზაციის კლიენტებს ამჟამად ამჟამად დარეგისტრირებულია და დარეგისტრირებულია დარეგისტრირდება დარეგისტრირდება დარეგისტრირდება დარეგისტრირდება დარეგისტრირდება დარეგისტრირდება დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებს დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრირებას დარეგისტრი
ეს ფანჯარა არის ის, რაც უზრუნველყოფს rotation უსაფრთხო გააკეთოს: გარეშე მას, ყველა rotation შეუზღუდავი არაფერი, რაც იყო ფრენის. ნებისმიერი დასაწყისში შეუზღუდავი მგრძნობიარე მგრძნობიარე identity, რადგან შეტყობინება, რომელიც მომხმარებლის არ შეუძლიათ გაუწყოს, არის მძიმე უკეთესი მათთვის, ვიდრე შეტყობინება, რომელიც დაცვა არ შეუძლია გააუმჯობესოს მახასიათებლები (Section 10.5).
10რა არ დაცულია
ქარხანა, რომელიც მხოლოდ აცხადებს, რაც დიზაინი გააკეთა, არ აცხადებს სისტემას, და უსაფრთხოების თვისება ინტერფეისიში გაფართოება უკეთესია, ვიდრე ეს არ არის.
10.1 როლი არის მეორე სექსუალური, და მისი დაკარგვა არ არის გადარჩენა
ეს არის დიზაინის რეალური ღირებულება. 2 სექციის შეზღუდვა, რომ მომხმარებლის უნდა იყოს მხოლოდ ერთი რამ შენარჩუნება, არ შეიძლება შეესაბამება: nsec მხოლოდ არ განკუთვნილია პოსტი კუნთულ კურსი, რადგან მთელი მნიშვნელობა არის, რომ არ არსებობს საზოგადოებრივი ღირებულება და არ არსებობს სხვა სქესია, რომელიც მას გააჩნია. თუ არ არის მოწყობილობა, რომელიც შეიცავს root და არ არის შესაძლებელი გახსნას სექციის 3.2 შეფუთვა, მასალა, რომელიც შეფუთულია root-derived კურსი, არ არის აღიარებული. არ არის escrow და არ არის სქესია, რომელიც შეიძლება შეიცავდეს.
მექანიკური გადაცემის ერთადერთი გზა, ეს არის უკეთესი, ვიდრე ის შეიძლება პირველი წაიკითხოს. მომხმარებლის, რომელიც არასდროს კუპირებს nympq1… კოდი ნებისმიერ ადგილას აქვს მხოლოდ ერთი კოდი, ერთი მოწყობილობზე, და დაკარგვა, რომ მოწყობილობა დაკარგავს ყველა პოსტი კუნთული შეტყობინებები, setup blob და archive ხაზი დახურული მას.
nsec არ დაგეხმარება; ეს არის ქონება, რომელიც მთელი დიზაინი დაფუძნებულია.
ნებისმიერი შეფუთული გზა, რომელიც შემდგომში დაამატა, უნდა გაუმჯობესოს იგივე ბარი, რაც მექანიკური გაკეთება. შეფუთვნილია ხელმისაწვდომი იაფი გზა, ასე რომ გზა ღირს ის, რაც მისი სავარაუდოდ სავარაუდული გადარჩენის გზა ღირს - მაგალითად, მექანიკური შეფუთული გზა იმას, რაც შეფუთული გარიგება ღირს, და შეფუთული გარიგება საკმარისია, რომ მოკლე- ახლა-დაწვრილებით გადარჩენის მექანიკური მოპოვებს და საღებოვებს საწყისი.
10.2 ატვირთვა, როგორც განსხვავებული კონფიდენციალურობის
Nostr- ში ყველა შეტყობინება არის Schnorr- ზე მეტი secp256k1- ზე, და ეს არ შეცვალოს აქ. კუნძული კომპიუტერში შეუძლია შეტყობინება და რეალურ დროში მომხმარებელს შეტყობინება. რა არის ჰიბრიდული Key Exchange- ის დაკარგვა: ამჟამად-descrypt- later: ამჟამად სატვირთო სატვირთო შეტყობინება დღეს არ შეუძლია მას შემდეგ წაიკითხოს. ეს არ იძლევა შეტყობინება, რომელიც არ არის შეტყობინება, ვინც უკვე აქვს მანქანა. ეს განსხვავება განკუთვნილია აპლიკაციებს - padlock- ის შეტყობინება ატვირთვა დატვირთვა დატვირთვა დატვირთვა, და ისინი
ეს ასევე შეზღუდვა, რაც გამოქვეყნდა 4 სექციაში შეუძლია დაპირება. ბმული NPUB და ML-KEM key არის secp256k1 შეტყობინება, ასე რომ კონტაქტი, რომელიც შეუძლია შეტყობინება მათ შეუძლია შეცვალოს საკუთარი key. confidentiality against a future adversary is not the same as authenticity against one.
10.3 მეტატონები
გარიგების შეფუთვა შეშფოთებს გადამცემი, მივიღე მეტი ერთი p ტექსტი, ტიპი და დროის ტუმბოს ინტერიერის შეტყობინება. ეს არ განიცდიან, რომ მოვლენები არსებობს, მისი ზომა, ან როდესაც რედაქტი მიიღო. ტრანსპორტის ანალიზი არ განკუთვნილია ნებისმიერი ნაწილი ამ დიზაინი.
10.4 Offline მექანიზმი
Nymchat- ის Bluetooth ქსელის გადაზიდვა არის განსხვავებული პოსტი, რომელიც აქვს საკუთარი handshake, და ეს არ არის მოიცავს ამ სამუშაოზე. შეტყობინებები ქსელის შესახებ კლასიკურია.
10.5 შეტყობინებები უკვე გამოგზავნილია
ციფრული ტექსტი დარეგისტრირებულია, ხოლო ორივე მხარეს ჯერ კიდევ კლასიკური კლასიკური მგრძნობიარეა. ეს უკვე არსებობს და არ შეიძლება გადაიხადოს. დაცვა დაიწყება შეტყობინებით, სადაც ორივე მხარეს შეჩერდა პოსტი კუნთულ კურსი, არა ამ დროს, როდესაც ფუნქცია ჩართულია.
11განიხილული ვარიანტი
| მიმოხილვა | რატომ არ |
|---|---|
| Post-quantum key- ის გამოცემა identity key- ის გამოცემა | გამოქვეყნებული. გამოქვეყნებული არის საზოგადოებრივი ალგორტიზმი nsec- ზე, და კუნთული კონტაქტი იღებს nsec- ზე გამოქვეყნებული npub- ისგან, ასე რომ კლასიკური ნახევარი ხელები შევიდა პოსტი კუნთული ნახევარი მასთან ერთად. ეს გადაწყვეტა ყველა გაზიანების პრობლემა ამ სტატიაში და არ შეესაბამება ვინმეს. სექცია 3.1. |
| გადაზიდვა root მომხმარებლის სხვა მოწყობილობები NIP-44 | იგივე მიზეზით განსხვავებული ტანსაცმელი. კლასიკური მხოლოდ კოდიფიკაციის ქვეშ გამოქვეყნებული როლი შეიძლება გადარჩენა ვინმეს, ვინც დარეგისტრირდა, რომ შეტყობინება და უარყოფს მისი კურსი შემდეგ, რომელიც არის საპირისპირო, რომ როლი არსებობს, რათა შეწყვიტოს. |
| ML-KEM keypair თითოეული მოწყობილობზე | დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში. |
| შეფუთვა root ქვემოთ PIN | 4 ციფრული PIN არის დაახლოებით 13 ბიტები off-line სატვირთო მქონე შეფუთული ხაზი. გთავაზობთ იგი ორი 256-bit პლატფორმაზე, რომელიც არ იპოვებს, რა ღირს სავარაუდო შეფუთვა. |
| NPUB- ის გაფართოება, რათა შეიცავს ორი კურსი. | 1,184 ბეტატი არ არის გაზიარება ID, და ეს გაზიარებს ნებისმიერი ხელმისაწვდომი Nostr კლიენტების შეამოწმება მისამართი, რომელიც განმარტებულია როგორც 32 ბეტატი. |
| Key Directory მომსახურება | დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში. |
| დააყენეთ ღილაკს თითოეული შეტყობინება | არ გადაიხადოს არაფერი: გადამცემი საჭიროა რეიტინგი პირველი შეტყობინების წინასწარ გამოხატვა, რაც იმ შემთხვევაში არის, თუ არ არის წინასწარ შეტყობინება. |
| In-band შესაძლებლობები | დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში |
| Post-quantum მხოლოდ, არ არის კლასიკური ფეხი | წლების განმავლობაში secp256k1 ანალიზი გადაიხადოს უფრო ახალგაზრდა პრიმიტიული. ჰიბრიდს მხოლოდ შეუწყობს, თუ ორივე არ არის. |
12მიწოდების პარამეტრები
Nymchat აწარმოებს ორი დამოუკიდებელი განლაგება ამ სტრუქტურა - ერთი JavaScript- ისთვის ვებ განაცხადისთვის, ერთი Dart- ისთვის მობილური განაცხადისთვის, მათ შორის ML-KEM-768 პორტი. ორი განლაგება იგივე პრიმიტიფიკური ჩვეულებრივ არის პასუხისმგებლობა, ასე რომ ისინი შეესაბამება ერთმანეთს, ვიდრე Trusted შეესაბამება.
Dart ML-KEM- ის განახლება ოფიციალურად შეესაბამება
NIST ACVP
დასაწყისში დასაწყისში დასაწყისში დასაწყისში დასაწყისში (ML-KEM-*-FIPS203) — 25 key-generation, 25 encapsulation და 10 decapsulation შემთხვევაში, მუშაობს, როგორც მათი საკუთარი სერვისი. ეს არის ვიქტორები NIST გამოქვეყნდა, რათა დააუმჯობესოს განლაგება, ასე რომ მათ გადაცემა არის ტესტი პორტი არის სწორი, არა მხოლოდ ტესტი, რომ ორი კლიენტები შეესაბამება მათთან ერთად. გარდა ამისა, ერთობლივი კონფიგურაცია ტესტი ვიქტორები — seed derivation, encapsulation, both payload formats, and complete gift wraps — არის გენერირებული from the JavaScript reference and checked by both test suites. root secret გააუმჯობესებს, რომ კონფიგურაცია, ვიდრე შეცვალოს: root to seed, root to keypair, root’s public fingerprint, და derived key, non
nympq1… კოდი იმას ნიშნავს, რომ შეტყობინება შეზღუდულია, ან შეზღუდულია, რომ შეტყობინება შეზღუდულია. შეზღუდვა ერთ-ერთი განახლება არ აწარმოებს შეტყობინებას, რომელიც სხვა კლიენტს არ შეუძლიათ გახდეს.
ეს არის ის, რაც აცხადებს, რომ მოწყობილობა “ ეს არის root I hold” from “ ეს არის განსხვავებული one”, და კლიენტს, რომელიც არ შეუძლია რეპუტაცია სხვა კლიენტების fingerprint არ იხილოთ სრულყოფილი კარგი ჩანაწერი, როგორც არ არსებობს ჩანაწერი - და შემდეგ, შემდეგ სექცია 3.3, შეინახოთ მეორე root და გაზიაროთ identity. ეს არის ვიქტორს მხოლოდ ამ მიზეზი.
Nymchat არის Open წყარო AGPL-3.0. კრეპტოფიკური კრეპტოფიკური კრეპტოფიკური კრეპტოფიკური კრეპტოფიკური კრეპტოფიკური კრეპტოფიკური კრეპტოფიკური
js/nym-crypto.js და js/modules/pq.js ვებ კლიენტში, და
lib/core/crypto/ ერთად lib/features/identity/pq_registry.dart მობილური კლიენტები
არქიტექტური და არქიტექტური შეტყობინებები, იხილეთ Knowledge Base გვერდზე quantum-resistant encryption.