Okubelelwe elwazini Ngaphantsi kwe-hood
Umgaqo-nkqubo kunye neziganeko
Yintoni ebekwa nguNymchat kwintambo, kuye nabani na owakhayo ngokuchasene nayo, ukuyiphicotha, okanye ukufunda iziganeko komnye umxhasi weNostr.
Eli phepha liguqulelwe ngoomatshini ukuze kube lula. Uqobo lwesiNgesi yinguqulelo esebenzayo.
Iintlobo zesiganeko
| Ububele | Isetyenziselwa | Amanqaku |
|---|---|---|
0 | Imetadata yeprofayile | Iprofayile yeNostr esemgangathweni: igama, umfanekiso, ibhanile, malunga, lud16. |
5 | Izicelo zokucinywa | I-NIP-09. |
7 | Iimpendulo | NIP-25, kunye a ['k', originalKind] ithegi ukuze impendulo ifakwe ngokuchasene nodidi lwejelo oluchanekileyo. |
13 | Itywina | Umaleko ophakathi womyalezo we-NIP-17. |
14 | Amarhe omyalezo wabucala | Unsigned, kwaye ayidlulanga ngokufanelekileyo. A thread reply carries a ['nymthread', rootId] tags ngaphakathi rumor encrypted, referencing id umyalezo wahlanganyeli. |
1059 | Ukusonga isipho | I-NIP-59. Eyona nto ifikelela kwi-relay yemiyalezo yabucala kunye neencoko zeqela. |
1984 | Ingxelo | I-NIP-56. |
9734 / 9735 | Isicelo seZap kunye nerisithi yezap | I-NIP-57. |
10030 | Uluhlu lwepakethe ye-emoji eyenzelwe wena | I-NIP-30. |
20000 | Umyalezo wetshaneli yeGeohash | Ephemeral, tagged ['g', geohash]. Umxholo we-thread ibandakanya i-NIP-10 ebandayo ['e', rootId, '', 'root'] iimveliso |
23333 | Umyalezo wesitishi onikwe igama | Ephemeral, tagged ['d', channel]. Umxholo we-thread ibandakanya i-NIP-10 ebandayo ['e', rootId, '', 'root'] iimveliso |
24420 / 24421 | Izalathi zokuchwetheza zikawonke-wonke kunye neerisithi zokufunda | I-Nymchat-specific, yamajelo oluntu. |
25051 / 25052 | Ukubonisana koontanga kunye nobume bokudluliselwa kwefayile | Nymchat-specific. |
30030 | Iiseti ze-emoji eziqhelekileyo | I-NIP-30. |
30078 | Idatha yesicelo | I-NIP-78. Iipoli, useto olufihliweyo ungqamaniso, kunye nezibhengezo ze-post-quantum eziphambili (iphawulwe nym-pq, ephethe i-ML-KEM-768 isitshixo sikawonkewonke kunye nokuphelelwa yisikhathi kwe-NIP-40). |
69420 | Iirisithi zokufunda zabucala kunye nobume bokuhanjiswa | I-Nymchat-specific, ithwalwe njengamahemuhemu ngaphakathi kwisisongelo sesipho. Uhlobo olwahlukileyo 14 ngabom, ukuze abanye abaxhasi be-NIP-17 banganikezeli ngemiyalezo engenanto ngokuthe ngqo kwirisithi nganye. |
NIPs Nymchat izixhobo
| I-NIP | Yintoni enika iNymchat |
|---|---|
| I-NIP-07 | Ngena ngesandiso sebhrawuza. |
| I-NIP-09 | Izicelo zokucinywa. |
| Iimveliso ze-10 | I-Tags ye-reply ye-Marked – njani i-reply ye-trade ye-channel ibonisa kwi-root message yayo. |
| I-NIP-13 | Ubungqina bomsebenzi. Imiyalezo ephumayo yombiwa ukuya kutsho kumasuntswana ali-16 ubuncinane. |
| I-NIP-17 | Imiyalezo ethe ngqo yabucala, kunye nesiseko sencoko yeqela. |
| I-NIP-25 | Iimpendulo. |
| I-NIP-30 | I-emoji eqhelekileyo. |
| I-NIP-40 | Izitampu zokuphelelwa kwexesha — imiyalezo enyamalalayo. |
| I-NIP-44 | Uguqulelo oluntsonkothileyo, olusetyenziselwa amatywina, ukusonga kunye nolungelelwaniso lwezicwangciso. |
| I-NIP-46 | Ukusayinwa okude - bunker://. |
| I-NIP-56 | Ingxelo. |
| I-NIP-57 | Izaphu zombane. |
| I-NIP-59 | Ukusonga izipho. |
| I-NIP-78 | Idatha yesicelo esingenasizathu. |
| I-NIP-98 | I-HTTP auth, yeendawo eziphethweyo. |
Ubhalo ngokufihlakeleyo
| Apho | Intoni |
|---|---|
| Isazisi kunye notyikityo | secp256k1 kunye neesignitsha zeSchnorr (BIP-340), njengoko uNostr echaza. |
| Imiyalezo yabucala kunye neencoko zeqela | NIP-44 v2: ECDH kwi-secp256k1, HKDF-SHA256, ChaCha20 nge-HMAC-SHA256, kunye ne-padding ngoko ubude be-ciphertext abuniki ubude bomyalezo kude. |
| Imiyalezo yabucala kunye neencoko zeqela, phakathi kwabasebenzisi beNymchat | I-NIP-44 v2 efanelekileyo efanelekileyo, efanelekileyo, ifakwe ngexesha elinye kwi-ChaCha20-Poly1305 ifakwe ukusuka kwi-ML-KEM-768 (FIPS 203) encapsulation nge-HKDF-SHA256. I-encapsulation encryption text kunye neenkcukacha ze-identity zihlanganisa njenge-data efanelekileyo, kwaye i-resultat ibonisa i-encapsulation encryption key. pq2. i-prefix ukuze umdlali ukhethe i-path ngokucacisa i-payload. Zonke iingxaki ziquka ukufumana i-message. quantum-resistant uguqulelo oluntsonkothileyo. |
| Iiseshoni zeBluetooth mesh | I-Noise XX - X25519, ChaCha20-Poly1305 (IETF), Ed25519 yokubhengeza iisignesha, i-SHA-256 kunye ne-HMAC ngaphantsi. |
| Isazisi ekuphumleni | I-AES-GCM-256. Isitshixo sivela kwi-PBKDF2-SHA256 kwi-310,000 iterations ye-password okanye i-PIN, okanye kwi-WebAuthn PRF ephumayo nge-HKDF-SHA256 ye-passkey okanye i-biometric. |
| Iminxeba kunye nokudluliselwa kweefayile | I-WebRTC yeyakho i-DTLS-SRTP, kuthethathethwane malunga ne-NIP-17-isongelwe umqondiso. |
| Ukungakhethi | Iqonga CSPRNG kuyo yonke - izitshixo, nonces, kunye nesipho-songa timestamp jitter. |
Ukhuseleko lweMetadata
Iinkcukacha ezimbini kwindlela yokusonga isipho zifanelekile ukubiza, kuba zizo ezahlula i-NIP-59 ukusuka "ku-encrypted, kodwa ngokucacileyo ukusuka kuwe ukuya kubo":
- Yonke isongelo isayinwe ngu a isitshixo sexesha elinye yenzelwe lo myalezo kuphela, ngoko akukho zisonga ezimbini zabelana ngomthumeli.
- Yonke into yokusonga
created_atyi ngokungacwangciswanga umva ukuya kuthi ga kwisibini iiyure usebenzisa i-CSPRNG, ngoko ke thumela kwaye ufumane amaxesha akanakudweliswa.
Iincoko zeqela zongeza i-ephemeral ejikelezayo umamkeli izitshixo ngaphezulu koko - bona Lusebenza njani uguqulelo oluntsonkothileyo lweqela.
I-crypto primitives ingaphakathi js/nym-crypto.js kwaye
js/modules/key-vault.js kwi-app yewebhu, nangaphantsi
android-ios-app/lib/core/crypto/ kwaye
lib/services/mesh/noise/ kwi-app yeFlutter. I
indawo yokugcina
yi AGPL-3.0 kwaye igqityiwe - akukho candelo livaliweyo ukuthatha ukuthembela.