Zināšanu bāze Zem pārsega
Protokols un notikumi
Tas, ko Nymchat patiesībā liek uz vadiem ikvienam, kas pret to būvē, to auditēt vai nolasīt notikumus no cita Nostr klienta.
Ērtības labad šī lapa ir mašīntulkota. Piemērotā versija ir oriģināls angļu valodā.
Pasākumu veidi
| Laipni | Lietots priekš | Piezīmes |
|---|---|---|
0 | Profila metadati | Standarta Nostr profils: vārds, attēls, reklāmkarogs, par, lud16. |
5 | Dzēšanas pieprasījumi | NIP-09. |
7 | Reakcijas | NIP-25, ar a ['k', originalKind] tagu, lai tiktu iesniegta reakcija pret pareizo kanāla veidu. |
13 | Zīmogs | NIP-17 ziņojuma vidējais slānis. |
14 | Privātās ziņas baumas | Neparakstīts un nekad nav publicēts atsevišķi. |
1059 | Dāvanu iesaiņojums | NIP-59. Kas faktiski sasniedz privāto ziņojumu un grupu tērzēšanas releju. |
1984 | Ziņošana | NIP-56. |
9734 / 9735 | Zap pieprasījums un zap kvīts | NIP-57. |
10030 | Pielāgoti emocijzīmju pakotņu saraksti | NIP-30. |
20000 | Geohash kanāla ziņojums | Īslaicīga, atzīmēta ['g', geohash]. |
23333 | Nosaukta kanāla ziņojums | Īslaicīga, atzīmēta ['d', channel]. |
24420 / 24421 | Publiski mašīnrakstīšanas indikatori un lasīšanas kvītis | Īpaši Nymchat, publiskiem kanāliem. |
25051 / 25052 | Vienādranga signalizācija un failu pārsūtīšanas statuss | Specifiski Nymchat. |
30030 | Pielāgoti emocijzīmju komplekti | NIP-30. |
30078 | Lietojumprogrammu dati | NIP-78. Aptaujas un šifrētu iestatījumu sinhronizācija. |
69420 | Privātas lasīšanas kvītis un piegādes statuss | Īpaši Nymchat, tiek nēsāts kā baumas dāvanu iesaiņojumā. Atsevišķs veids no 14 apzināti, tāpēc citi NIP-17 klienti neveido tukšus tiešos ziņojumus par katru kvīti. |
NIPs Nymchat ievieš
| NĪP | Ko tas dod Nymchat |
|---|---|
| NIP-07 | Piesakieties, izmantojot pārlūkprogrammas paplašinājumu. |
| NIP-09 | Dzēšanas pieprasījumi. |
| NIP-13 | Darba apliecinājums. Izejošie ziņojumi tiek iegūti vismaz līdz 16 bitiem. |
| NIP-17 | Privāti tiešie ziņojumi un grupas tērzēšanas pamats. |
| NIP-25 | Reakcijas. |
| NIP-30 | Pielāgotas emocijzīmes. |
| NIP-40 | Derīguma termiņa zīmogi — pazūd ziņojumi. |
| NIP-44 | Versionēta šifrēšana, ko izmanto plombu, aptinumu un iestatījumu sinhronizēšanai. |
| NIP-46 | Attālā parakstīšana - bunker://. |
| NIP-56 | Ziņošana. |
| NIP-57 | Zibens zap. |
| NIP-59 | Dāvanu iesaiņojumi. |
| NIP-78 | Patvaļīgi pieteikuma dati. |
| NIP-98 | HTTP autentifikācija mitinātajiem galapunktiem. |
Kriptogrāfija
| Kur | Kas |
|---|---|
| Identitāte un paraksti | secp256k1 ar Schnorr parakstiem (BIP-340), kā norāda Nostr. |
| Privātās ziņas un grupu tērzēšana | NIP-44 v2: ECDH uz secp256k1, HKDF-SHA256, ChaCha20 ar HMAC-SHA256 un polsterējumu, lai šifrētais teksts nezaudētu ziņojuma garumu. |
| Bluetooth tīkla sesijas | Troksnis XX — X25519, ChaCha20-Poly1305 (IETF), Ed25519 parakstu paziņošanai, SHA-256 un HMAC apakšā. |
| Identitāte miera stāvoklī | AES-GCM-256. Atslēga tiek iegūta no PBKDF2-SHA256 ar 310 000 iterāciju parolei vai PIN vai no WebAuthn PRF izvades, izmantojot HKDF-SHA256 piekļuves atslēgu vai biometriskos datus. |
| Zvani un failu pārsūtīšana | WebRTC paša DTLS-SRTP, kas saskaņots, izmantojot NIP-17 ietītu signalizāciju. |
| Nejaušība | Visā platformā CSPRNG — atslēgas, iesaiņojuma laikspiedols trīcē. |
Metadatu aizsardzība
Dāvanu iesaiņošanas ceļā ir vērts pieminēt divas detaļas, jo tās atdala NIP-59 no "šifrēta, bet acīmredzot no jums viņiem":
- Katru iesaiņojumu paraksta a vienreizēja atslēga ģenerēts tikai šim ziņojumam, tāpēc nav divu wraps kopīgu sūtītāju.
- Katrs aptinums
created_atir nejauši atpakaļ datēts līdz diviem stundas izmantojot CSPRNG, tāpēc sūtīšanas un saņemšanas laikus nevar sakārtot.
Grupu tērzēšana pievieno rotējošu īslaicīgu raksturu saņēmējs atslēgas pa virsu — skat Kā darbojas grupas šifrēšana.
Kriptoprimitīvi ir iekšā js/nym-crypto.js un
js/modules/key-vault.js tīmekļa lietotnē un zem
android-ios-app/lib/core/crypto/ un
lib/services/mesh/noise/ lietotnē Flutter. The
krātuve
ir AGPL-3.0 un pabeigts — nav neviena slēgta komponenta, kas varētu uzticēties.