Aqbeż għall-kontenut
Lura għal Nymchat

Bażi ta 'għarfien Taħt il-barnuża

Verifika tal-bini

Is-sors miftuħ jgħin biss jekk il-kodiċi li qed taħdem huwa l-kodiċi li kien ippubblikat. Nymchat huwa mibni b'mod deterministiku sabiex inti tista 'tiċċekkja li lilek innifsek, minn ġewwa l- app jew minn terminal.

Bini riproduċibbli

Il-bini tal-app jarmi a build-manifest.json li jkun fih is-sors commit, a SHA-256 hash ta' kull assi HTML, JavaScript u CSS moqdi, u wieħed bundleHash fuq dak is-sett kollu tal-assi.

L-output jiddependi biss fuq il-kontenut tas-sors - anke l-ħin tal-bini rreġistrat huwa l- it-timbru taż-żmien tal-commit aktar milli l-mument li fih dam il-bini — għalhekk kull min jerġa’ jibni l-istess commit gets fajls byte-identiċi u l-istess bundleHash.

Azzjoni GitHub imbagħad terġa 'tibni kull impenn b'mod indipendenti u tiffirma bini-provenjenza attestazzjonijiet għall-hash u l-manifest, għalhekk hemm rekord iffirmat irbit a bundleHash għal impenn fir-repożitorju, prodott minn xi ħaġa oħra għajr il- skjerament.

X'jiċċekkja d-djalogu Dwar

Dwar fil-header imexxi l-kontroll live, fil-browser tiegħek.

Id-djalogu dwar Nymchat Dwar, li juri l-verżjoni, jibni l-integrità u jiggarantixxi l-istatus tal-kanarju.
Id-djalogu Dwar: verżjoni, bini integrità, warrant canary u linja diretta lill-iżviluppatur.

Terġa' ġġib kull assi li l-paġna tkun qed taħdem fil-fatt, iżżidha mal-Web Crypto API, u tqabbel mal-manifest. Imbagħad - u din hija l-parti li tgħodd - it jerġa' jikkalkula l- bundleHash mill-hashes dan ikkalkulat biss, mhux minn kull ħaġa li l-manifest jippretendi, u jidher li fl-attestazzjonijiet iffirmati tar-repożitorju permezz tal-API GitHub.

Dak huwa dak li jwaqqaf skjerament milli javża għalih innifsu: li jservi fajls modifikati flimkien ma ' manifest ta' tqabbil xorta jonqos, minħabba li l-hash ikkalkulat mill-ġdid m'għandu l-ebda attestazzjoni.

StatusMezzi
✓ App uffiċjali verifikata (n/n)Kull assi jaqbel, il-hash tal-pakkett ikkalkulat mill-ġdid huwa attestat mir-repożitorju, u il-paġna hija moqdija mid-dominju uffiċjali.
⚠ Bini verifikat · mhux l-app uffiċjaliIl-kodiċi huwa ġenwin u attestat, iżda din hija mera fuq dominju ieħor. Mera ma tistax tneħħi din it-twissija mingħajr ma tonqos mill-verifika.
✗ Ma jaqbluxAss ma jfixkilx dak li jgħid il-manifest.
✗ Bini mhux uffiċjaliIl-bundle hash ikkalkulat mill-ġdid m'għandu l-ebda attestazzjoni mir-repożitorju - manifest magħmul minnu nnifsu.
⚠ Provenjenza ma tistax tintlaħaqL-API GitHub ma setgħetx tintlaħaq, għalhekk l-attestazzjoni ma setgħetx tiġi ċċekkjata bl-ebda mod.

Tivverifikaha lilek innifsek

Ibni mill-ġdid il-kommetti l-ismijiet tad-djalogu Dwar u qabbel:

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>"

Il-hash stampat għandu jaqbel kemm ma' dak fid-djalogu Dwar kif ukoll dak f'dak il-kommit sommarju tal-ġirja tal-bini-provenjenza. Tista 'wkoll tiċċekkja l-firma direttament mal-CLI GitHub:

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

Il-warrant canary

A warrant canary hija dikjarazzjoni, ippubblikata fuq skeda fissa, li l-iżviluppatur għandu le irċevew ordni sigrieta tal-gvern li huma pprojbiti li jiżvelaw - a Ittra tas-Sigurtà Nazzjonali, ordni tal-FISA. L-iżviluppatur jista 'jiġi mġiegħel jibqa' sieket dwar ordni bħal din, iżda ma jistax jiġi mġiegħel jigdeb, għalhekk il-kanarju sejjer jew jisparixxi huwa innifsu s-sinjal.

Jgħix fi canary.json fl-għerq tar-repożitorju u jinġieb direttament minn GitHub, għalhekk l-istorja tagħha hija verifikabbli indipendentement minn dak kollu li jgħid is-sit skjerat. Id-djalogu Dwar il-kulur jikkodifikaha:

KulurMezzi
Aħdar — kollox ċarIffirmat, kurrenti, u l-firma taqbel maċ-ċavetta tal-iżviluppatur. L-ebda ordni sigrieta ma waslet.
Isfar — misshom, jew mhux ċari kollhaMa ġietx aggornata mid-data ddikjarata tagħha, jew tagħha allClear bandiera hija falza. Ordni msikkta ma tistax tiġi eskluża.
Aħmar — firma invalida, jew marretIl-firma ma taqbilx maċ-ċavetta tal-iżviluppatur, jew il-fajl tneħħa għal kollox. Ittratta dan bħala twissija serja.

L-ankra tal-freskezza

Il-kanarju ffirmat jinkorpora l-aħħar għoli tal-blokk Bitcoin u l-hash fil-mument tal-iffirmar. Dak il-hash ma setax ikun magħruf qabel ma kien jeżisti l-blokk, li juri li l-kanarju kien iffirmat wara punt speċifiku fiż-żmien aktar milli ffirmat minn qabel fi kwantitajiet kbar xhur qabel. Id-djalogu Dwar torbot l-ankra ma 'esploratur tal-blokki sabiex tkun tista' tiċċekkjaha.