Tarkibga o'tish
Nymchat sahifasiga qaytish

Bilimlar bazasi Kaput ostida

Qurilishni tekshirish

Ochiq manba faqat siz ishlatayotgan kod bo'lsa yordam beradi nashr etilgan. Nymchat deterministik tarzda qurilgan, shuning uchun uni ichkaridan o'zingiz tekshirishingiz mumkin ilovadan yoki terminaldan.

Qayta tiklanadigan tuzilmalar

Ilovani yaratish a. chiqaradi build-manifest.json manba majburiyatini o'z ichiga olgan, a Har bir taqdim etilgan HTML, JavaScript va CSS aktivlarining SHA-256 xeshi va bitta bundleHash bu butun aktivlar to'plami ustidan.

Chiqish faqat manba tarkibiga bog'liq - hatto yozib olingan qurilish vaqti ham Qurilish boshlangan paytdan ko'ra, majburiyatning vaqt tamg'asi - shuning uchun hamma uni qayta tiklaydi commit baytga o'xshash fayllarni oladi va xuddi shunday bundleHash.

Keyin GitHub Action har bir majburiyatni mustaqil ravishda qayta tiklaydi va qurilish isbotiga imzo chekadi hash va manifest uchun attestatsiyalar, shuning uchun a bog'lab imzolangan rekord bor bundleHash dan boshqa narsa tomonidan ishlab chiqarilgan ombordagi majburiyatga joylashtirish.

Haqida muloqot oynasi nimani tekshiradi

Haqida sarlavhada tekshirish jonli, brauzeringizda ishlaydi.

Nymchat haqida dialog oynasi versiyani ko'rsatib, yaxlitlikni ta'minlaydi va kanareyka holatini kafolatlaydi.
Haqida dialog oynasi: versiya, qurilish yaxlitligi, kafolatli kanareyka va ishlab chiquvchiga to'g'ridan-to'g'ri yo'l.

U sahifada ishlayotgan har bir aktivni qayta oladi, uni Web Crypto API bilan xeshlaydi va manifest bilan solishtiradi. Keyin - va bu muhim qism - bu ni qayta hisoblab chiqadi bundleHash xeshlardan bu dan emas, balki faqat hisoblangan manifest da'vo qilgan har qanday narsa va uni omborning imzolangan sertifikatlarida ko'rib chiqadi GitHub API orqali.

Bu tarqatishni o'z-o'zidan kafolatlashdan to'xtatadigan narsa: o'zgartirilgan fayllar bilan birga xizmat ko'rsatish mos keladigan manifest hali ham muvaffaqiyatsiz tugadi, chunki qayta hisoblangan xeshda sertifikat yo'q.

Statusvositalari
&tekshirish; Tasdiqlangan rasmiy ilova (n/n)Har bir aktiv mos keladi, qayta hisoblangan to'plam xeshi ombor tomonidan tasdiqlanadi, va sahifa rasmiy domendan taqdim etiladi.
⚠ Tasdiqlangan tuzilish · rasmiy ilova emasKod haqiqiy va tasdiqlangan, ammo bu boshqa domendagi oyna. Ko'zgu bu ogohlantirishni tekshirmasdan turib olib tashlay olmaydi.
✗ Mos kelmaydiObyekt manifestda aytilgan narsaga xesh qilmaydi.
✗ Norasmiy qurilishQayta hisoblangan to'plam xeshida ombordan sertifikat yo'q — o'z-o'zidan yaratilgan manifest.
⚠ Kelib chiqishi aniq emasGitHub API bilan bog‘lanib bo‘lmadi, shuning uchun attestatsiyani har ikki usulda tekshirib bo‘lmadi.

Buni o'zingiz tasdiqlash

Haqida muloqot oynasi nomlarini qayta tiklang va solishtiring:

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

Chop etilgan xesh "Haqida" dialog oynasidagiga ham, ushbu majburiyatdagiga ham mos kelishi kerak Build-provenance ishga tushirish xulosasi. Shuningdek, imzoni bevosita GitHub CLI bilan tekshirishingiz mumkin:

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

Garantli kanareyka

Garantli kanareyka - bu ishlab chiquvchiga tegishli bo'lgan qat'iy jadval bo'yicha nashr etilgan bayonot emas ularga oshkor qilish taqiqlangan maxfiy hukumat buyrug'ini oldi - a Milliy xavfsizlik xati, FISA buyrug'i. Ishlab chiquvchi bu haqda jim turishga majbur bo'lishi mumkin Bunday tartib, lekin yolg'on gapirishga majbur bo'lmaydi, shuning uchun kanareyka eskiradi yoki yo'qoladi o'zi signaldir.

U yashaydi canary.json omborning ildizida va to'g'ridan-to'g'ri olinadi GitHub dan, shuning uchun uning tarixi joylashtirilgan sayt nima deyishidan qat'iy nazar tekshirilishi mumkin. Haqida muloqot oynasi uni rang bilan kodlaydi:

Rangvositalari
Yashil - hammasi aniqImzolangan, joriy va imzo ishlab chiquvchi kalitiga mos keladi. Hech qanday maxfiy buyurtma olinmagan.
Sariq - muddati o'tgan yoki hammasi aniq emasU ko'rsatilgan sana yoki unga ko'ra yangilanmagan allClear bayroq noto'g'ri. Ovozsiz tartibni istisno qilib bo'lmaydi.
Qizil - imzo noto'g'ri yoki yo'qolganImzo ishlab chiquvchi kalitiga mos kelmaydi yoki fayl butunlay oʻchirib tashlangan. Buni jiddiy ogohlantirish sifatida qabul qiling.

Yangilik langari

Imzolangan kanareyka imzolash paytida so'nggi bitkoin blokining balandligi va xeshini joylashtiradi. Blok mavjud bo'lgunga qadar bu xeshni bilish mumkin emas edi, bu esa kanareyka ekanligini isbotlaydi imzolangan keyin oylar oldin ommaviy ravishda oldindan imzolangandan ko'ra, vaqtning ma'lum bir nuqtasi. Haqida muloqot oynasi langarni blok tadqiqotchisiga bog'laydi, shunda siz uni tekshirishingiz mumkin.