Bilimlar bazasi Kaput ostida
Protokol va voqealar
Nymchat aslida simga nima qo'yadi, unga qarshi qurilgan har bir kishi uchun, uni tekshirish yoki boshqa Nostr mijozidan voqealarni o'qish.
Ushbu sahifa qulaylik uchun mashinada tarjima qilingan. Inglizcha asl nusxasi amal qiladi.
Tadbir turlari
| Mehribon | uchun ishlatiladi | Eslatmalar |
|---|---|---|
0 | Profil metama'lumotlari | Standart Nostr profili: ism, rasm, banner, haqida, lud16. |
5 | Oʻchirish soʻrovlari | NIP-09. |
7 | Reaksiyalar | NIP-25, a ['k', originalKind] teg, shuning uchun to'g'ri kanal turiga qarshi reaktsiya yuboriladi. |
13 | Muhr | NIP-17 xabarining o'rta qatlami. |
14 | Shaxsiy xabar mish-mishlari | Imzolanmagan va hech qachon o'z-o'zidan nashr etilmagan. |
1059 | Sovg'a o'rami | NIP-59. Haqiqatan ham shaxsiy xabarlar va guruh suhbatlari uchun releyga nima yetadi. |
1984 | Hisobot | NIP-56. |
9734 / 9735 | Zap so'rovi va zap kvitansiyasi | NIP-57. |
10030 | Maxsus emoji toʻplami roʻyxatlari | NIP-30. |
20000 | Geohash kanali xabari | Efemer, teglangan ['g', geohash]. |
23333 | Nomlangan kanal xabari | Efemer, teglangan ['d', channel]. |
24420 / 24421 | Ommaviy matn terish ko'rsatkichlari va o'qish kvitansiyasi | Nymchat-ga xos, ommaviy kanallar uchun. |
25051 / 25052 | Peer-to-peer signalizatsiyasi va fayl uzatish holati | Nymchat-ga xos. |
30030 | Maxsus emoji toʻplamlari | NIP-30. |
30078 | Ilova ma'lumotlari | NIP-78. So‘rovlar va shifrlangan sozlamalar sinxronlashtiriladi. |
69420 | Shaxsiy o'qish kvitansiyalari va yetkazib berish holati | Nymchat-ga xos, sovg'a paketi ichida mish-mish sifatida olib borilgan. dan alohida tur 14 ataylab, shuning uchun boshqa NIP-17 mijozlari har bir kvitansiya uchun bo'sh to'g'ridan-to'g'ri xabarlarni ko'rsatmaydi. |
NIPs Nymchat ilovalari
| NIP | Nymchat nima beradi |
|---|---|
| NIP-07 | Brauzer kengaytmasi bilan tizimga kiring. |
| NIP-09 | Oʻchirish soʻrovlari. |
| NIP-13 | Ishni tasdiqlovchi hujjat. Chiquvchi xabarlar kamida 16 bitga qazib olinadi. |
| NIP-17 | Shaxsiy to'g'ridan-to'g'ri xabarlar va guruh suhbatlari uchun asos. |
| NIP-25 | Reaksiyalar. |
| NIP-30 | Shaxsiy emoji. |
| NIP-40 | Yaroqlilik muddati - yo'qolgan xabarlar. |
| NIP-44 | Muhrlar, o'ramlar va sozlamalarni sinxronlashtirish uchun ishlatiladigan versiyali shifrlash. |
| NIP-46 | Masofadan imzolash - bunker://. |
| NIP-56 | Hisobot. |
| NIP-57 | Chaqmoq chaqmoqda. |
| NIP-59 | Sovg'a o'ramlari. |
| NIP-78 | O'zboshimchalik bilan ilova ma'lumotlari. |
| NIP-98 | Xostlangan oxirgi nuqtalar uchun HTTP auth. |
Kriptografiya
| Qayerda | Nima |
|---|---|
| Shaxs va imzolar | Secp256k1 Schnorr imzolari bilan (BIP-340), Nostr belgilaydi. |
| Shaxsiy xabarlar va guruh suhbatlari | NIP-44 v2: secp256k1 da ECDH, HKDF-SHA256, HMAC-SHA256 bilan ChaCha20 va to'ldirish shifrlangan matn uzunligi xabar uzunligini uzoqlashtirmaydi. |
| Bluetooth mesh seanslari | Shovqin XX - X25519, ChaCha20-Poly1305 (IETF), imzolarni e'lon qilish uchun Ed25519, SHA-256 va HMAC ostida. |
| Dam olishdagi shaxs | AES-GCM-256. Kalit PBKDF2-SHA256-dan parol yoki PIN-kod uchun 310 000 iteratsiyada yoki kirish kaliti yoki biometrik uchun HKDF-SHA256 orqali WebAuthn PRF chiqishidan keladi. |
| Qo'ng'iroqlar va fayllarni uzatish | WebRTC ning o'z DTLS-SRTP, NIP-17 bilan o'ralgan signalizatsiya bo'yicha kelishilgan. |
| Tasodifiylik | CSPRNG platformasi bo'ylab - kalitlar, nonces va sovg'a o'rash vaqt tamg'asi jitter. |
Metadata himoyasi
Sovg'a o'rash yo'lidagi ikkita tafsilotga e'tibor qaratish lozim, chunki ular NIP-59-ni ajratib turadi "shifrlangan, lekin sizdan ularga" dan:
- Har bir o'ram a tomonidan imzolanadi bir martalik kalit faqat shu xabar uchun yaratilgan, shuning uchun hech qanday ikkita o'ram jo'natuvchini baham ko'rmaydi.
- Har bir o'ram
created_athisoblanadi tasodifiy ikkiga qadar orqaga qaytadi soat CSPRNG dan foydalangan holda, yuborish va qabul qilish vaqtlarini qator qilib bo'lmaydi.
Guruh suhbatlari vaqtinchalik aylanadi oluvchi Buning ustiga kalitlar - qarang Guruh shifrlash qanday ishlaydi.
Kripto ibtidoiylari mavjud js/nym-crypto.js va
js/modules/key-vault.js veb-ilovada va ostida
android-ios-app/lib/core/crypto/ va
lib/services/mesh/noise/ Flutter ilovasida. The
ombori
AGPL-3.0 va to'liq - ishonchni qabul qilish uchun yopiq komponent yo'q.