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 pats par sevi. ['nymthread', rootId] etiķete šifrētās baumas iekšpusē, atsaucoties uz saknes kopīgo ziņojumu ID. |
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]Tērauda atbilde pievieno NIP-10 marķējumu ['e', rootId, '', 'root'] Tagad ir. |
23333 | Nosaukta kanāla ziņojums | Īslaicīga, atzīmēta ['d', channel]Tērauda atbilde pievieno NIP-10 marķējumu ['e', rootId, '', 'root'] Tagad ir. |
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, šifrētu iestatījumu sinhronizācija un paziņojumi pēc kvantu atslēgas (atzīmēti nym-pq, kurā ir ML-KEM-768 publiskā atslēga ar NIP-40 derīguma termiņu). |
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. |
| Nīderlande 10 | Iezīmētas atbildes tagi — kā kanāla stieņa atbilde norāda uz tās sakņu ziņojumu. |
| 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. |
| Privātas ziņas un grupu tērzēšana starp Nymchat lietotājiem | Tāda pati NIP-44 v2 lietderīgā slodze, nemainīta, otrreiz noslēgta ChaCha20-Poly1305 iekšpusē, kas atslēgta no ML-KEM-768 (FIPS 203) enkapsulācijas caur HKDF-SHA256. pq2. prefikss, lai lasītājs izvēlētos ceļu, pārbaudot lietderīgo slodzi. abiem slāņiem ir jānojauc, lai atgūtu ziņojumu. skatīt kvantu izturīga šifrēšana. |
| 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.