Cách xác minh ví Skycoin chính chủ trên Windows

Để lưu trữ một đồng coin hoặc token nào đó an toàn, cách tốt nhất là bạn sử dụng ví cứng. Tuy nhiên, có một số coin chưa được ví cứng hỗ trợ thì ví phần mềm chính chủ của nhóm phát triển coin đó là giải pháp tối ưu để lưu trữ. Để lưu ở ví phần mềm, thông thường bạn phải tải ví về và cài đặt vào máy, tùy thuộc vào hệ điều hành mà có những phiên bản khác nhau trên website chính. Nhưng đôi khi ví bạn tải trên website chính thức có thể không còn là ví chính chủ nữa do sự can thiệp hoặc tác động của một bên thứ ba mà không có sự cho phép của nhóm phát triển. Do đó việc tạo thói quen xác minh trước khi cập nhật hay cài đặt ví chính chủ là cần thiết để tránh những trường hợp mất coin xảy ra một cách đáng tiếc.

Electron

Ví Skycoin chính chủ sử dụng Electron để tạo ra phiên bản trên desktop, do đó cần nói sơ qua một tí về Electron. Theo tài liệu chính thức: “Electron cho phép bạn tạo ra ứng dụng desktop với ngôn ngữ JavaScript thuần bằng cách cung cấp môi trường chạy với những hàm API riêng phong phú (hệ điều hành). Bạn có thể xem nó như là một biến thể của môi trường chạy Node.js mà được tập trung chủ yếu cho desktop thay vì web server.”

Mã độc và sự cứu cánh mã hóa

Nhiều người dùng Bitcoin đã quen với ý tưởng về chữ ký số bao gồm public key và private key. Ý tưởng tương tự như vậy có thể được áp dụng để đóng gói phần mềm. Lập trình viên ký vào phần mềm trước khi đưa lên website với khóa riêng. Người dùng xác minh việc bản tải xuống bằng khóa công khai (public key) của lập trình viên. Một tập tin giả mạo thay đổi dù chỉ một bit có thể được phát hiện với hệ thống này. Phương pháp tiêu chuẩn để ký nhị phân được gọi là Pretty Good Privacy (PGP).

Tải gpg4win và kiểm tra hash

PGP phổ biến trên Windows là Gpg4win. Bạn bắt đầu bằng cách tải xuống file cài đặt từ trang chủ. Một câu hỏi được đặt ra là: làm thế nào để chúng ta biết rằng bản tải về Gpg4win là xác thực chính chủ? Chúng ta không thể xác minh chữ ký ở thời điểm này bởi vì để làm điều đó thì chúng ta sẽ phải cần có trước Gpg4win.

May thay, chúng ta có thể xác minh giá trị hash của file cài đặt. Giá trị hash của file là một định dạng duy nhất, bất biến và có thể được gán cho bất kỳ tệp nào. Chúng ta có thể kiểm tra giá trị hash của một file trực tiếp trong Windows bằng cách sử dụng dòng lệnh và so nó với thông tin được cung cấp trên trang chủ để kiểm tra độ xác thực của file được tải về.

Giá trị hash của file có thể được tính toán trong Windows bằng tiện ích CertUtil, được chạy từ dấu nhắc lệnh.

Từ cửa sổ dòng lệnh bạn nhập vào lệnh sau:

CertUtil -hashfile <tên file>

Ở đây <tên file> là tên đầy đủ bao gồm đuôi của file Gpg4win mà bạn đã tải.

Ví dụ ở thời điểm tôi tải là file gpg4win-3.1.8.exe, thì dòng lệnh để kiểm tra giá trị hash của file để lấy giá trị hash SHA1 là:

CertUtil -hashfile gpg4win-3.1.9.exe

Lưu ý: file tải về phải nằm cùng vị trí hiện hành của dấu nhắc lệnh.

Sau câu lệnh này giá trị hash của file cài đặt sẽ được trả về 55aeeab00abe4c1ec3d71d67a37e5c34feed0805 và trông như sau:

Kết quả sau khi sử dụng lệnh CertUtil

Kết quả sau khi sử dụng lệnh CertUtil

Sau đó bạn so giá trị trả về với giá trị được cung cấp ở trang chủ gpg4win. Nếu hai giá trị này là giống nhau thì bạn tiến hành cài đặt. Ngược lại, bạn nên tìm hiểu lý do tại sao giá trị hash lại không giống nhau. Lưu ý rằng các hacker có thể tấn công đoạt quyền kiểm soát của website Gpg4win và có thể thay đổi giá trị hash trùng với file giả mạo. Đây là yếu điểm của việc sử dụng giá trị hash để chứng thực file tải về. Nhưng xác xuất xảy ra việc hack website để thay đổi các thông tin là thấp. Và kể từ lần nâng cấp cài đặt thứ 2 thì bạn nên dùng chính chức năng của gpg4win để xác thực file tải về.

Sau khi tải và xác nhận giá trị hash của file cài đặt, click đôi lên nó, để nguyên các giá trị mặc định. Công cụ cài đặt sẽ hoàn thành mà không có bất kì vấn đề nào.

Nhập public key của lập trình viên

Sau khi cài đặt Gpg4win bạn sẽ thấy xuất hiện tiện ích chữ kí được gọi là Kleopatra. Khi bạn chạy Kleopatra sẽ xuất hiện 2 tùy chọn là New Key PairImport cùng với tùy chọn Lookup on Server trên thanh công cụ.

Giao diện Kleopatra

Giao diện Kleopatra

Bạn sử dụng chức năng tìm kiếm Lookup on Server để tiến hành nhập thông tin của lập trình viên nhóm Skycoin. Sau khi kết quả tìm kiếm được hiển thị, bạn cần so thông tin public key của lập trình viên nhóm Skycoin có thể tham khảo [ở trang github của nhóm] (https://github.com/skycoin/skycoin#release-signing)

Giao diện Kleopatra

Giao diện Kleopatra

Tải ví + chữ kí và xác minh

Bước tiếp theo là tải ví và chữ kí của nhóm Skycoin ở trang chủ hoặc github của nhóm. Lưu 2 file đó ở cùng thư mục trên Windows với định dạng tên giống nhau như hình bên dưới.

File cài đặt ví Skycoin và file chữ kí định dạng asc

File cài đặt ví Skycoin và file chữ kí định dạng asc

Để xác minh file, click chuột phải lên file cài đặt chọn MoreGpgEX options –> Verify.

File cài đặt ví Skycoin và file chữ kí định dạng asc

File cài đặt ví Skycoin và file chữ kí định dạng asc

Cửa số “Verify Files” của Kleopatra sẽ được mở ra với thanh trạng thái màu xanh ở trên. Dưới đó các thông tin xác minh ví Skycoin sẽ được hiển thị cùng với dòng chữ “The data could not be verified.” Điều này có nghĩa là bạn chưa chỉ định sự tin tưởng giá trị public key của lập trình viên bằng cách kí lên nó. Chúng ta sẽ làm việc đó ở phần sau. Tuy nhiên đến đây ta có thể kết luận là ví Skycoin đã được xác thực.

Ví Skycoin đã xác thực chính chủ

Ví Skycoin đã xác thực chính chủ

Trường hợp không xác thực Kleopatra sẽ hiển thị Invalid Signature. như hình bên dưới. Lúc này bạn cần thông báo vấn đề cho nhóm Skycoin biết, không nên cài đặt trong trường hợp này.

Ví Skycoin không được xác thực vì có sự sai khác

Ví Skycoin không được xác thực vì có sự sai khác

Kết luận

Tóm lại, bạn cần thực hiện những bước sau đây để xác minh ví Skycoin chính chủ trên Windows

  • Tải phần mềm Gpg4win.

  • Xác minh Gpg4win chính chủ bằng checksum.

  • Nhập public key của lập trình viên bằng cách tìm kiếm và so sánh.

  • Tải ví fie cài đặt và chữ kí của ví Skycoin.

  • Xác minh chữ kí cho file cài đặt.

Hy vọng qua bài viết này, việc nhận thức, xác minh ví chính chủ Skycoin sẽ được quan tâm một cách đúng mực, tránh những trường hợp đáng tiếc xảy ra do giả mạo.

Tham khảo

https://github.com/skycoin/skycoin#release-signing