Saltatu edukira
Itzuli Nymchat-era

Ezagutza oinarria Kaputxa azpian

Eraikuntza egiaztatzea

Kode irekiak exekutatzen ari zaren kodea zen kodea bada bakarrik laguntzen du argitaratua. Nymchat modu deterministikoan eraikita dago, zuk zeuk egiaztatu ahal izateko, barrutik aplikazioa edo terminal batetik.

Eraikuntza erreproduzigarriak

Aplikazioa eraikitzeak a igortzen du build-manifest.json iturburu-konpromisoa duena, a Hornitutako HTML, JavaScript eta CSS aktibo bakoitzaren SHA-256 hash eta bakarra bundleHash aktibo multzo osoaren gainean.

Irteera iturburu-edukiaren araberakoa da soilik - grabatutako eraikuntza-denbora ere bada commit-en denbora-zigilua, eraikuntza exekutatu zen unea baino, beraz, edonork berdina berreraikitzen du commit-ek byte-berdinak diren fitxategiak eta berdinak lortzen ditu bundleHash.

Gero, GitHub Ekintza batek konpromiso bakoitza modu independentean berreraikitzen du eta eraikuntza-jatorria sinatzen du hash-aren eta manifestuaren egiaztagiriak, beraz, a lotzen duen erregistro sinatutako bat dago bundleHash biltegiko konpromezu bati, ez beste zerbaitek ekoitzitakoa hedapena.

Honi buruz elkarrizketa-koadroak egiaztatzen duena

Buruz goiburuan egiaztapena zuzenean exekutatzen da, zure arakatzailean.

Nymchat-i buruz elkarrizketa-koadroa, bertsioa, eraikitzeko osotasuna eta kanari-egoera bermatzen dituena.
Honi buruz elkarrizketa-koadroa: bertsioa, eraikitzeko osotasuna, canary bermatu eta garatzailearekiko zuzeneko lerroa.

Orrialdeak exekutatzen ari den aktibo bakoitza berriro lortzen du, hashes egiten du Web Crypto APIarekin eta manifestuarekin alderatzen du. Orduan, eta hau da axola duena birkalkulatzen du bundleHash hasheetatik hura kalkulatu besterik ez dago, ez Manifestuak aitortzen duen edozer gauza, eta hori biltegiko sinatutako egiaztagirietan bilatzen du GitHub APIaren bidez.

Hori da inplementazio batek bere burua ziurtatzeari uzten diona: aldatutako fitxategiak batera hornitzea bat datorren manifestu batek huts egiten du oraindik, birkalkulatutako hashak ez duelako egiaztagiririk.

EgoeraBitartekoak
& egiaztatu; Egiaztatutako aplikazio ofiziala (z/g)Aktibo bakoitza bat dator, birkalkulatutako sorta hash-a biltegiak egiaztatzen du, eta orrialdea domeinu ofizialetik hornitzen da.
⚠ Egiaztatutako eraikuntza · ez da aplikazio ofizialaKodea benetakoa eta egiaztatua da, baina hau beste domeinu bateko ispilua da. Ispilu batek ezin du abisu hau kendu egiaztapena huts egin gabe.
✗ Bat ez datozenakAktibo batek ez du hash egiten manifestuak dioenarekin.
✗ Eraikuntza ez-ofizialaBirkalkulatutako sorta hash-ak ez du biltegiaren egiaztapenik - norberak egindako manifestua.
⚠ Jatorria iritsi ezinaEzin izan da GitHub APIra iritsi, beraz, egiaztagiria ezin izan da egiaztatu.

Zuk zeuk egiaztatzea

Berreraiki ezazu Honi buruz elkarrizketa-izenak eta alderatu:

git clone https://github.com/Spl0itable/NYM
cd NYM
git checkout <commit shown in the About dialog>
npm ci
npm run build   # prints "Build hash: <bundleHash>"

Inprimatutako hashak Honi buruz elkarrizketa-koadrokoarekin eta konpromiso horretakoarekin bat etorri behar du eraikitze-jatorrizko exekuzioaren laburpena. Sinadura zuzenean ere egiaztatu dezakezu GitHub CLI-rekin:

gh attestation verify dist/build-manifest.json --repo Spl0itable/NYM

Agindu kanarioa

Berme-kanarioa sustatzaileak duen adierazpen bat da, ordutegi finko batean argitaratua ez gobernu-agindu sekretu bat jaso zuten debekatuta dago zabaltzea - a Segurtasun Nazionaleko Gutuna, FISA agindua. Garatzailea isilik egotera behartu daiteke agindu hori, baina ezin da gezurra derrigortu, beraz, kanarioa zaharkituta edo desagertzen ari da. bera seinalea.

Bertan bizi da canary.json biltegiaren erroan eta zuzenean lortzen da GitHub-etik, beraz, bere historia ikuskagarria da zabaldutako guneak dioenaren arabera. Honi buruz elkarrizketa-koadroak kolorez adierazten du:

KoloreaBitartekoak
Berdea - dena argiSinadura, egungoa eta sinadura garatzailearen gakoarekin bat datoz. Ez da sekretu agindurik jaso.
Horia — atzeratua, edo ez dena argiEz zen freskatu adierazitako datarekin, edo bere allClear bandera faltsua da. Isilarazitako agindua ezin da baztertu.
Gorria — sinadura baliogabea edo desagertu egin daSinadura ez dator bat garatzailearen gakoarekin, edo fitxategia guztiz kendu da. Tratatu hau abisu larri gisa.

Freskotasunaren aingura

Sinatutako kanarioak Bitcoin blokearen azken altuera eta hash txertatzen ditu sinatzeko unean. Hash hori ezin zen ezagutu blokea existitu baino lehen, eta horrek frogatzen du kanarioa zela sinatua ondoren une zehatz bat hilabete lehenago aurrez sinatu beharrean. Honi buruz elkarrizketa-koadroak aingura bloke-esploratzaile batekin lotzen du, egiazta dezazun.