Siirry sisältöön
Takaisin Nymchatiin

Tietopohja Konepellin alla

Rakenteen tarkistaminen

Avoin lähdekoodi auttaa vain, jos käyttämäsi koodi on sama kuin aiemmin julkaistu. Nymchat on rakennettu deterministisesti, joten voit tarkistaa sen itse, sisältä käsin sovelluksesta tai terminaalista.

Toistettavat rakennelmat

Sovelluksen rakentaminen lähettää a build-manifest.json joka sisältää lähdesitoumuksen, a SHA-256 hash jokaisesta näytetystä HTML-, JavaScript- ja CSS-sisällöstä ja yksittäisestä bundleHash koko omaisuussarjan yli.

Tulos riippuu vain lähdesisällöstä - jopa tallennettu rakennusaika on commitin aikaleima sen sijaan, että rakennus suoritettiin – niin kuka tahansa rakentaa saman uudelleen commit saa tavuidenttiset tiedostot ja saman bundleHash.

GitHub Action rakentaa sitten jokaisen sitoumuksen uudelleen itsenäisesti ja allekirjoittaa rakentamisen alkuperän todistukset hashista ja manifestista, joten on allekirjoitettu sitova tietue a bundleHash arkiston sitoumukseen, jonka on tuottanut jokin muu kuin käyttöönottoa.

Mitä Tietoja-valintaikkuna tarkistaa

Noin otsikossa suorittaa tarkistuksen livenä selaimessasi.

Nymchat Tietoja -valintaikkuna, joka näyttää version, rakenteen eheyden ja takuun kanarian tilan.
Tietoja-valintaikkuna: versio, rakenteen eheys, takuu ja suora yhteys kehittäjälle.

Se hakee uudelleen jokaisen sivun todellisuudessa olevan resurssin, tiivistää sen Web Crypto API:lla ja vertaa manifestiin. Sitten – ja tämä on se osa, jolla on merkitystä – se laskee uudelleen bundleHash tiivisteistä se vain laskettu, ei siitä kaikki mitä manifesti väittää, ja etsii sen arkiston allekirjoitetuista todistuksista GitHub API:n kautta.

Tämä estää käyttöönottoa takaamasta itseään: muokattujen tiedostojen tarjoaminen yhdessä täsmäytysluettelo epäonnistuu edelleen, koska uudelleen lasketulla hashilla ei ole todistusta.

StatusKeinot
✓ Vahvistettu virallinen sovellus (n/n)Jokainen omaisuus täsmää, arkisto varmentaa uudelleen lasketun nipun hajautusarvon, ja sivua tarjotaan viralliselta verkkotunnukselta.
⚠ Vahvistettu rakenne · ei virallinen sovellusKoodi on aito ja todistettu, mutta tämä on peili toisesta verkkotunnuksesta. Peili ei voi poistaa tätä varoitusta ilman epäonnistunutta vahvistusta.
✗ YhteensopimattomuusSisältö ei vastaa luettelon sisältöä.
✗ Epävirallinen rakennelmaUudelleen lasketulla nipun hashilla ei ole todistusta arkistosta – itse tehty manifesti.
⚠ Lähde saavuttamatonGitHub-sovellusliittymään ei saatu yhteyttä, joten todistusta ei voitu tarkistaa kummallakaan tavalla.

Varmista itse

Muodosta vahvistuksen Tietoja-valintaikkunan nimet uudelleen ja vertaa:

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

Tulostetun tiivisteen tulee vastata sekä Tietoja-valintaikkunassa olevaa tiivistettä että kyseisessä sitoumuksessa olevaa build-provenance-ajon yhteenveto. Voit myös tarkistaa allekirjoituksen suoraan GitHub CLI:llä:

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

Takuukanaria

Warrant Canary on kiinteässä aikataulussa julkaistu lausunto, joka kehittäjällä on ei saivat salaisen hallituksen määräyksen, jota he eivät saa paljastaa - a National Security Letter, FISA:n määräys. Kehittäjä voidaan pakottaa olemaan hiljaa tällainen järjestys, mutta sitä ei voi pakottaa valehtelemaan, joten kanarialintu vanhenee tai katoaa itse signaali.

Se asuu sisällä canary.json arkiston juuressa ja se haetaan suoraan GitHubista, joten sen historia on tarkastettavissa riippumatta siitä, mitä käyttöön otettu sivusto sanoo. Tietoja-valintaikkuna värikoodaa sen:

VäriKeinot
Vihreä - kaikki selväAllekirjoitettu, nykyinen ja allekirjoitus vastaavat kehittäjän avainta. Mitään salaista tilausta ei ole saatu.
Keltainen — myöhässä tai kaikki ei ole selvääSitä ei päivitetty ilmoitettuun päivämäärään mennessä allClear lippu on väärä. Hiljaista tilausta ei voida sulkea pois.
Punainen - virheellinen allekirjoitus tai poissaAllekirjoitus ei vastaa kehittäjän avainta tai tiedosto on poistettu kokonaan. Käsittele tätä vakavana varoituksena.

Tuoreuden ankkuri

Allekirjoitettu kanaria sisältää uusimman Bitcoin-lohkon korkeuden ja tiivisteen allekirjoitushetkellä. Tämä hash ei voinut olla tiedossa ennen lohkon olemassaoloa, mikä todistaa, että kanaria oli allekirjoitettu jälkeen tiettynä ajankohtana sen sijaan, että se olisi allekirjoitettu useammin kuukausia aikaisemmin. Tietoja-valintaikkuna linkittää ankkurin lohkotutkimukseen, jotta voit tarkistaa sen.