Gara qabiyyee isaatti darbaa
Gara Nymchat tti deebi'a

Bu’uura beekumsaa Hoodii jalatti

Pirootokoolii fi taateewwan

Waan Nymchat qabatamaan wayaa irratti kaa'u, nama isa irratti ijaaru kamiifuu, odiitii gochuu, ykn taateewwan maamila Nostr biraa irraa dubbisuu.

Gosa taateewwanii

AkaakuuKan itti fayyadamuHubachiisa
0Meetadaataa piroofaayiliiStandard Nostr profile: maqaa, suuraa, banner, waa'ee, . lud16.
5Gaaffii haquuNIP-09 jedhamuun beekama.
7Deebiin kennamuNIP-25, kan a ['k', originalKind] tag kanaaf deebii gosa chaanaalii sirrii irratti galmaa'a.
13ChaappeessuuLaayibarii gidduu ergaa NIP-17.
14Oduu ergaa dhuunfaaMallatteeffamee malee, akkasumas yeroo hunda kan qofaan hin maxxanfamin. Deebiin saphaa tokko... ['nymthread', rootId] taagii himba kan rincicii qabu keessa jiru, kan ID ergaa bu'uraa qoodame agarsiisu.
1059Kennaa marachuuNIP-59 jedhamuun beekama. Wanti qabatamaan ergaa dhuunfaa fi garee waliin haasa'uuf rileey bira ga'a.
1984GabaasaNIP-56 jedhamuun beekama.
9734 / 9735Gaaffii zap fi nagahee zapNIP-57 jedhamuun beekama.
10030Tarreewwan paakkii imoojii amalaNIP-30 jedhamuun beekama.
20000Ergaa chaanaalii GeohashEphemeral, kan mallattoo itti godhame ['g', geohash]. Deebiin threadii mallatteeffame NIP-10 dabala. ['e', rootId, '', 'root'] mallattoo.
23333Ergaa chaanaalii moggaafameEphemeral, kan mallattoo itti godhame ['d', channel]. Deebiin threadii mallatteeffame NIP-10 dabala. ['e', rootId, '', 'root'] mallattoo.
24420 / 24421Agarsiistota barreessuu ummataa fi nagahee dubbisaaNymchat-specific, chaanaalii ummataaf.
25051 / 25052Mallattoo hiriyaa fi haala dabarsuu faayiliiNymchat kan adda ta'e.
30030Tuuta imoojii amalaNIP-30 jedhamuun beekama.
30078Daataa iyyannooNIP-78 jedhamuun beekama. Filannoo, walsimsiisa qindaa'inoota icciitii ta'an, fi beeksisa furtuu kuwantum boodaa (tagged nym-pq, furtuu uummataa ML-KEM-768 kan yeroon isaa NIP-40 xumurame qabate).
69420Nagahee dubbisa dhuunfaa fi haala geejjibaaNymchat-specific, akka oduutti kan qabame kennaa marfata keessaa. Gosa adda ta'e irraa 14 itti yaadanii, kanaaf maamiltoonni NIP-17 biroo nagahee hundaaf ergaa kallattii duwwaa hin dhiyeessan.

NIPs Nymchat hojiirra oolcha

NIPWaan inni Nymchat kennu
NIP-07 jedhamuun beekamaEksteenshinii biraawzariin seena.
NIP-09 jedhamuun beekamaGaaffii haquu.
NIP-10Tagiiwwan deebii mallatteeffaman — akki deebiin threadii channel itti ergaa bu'uura isaatti geggeessu.
NIP-13Ragaa hojii. Ergaawwan ba'an yoo xiqqaate gara bitti 16tti qotamu.
NIP-17 jedhamuun beekamaErgaawwan kallatti dhuunfaa, fi bu'uura marii garee.
NIP-25Deebiin kennamu.
NIP-30 jedhamuun beekamaImoojii amala.
NIP-40 jedhamuun beekamaChaappaawwan yeroo xumuraa — ergaawwan badan.
NIP-44 jedhamuun beekamaIcciitii versioned, chaappaa, marfama fi qindaa'inoota walsimsiisuuf fayyadama.
NIP-46 jedhamuun beekamaFageenya irraa mallatteessuu — . bunker://.
NIP-56 jedhamuun beekamaGabaasa.
NIP-57 jedhamuun beekamaZaps balaqqeessaa.
NIP-59 jedhamuun beekamaKennaawwan marfata.
NIP-78 jedhamuun beekamaDaataa iyyannoo fedhii malee.
NIP-98 jedhamuun beekamaHTTP auth, qabxiiwwan xumuraa keessummeessamaniif.

Kirpitoogiraafii

EessaMaal
Eenyummaa fi mallattoosecp256k1 mallattoolee Schnorr (BIP-340) waliin, akkuma Nostr ibsutti.
Ergaa dhuunfaa fi marii gareeNIP-44 v2: ECDH secp256k1 irratti, HKDF-SHA256, ChaCha20 HMAC-SHA256 waliin, fi padding kanaaf dheerinni barruu icciitii dheerina ergaa hin kennu.
Ergaawwan dhuunfaa fi marii garee, fayyadamtoota Nymchat gidduuttiPayload NIP-44 v2 kan sana, hin jijjiiramne, lammataaf ChaCha20-Poly1305 keessatti HKDF-SHA256 keessaan ML-KEM-768 (FIPS 203) encapsulation irraa kofee fudhatameen cufe. Ciphertext encapsulation sanaa fi kofeen beekamtii lamaan akka dataa walitti hidhamuutti (associated data) walitti hidhamu, bu'aan isaa immoo... pq2. aanffoo kan dubbi-dhabeessaan baala xiinxaluun karaa filatu. Ergaa deebisuuf kutaan lamaanuu cabamuu qabu. Ilaali icciitii kuwantum-danda’u.
Kutaawwan meeshaa BiltuutiiSagalee XX — X25519, ChaCha20-Poly1305 (IETF), Ed25519 mallattoo beeksisaaf, SHA-256 fi HMAC jalatti.
Eenyummaa boqonnaa irrattiAES-GCM-256 jedhamuun beekama. Furtuu PBKDF2-SHA256 irraa irra deddeebiiwwan 310,000 irratti jecha icciitii ykn PIN, ykn firii WebAuthn PRF irraa karaa HKDF-SHA256 furtuu darbiinsaa ykn baayoomeetiriif dhufa.
Bilbilaa fi dabarsuu faayilootaWebRTC mataa isaa DTLS-SRTP, mallattoo NIP-17-wrapped irratti mari'ate.
Tasa ta'uuWaltajjiin CSPRNG guutuu — furtuuwwan, nonces, fi jitter chaappaa yeroo kennaa-marfachuu.

Eegumsa meetadaataa

Karaa kennaa-marfachuu keessatti ibsi bal'aan lama waamuun barbaachisaadha, sababiin isaas isaan waan NIP-59 addaan baasu waan ta'aniif "encrypted ta'e, garuu si irraa gara isaaniitti akka ta'e ifaadha" irraa:

  • Marsaan hundi mallatteeffama a furtuu yeroo tokkoo ergaa sana qofaaf kan maddisiifame, . kanaaf marfamtoonni lama ergituu hin qooddanne.
  • Marfata hunda kan created_at dha akka tasaa hanga lamaatti duubatti deebi’e sa’aatii CSPRNG fayyadamuun, kanaaf yeroon erguu fi fudhachuu sararamuu hin danda'u.

Chaatiiwwan garee ephemeral naanneffamuu dabalu fudhataa furtuuwwan sana gubbaatti — ilaali Akkaataa icciitii garee itti hojjetu.

Madda isaa dubbisaa

Primitives kirpitoo keessa jiru js/nym-crypto.js fi js/modules/key-vault.js appii weeb keessatti, fi jalatti android-ios-app/lib/core/crypto/ fi lib/services/mesh/noise/ appii Flutter jedhu keessatti. Icha kuusaa AGPL-3.0 fi guutuudha — qaamni cufame amantaa fudhachuuf hin jiru.