Tlolela go diteng
Go boela morago go Nymchat

Motheo wa tsebo Ka tlase ga hood

Protocol le ditiragalo

Seo Nymchat e se beago ka nnete godimo ga terata, go mang le mang yo a agago kgahlanong le yona, . go e hlahloba, goba go bala ditiragalo go tšwa go moreki yo mongwe wa Nostr.

Mehuta ya ditiragalo

MohutaE dirišitšwe bakeng saDintlha
0Metadata ya ProfaeleStandard Nostr profil: lebitso, setšoantšo, banner, ka, . lud16.
5Dikgopelo tša go phumolaNIP-09.
7DikarabeloNIP-25, ka a ['k', originalKind] tag kahoo karabelo e faelwa khahlanong le tokelo ya kanale mofuta.
13TswalelaLlaga ya bogareng ya molaetša wa NIP-17.
14Mabarebare a molaetša wa poraebeteGa se ya saenwa, gomme ga se ya ka ya phatlalatšwa ka boyona.
1059Go phuthela mphoNIP-59 ya go swana le. Seo se tlogago se fihla relay bakeng sa melaetša ya poraebete le dipoledišano tša sehlopha.
1984Go begaNIP-56.
9734 / 9735Zap kgopelo le zap rasitiNIP-57.
10030Custom emoji pakete manane aNIP-30 ya go swana le.
20000Molaetša wa mokero wa GeohashEphemeral, e swaya ['g', geohash].
23333Molaetša wa mokero wo o reeletšwegoEphemeral, e swaya ['d', channel].
24420 / 24421Ditšhupetšo tša go thaepa tša setšhaba le dirasiti tša go balaNymchat-itseng, bakeng sa dikanale sechaba.
25051 / 25052Go laetša ga dithaka le maemo a phetišetšo ya faeleNymchat-e itseng.
30030Disete tša emoji tša tlwaeloNIP-30 ya go swana le.
30078ya data ya tirišoNIP-78. Dikgetho, le di-setting encrypted sync.
69420Dirasiti tša go bala tša poraebete le maemo a thomeloNymchat-itseng, rwalwa e le mabarebare ka hare ho phuthela mpho. Mofuta o arohaneng ho tloha 14 ka boomo, ka gona bareki ba bangwe ba NIP-17 ga ba neelane ka melaetša e lebanyago yeo e se nago selo bakeng sa rasiti e nngwe le e nngwe.

NIPs Nymchat e phethagatša

NIPSeo e se fago Nymchat
NIP-07Tsena ka katoloso ya sephephediši.
NIP-09Dikgopelo tša go phumola.
NIP-13Bohlatse bja mošomo. Melaetša ye e tšwago e epilwe go fihla go bonyane dibit tše 16.
NIP-17Melaetša ya poraebete ya thwii, le motheo wa dipoledišano tša sehlopha.
NIP-25Dikarabelo.
NIP-30 ya go swana leEmoji ya tlwaelo.
NIP-40 ya go swana leDitempe tša nako tša go fela - melaetša ye e nyamelelago.
NIP-44Versioned encryption, sebediswa bakeng sa ditiiso, phuthela le di-setting sync.
NIP-46Go saena ka kgole — . bunker://.
NIP-56Go bega.
NIP-57Dizap tša legadima.
NIP-59 ya go swana leDiphuthelwana tša mpho.
NIP-78Datha ya tirišo ya boithatelo.
NIP-98HTTP auth, bakeng sa mafelo a mafelelo a amogetšwego.

Cryptography ya go ngwala

KaeEng
Boitsebišo le ditshaenosecp256k1 ka ditshaeno tša Schnorr (BIP-340), bjalo ka ge Nostr e laetša.
Melaetša ya poraebete le dipoledišano tša sehlophaNIP-44 v2: ECDH ka secp256k1, HKDF-SHA256, ChaCha20 le HMAC-SHA256, le padding kahoo ciphertext bolelele ha e fe molaetsa bolelele hōle.
Dithulaganyo tša letlooa la BluetoothLešata XX - X25519, ChaCha20-Poly1305 (IETF), Ed25519 bakeng sa tsebiša ditshaeno, SHA-256 le HMAC ka tlase.
Boitsebišo ge o khuditšeAES-GCM-256 ya go swana le yona. Senotlolo se tšwa go PBKDF2-SHA256 ka dipoeletšo tše 310,000 bakeng sa phasewete goba PIN, goba go tšwa go ditšweletšwa tša WebAuthn PRF ka HKDF-SHA256 bakeng sa senotlelo sa go feta goba biometric.
Di-call le diphetišetšo tša faeleWebRTC ka boyona DTLS-SRTP, rerišana ka NIP-17-phuthetsoe matshwao.
Go se kgetheThe sethaleng CSPRNG ho pholletsa le - linotlolo, nonces, le mpho-phuthela timestamp jitter.

Tšhireletšo ya metadata

Dintlha tše pedi tseleng ya go phuthela mpho di swanetše go bitšwa, ka gobane ke tšona di aroganyago NIP-59 go tšwa go "encrypted, eupša go molaleng go tšwa go wena go bona":

  • Sephuthedi se sengwe le se sengwe se saennwe ke a senotlelo sa nako e tee e tšweleditšwego bakeng sa molaetša woo o nnoši, . ka gona ga go na diphuthelwana tše pedi tšeo di abelanago moromiši.
  • E nngwe le e nngwe ya go phuthela ya created_at ke ka go se kgethe backdated ka go fihla go tše pedi diiri go šomiša CSPRNG, ka fao dinako tša go romela le go amogela di ka se lokeletšwe.

Group dipoledišano eketsa dikologela ephemeral moamogedi dinotlelo godimo ga seo - bona Kamoo go šitiša ga sehlopha go šomago ka gona.

Go bala mothopo

Di-primitive tša crypto di ka gare js/nym-crypto.js le js/modules/key-vault.js ka tirišong ya wepe, le ka tlase ga android-ios-app/lib/core/crypto/ le lib/services/mesh/noise/ ka go tirišo ya Flutter. The polokelo ke AGPL-3.0 le e feletseng - ha ho na karolo e koaletsoeng ho nka tšepo.