Cơ sở tri thức Dưới mui xe
Xác minh bản dựng
Nguồn mở chỉ hữu ích nếu mã bạn đang chạy là mã đã được được xuất bản. Nymchat được xây dựng một cách xác định để bạn có thể tự mình kiểm tra từ bên trong ứng dụng hoặc từ một thiết bị đầu cuối.
Trang này được dịch bằng máy để thuận tiện. Bản gốc tiếng Anh là phiên bản được áp dụng.
Bản dựng có thể tái tạo
Việc xây dựng ứng dụng sẽ phát ra một build-manifest.json chứa cam kết nguồn, một
Hàm băm SHA-256 của mọi nội dung HTML, JavaScript và CSS được cung cấp và một
bundleHash trên toàn bộ tập tài sản đó.
Đầu ra chỉ phụ thuộc vào nội dung nguồn - ngay cả thời gian xây dựng được ghi lại cũng là
dấu thời gian của cam kết thay vì thời điểm bản dựng chạy - vì vậy bất kỳ ai xây dựng lại giống nhau
cam kết nhận các tệp giống hệt byte và giống nhau bundleHash.
Sau đó, Hành động GitHub sẽ xây dựng lại từng cam kết một cách độc lập và ký tên nguồn gốc xây dựng
chứng thực cho hàm băm và bảng kê khai, do đó có một bản ghi đã ký kết buộc một
bundleHash tới một cam kết trong kho lưu trữ, được tạo ra bởi một cái gì đó không phải là
triển khai.
Hộp thoại Giới thiệu kiểm tra nội dung gì
Về trong tiêu đề chạy kiểm tra trực tiếp, trong trình duyệt của bạn.
Nó tìm nạp lại từng nội dung mà trang đang thực sự chạy, băm nó bằng API Web Crypto và
so sánh với bảng kê khai. Sau đó - và đây là phần quan trọng - nó
tính toán lại bundleHash từ băm Nó vừa tính toán, không phải từ
bất kỳ điều gì mà bản kê khai tuyên bố và tìm kiếm điều đó trong các chứng thực đã ký của kho lưu trữ
thông qua API GitHub.
Đó là điều khiến quá trình triển khai không thể tự bảo đảm: cung cấp các tệp đã sửa đổi cùng với bảng kê khai phù hợp vẫn không thành công vì hàm băm được tính toán lại không có chứng thực.
| Trạng thái | Có nghĩa |
|---|---|
| &kiểm tra; Ứng dụng chính thức đã được xác minh (n/n) | Mọi nội dung đều khớp, hàm băm gói được tính toán lại được chứng thực bởi kho lưu trữ, Và trang được phục vụ từ tên miền chính thức. |
| ⚠ Bản dựng đã được xác minh · không phải ứng dụng chính thức | Mã này là chính hãng và đã được chứng thực, nhưng đây là bản sao của một miền khác. Một tấm gương không thể loại bỏ cảnh báo này nếu không xác minh được. |
| ✗ Không phù hợp | Một nội dung không băm theo nội dung của bảng kê khai. |
| ✗ Bản dựng không chính thức | Băm gói được tính toán lại không có chứng thực từ kho lưu trữ - một bảng kê khai tự tạo. |
| ⚠ Không thể truy cập được nguồn gốc | Không thể truy cập API GitHub nên không thể kiểm tra chứng thực theo cách nào đó. |
Tự mình xác minh
Xây dựng lại cam kết tên hộp thoại Giới thiệu và so sánh:
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>"
Hàm băm được in phải khớp với cả hàm băm trong hộp thoại Giới thiệu và hàm băm trong cam kết đó bản tóm tắt quá trình xây dựng xuất xứ. Bạn cũng có thể kiểm tra chữ ký trực tiếp bằng GitHub CLI:
gh attestation verify dist/build-manifest.json --repo Spl0itable/NYM
Lệnh bắt chim hoàng yến
Lệnh bảo đảm là một tuyên bố được xuất bản theo một lịch trình cố định mà nhà phát triển có không nhận được một lệnh bí mật của chính phủ mà họ bị cấm tiết lộ - một Thư An ninh Quốc gia, lệnh FISA. Nhà phát triển có thể bị buộc phải giữ im lặng về mệnh lệnh như vậy, nhưng không thể bắt buộc phải nói dối, nên con chim hoàng yến bị ôi thiu hoặc biến mất là chính nó là tín hiệu.
Nó sống ở canary.json ở thư mục gốc của kho lưu trữ và được lấy trực tiếp
từ GitHub, vì vậy lịch sử của nó có thể được kiểm tra độc lập với bất kỳ điều gì trang web được triển khai nói.
Hộp thoại Giới thiệu mã màu cho nó:
| Màu sắc | Có nghĩa |
|---|---|
| Màu xanh lá - tất cả đều rõ ràng | Đã ký, hiện tại và chữ ký khớp với khóa của nhà phát triển. Không có lệnh bí mật nào được nhận. |
| Màu vàng — quá hạn, hoặc không rõ ràng | Nó không được làm mới trước ngày đã nêu, hoặc allClear cờ là sai. Không thể loại trừ được lệnh im lặng. |
| Màu đỏ — chữ ký không hợp lệ hoặc đã biến mất | Chữ ký không khớp với khóa của nhà phát triển hoặc tệp đã bị xóa hoàn toàn. Hãy coi đây là một cảnh báo nghiêm túc. |
Mỏ neo tươi mát
Canary đã ký sẽ nhúng chiều cao và hàm băm khối Bitcoin mới nhất tại thời điểm ký. Hàm băm đó không thể được biết trước khi khối tồn tại, điều này chứng tỏ chim hoàng yến đã đã ký sau đó một thời điểm cụ thể thay vì được ký trước hàng loạt tháng trước đó. Hộp thoại Giới thiệu liên kết mỏ neo với trình khám phá khối để bạn có thể kiểm tra nó.