Ví đa chữ ký (multisig) cho blockchain Handshake

*Lưu ý bài viết này chỉ được viết ở dạng tóm tắt

Giới thiệu

Giống như Bitcoin, blockchain Handshake cũng hỗ trợ ví đa chữ kí (multisig wallet). Multisig, viết tắt của multisignature, đề cập đến một địa chỉ ví được kiểm soát không phải bởi một khóa cá nhân duy nhất, mà bởi nhiều khóa cá nhân. Điều này cho phép mức độ bảo mật cao hơn nhiều so với các ví với một chữ ký đơn lẻ vì nó giúp loại bỏ điểm lỗi duy nhất. Nếu một khóa bị mất, bị phá hủy hoặc bị đánh cắp, nó luôn có thể được thay thế bằng một khóa mới. Palm Reader là ví có giao diện (UI) đầu tiên hỗ trợ đa chữ kí cho blockchain Handshake.

Giao diện Palm Reader v0.1.1 trên Ubuntu

Giao diện Palm Reader v0.1.1 trên Ubuntu

Cài đặt ví Palm Reader

Hiện nay ví Palm Reader đang được phát triển nên chi tiết cài đặt có thể tham khảo ở Github với một số lưu ý sau:

  • Nên sử dụng NodeJS v14.20.1

Lưu ý cực kì quan trọng

  • Scan lại wallet sau khi thêm ví và chờ đồng bộ cho đến 100%

Sử dụng ví đa chữ kí

Để đồng bộ nhanh nên sử dụng ở chế độ spv

$ hsd --spv --plugins palmreader 

Nên lưu lại hex blob khi thực hiện chuyển trên ví multisig

Copy qua SSH

May mắn là Palm Reader chạy tốt qua SSH. Do đó, sử dụng Palm Reader cùng với ví cứng Ledger và một SBC như Orange Pi không phải là một ý tưởng tồi.

Giao diện Palm Reader v0.1.1 qua SSH

Giao diện Palm Reader v0.1.1 qua SSH

Để sử dụng được Palm Reader qua SSH thì tính năng copy và paste qua SSH từ Windows là cần thiết. Bạn cần có một chương trình SSH hỗ trợ tính năng X11 forwarding như MobaXterm và cần cài đặt một số gói hỗ trợ trên Pi.

Trước hết, đảm bảo X11Forwarding yes trong file cấu hình ssh ở /etc/ssh/sshd_config. Thường thiết lập này là mặc định trên Debian hoặc Ubuntu.

Gói hỗ trợ copy:

$ sudo apt install xsel

Hỗ trợ X11:

  • Debian/Ubuntu
$ sudo apt install xauth xfonts-base
  • CentOS/Fedora/RHEL X11
yum install xorg-x11-xauth xorg-x11-fonts-* xorg-x11-font-utils xorg-x11-fonts-Type1

Ví cứng Ledger và Palm Reader

$ wget -q -O - https://raw.githubusercontent.com/LedgerHQ/udev-rules/master/add_udev_rules.sh | sudo bash

Kiểm tra Linux nhận được thiết bị

$ lsusb

Trường hợp nhận ra thiết bị, kết quả tương tự như sau:

Bus 008 Device 002: ID 2c97:1011 Ledger Nano S
$ ls -al /dev/bus/usb/008/002
crw-rw-r-- 1 root root 189, 897 Oct  8 13:29 /dev/bus/usb/008/002

Sửa lỗi cannot open device with path /dev/hidraw0

sudo chmod 666 /dev/hidraw*

Sao lưu phục hồi ví

Các ví đã nhập được lưu ở thư mục .hsd ở home. Thực hiện lệnh sau để sao lưu

$ cd ~/.hsd/
$ tar -cvf wallet.tar ./wallet

Muốn phục hồi thì copy lại file wallet.tar đặt đúng đường dẫn trên và thực hiện lệnh giải nén

$ mkdir ~/.hsd
$ cd ~/.hsd
$ tar -xvf wallet.tar