Pāriet uz saturu
Atpakaļ uz Nymchat

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.

Pasākumu veidi

LaipniLietots priekšPiezīmes
0Profila metadatiStandarta Nostr profils: vārds, attēls, reklāmkarogs, par, lud16.
5Dzēšanas pieprasījumiNIP-09.
7ReakcijasNIP-25, ar a ['k', originalKind] tagu, lai tiktu iesniegta reakcija pret pareizo kanāla veidu.
13ZīmogsNIP-17 ziņojuma vidējais slānis.
14Privātās ziņas baumasNeparakstī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.
1059Dāvanu iesaiņojumsNIP-59. Kas faktiski sasniedz privāto ziņojumu un grupu tērzēšanas releju.
1984ZiņošanaNIP-56.
9734 / 9735Zap pieprasījums un zap kvītsNIP-57.
10030Pielāgoti emocijzīmju pakotņu sarakstiNIP-30.
20000Geohash kanāla ziņojumsĪslaicīga, atzīmēta ['g', geohash]Tērauda atbilde pievieno NIP-10 marķējumu ['e', rootId, '', 'root'] Tagad ir.
23333Nosaukta 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 / 24421Publiski mašīnrakstīšanas indikatori un lasīšanas kvītisĪpaši Nymchat, publiskiem kanāliem.
25051 / 25052Vienādranga signalizācija un failu pārsūtīšanas statussSpecifiski Nymchat.
30030Pielāgoti emocijzīmju komplektiNIP-30.
30078Lietojumprogrammu datiNIP-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).
69420Privā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ĪPKo tas dod Nymchat
NIP-07Piesakieties, izmantojot pārlūkprogrammas paplašinājumu.
NIP-09Dzēšanas pieprasījumi.
Nīderlande 10Iezīmētas atbildes tagi — kā kanāla stieņa atbilde norāda uz tās sakņu ziņojumu.
NIP-13Darba apliecinājums. Izejošie ziņojumi tiek iegūti vismaz līdz 16 bitiem.
NIP-17Privāti tiešie ziņojumi un grupas tērzēšanas pamats.
NIP-25Reakcijas.
NIP-30Pielāgotas emocijzīmes.
NIP-40Derīguma termiņa zīmogi — pazūd ziņojumi.
NIP-44Versionēta šifrēšana, ko izmanto plombu, aptinumu un iestatījumu sinhronizēšanai.
NIP-46Attālā parakstīšana - bunker://.
NIP-56Ziņošana.
NIP-57Zibens zap.
NIP-59Dāvanu iesaiņojumi.
NIP-78Patvaļīgi pieteikuma dati.
NIP-98HTTP autentifikācija mitinātajiem galapunktiem.

Kriptogrāfija

KurKas
Identitāte un parakstisecp256k1 ar Schnorr parakstiem (BIP-340), kā norāda Nostr.
Privātās ziņas un grupu tērzēšanaNIP-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ājiemTā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 sesijasTroksnis 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īšanaWebRTC paša DTLS-SRTP, kas saskaņots, izmantojot NIP-17 ietītu signalizāciju.
NejaušībaVisā 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_at ir 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.

Izlasot avotu

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.