Bilim binýady Kapotyň aşagynda
Protokol we wakalar
Nymçatyň aslynda simiň üstünde goýýan zady, oňa garşy gurýan her bir adam üçin, barlamak ýa-da başga bir Nostr müşderisinden wakalary okamak.
Bu sahypa amatlylyk üçin maşyn terjime edilýär. Iňlis asyl nusgasy ulanylýan wersiýa.
Çäräniň görnüşleri
| Hoşniýetlilik | Üçin ulanylýar | Bellikler |
|---|---|---|
0 | Profil metadata | Standart Nostr profil: ady, suraty, banner, hakda, lud16. |
5 | Öçürmek haýyşlary | NIP-09. |
7 | Reaksiýalar | NIP-25, a ['k', originalKind] belläň, dogry kanal görnüşine garşy reaksiýa berilýär. |
13 | Möhür | NIP-17 habarynyň orta gatlagy. |
14 | Şahsy habar myş-myşlary | Gol goýulmadyk we hiç wagt özbaşdak çap edilmedi. Möwritiň jogaby bir ['nymthread', rootId] Şifrirlenen gürrüňiň içindäki teg, kökiň paýlaşylan habar ID-sine salgylanýan. |
1059 | Sowgat dolanyşygy | NIP-59. Hususy habarlar we topar söhbetleri üçin aslynda estafeta ýetýän zat. |
1984 | Hasabat | NIP-56. |
9734 / 9735 | Zap haýyşy we zap kwitansiýasy | NIP-57. |
10030 | Omörite emoji paket sanawlary | NIP-30. |
20000 | Geohash kanal habary | Efemeral, bellikli ['g', geohash]. Mowzukdaky jogap NIP-10 belgilenen goşýar. ['e', rootId, '', 'root'] teg. |
23333 | Kanal habary | Efemeral, bellikli ['d', channel]. Mowzukdaky jogap NIP-10 belgilenen goşýar. ['e', rootId, '', 'root'] teg. |
24420 / 24421 | Köpçülikleýin ýazmagyň görkezijileri we kwitansiýalary okamak | Jemgyýetçilik kanallary üçin “Nymchat” -a mahsus. |
25051 / 25052 | Deň-deňdeş signalizasiýa we faýl geçiriş ýagdaýy | Nymchat-a mahsus. |
30030 | Omörite emoji toplumlary | NIP-30. |
30078 | Programma maglumatlary | NIP-78. Saýlawlar, şifrlenen sazlamalar sinhronlamak we kwantdan soňky açar bildirişler (bellikli) nym-pq, NIP-40 möhleti bilen ML-KEM-768 açyk açary götermek). |
69420 | Şahsy okalýan girdejiler we gowşuryş ýagdaýy | Nymchat-a mahsus, sowgat bukjasynyň içinde myş-myş hökmünde göterilýär. Aýry-aýry görnüşler 14 bilkastlaýyn, şonuň üçin beýleki NIP-17 müşderileri her kwitansiýa üçin boş göni habar bermeýärler. |
NIPs Nymchat gurallary
| NIP | Nymchat-a näme berýär |
|---|---|
| NIP-07 | Brauzer giňeltmesi bilen giriň. |
| NIP-09 | Öçürmek haýyşlary. |
| NIP-10 | Belgilenen jogap tegleri — kanal mowzugynyň jogaby özüniň esasy habaryna nähili görkezýändigi. |
| NIP-13 | Işiň subutnamasy. Çykýan habarlar azyndan 16 bit gazylýar. |
| NIP-17 | Şahsy göni habarlar we topar söhbetdeşlikleri üçin esas. |
| NIP-25 | Reaksiýalar. |
| NIP-30 | Omörite emoji. |
| NIP-40 | Möhleti gutarýan wagt bellikleri - ýitip barýan habarlar. |
| NIP-44 | Möhürler, gaplamalar we sazlamalar sinhronlamak üçin ulanylýan wersiýaly şifrlemek. |
| NIP-46 | Uzakdan gol çekmek - bunker://. |
| NIP-56 | Hasabat. |
| NIP-57 | Ningyldyrym çakýar. |
| NIP-59 | Sowgat gaplary. |
| NIP-78 | Esassyz programma maglumatlary. |
| NIP-98 | Geçirilen ahyrky nokatlar üçin HTTP awtor. |
Kriptografiýa
| Nirede | Näme |
|---|---|
| Şahsyýet we gollar | Nostryň görkezişi ýaly, Schnorr gollary bilen (BIP-340) secp256k1. |
| Şahsy habarlar we topar söhbetleri | NIP-44 v2: secp256k1-de ECDH, HKDF-SHA256, HMAC-SHA256 bilen ChaCha20 we şifrlenen tekstiň uzynlygy habaryň uzynlygyny bermeýär. |
| Nymchat ulanyjylarynyň arasynda şahsy habarlar we topar söhbetleri | Şol bir NIP-44 v2 peýdalanyjy maglumaty, üýtgetilmändir, HKDF-SHA256 arkaly ML-KEM-768 (FIPS 203) inkapsulýasiýasyndan alnan açar bilen ChaCha20-Poly1305 içinde ikinji gezek berkidildi. Inkapsulýasiýa şifrlenen teksti we iki sany şahsyýet açary baglanyşykly maglumat hökmünde birleşdirildi we netije bir... pq2. prefiks, şol sebäpli okawçy peýdalanýan maglumaty gözden geçirip, ýoly saýlaýar. Habary dikeltmek üçin iki gatlak hem döwülmeli. Seret kwant çydamly şifrlemek. |
| Bluetooth mesh sessiýalary | Gollary yglan etmek üçin XX - X25519, ChaCha20-Poly1305 (IETF), Ed25519, SHA-256 we HMAC. |
| Dynç alyşda şahsyýet | AES-GCM-256. Açar PBKDF2-SHA256-dan parol ýa-da PIN üçin 310,000 gezek gaýtalanylanda ýa-da açar ýa-da biometrik üçin HKDF-SHA256 arkaly WebAuthn PRF çykyşyndan gelýär. |
| Çagyryşlar we faýl geçirişleri | WebRTC-iň öz DTLS-SRTP, NIP-17 bilen örtülen signal barada gepleşik geçirdi. |
| Tötänlik | CSPRNG platformasy - düwmeler, düwmeler we sowgat bilen örtülen wagt belligi. |
Metadata goragy
Sowgat bilen örtülen ýolda iki jikme-jiklik çagyrmaga mynasypdyr, sebäbi olar NIP-59-dan aýry "şifrlenen, ýöne aç-açan sizden olara":
- Her dolama a bir gezeklik açar Diňe şol habar üçin döredildi, şonuň üçin iberiji paýlaşmaýar.
- Her örtük
created_atbolup durýar tötänleýin iki bilen arkalaşdyrylýar sagat CSPRNG ulanyp, wagt ibermek we almak hatara düzülip bilinmez.
Toparlaýyn söhbetdeşlikler aýlanýan efemeri goşýar alyjy üstündäki düwmeler - serediň Topar şifrlemesi nähili işleýär.
Kripto başlangyçlary bar js/nym-crypto.js we
js/modules/key-vault.js web programmasynda we aşagynda
android-ios-app/lib/core/crypto/ we
lib/services/mesh/noise/ Flutter programmasynda. The
ammar
AGPL-3.0 we doly - ynamy ýapmak üçin ýapyk komponent ýok.