Địa chỉ vanity khoá tách đôi: mua mà không cần tin người bán
Ai tạo ra địa chỉ vanity thì cũng tạo ra khoá riêng của nó — trừ khi việc tìm kiếm chạy trên một khoá công khai. Đây là cách mua split-key hoạt động, phép toán đằng sau nó, nó bảo vệ và không bảo vệ điều gì, và cách bạn tự kiểm chứng.
Trên trang này
Mọi cửa hàng bán địa chỉ vanity làm sẵn đều có cùng một lỗ hổng, và không điều khoản nào bịt được: để tạo ra địa chỉ, người bán đã tạo ra khoá riêng của nó. Họ có thể nói với bạn rằng bản sao đã bị xoá. Họ không thể cho bạn thấy điều đó.
Mua bằng khoá tách đôi không tranh luận với tiền đề ấy — nó xoá bỏ tiền đề. Người bán vẫn làm phần việc tốn kém, hàng triệu địa chỉ ứng viên mỗi giây trên GPU, mà vẫn không bao giờ sở hữu chiếc khoá cuối cùng thuộc về bạn.
Phép toán
Khoá TRON nằm trên đường cong secp256k1: khoá riêng là một số d, khoá công khai tương ứng là điểm d·G. Tính chất hữu ích là ánh xạ này cộng được:
`` (d + s)·G = d·G + s·G ``
Nhờ vậy việc tìm kiếm có thể tách làm hai:
- Trình duyệt của bạn chọn một
dngẫu nhiên và chỉ gửi raP = d·G, nửa công khai. - Trang trại thử các độ lệch
s = 1, 2, 3, …, tínhP + s·Gvà kiểm tra địa chỉ mỗi lần. Nó không bao giờ biếtd, nên cũng không bao giờ biếtd + s. - Trang trại trả về
sđã trúng mẫu của bạn. - Trình duyệt của bạn tính
d + s— khoá riêng của địa chỉ vừa tìm được.
Độ lệch đi công khai vì tự nó vô giá trị: không có d thì nó chỉ là một con số, và khôi phục d từ P chính là bài toán logarit rời rạc mà secp256k1 dựa vào.
Mỗi bên biết gì
| Bạn | Người bán | |
|---|---|---|
Nửa của bạn d | có | không |
Nửa công khai P | có | có |
Độ lệch s | có | có |
Khoá cuối d + s | có | không |
Không có bước nào mà khoá hoàn chỉnh tồn tại trên phần cứng của người bán. Không trong bộ nhớ, không trong nhật ký, không trong bản sao lưu — các mảnh không bao giờ gặp nhau ở đó.
Nó không bảo vệ bạn khỏi điều gì
Khoá tách đôi không phải thuốc tiên, và cửa hàng nào ngụ ý ngược lại là đang bán cho bạn sự yên tâm, không phải sự an toàn.
- Nó không kiểm chứng mã của người bán. Trình duyệt của bạn phải thật sự tạo khoá tại chỗ. Mở công cụ nhà phát triển, xem tab Network lúc đặt hàng và xác nhận thứ rời khỏi trang là 128 ký tự hex khoá công khai, không bao giờ là 64 ký tự khoá riêng.
- Nó không chữa được số ngẫu nhiên yếu. Nếu
dđến từ nguồn đoán được thì khoá cuối cũng đoán được.crypto.getRandomValuescủa trình duyệt hiện đại là ổn; một con số "ngẫu nhiên" gõ tay thì không. - Nó không loại bỏ đầu độc địa chỉ. Phần đuôi dễ nhớ càng giúp kẻ lừa đảo dựng một địa chỉ na ná. Hãy tiếp tục kiểm tra đủ địa chỉ trước mỗi lần chuyển.
- Nó không sao lưu hộ bạn. Đây mới là cái giá thật, và nó khắc nghiệt: người bán không thể khôi phục nửa của bạn, vì chưa từng giữ nó. Mất là mất địa chỉ vĩnh viễn.
Vì sao lâu hơn mua hàng có sẵn
Địa chỉ trên kệ đã được tạo từ trước nên giao ngay. Địa chỉ split-key không tồn tại cho đến khi có người tìm nó bằng khoá công khai của bạn, và đơn của người khác không dùng lại được. Hãy tính thời gian tìm kiếm cho độ dài bạn chọn, cộng thời gian dựng GPU.
Với bốn hay năm ký tự thì đây là công cụ sai: chiếc laptop của chính bạn tìm ra trong vài giây bằng trình tạo miễn phí chạy trong trình duyệt, và khi đó không hề có bên thứ hai nào. Khoá tách đôi xứng đáng từ khoảng bảy ký tự trở lên, khi việc tìm kiếm cần phần cứng mà bạn thà thuê còn hơn mua.
Cách kiểm chứng rằng nó đã chạy đúng
Khi độ lệch quay về, trình duyệt phải làm hai việc trước khi hiển thị bất cứ thứ gì: suy ra địa chỉ từ d + s, rồi so với địa chỉ đã hứa. Nếu khác nhau thì khoá sai và không được hiển thị gì cả.
Bạn có thể tự lặp lại phép kiểm tra. Nhập khoá vào TronLink và so đủ 34 ký tự địa chỉ mà ví hiển thị. Ví suy ra địa chỉ từ chính khoá, nên trùng khớp tức là khoá đúng — không cần tin bất kỳ trang web nào.
Câu hỏi thường gặp
Độ lệch có phải bí mật không?
Không, và cũng không cần. Độ lệch chỉ là một nửa của phép cộng, nửa kia chưa từng rời trình duyệt của bạn. Công bố nó không cho kẻ tấn công biết thêm điều gì mà họ không tự tính được từ địa chỉ.
Người bán có thể tìm ra khoá mà chính họ cũng dùng được không?
Với đơn của bạn thì không. Trang trại được đưa P, và mọi địa chỉ với tới được từ P đều cần d của bạn mới tiêu được. Tất nhiên họ có thể tạo một địa chỉ không liên quan rồi đưa cho bạn — chính vì vậy trình duyệt mới kiểm tra rằng khoá được giao suy ra đúng địa chỉ đã hứa.
Nếu tôi mất nửa khoá của mình thì sao?
Địa chỉ mất, không có đường khôi phục. Đây không phải chính sách mà là sự thật số học: người bán giữ một nửa của tổng và không dựng lại được nửa kia. Hãy lưu nửa của bạn ngay khi nó hiện ra, ở nơi khác với trình duyệt đã tạo ra nó.
Cái này có giống ví đa chữ ký không?
Không. Đa chữ ký nghĩa là nhiều khoá đều có thể phê duyệt giao dịch cho một tài khoản. Khoá tách đôi là một mẹo dựng khoá một lần: hai con số được cộng một lần, và kết quả là một khoá riêng đơn lẻ bình thường cho một tài khoản TRON bình thường.
HaoKey có cung cấp không?
Có, trên mọi mẫu trong danh mục — tuỳ chọn "không cần tin cậy" bên cạnh nút mua thường. Trang bảo mật của chúng tôi liệt kê nó là cách đầu tiên trong ba cách để không phải giao khoá cho chúng tôi.