Bilik bazası Başlıq altında
Quraşdırmanın yoxlanılması
Açıq mənbə yalnız işlətdiyiniz kod əvvəlki koddursa kömək edir nəşr edilmişdir. Nymchat deterministik şəkildə qurulub ki, içəridən özünüz yoxlayasınız proqramdan və ya terminaldan.
Bu səhifə rahatlıq üçün maşın tərəfindən tərcümə edilmişdir. İngilis orijinalı tətbiq olunan versiyadır.
Təkrarlana bilən quruluşlar
Tətbiqin qurulması a build-manifest.json mənbə öhdəliyini ehtiva edən, a
Hər təqdim edilən HTML, JavaScript və CSS aktivinin SHA-256 hash və tək
bundleHash bütün aktiv dəsti üzərində.
Çıxış yalnız mənbə məzmunundan asılıdır - hətta qeydə alınmış tikinti vaxtı belədir
Quraşdırmanın başa çatdığı andan deyil, öhdəliyin vaxt damğası - buna görə də hər kəs eyni şeyi yenidən qurar
commit bayt-eyni faylları alır və eyni bundleHash.
GitHub Fəaliyyəti sonra hər bir öhdəliyi müstəqil şəkildə yenidən qurur və tikinti sübutunu imzalayır
hash və manifest üçün attestations, belə ki, tying imzalanmış rekord var
bundleHash deyil, başqa bir şey tərəfindən istehsal edilən depoda bir öhdəliyə
yerləşdirmə.
Haqqında dialoq nəyi yoxlayır
Haqqında başlıqda yoxlama canlı olaraq brauzerinizdə aparılır.
O, səhifənin əslində işlədiyi hər bir aktivi yenidən gətirir, onu Web Crypto API ilə hash edir və
manifestlə müqayisə edir. Sonra - və bu vacib olan hissədir - bu
yenidən hesablayır bundleHash hashlardan o -dən deyil, sadəcə hesablanıb
açıq-aşkar iddia etdiyi hər şeyi və deponun imzalanmış sertifikatlarına baxır
GitHub API vasitəsilə.
Bu, yerləşdirmənin özünə zəmanət verməsini dayandıran şeydir: dəyişdirilmiş fayllarla birlikdə xidmət göstərmək uyğun manifest hələ də uğursuz olur, çünki yenidən hesablanmış hashın təsdiqi yoxdur.
| Vəziyyət | deməkdir |
|---|---|
| &yoxlayın; Doğrulanmış rəsmi proqram (n/n) | Hər bir aktiv uyğun gəlir, yenidən hesablanmış paket hashı repozitoriya tərəfindən təsdiqlənir, və səhifə rəsmi domendən xidmət göstərir. |
| ⚠ Təsdiqlənmiş quruluş · rəsmi proqram deyil | Kod orijinaldır və təsdiqlənmişdir, lakin bu, başqa domendə güzgüdür. Güzgü yoxlamadan keçmədən bu xəbərdarlığı silə bilməz. |
| ✗ Uyğunsuzluq | Aktiv manifestdə deyilənlərə uyğun gəlmir. |
| ✗ Qeyri-rəsmi quruluş | Yenidən hesablanmış paket hashının anbardan heç bir təsdiqi yoxdur — özü tərəfindən hazırlanmış manifest. |
| ⚠ Mənşəyi əldə etmək mümkün deyil | GitHub API-yə çatmaq mümkün olmadı, buna görə də attestasiyanı hər iki yolla yoxlamaq mümkün olmadı. |
Bunu özünüz yoxlayın
Haqqında dialoq adlarını yerinə yetirməyi yenidən qurun və müqayisə edin:
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>"
Çap edilmiş hash həm Haqqında dialoq qutusunda, həm də həmin öhdəlikdəki ilə uyğun olmalıdır qurma mənşəli qaçış xülasəsi. İmzanı birbaşa GitHub CLI ilə yoxlaya bilərsiniz:
gh attestation verify dist/build-manifest.json --repo Spl0itable/NYM
Zəmanət kanareyası
Zəmanət kanaryası, tərtibatçının sahib olduğu müəyyən bir cədvəl üzrə dərc edilmiş bir bəyanatdır yox onlara açıqlaması qadağan edilmiş gizli dövlət sifarişi almışlar — a Milli Təhlükəsizlik Məktubu, FISA əmri. Tərtibatçı bu barədə susmağa məcbur edilə bilər belə bir sifarişdir, lakin yalan danışmağa məcbur edilə bilməz, buna görə də kanareyka köhnəlir və ya yox olur. özü siqnaldır.
İçində yaşayır canary.json deponun kökündə yerləşir və birbaşa gətirilir
GitHub-dan, ona görə də onun tarixçəsi yerləşdirilən saytın dediklərindən asılı olmayaraq yoxlanıla bilər.
Haqqında dialoqu onu rənglə kodlayır:
| Rəng | deməkdir |
|---|---|
| Yaşıl - hər şey aydındır | İmzalanmış, cari və imza tərtibatçının açarına uyğun gəlir. Heç bir gizli sifariş alınmayıb. |
| Sarı — vaxtı keçmiş və ya hər şey aydın deyil | Göstərilən tarixə və ya ona görə təzələnmədi allClear bayraq yalandır. Susdurulmuş sifarişi istisna etmək olmaz. |
| Qırmızı — etibarsız imza və ya getdi | İmza tərtibatçının açarı ilə uyğun gəlmir və ya fayl tamamilə silinib. Bunu ciddi bir xəbərdarlıq kimi qəbul edin. |
Təzəlik lövbəri
İmzalanmış kanareyka, imzalanma anında ən son Bitcoin blokunun hündürlüyünü və hashını özündə cəmləşdirir. Blok mövcud olmadan əvvəl bu hash bilinə bilməzdi, bu da kanareyanın olduğunu sübut edir imzaladı sonra aylar əvvəl toplu şəkildə əvvəlcədən imzalanmış deyil, müəyyən bir zaman nöqtəsi. Haqqında dialoqu lövbəri blok tədqiqatçısına bağlayır ki, siz onu yoxlaya biləsiniz.