មូលដ្ឋានចំណេះដឹង នៅក្រោមក្រណាត់
ពិធីការ និងព្រឹត្តិការណ៍
អ្វីដែល Nymchat ពិតជាដាក់នៅលើខ្សែសម្រាប់នរណាម្នាក់សាងសង់ប្រឆាំងនឹងវា, សវនកម្មវា ឬអានព្រឹត្តិការណ៍ពីអតិថិជន Nostr ផ្សេងទៀត។
ទំព័រនេះត្រូវបានបកប្រែដោយម៉ាស៊ីនសម្រាប់ភាពងាយស្រួល។ ភាសាអង់គ្លេសដើមគឺជាកំណែដែលអនុវត្ត។
ប្រភេទព្រឹត្តិការណ៍
| ប្រភេទ | ប្រើសម្រាប់ | កំណត់ចំណាំ |
|---|---|---|
0 | ទិន្នន័យមេតានៃកម្រងព័ត៌មាន | ទម្រង់ស្តង់ដារ Nostr: ឈ្មោះ, រូបភាព, បដា, អំពី, lud16. |
5 | សំណើលុប | ណុប-០៩. |
7 | ប្រតិកម្ម | NIP-25 ជាមួយ ក ['k', originalKind] ស្លាកដូច្នេះប្រតិកម្មមួយត្រូវបានដាក់ប្រឆាំងនឹងប្រភេទឆានែលត្រឹមត្រូវ។ |
13 | ត្រា | ស្រទាប់កណ្តាលនៃសារ NIP-17 ។ |
14 | ពាក្យចចាមអារ៉ាមសារឯកជន | មិនបានចុះហត្ថលេខា ហើយមិនដែលបោះពុម្ពផ្សាយដោយខ្លួនឯងទេ។ |
1059 | រុំអំណោយ | NIP-59 ។ អ្វីដែលពិតជាឈានដល់ការបញ្ជូនបន្តសម្រាប់សារឯកជន និងការជជែកជាក្រុម។ |
1984 | ការរាយការណ៍ | NIP-56 ។ |
9734 / 9735 | សំណើ Zap និងបង្កាន់ដៃ zap | NIP-57 ។ |
10030 | បញ្ជីកញ្ចប់ emoji ផ្ទាល់ខ្លួន | NIP-30 ។ |
20000 | សារឆានែល Geohash | អេភឺម, ដាក់ស្លាក ['g', geohash]. |
23333 | ឆានែលដែលមានឈ្មោះ | អេភឺម, ដាក់ស្លាក ['d', channel]. |
24420 / 24421 | សូចនាករវាយអក្សរសាធារណៈ និងបង្កាន់ដៃអាន | Nymchat-ជាក់លាក់សម្រាប់បណ្តាញសាធារណៈ។ |
25051 / 25052 | ការបញ្ជូនសញ្ញាពីគ្នាទៅវិញទៅមក និងស្ថានភាពផ្ទេរឯកសារ | Nymchat - ជាក់លាក់។ |
30030 | សំណុំ emoji ផ្ទាល់ខ្លួន | NIP-30 ។ |
30078 | ទិន្នន័យកម្មវិធី | NIP-78 ។ ការស្ទង់មតិ និងការកំណត់ដែលបានអ៊ិនគ្រីបធ្វើសមកាលកម្ម។ |
69420 | បង្កាន់ដៃអានឯកជន និងស្ថានភាពដឹកជញ្ជូន | Nymchat-ជាក់លាក់ អនុវត្តជាពាក្យចចាមអារ៉ាមនៅខាងក្នុងរុំអំណោយ។ ប្រភេទដាច់ដោយឡែកពី 14 ដោយចេតនា ដូច្នេះអតិថិជន NIP-17 ផ្សេងទៀតមិនបង្ហាញសារផ្ទាល់ទទេសម្រាប់រាល់ការទទួលនោះទេ។ |
NIPs Nymchat អនុវត្ត
| NIP | អ្វីដែលវាផ្តល់ឱ្យ Nymchat |
|---|---|
| ណុប-០៧ | ចូលដោយប្រើផ្នែកបន្ថែមកម្មវិធីរុករក។ |
| ណុប-០៩ | សំណើលុប។ |
| NIP-13 | ភស្តុតាងនៃការងារ។ សារចេញត្រូវបានជីកយកយ៉ាងហោចណាស់ 16 ប៊ីត។ |
| NIP-17 | សារផ្ទាល់ឯកជន និងជាមូលដ្ឋានសម្រាប់ការជជែកជាក្រុម។ |
| NIP-25 | ប្រតិកម្ម។ |
| NIP-30 | រូបអារម្មណ៍ផ្ទាល់ខ្លួន។ |
| NIP-40 | ត្រាពេលវេលាផុតកំណត់ - សារដែលបាត់។ |
| NIP-44 | ការអ៊ិនគ្រីបតាមកំណែ ប្រើសម្រាប់ការផ្សាភ្ជាប់ រុំ និងការធ្វើសមកាលកម្មការកំណត់។ |
| NIP-46 | ការចុះហត្ថលេខាពីចម្ងាយ - bunker://. |
| NIP-56 | ការរាយការណ៍។ |
| NIP-57 | ផ្លេកបន្ទោរ។ |
| NIP-59 | ខ្ចប់អំណោយ។ |
| NIP-78 | ទិន្នន័យកម្មវិធីបំពាន។ |
| NIP-98 | HTTP auth សម្រាប់ចំណុចបញ្ចប់ដែលបានបង្ហោះ។ |
ការសរសេរកូដសម្ងាត់
| កន្លែងណា | អ្វី |
|---|---|
| អត្តសញ្ញាណ និងហត្ថលេខា | secp256k1 ជាមួយនឹងហត្ថលេខា Schnorr (BIP-340) ដូចដែល Nostr បញ្ជាក់។ |
| សារឯកជន និងការជជែកជាក្រុម | NIP-44 v2៖ ECDH លើ secp256k1, HKDF-SHA256, ChaCha20 ជាមួយ HMAC-SHA256, និង padding ដូច្នេះប្រវែង ciphertext មិនផ្តល់ប្រវែងសារទេ។ |
| វគ្គសំណាញ់ប៊្លូធូស | Noise XX — X25519, ChaCha20-Poly1305 (IETF), Ed25519 សម្រាប់ការប្រកាសហត្ថលេខា SHA-256 និង HMAC នៅខាងក្រោម។ |
| អត្តសញ្ញាណនៅពេលសម្រាក | AES-GCM-256 ។ គន្លឹះចេញមកពី PBKDF2-SHA256 នៅ 310,000 ដដែលៗសម្រាប់ពាក្យសម្ងាត់ ឬកូដ PIN ឬពីលទ្ធផល WebAuthn PRF តាមរយៈ HKDF-SHA256 សម្រាប់លេខសម្ងាត់ ឬជីវមាត្រ។ |
| ការហៅទូរសព្ទ និងការផ្ទេរឯកសារ | DTLS-SRTP របស់ WebRTC ផ្ទាល់របស់ WebRTC បានចរចាលើការផ្តល់សញ្ញារុំដោយ NIP-17 ។ |
| ភាពចៃដន្យ | វេទិកា CSPRNG ពាសពេញ — គ្រាប់ចុច, nonces, និងការរំជើបរំជួលពេលវេលារុំអំណោយ។ |
ការការពារទិន្នន័យមេតា
ព័ត៌មានលម្អិតពីរនៅក្នុងផ្លូវរុំអំណោយគឺមានតម្លៃក្នុងការហៅចេញ ព្រោះវាជាអ្វីដាច់ដោយឡែកពីគ្នានៃ NIP-59 ពី "បានអ៊ិនគ្រីប ប៉ុន្តែច្បាស់ណាស់ពីអ្នកទៅពួកគេ":
- រាល់ការវេចខ្ចប់ត្រូវបានចុះហត្ថលេខាដោយ ក គ្រាប់ចុចតែម្តង បង្កើតឡើងសម្រាប់សារនោះតែម្នាក់ឯង ដូច្នេះគ្មានការរុំពីរចែករំលែកអ្នកផ្ញើទេ។
- រាល់ការរុំ
created_atគឺ គាំទ្រដោយចៃដន្យរហូតដល់ពីរ ម៉ោង ដោយប្រើ CSPRNG ដូច្នេះពេលវេលាផ្ញើ និងទទួលមិនអាចតម្រង់ជួរបានទេ។
ការជជែកជាក្រុមបន្ថែមការបង្វិលភាពមិនប្រក្រតី អ្នកទទួល គ្រាប់ចុចនៅលើវា - សូមមើល របៀបដែលការអ៊ិនគ្រីបក្រុមដំណើរការ.
បុព្វហេតុគ្រីបតូគឺស្ថិតនៅក្នុង js/nym-crypto.js និង
js/modules/key-vault.js នៅក្នុងកម្មវិធីបណ្តាញ និងក្រោម
android-ios-app/lib/core/crypto/ និង
lib/services/mesh/noise/ នៅក្នុងកម្មវិធី Flutter ។ នេះ។
ឃ្លាំង
គឺ AGPL-3.0 និងពេញលេញ — មិនមានសមាសធាតុបិទដើម្បីទទួលយកការជឿទុកចិត្តទេ។