Pitani ku zomwe zili
Bwererani ku Nymchat

Maziko a chidziwitso Pansi pa hood

Protocol ndi zochitika

Zomwe Nymchat imayika pawaya, kwa aliyense womanga motsutsana nazo, kuwunika, kapena kuwerenga zochitika kuchokera kwa kasitomala wina wa Nostr.

Mitundu ya zochitika

ZokomaZogwiritsidwa ntchitoZolemba
0Mbiri ya metadataMbiri ya Standard Nostr: dzina, chithunzi, mbendera, pafupifupi, lud16.
5Zopempha zochotsaNIP-09.
7ZochitaNIP-25, ndi a ['k', originalKind] tag kuti mayankho afayidwe motsutsana ndi njira yoyenera.
13ChisindikizoChigawo chapakati cha uthenga wa NIP-17.
14Mphekesera zachinsinsiZosayinidwa, ndipo sizinasindikizidwe zokha.
1059Kukulunga kwamphatsoNIP-59. Zomwe zimafika pakupatsirana kwa mauthenga achinsinsi ndi macheza amagulu.
1984LipotiNIP-56.
9734 / 9735Pempho la Zap ndi chiphaso cha zapNIP-57.
10030Mindandanda yapaketi ya emojiNIP-30.
20000Uthenga wa GeohashEphemeral, tagged ['g', geohash].
23333Uthenga wotchulidwa panjiraEphemeral, tagged ['d', channel].
24420 / 24421Zizindikiro zolembera pagulu ndi malisiti owerengeraNymchat-specific, yamatchanelo agulu.
25051 / 25052Kusainira kwa anzawo ndi kusamutsa mafayiloNymchat-mwachindunji.
30030Makasitomala a emojiNIP-30.
30078Zambiri zamapulogalamuNIP-78. Mavoti, ndi kulunzanitsa zosintha zobisika.
69420Malisiti owerengera achinsinsi komanso mawonekedwe otumiziraNymchat-mwachindunji, yotengedwa ngati mphekesera mkati mwa chokulunga champhatso. Mtundu wosiyana ndi 14 dala, kotero kuti makasitomala ena a NIP-17 samapereka mauthenga achindunji opanda kanthu pa risiti iliyonse.

NIPs Nymchat zida

NIPZomwe zimapatsa Nymchat
NIP-07Lowani ndi msakatuli wowonjezera.
NIP-09Zopempha zochotsa.
NIP-13Umboni wa ntchito. Mauthenga otuluka amakumbidwa mpaka ma bits 16.
NIP-17Mauthenga achinsinsi, komanso maziko a macheza amagulu.
NIP-25Zochita.
NIP-30Emoji mwamakonda.
NIP-40Zizindikiro zotha ntchito - mauthenga osowa.
NIP-44Kubisa kosinthidwa, komwe kumagwiritsidwa ntchito ngati zisindikizo, zokutira ndi kulunzanitsa makonda.
NIP-46kusaina kutali - bunker://.
NIP-56Lipoti.
NIP-57Mphezi zaps.
NIP-59Zovala zamphatso.
NIP-78Zambiri zamagwiritsidwe ntchito mwachisawawa.
NIP-98HTTP auth, pazotsatira zomwe zasungidwa.

Zojambulajambula

KutiChani
Identity ndi ma signaturesecp256k1 ndi ma signature a Schnorr (BIP-340), monga Nostr amanenera.
Mauthenga achinsinsi komanso macheza amaguluNIP-44 v2: ECDH pa secp256k1, HKDF-SHA256, ChaCha20 yokhala ndi HMAC-SHA256, ndi padding kotero kuti kutalika kwa mawu sikupereka kutalika kwa uthenga.
Bluetooth mesh magawoNoise XX — X25519, ChaCha20-Poly1305 (IETF), Ed25519 polengeza siginecha, SHA-256 ndi HMAC pansi.
Identity pa mpumuloAES-GCM-256. Kiyi imachokera ku PBKDF2-SHA256 pa 310,000 iterations ya mawu achinsinsi kapena PIN, kapena kuchokera ku WebAuthn PRF yotulutsa kudzera pa HKDF-SHA256 ya passkey kapena biometric.
Kuyimba ndi kusamutsa mafayiloWebRTC's DTLS-SRTP yake, yokambirana pa siginecha yokutidwa ndi NIP-17.
MwachisawawaPulatifomu CSPRNG ponseponse - makiyi, ma nonces, ndi jitter yokulunga nthawi yanthawi.

Chitetezo cha metadata

Zambiri ziwiri munjira yokulunga-mphatso ndizofunikira kuyitanitsa, chifukwa ndizomwe zimasiyanitsa NIP-59 kuchokera ku "encrypted, koma mwachiwonekere kuchokera kwa inu kupita kwa iwo":

  • Chovala chilichonse chimasainidwa ndi a kiyi yanthawi imodzi kupangidwa kwa meseji yokhayo, kotero palibe zokulunga ziwiri zomwe zimagawana wotumiza.
  • Chovala chilichonse created_at ndi kusinthidwa mwachisawawa mpaka awiri maola pogwiritsa ntchito CSPRNG, kotero kutumiza ndi kulandira nthawi sikungapangidwe.

Macheza amagulu amawonjezera ma ephemeral ozungulira wolandira makiyi pamwamba pa izo - onani Momwe kubisa kwamagulu kumagwirira ntchito.

Kuwerenga gwero

Zoyamba za crypto zili mkati js/nym-crypto.js ndi js/modules/key-vault.js mu pulogalamu yapaintaneti, ndi pansi android-ios-app/lib/core/crypto/ ndi lib/services/mesh/noise/ mu pulogalamu ya Flutter. The posungira ndi AGPL-3.0 ndipo wathunthu - palibe chigawo chotsekedwa kuti mukhulupirire.