Ví an toàn – giải pháp cho mất key mà không mất coin

Tạo nên một công cụ khôi phục ví – Khi chúng tôi xây dựng ví Bitcoin, chúng tôi rất quan tâm tới việc làm sao để cho sản phẩm dễ tiếp cận hơn với mọi người, đặc biệt là tìm ra những cách dễ dàng để khôi phục ví khi xảy ra sự cố. Chúng tôi đã suy nghĩ về cách tạo ra một cách khôi phục linh hoạt và đơn giản hơn. Nó vẫn đang trong quá trình phát triển và sẵn sàng thay đổi nên chúng tôi muốn lắng nghe ý kiến ​​của các bạn về những cách chúng tôi có thể làm cho nó tốt hơn nữa. Hãy đóng góp ý kiến của bạn tại wallet@block.xyz hoặc trên Twitter.

Sản phẩm đang xây dựng dành cho ai?

Như đã trình bày tại Cam kết sản phẩm, chúng tôi đang cố gắng xây dựng một công cụ cho mọi người để có thể quản lý tài sản kỹ thuật số của họ một cách an toàn, bắt đầu bằng Bitcoin. Một Wallet an toàn cần phải có hai yếu tố sau:

  • Đảm bảo bạn luôn có thể truy cập vào ví của bạn.
  • Đảm bảo những người không được bạn cho phép không thể truy cập vào ví của bạn.
Để giải quyết triệt để hai vấn đề này luôn là việc nan giải.

Nếu tăng cường biện pháp bảo vệ thì sẽ gây khó khăn cho người sở hữu trong việc truy cập ví, đồng thời mọi cách khôi phục ví đều tạo nên những lỗ hỏng để kẻ xấu có thể lợi dụng. Những nghiên cứu của chúng tôi đều cho thấy hầu hết người đang sử dụng ví Custodial đều do dự khi chuyển sang ví Non – custodial vì họ lo lắng về việc dễ mắc lỗi khi sử dụng chúng chứ không phải vì họ cho rằng nó kém an toàn hơn. Tình thế tiến thoái lưỡng nan khi vừa lo lắng về sự thiếu kiểm soát đối với ví Custodial, nhưng cũng lo lắng về việc không thể khôi phục đối với ví Non – custodial.

Để làm cho ví Non – custodial dễ tiếp cận hơn với khách hàng, chúng tôi không chỉ tối ưu hóa vấn đề bảo mật mà còn cho sự an toàn khi sử dụng. Điều đó có nghĩa là phải xây dựng một công cụ cân bằng giữa việc bảo mật một cách hoàn hảo và việc dễ dàng khôi phục khi khách hàng mắc lỗi khi sử dụng những sản phẩm mới. Chúng ta cần tạo ra một sản phẩm dễ dàng hơn cho khách hàng trong việc tự xử lý sự cố cũng như dễ dàng bỏ qua những lỗi nhỏ mà khách hàng thường hay mắc phải.

Những gì chúng tôi đang cố gắng xây dựng

Hiện đã có rất nhiều sản phẩm tuyệt vời cho phép lưu trữ Bitcoin lâu dài, tự quản lý một cách an toàn và những sản phẩm khác cho phép truy cập nhanh chóng và dễ dàng khi cần. Nhưng không có sản phẩm nào thành công ở cả hai mục đích. Do đó, hầu hết những người sở hữu bitcoin đều phải dựa vào nhiều loại ví cho các mục đích khác nhau. Điều này có nghĩa là cần phải quản lý tính bảo mật của nhiều ví, đồng thời theo dõi dòng tiền nhiều nơi và tính toán cân đối chúng một cách thủ công. 

Đối với những ví Non – custodial hiện tại, ngoài việc phải học cách sử dụng thì còn phải chịu trách nhiệm cho việc tự quản lý và bảo mật nó. Việc này góp phần hạn chế số lượng người có thể sử dụng nó trong khi những người khác bị đẩy vào tình trạng phụ thuộc vào sự hỗ trợ.

Chúng tôi muốn xây dựng thứ gì đó vừa có bảo mật đơn giản nhưng hiệu quả vừa có thể khôi phục một cách dễ dàng. Nó vừa được sử dụng để chi tiêu dễ dàng, vừa dùng để tiết kiệm một cách an toàn. Tất cả đều được gói gọn trong một công cụ.

Như đã nói trong bài viết trước về cách thức hoạt động của chiếc ví mà chúng tôi đang xây dựng, chúng tôi nghĩ rằng mình có thể làm được điều đó với thiết kế “Đa chữ ký 2 trên 3”. (Trước khi chúng tôi đặt được cái tên chính thức cho nó, thì chúng tôi muốn gọi nó là Wallet). 

Ví sẽ có 3 khóa do 3 phần nắm giữ:

  • App
  • Hardware
  • Server

Tất cả các giao dịch cần được ít nhất hai trong số chúng phê duyệt. Khách hàng sẽ kiểm soát 2 khóa bằng App và Hardware, Blockchain sẽ thay mặt họ quản lý khóa Server.

Những gì chúng tôi đang cố gắng phòng tránh

Với tính linh hoạt và dự phòng được cung cấp bởi thiết kế “Đa chữ ký 2 trên 3” có một số yếu tố chúng tôi đang cố gắng phòng tránh khi thiết kế các quy trình khôi phục:

Sao lưu cụm từ khôi phục ví

Chúng tôi nghĩ rằng một trong những rào cản đối với việc tiếp cận ví Non – Custodial là việc sao lưu những cụm từ khôi phục ví để giữ an toàn. Điều này có nghĩa là tránh phụ thuộc vào các cụm từ bí mật (12 hoặc 24 từ) mà khách hàng thường sử dụng đi kèm với nó là mối nguy hiểm rằng bất kỳ ai biết được nó đều có thể đánh cắp tất cả tài sản của họ. 

Mặc dù với những người dùng có kinh nghiệm đều đã quen với cách bảo vệ các cụm từ bí mật, nhưng những người dùng mới hơn sẽ cảm thấy sợ hãi với chúng. Chúng cũng tạo cơ hội dễ dàng cho những kẻ xấu khai thác bằng cách thao túng tâm lý khách hàng chia sẻ cụm từ gốc để hỗ trợ hoặc lừa khách hàng nhập cụm từ gốc vào một trang web giả mạo.

Trình ghi nhớ mật khẩu

Nói chung, mọi người rất tệ trong việc tạo và ghi nhớ mật khẩu – đặc biệt là những mật khẩu cần sự phức tạp để bảo mật. Các công cụ như trình quản lý mật khẩu sẽ giảm bớt gánh nặng cho bạn, nhưng chúng tôi không nghĩ việc sử dụng các công cụ này đủ phổ biến với tất cả mọi người.

Xác minh danh tính

Chúng tôi không nghĩ rằng khách hàng cần phải cung cấp tài liệu nhận dạng để xác minh danh tính. Nó sẽ là rào cản cho những khách hàng không thể sử dụng giấy tờ các nhân và  làm giảm quyền riêng tư. Điều đó gây ra nhiều vấn đề đau đầu về trải nghiệm của khách hàng hơn là bổ sung tính bảo mật.

Mục tiêu của chúng tôi

Dựa trên các nguyên tắc và cam kết, chúng tôi muốn xây dựng các công cụ mang lại các mục tiêu trải nghiệm sau đây cho khách hàng của Wallet:

  • Chỉ với một ứng dụng dành cho thiết bị di động, thiết bị phần cứng và vài phút thiết lập cơ bản, bạn có thể tạo ra một Wallet cho phép bạn quản lý tiền của mình một cách an toàn, ngay cả khi bạn mất quyền truy cập vào một trong các thiết bị của mình.
  • Khi thiết lập Wallet của mình, bạn không cần nhớ bất kỳ cụm từ bí mật nào (ngoại trừ mã PIN nếu bạn không muốn chỉ dựa vào dấu vân tay để mở khóa Hardware) và chia sẻ bất kỳ thông tin nhận dạng nào ngoài email và/hoặc số điện thoại cho các thông báo cần thiết.
Bạn sẽ đặt giới hạn của riêng mình cho số tiền có thể chuyển bằng App dành cho thiết bị di động của bạn (tương tự với Server).
  • Trong khi phần còn lại vẫn được bảo vệ với sự chấp thuận bắt buộc từ Hardware của bạn.
  • Bằng cách tùy chọn bật Social Recovery (phần này sẽ được nói kỹ hơn phía dưới), bạn có thể chọn một nhóm liên hệ cá nhân để giúp bạn khôi phục Wallet nhanh hơn nếu cả App và Hardware đều bị mất .
  • Với hai trong số ba Key trong tay, bạn sẽ thực sự sở hữu Wallet của bạn: chúng tôi không thể chuyển tiền của bạn nếu không có bạn và bạn hoàn toàn có thể chuyển tiền của mình bằng hai Key mà không cần chúng tôi.

Về các công cụ để khôi phục

Chúng tôi chỉ tìm ra một số ít lỗi phổ biến nhất mà khách hàng có thể gặp phải và chúng tôi đang xây dựng các công cụ để giúp việc khôi phục trong những tình huống đó trở nên an toàn và dễ dàng hơn. 

Đây không phải là tất cả những phương pháp có thể có hay tất cả những lỗi mà khách hàng có thể gặp phải mà chỉ tập trung vào lỗi phổ biến có thể gặp phải đối với Wallet.

1 – Kích hoạt thiết bị mới bằng dữ liệu sao lưu đám mây

Hãy tưởng tượng rằng:” Bạn lỡ làm rớt điện thoại và nó không thể sử dụng được nữa. Bạn quyết định mua một cái mới. Bạn sử dụng App để kích hoạt Wallet của mình trên chiếc điện thoại mới đó. App yêu cầu xác thực từ Hardware của bạn để khôi phục bản sao lưu từ dữ liệu đám mây mà bạn đã lưu trước đó. Bạn lấy ra cái Hardware mà mình đã cất giữ nó từ một nơi rất an toàn và xác thực điện thoại mới chỉ bằng một cái Xác thực vân tay. Một lúc sau, App thông báo rằng đã khôi phục bản sao lưu giống hệt trên cái điện thoại cũ của bạn.”

Chúng tôi cho rằng việc sử dụng thiết bị di động như một phần của Wallet là rất quan trọng để giúp việc gửi đi trở nên dễ dàng, nhưng sẽ khiến nó gặp rất nhiều rủi ro. Hư vỡ, trộm cắp và thay đổi thiết bị có thể là nguyên nhân ‘khôi phục’ phổ biến nhất đối với khách hàng.

Do đó, bạn không nên coi đây là trường hợp khẩn cấp.

Việc dựa vào bộ lưu trữ đám mây để lưu dữ liệu ứng dụng thì rất dễ sử dụng, đồng thời bảo vệ dữ liệu đó bằng một lớp mã hóa khác thông qua một phần khác của Wallet và tách biệt khỏi thiết bị di động của mình là đủ bảo mật để sử dụng nó cho một trong 3 khóa của Wallet.

Sao lưu đám mây cho phép xuất hai bản sao được mã hóa của App Key sang bộ nhớ đám mây do khách hàng sở hữu trong quá trình tạo Wallet, sau đó một bản được giải mã bằng Hardware Key và bản thứ hai được giải mã bằng mật khẩu do Server. Bản sao lưu đầu tiên hữu ích cho việc thiết lập Wallet trên các thiết bị di động mới một cách nhanh chóng và dễ dàng, trong khi bản sao thứ hai được bảo vệ bởi Social Recovery tạo ra một đường dẫn để khôi phục sau khi mất tất cả thiết bị phần cứng và khóa của khách hàng.

Thiết lập:

Trong quá trình triển khai App, nó sẽ yêu cầu quyền truy cập vào bộ nhớ đám mây và khuyến khích thiết lập ‘Khóa dự phòng di động’ chỉ bằng một cú nhấp chuột đơn giản. Ví vẫn có thể hoạt động mà không cần điều này, nhưng sẽ không có nhiều tùy chọn để khôi phục.

Yêu cầu:

Quyền truy cập ghi và đọc ứng dụng để tạo và tìm các bản sao lưu trong bộ lưu trữ đám mây và quyền truy cập vào phần cứng HOẶC các liên hệ khẩn cấp để sử dụng/giải mã.

2 – Thay thế Hardware bị mất bằng Key Rotation with Delay and Notify

Hãy tưởng tượng rằng:”Bạn chuyển nhà và sau khi mở tung hết tất cả các hộp đồ nhưng vẫn không thể tìm thấy Hardware của bạn. Bạn lo sợ rằng đã làm mất nó và hy vọng nó sẽ xuất hiện trở lại. Nhưng không, và bạn phải mua một cái Hardware mới. Bạn mở App của mình lên nhấp vào “Tôi bị mất Hardware” để cài đặt cho cái Hardware mới đó. Trước đó bạn chưa thiết lập bất kỳ biện pháp bảo vệ nào cả.

Thông báo về thời gian đếm ngược khôi phục với Key Rotation with Delay and Notify.

Trong một khoảng thời gian, nó sẽ gửi thông báo đến email hoặc tinh nhắn mà bạn đã cung cấp trong quá trình thiết lập. Email hiển thị khoảng thời gian còn lại trước khi Wallet được khôi phục và hướng dẫn hủy khôi phục nếu bạn không phải là người gửi yêu cầu khôi phục. Thời gian chờ đợi thì bạn vẫn có thể giao dịch số tiền dựa trên hạn mức mà bạn đã định sẵn trên App.

Khi bạn có Hardware mới trong tay, bạn có thể kết nối nó với App thông qua vài bước đơn giản và đăng ký dấu vân tay của bạn. Sau khi hết thời gian chờ đợi, bạn có thể chuyển sự kiểm soát ví của mình sang Hardware mới.”

Một trong hai Key bị mất vĩnh viễn (Hardwar hoặc App) có thể được thay thế bằng cách thay đổi sang cái mới bằng cách sử dụng cái Key còn lại đang giữ bởi khách hàng và Server Key. Bởi vì Wallet sẽ không yêu cầu thông tin đăng nhập/mật khẩu và xác định khách hàng thông qua việc sở hữu Key, nên sẽ có nguy cơ bị đánh cắp bởi kẻ xấu đang tạm thời giữ một Key. 9

Để giảm thiểu rủi ro mà không cần những thứ như xác minh danh tính, quy trình khôi phục này sẽ được giới hạn thời gian để chủ sở hữu hợp pháp có thời gian nhận biết và hủy mọi nỗ lực của kẻ xấu.

Thông báo về thời gian đếm ngược khôi phục được phát liên tục tới App của Wallet đang được khôi phục, và tới bất kỳ kênh liên lạc nào khác do khách hàng cung cấp như email hoặc qua SMS. Nếu sau khoảng thời gian đó mà không có ai hủy bỏ bằng cách chứng minh quyền sở hữu hợp pháp, thì Server có thể coi Key đó là bị mất và tiến hành thay thế nó.

Thiết lập:

Được bật theo mặc định thông qua ghép nối Hardware cơ bản. Các nơi thông báo khôi phục do khách hàng thiết lập, email và SĐT là tùy chọn.

Yêu cầu:

Chỉ cần truy cập vào một trong các khóa Wallet do khách hàng kiểm soát (Hardware HOẶC App), cùng với thời gian chờ.

3 – Khôi phục khi mất cả App và Hardware với Social Recovery

Hãy tưởng tượng rằng:”Thảm họa đã xảy ra và hỏa hoạn bùng phát trong nhà của bạn, phá hủy nhiều tài sản của bạn, bao gồm cả điện thoại VÀ Hardware được cất giữ trong két sắt. Khi mất cả 2 Key, bạn không thể truy cập Wallet của mình. Nhưng bạn vẫn còn Server, Sao lưu đám mây cũng như bạn bè và gia đình của bạn để nhờ giúp đỡ. Khi bạn đã thiết lập một thiết bị di động mới và đã tải xuống App, nó sẽ hướng dẫn bạn cách khôi phục từ bản sao lưu đám mây của mình bằng Social Recovery. Khi được yêu cầu, Server bắt đầu bằng cách hiển thị cho bạn một mã và chỉ một lần.

Bạn sẽ cần kết nối với những người liên hệ trong trường hợp khẩn cấp của mình và chia sẻ mã đó với họ.

Trong khi đó, Server sẽ gửi tin nhắn văn bản hoặc email tới tất cả những người bạn đặt làm liên hệ khẩn cấp cho Wallet của mình. Nó giải thích lý do bạn yêu cầu trợ giúp và bao gồm một liên kết vào một trang web để nhập mã mà bạn chia sẻ. App sẽ yêu cầu bạn liên hệ với ít nhất hai người trong số họ qua giọng nói hoặc video, chia sẻ mã của bạn và yêu cầu họ nhập mã đó vào liên kết họ nhận được. Sau khi Server nhận được ít nhất 2 người trong số họ đã thực hiện, Server sẽ gửi Key bí mật mà Server lưu giữ tới App dành cho thiết bị di động của bạn để cho phép Server khôi phục một trong các bản sao lưu bạn đã tạo khi thiết lập Wallet của mình.

Chúng tôi dự định cung cấp Social Recovery dưới dạng một lớp bảo vệ tùy chọn để xác định bạn là chủ sở hữu thực sự.

Điều này có thể được sử dụng để tăng tốc Thời gian khôi phục, thậm chí mở khóa đường dẫn khôi phục trong trường hợp khi xảy ra sự cố với cả hai Key của bạn. Thay vì dựa vào mật khẩu và giấy tờ tùy thân do chính phủ cấp để xác minh danh tính, Wallet có thể cho phép bạn dựa vào những người mà bạn tin tưởng để xác nhận bạn là ai, để Server có thể giúp bạn khôi phục Wallet của mình một cách an toàn ngay cả với một hoặc cả hai Key của bạn bị mất.

Thiết lập:

Tùy chọn – được đề xuất tại một số thời điểm nhưng không bắt buộc phải sử dụng Wallet. App sẽ nhắc bạn đặt 3 người mà bạn tin tưởng để đóng vai trò là Người liên hệ khẩn cấp. App yêu cầu bạn đặt tên và cung cấp kênh liên hệ cho từng người trong số họ (email hoặc SĐT). Server gửi một tin nhắn tới các Người liên hệ khẩn cấp đã thêm với yêu cầu nhập mã trên trang web của Wallet đồng thời cung cấp mã đó cho khách hàng được chia sẻ với Người liên hệ khẩn cấp của họ trực tiếp hoặc qua điện thoại/video. Quá trình thiết lập chỉ hoàn tất khi có Người liên hệ khẩn cấp khác nhau.

Yêu cầu:

Phần lớn các Người liên hệ khẩn cấp (hai trên 3 người) phản hồi chủ sở hữu khi được liên hệ, tuân theo cùng mục nhập/chia sẻ mã như trong thiết lập. Ít nhất một phần của Wallet do khách hàng kiểm soát vẫn có thể truy cập được (App, Hardware, HOẶC lưu trữ đám mây). Cũng yêu cầu Server có thể truy cập được để tạo điều kiện thuận lợi.

Nơi đóng góp ý kiến

Chúng tôi cho rằng những cái trên chỉ là một bản phác thảo về các loại khôi phục đơn giản mà chúng tôi muốn khách hàng tin tưởng. Vẫn còn rất nhiều điều để thử nghiệm và khám phá khi chúng tôi xem xét việc triển khai chúng, bắt đầu với một số câu hỏi bên dưới. Vui lòng gửi cho chúng tôi ý kiến của bạn về những điều này tại wallet@block.xyz.

Về vấn đề thông báo

Nếu không có xác minh dựa trên tài liệu ID chính thức, chúng tôi cho rằng các công cụ như Key Rotation with Delay and Notify cần được truyền đạt hiệu quả tới khách hàng thông qua thông báo để chủ sở hữu hợp pháp có thể vô hiệu hóa nỗ lực của những kẻ tấn công. Mặc dù một số khách hàng có thể (a) bật thông báo trong ứng dụng và (b) chú ý đến chúng. Nhưng nghiên cứu của chúng tôi về khách hàng đã chỉ ra rằng khách hàng muốn được gửi email hoặc nhắn tin khi có vấn đề liên quan đến bảo mật. 

Trên thực tế, nhiều khách hàng đã nói với chúng tôi rằng, họ muốn nhận tất cả các thông báo đó vì điều đó giúp họ cảm thấy tin tưởng rằng đó là thông tin liên lạc thực sự từ Wallet chứ không phải lừa đảo. 
  • Các kênh liên lạc phù hợp để phục vụ tốt nhất khách hàng là gì?
  • Nếu các kênh thông báo là tùy chọn, chúng tôi có đang tạo ra cho những khách mới, những người không có kiến thức về kỹ thuật một nơi để giữ an toàn không?
  • Nếu các kênh như vậy là bắt buộc phải cung cấp (và xác minh), thì Wallet xâm phạm nhiều quyền riêng tư của khách hàng và quá khó để sử dụng không?
  • Thời gian khôi phục nên trì hoãn bắt buộc trong bao lâu để cân bằng tính bảo mật so với tính khả dụng?

Về Social Recovery

Chúng tôi nghĩ rằng có rất nhiều tiềm năng trong việc cho phép khách hàng sử dụng những người tin tưởng để giúp họ khôi phục Wallet trong trường hợp họ mất 1 hoặc cả hai chìa khóa, thay vì dựa vào cơ quan có thẩm quyền và xác minh danh tính truyền thống.

Nhưng chúng tôi nhận ra rằng làm như vậy là một trải nghiệm khá xa lạ đối với hầu hết khách hàng của chúng tôi, những người đã quen dựa vào quy trình “quên mật khẩu” trên các ví Custodial có sử dụng KYC để khôi phục.

  • Bạn có hơn 3 người bạn hoặc gia đình mà bạn cảm thấy thoải mái khi nhờ cậy nếu bạn cần trợ giúp khôi phục một phần Wallet của mình không? Bạn sẽ giải thích công cụ đó như thế nào để bạn chắc chắn rằng họ hiểu mục đích của nó và vai trò của chúng trong việc bảo vệ bạn?
Làm cách nào chúng tôi có thể đảm bảo những khách hàng thực sự kết nối trực tiếp với những người liên hệ khẩn cấp của họ để công cụ này không trở thành mục tiêu lừa đảo?
  • Chúng tôi đã bắt đầu bằng cách xem xét các cách mà người liên hệ khẩn cấp có thể trực tiếp giữ tài liệu sao lưu cho khách hàng để Social Recovery mà không cần Server làm trung gian. Nhưng trong một số cuộc phỏng vấn, chúng tôi nhận thấy rằng việc yêu cầu những người liên hệ khẩn cấp tải xuống App mà họ không sử dụng có thể là sự phiên phức. Làm cách nào chúng ta có thể dựa vào họ một cách trực tiếp hơn để hỗ trợ khôi phục mà không tạo ra sự phiền phức?

Mặc dù đây là những câu hỏi cụ thể mà chúng tôi đang nghĩ đến ngay bây giờ, nhưng chúng tôi cũng sẵn sàng đón nhận tất cả các loại phản hồi: 

  • Điều gì ở trên khiến bạn hào hứng hay hoài nghi? 
  • Điều gì dường như còn thiếu, hoặc có lẽ không cần thiết? 
  • Quy trình hoặc phần nào của ví dường như không đủ mạnh để khách hàng mới có thể sử dụng một cách an toàn và dễ dàng? 

Ngoài địa chỉ wallet@block.xyz, bạn cũng có thể liên hệ với chúng tôi trên Twitter.

Bài viết mới nhất

Enjin Coin là gì?

Enjin Coin (ENJ) là một đồng tiền điện tử được phát triển trên nền tảng blockchain Ethereum. Đồng tiền này được tạo ra bởi...

IOTX là gì?

IOTX là viết tắt của IoTeX, là một nền tảng blockchain phân tán và cũng là tên của đồng tiền mã hóa được sử...

SXP là gì?

SXP là viết tắt của "Swipe". Swipe được biết là một nền tảng thanh toán phi tập trung (decentralized payment platform) được xây dựng...

FLUX là gì? Thông tin về Token của nó.

FLUX là một nền tảng cơ sở hạ tầng đám mây phi tập trung thế hệ mới, hỗ trợ Web3 và Dapp phát triển....