Bażi ta 'għarfien Taħt il-barnuża
Protokoll u avvenimenti
Dak li Nymchat fil-fatt ipoġġi fuq il-wajer, għal kull min jibni kontrih, verifikah, jew jaqra avvenimenti minn klijent Nostr ieħor.
Din il-paġna hija tradotta bil-magni għall-konvenjenza. L-oriġinal bl-Ingliż huwa l-verżjoni li tapplika.
Tipi ta' avvenimenti
| Tip | Użat għal | Noti |
|---|---|---|
0 | Metadata tal-profil | Profil Nostr Standard: isem, stampa, banner, dwar, lud16. |
5 | Talbiet għat-tħassir | NIP-09. |
7 | Reazzjonijiet | NIP-25, b'a ['k', originalKind] tikketta sabiex tiġi ppreżentata reazzjoni kontra t-tip ta' kanal it-tajjeb. |
13 | Siġill | Is-saff tan-nofs ta 'messaġġ NIP-17. |
14 | Rumor ta’ messaġġ privat | Mhux iffirmat, u qatt ma ppubblikat waħdu. |
1059 | Wrap rigal | NIP-59. Dak li fil-fatt jilħaq relay għal messaġġi privati u chats tal-grupp. |
1984 | Rappurtar | NIP-56. |
9734 / 9735 | Talba ZAP u rċevuta ZAP | NIP-57. |
10030 | Listi ta' pakketti ta' emoji personalizzati | NIP-30. |
20000 | Messaġġ tal-kanal Geohash | Effimeru, tagged ['g', geohash]. |
23333 | Messaġġ tal-kanal imsemmi | Effimeru, tagged ['d', channel]. |
24420 / 24421 | Indikaturi pubbliċi tat-tajping u rċevuti tal-qari | Speċifiku għal Nymchat, għal kanali pubbliċi. |
25051 / 25052 | Is-sinjalar bejn il-pari u l-istatus tat-trasferiment tal-fajls | Speċifiku għal Nymchat. |
30030 | Settijiet ta' emoji personalizzati | NIP-30. |
30078 | Data tal-applikazzjoni | NIP-78. L-istħarriġ, u s-settings kriptati jissinkronizzaw. |
69420 | Irċevuti tal-qari privati u l-istatus tal-kunsinna | Speċifiku għal Nymchat, jinġarr bħala rumor ġewwa wrap rigal. Tip separat minn 14 deliberatament, sabiex klijenti NIP-17 oħra ma jagħtux messaġġi diretti vojta għal kull irċevuta. |
NIPs Nymchat timplimenta
| NIP | Dak li jagħti Nymchat |
|---|---|
| NIP-07 | Idħol b'estensjoni tal-browser. |
| NIP-09 | Talbiet għat-tħassir. |
| NIP-13 | Prova ta' xogħol. Messaġġi ħerġin huma estratti għal mill-inqas 16-il bit. |
| NIP-17 | Messaġġi diretti privati, u l-bażi għal chats tal-grupp. |
| NIP-25 | Reazzjonijiet. |
| NIP-30 | Emoji apposta. |
| NIP-40 | Timbri tal-iskadenza — messaġġi li qed jisparixxu. |
| NIP-44 | Encryption b'verżjoni, użata għal siġilli, garżi u s-sinkronizzazzjoni tas-settings. |
| NIP-46 | Iffirmar mill-bogħod — bunker://. |
| NIP-56 | Rappurtar. |
| NIP-57 | Zaps sajjetti. |
| NIP-59 | Garżi tar-rigali. |
| NIP-78 | Data ta' applikazzjoni arbitrarja. |
| NIP-98 | Awtentikazzjoni HTTP, għall-endpoints ospitati. |
Kriptografija
| Fejn | X'inhu |
|---|---|
| Identità u firem | secp256k1 bil-firem Schnorr (BIP-340), kif jispeċifika Nostr. |
| Messaġġi privati u chats tal-grupp | NIP-44 v2: ECDH fuq secp256k1, HKDF-SHA256, ChaCha20 b'HMAC-SHA256, u padding sabiex it-tul taċ-ċifrat ma jagħtix it-tul tal-messaġġ. |
| Sessjonijiet tal-malji tal-Bluetooth | Storbju XX — X25519, ChaCha20-Poly1305 (IETF), Ed25519 għall-iħabbru firem, SHA-256 u HMAC taħt. |
| Identità fil-mistrieħ | AES-GCM-256. Iċ-ċavetta tiġi minn PBKDF2-SHA256 fi 310,000 iterazzjoni għal password jew PIN, jew minn output WebAuthn PRF permezz ta 'HKDF-SHA256 għal passkey jew bijometrika. |
| Sejħiet u trasferimenti ta' fajls | Id-DTLS-SRTP tal-WebRTC stess, innegozjat fuq is-sinjalar imgeżwer NIP-17. |
| Randomness | Il-pjattaforma CSPRNG madwar — ċwievet, nonces, u l-jitter tat-timbru tar-rigali. |
Protezzjoni tal-metadata
Żewġ dettalji fil-mogħdija tat-tgeżwir tar-rigali ta 'min isejjaħ, għax huma dak li separati NIP-59 minn "encrypted, imma ovvjament mingħandek lilhom":
- Kull wrap huwa ffirmat minn a ċavetta ta' darba iġġenerat għal dak il-messaġġ biss, għalhekk l-ebda żewġ wraps ma jaqsmu mittent.
- Kull wrap's
created_athuwa datata b'mod każwali b'sa tnejn sigħat bl-użu tas-CSPRNG, għalhekk il-ħinijiet tal-ibgħat u r-riċeviment ma jistgħux jiġu rranġati.
Chats grupp żid effimeru li jdur riċevitur ċwievet fuq kollox — ara Kif jaħdem l-encryption tal-grupp.
Il-primittivi kripto huma ġewwa js/nym-crypto.js u
js/modules/key-vault.js fl-app tal-web, u taħt
android-ios-app/lib/core/crypto/ u
lib/services/mesh/noise/ fl-app Flutter. Il-
repożitorju
hija AGPL-3.0 u kompluta — m'hemm l-ebda komponent magħluq biex tieħu l-fiduċja.