Học Swap

Không ai có thể bán cho bạn một chiếc “ví lạnh”

Read in English →
So sánh mô hình bảo mật của ví cứng và ví phần mềm: phần cứng có những lớp cần tin cậy, trong khi nhiều thành phần của ví phần mềm có thể được kiểm tra công khai.

Tôi nói thẳng quan điểm của mình:

Nếu ai đó quảng cáo rằng sản phẩm họ bán là một “ví lạnh”, tôi coi đó là quảng cáo lừa dối.

Người ta có thể bán cho bạn một ví cứng — hardware wallet.

Nhưng không ai có thể bán cho bạn trạng thái “lạnh”.

Bởi vì nóng hay lạnh không phải thuộc tính cố định của thiết bị. Nó được quyết định bởi cách bạn tạo, lưu và sử dụng khóa.

Một chiếc điện thoại cũng có thể trở thành nơi lưu trữ lạnh

Tôi có thể lấy một chiếc điện thoại bình thường, cài Nova Wallet, tạo ví, sao lưu seed an toàn rồi ngắt mạng và cất chiếc điện thoại đó đi.

Không SIM.

Không Wi-Fi.

Không lướt web.

Không cài thêm ứng dụng.

Không kết nối dApp.

Không ký giao dịch thường xuyên.

Chiếc điện thoại đó không được ai bán cho tôi dưới cái tên “ví lạnh”.

Nova cũng chỉ là một ví phần mềm.

Nhưng chính cách tôi vận hành nó đã tạo ra một hình thức lưu trữ lạnh.

Ngược lại, tôi có thể mua một hardware wallet rồi ngày nào cũng kết nối nó với máy tính, vào DeFi, swap, approve token và ký smart contract.

Vậy cái nào lạnh hơn?

Câu trả lời không nằm ở việc một thiết bị có chữ hardware wallet trên hộp.

Nó nằm ở cách khóa được sử dụng.

Ví cứng giải quyết một bài toán, không phải mọi bài toán

Ưu điểm thực sự của ví cứng rất rõ ràng:

Nó cố gắng cách ly private key khỏi máy tính hoặc điện thoại đang kết nối Internet.

Nếu malware đang tìm cách lấy private key từ máy tính, sự cách ly đó có giá trị.

Nhưng mất crypto không nhất thiết phải bắt đầu bằng việc private key bị đánh cắp.

Kẻ tấn công có thể làm một việc đơn giản hơn nhiều:

Lừa chính bạn ký.

Một website đưa ra transaction độc hại.

Bạn dùng ví phần mềm:

Review → Confirm → ký.

Bạn dùng ví cứng:

Review → Confirm → bấm thêm trên thiết bị → ký.

Nếu chính bạn đã chấp nhận giao dịch độc hại, kết quả cuối cùng vẫn là:

một chữ ký hợp lệ.

Blockchain không biết bạn dùng Ledger, điện thoại hay extension.

Nó cũng không biết bạn bị lừa.

Nó chỉ biết:

Đúng khóa đã ký.

Vì vậy:

Bảo vệ private key ≠ bảo vệ tài sản khỏi mọi rủi ro.

Và ví cứng cũng là phần mềm

Một hardware wallet không phải một cục kim loại thần kỳ.

Bên trong nó vẫn có:

chip, firmware, bootloader, ứng dụng, cơ chế cập nhật và code do con người viết.

Bạn còn phải tin vào nhà sản xuất, quy trình sản xuất, firmware, cập nhật phần mềm và chuỗi cung ứng.

Điều đó không có nghĩa ví cứng không an toàn.

Nó chỉ có nghĩa rằng:

“Hardware” không đồng nghĩa với “an toàn”.

Cũng như:

“Software” không đồng nghĩa với “không an toàn”.

Hãy nhìn sang các ví phần mềm

Nova là ví phần mềm có mã nguồn ứng dụng Android và iOS được công khai.

SubWallet cũng công khai mã nguồn extension và mobile.

Polkadot.js Extension là mã nguồn mở.

Mã nguồn cốt lõi của MetaMask Extension cũng được công khai và có lịch sử phát triển công khai nhiều năm.

Điều đó không chứng minh chúng không thể có lỗi.

Open source không có nghĩa là an toàn tuyệt đối.

Nhưng nó tạo ra một thuộc tính bảo mật rất quan trọng:

khả năng kiểm chứng.

Code có thể được xem.

Thay đổi có thể được theo dõi.

Lịch sử phát triển có thể được kiểm tra.

Lỗi có thể được cộng đồng phát hiện.

Một phần mềm tồn tại nhiều năm, có mã nguồn công khai và được rất nhiều người sử dụng có một mô hình tin cậy hoàn toàn khác với suy nghĩ đơn giản:

Phần mềm = nóng = nguy hiểm.
Phần cứng = lạnh = an toàn.

Không có phương trình nào như vậy.

Điều quan trọng hơn cả thiết bị: cách người dùng ký

Có một thứ trong bảo mật thường bị coi là nhược điểm:

Sự phiền phức.

Tôi lại cho rằng trong nhiều trường hợp:

Chính sự phiền phức tạo ra an toàn.

Hãy tưởng tượng bạn đang lái xe đường dài và bắt đầu buồn ngủ.

Cứ một lúc lại có một cú đánh thức:

Tỉnh lại.

Nhìn đường.

Bạn đang làm gì?

Một quy trình ký tốt cũng nên như vậy.

Bạn đang ở network nào?

Bạn đang dùng token nào?

Bạn gửi bao nhiêu?

Địa chỉ nhận là gì?

Phí bao nhiêu?

Transaction thực sự sẽ làm gì?

Bạn có chắc muốn ký không?

Mỗi bước là một cú đánh thức.

Khó chịu ư?

Đúng.

Nhưng chính sự khó chịu khiến chúng ta không ngủ quên trên nút Confirm.

Đôi khi UX quá tốt lại tạo ra một loại rủi ro khác

Trong TestSwap mà chúng tôi đang thử nghiệm, một số thao tác có nhiều bước hơn mức người dùng mong muốn.

Theo tư duy UX thông thường, đó là nhược điểm.

Càng ít click càng tốt.

Nhưng với giao dịch tài chính, tôi không chắc nguyên tắc đó luôn đúng.

Nếu năm bước chỉ lặp lại vô nghĩa thì nên bỏ.

Nhưng nếu năm bước buộc người dùng lần lượt nhìn thấy:

Network → Token → Recipient → Amount → Review → Sign

thì đó không đơn thuần là sáu bước UX.

Đó có thể là sáu checkpoint bảo mật.

Một giao diện quá trơn tru có thể huấn luyện người dùng:

Confirm → Confirm → Confirm.

Đến một ngày transaction độc hại xuất hiện, ngón tay vẫn làm đúng điều nó đã được huấn luyện làm hàng nghìn lần.

Confirm.

“Lạnh” nằm trong hành vi

Một MetaMask có thể rất nóng.

Một Nova có thể rất nóng.

Một SubWallet có thể rất nóng.

Và một Ledger cũng có thể rất nóng về cách sử dụng nếu ngày nào bạn cũng mang nó ra kết nối dApp và ký mọi thứ.

Ngược lại, một chiếc điện thoại bình thường có thể được dành riêng cho một khóa, giữ offline và chỉ được lấy ra trong những trường hợp rất cụ thể.

Vì vậy đừng hỏi tôi:

“Bạn dùng ví nóng hay ví lạnh?”

Hãy hỏi:

Khóa được tạo ở đâu?

Seed đã từng xuất hiện trên thiết bị nào?

Thiết bị đó kết nối Internet như thế nào?

Bạn kết nối những dApp nào?

Bạn ký thường xuyên đến đâu?

Trước khi ký, bạn phải kiểm tra những gì?

Nếu làm sai, quy trình có buộc bạn dừng lại lần nữa không?

Những câu hỏi đó mô tả mức độ an toàn tốt hơn rất nhiều so với hai chữ “ví lạnh”.

Đừng mua sự an toàn dưới dạng một cái hộp

Bạn có thể mua một hardware wallet.

Nó có thể là một công cụ bảo mật rất hữu ích.

Nhưng không ai bán được cho bạn trạng thái “lạnh”.

Ngay sau khi mua, chính cách sử dụng của bạn sẽ quyết định điều đó.

Và đây là lý do tôi phản đối việc quảng cáo hardware wallet đơn giản là “ví lạnh”.

Nó khiến người mua rất dễ hình thành một suy luận nguy hiểm:

Tôi đã mua ví lạnh → tiền của tôi an toàn.

Không.

Bạn chỉ vừa mua thêm một công cụ.

An toàn đến đâu còn phụ thuộc vào cách bạn tạo khóa, giữ seed, quản lý thiết bị, lựa chọn dApp, đọc transaction và đặc biệt là thói quen trước khi ký.

Một quy trình tốt đôi khi cố tình làm bạn khó chịu.

Nó liên tục kéo bạn trở lại trạng thái tỉnh táo:

Đọc lại.

Kiểm tra lại.

Hiểu rồi mới ký.

Đó mới là thứ tôi gọi là bảo mật.

Không có thiết bị nào tự nó là “ví lạnh”.

Chỉ có cách sử dụng khiến khóa của bạn nóng lên hay lạnh đi.

Và nếu ai đó bán cho bạn một cái hộp rồi quảng cáo rằng chính cái hộp đó là “ví lạnh”, thì theo quan điểm của tôi, họ đang bán cho bạn nhiều hơn những gì cái hộp thực sự có thể bảo đảm.