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 | Ayityikitywanga, kwaye ayizange ipapashwe ngokwayo. |
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]. |
23333 | Umyalezo wesitishi onikwe igama | Ephemeral, tagged ['d', channel]. |
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. Ii-Polls, kunye ne-encrypted useto sync. |
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. |
| 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. |
| 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, uthethathethwano malunga nomqondiso osongiweyo we-NIP-17. |
| 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.