Làm thế nào Multi-Party Computation giúp xây dựng một ví tiền không cần khóa?
VNBnodes is a professional group with experienced validators/researchers. Our aim is to support blockchain project from early stage through the main-net.
Giới thiệu Threshold Signature Scheme (TSS), một loại giao thức chữ ký điện tử được sử dụng bởi Multi-Party Computation.
Định nghĩa của TSS tương tự như cách ví đa chữ ký (multi-sig) hoạt động, nhưng có một khác biệt đáng kể. Trong trường hợp thiết lập đa chữ ký, có M ví điện tử riêng biệt, để thực hiện các hoạt động mật mã hóa như ký một giao dịch, cần phải có n trong số ví đó cùng ký một thông điệp. Quá trình xác minh khác nhau dựa trên từng blockchain cụ thể.
Trong ví điện tử đa chữ ký, mỗi ví được liên kết với một khóa bí mật riêng của nó. Khi thực hiện một giao dịch, thông điệp cần được ký bởi ít nhất n trong số m ví này. Quá trình xác minh giao dịch thường yêu cầu sự chứng thực (authentication) của tất cả các ví đã tham gia vào việc ký để xác nhận tính hợp lệ của giao dịch.
Trong khi với TSS, không có bên nào giữ hoặc xử lý khóa bí mật và không có khái niệm về việc tái tạo khóa bí mật. Quá trình ký chữ ký là một phần của giao thức MPC, trong đó các bên cùng cung cấp đầu vào riêng tư cho một chức năng cụ thể (quá trình ký số) và tính toán kết quả của chức năng đó (chữ ký số).
Trong TSS, các bên tham gia không giữ hoặc biết trực tiếp khóa bí mật. Thay vào đó, họ đóng góp vào quá trình tính toán chữ ký số bằng cách cung cấp đầu vào riêng tư. Quá trình tính toán này được thực hiện bằng cách áp dụng các thuật toán mật mã đa bên như Shamir's Secret Sharing hoặc các phương pháp tương tự khác.
Khi các bên cung cấp đầu vào riêng tư và thực hiện quá trình tính toán, kết quả của chức năng ký số (chữ ký số) được tính toán một cách an toàn và không tiết lộ thông tin riêng tư của bất kỳ bên nào. Do đó, không có bên duy nhất nào có thể kiểm soát hoặc xử lý khóa bí mật trong quá trình này.
Chính vì vậy, các tính năng bảo mật và riêng tư được duy trì. Không có bất kỳ bên nào có thể ký một thông điệp một mình bằng cách sử dụng phần khóa riêng tư của mình. Đó là lý do tại sao TSS sẽ là một ứng viên công nghệ tốt để xây dựng một ví tiền điện tử không cần khóa riêng.
Phương pháp cũ và các vấn đề của nó
Các ví tiền điện tử hiện tại không dự trữ đang gặp khó khăn. Ví dụ với Alice, một người không chuyên về công nghệ, tải xuống một ứng dụng ví tiền điện tử. Trong quá trình đăng ký, cô được yêu cầu sao lưu một danh sách từ kỳ lạ bằng cách viết chúng xuống giấy. Mặc dù cô không thực sự hiểu tại sao cô phải làm như vậy, nhưng cô tuân theo hướng dẫn và sao lưu những từ đó.
Mọi việc diễn ra thuận lợi cho đến khi điện thoại của Alice bị hỏng. Với một điện thoại mới, cô tải lại ứng dụng ví tiền điện tử. Ngạc nhiên thay, cô được yêu cầu cung cấp 12 hoặc 24 từ đó để khôi phục lại ví của mình. Tiếc thay, cô đã mất tờ giấy và cô không có bản sao dự phòng từ trên Đám mây. Sau khi liên hệ với đội hỗ trợ, cô được đi đến kết luận rằng tài sản tiền điện tử của cô đã bị mất.
Hãy tưởng tượng rằng Alice đã tải tệp lên tài khoản Cloud của mình. Cô sẽ có khả năng khôi phục lại ví tiền điện tử của mình. Tuy nhiên, ở đây có một thách thức rất quan trọng: nếu tài khoản Cloud của cô bị hack, kẻ tấn công sẽ có quyền truy cập vào những từ kỳ lạ đó.
Nếu tệp sao lưu rơi vào tay sai do một cuộc tấn công vào Cloud, nó có thể dẫn đến việc truy cập trái phép vào tài sản tiền điện tử của Alice. Điều này nhấn mạnh tầm quan trọng của việc đảm bảo biện pháp bảo mật mạnh mẽ cho việc lưu trữ trên Cloud, như sử dụng mật khẩu mạnh và cơ chế bảo vệ bổ sung như xác thực hai yếu tố.
Công nghệ MPC (Multi-Party Computation) đóng vai trò quan trọng trong việc xây dựng một ví tiền điện tử tốt hơn cho người dùng không chuyên về công nghệ.
Một ví tiền điện tử không cần khóa và được xây dựng với MPC sẽ không yêu cầu người dùng sao lưu các từ khôi phục. Quá trình đăng ký sẽ có dạng như sau:
Alice tải xuống ví tiền điện tử.
Cô nhập số điện thoại hoặc địa chỉ email của mình (không có tên người dùng hoặc mật khẩu) hoặc thậm chí có thể sử dụng tài khoản mạng xã hội của cô.
Đó là tất cả những gì Alice cần làm.
Phía sau “sân khấu”, MPC sẽ giúp đơn giản hóa quy trình phức tạp:
Sau khi Alice đăng nhập thành công, ứng dụng ví tiền điện tử sẽ sử dụng các thành phần MPC tích hợp để khởi tạo quá trình tạo khóa.
API của ứng dụng ví cũng sẽ tạo ra một phần riêng tư cho Alice và tham gia quá trình tạo khóa.
MPC yêu cầu tất cả các bên làm việc cùng nhau. Do đó, cần có một cách để giao tiếp với nhau và duy trì trạng thái của mỗi bước đã xử lý. Đây chính là nhiệm vụ của Máy Trạng thái (State Machine). Ngoài ra, chúng ta có thể sử dụng mạng ngang hàng (p2p) hoặc thậm chí một blockchain hoàn chỉnh để làm nhiệm vụ của máy trạng thái. Điều này chính xác là lý do tại sao Self Chain được xây dựng.
Sau khi giao thức MPC hoàn thành, mỗi bên sẽ có một phần riêng tư.
Sau khi ví tiền điện tử được tạo, một trong số "s" phần sẽ được gửi cho Alice qua email hoặc số điện thoại của cô. Cô có thể sử dụng phần này để khôi phục lại ví tiền điện tử của mình sau này.
Sao lưu các phần riêng tư (private shares)
Việc sao lưu sẽ phải xảy ra trên hai phần riêng tư, cả ứng dụng di động lẫn API MPC phải đảm bảo rằng các phần riêng tư được lưu trữ ở một nơi mà cả hai có thể khôi phục chúng khi cần thiết.
Sao lưu phía máy khách (client-side backup)
Ứng dụng ví tiền điện tử sẽ tạo ra một khóa đối xứng duy nhất.
Nó sẽ sử dụng khóa này để mã hóa phần riêng tư của khách hàng.
Nó sẽ đăng bài chia sẻ khách hàng đã được mã hóa này lên Self Chain như một phương tiện lưu trữ.
Cuối cùng, nó sẽ đăng bài khóa giải mã lên API Wallet MPC.
Việc khôi phục khóa sẽ tuân theo hướng ngược lại:
Sau khi người dùng đăng nhập, ứng dụng ví tiền điện tử sẽ thực hiện các bước sau:
Lấy phần riêng tư đã được mã hóa từ Self Chain: Ứng dụng ví tiền điện tử sẽ yêu cầu lấy phần riêng tư đã được mã hóa từ Self Chain, nơi dữ liệu đã được lưu trữ.
Yêu cầu khóa giải mã từ API Wallet MPC: Ứng dụng ví tiền điện tử sẽ gửi yêu cầu cho API Wallet MPC để nhận khóa giải mã.
Sử dụng khóa giải mã để giải mã phần riêng tư khách hàng: Sau khi nhận được khóa giải mã từ API Wallet MPC, ứng dụng ví tiền điện tử sẽ sử dụng khóa này để giải mã phần riêng tư khách hàng.
Khôi phục lại phần riêng tư phía máy khách cũng như ví tiền điện tử: Khi phần riêng tư đã được giải mã thành công, phần riêng tư phía máy khách sẽ được khôi phục lại. Từ đó, ví tiền điện tử cũng được khôi phục với các thông tin và tài sản tương ứng.
Sau quá trình này, người dùng sẽ có thể sử dụng lại phần riêng tư của mình và truy cập vào ví tiền điện tử của mình trong ứng dụng.
Alice không cần phải lo lắng về các từ khôi phục (recovery words), tất cả những gì cô cần là lưu trữ một mảnh nhỏ của phần riêng tư sẽ được sử dụng trong quá trình khôi phục sau này. API Wallet MPC và Self Chain sẽ tiếp tục thực hiện các công việc còn lại để bảo vệ tài sản tiền điện tử của cô.
Ứng dụng của Selfchain
Ở điểm này, chúng ta có thể tiết lộ một cách đơn giản rằng "một phương tiện lưu trữ nào đó" mà chúng ta đã đề cập trước đó chính là Self Chain. Mục đích của chuỗi này là để lưu trữ các bản sao phía máy khách đã được mã hóa, cũng như khóa giải mã chính từ phần trước.
Trong tương lai, chúng ta có thể nghĩ về cách để Self Chain trở thành một trong các bên tham gia trong giao thức MPC.
Chúng ta cũng có thể sử dụng Self Chain như một máy trạng thái (state machine) như đã mô tả trong kiến trúc tổng quan ở phía trên.
Về Self Chain
Chào mừng bạn đến với Self Chain, một blockchain Layer 1 được thiết kế cho quản lý khóa theo cách không cần sự tin cậy. Self Chain cung cấp một cơ sở hạ tầng an toàn cho ví không có khóa và đảm bảo an ninh và sự kiểm soát người dùng được nâng cao thông qua các công nghệ tiên tiến như Multi-Party Computation (MPC) và Threshold Signature Scheme (TSS).
Hãy tham gia cùng selfchain trong việc định hình tương lai của tài chính, quyền riêng tư và sở hữu kỹ thuật số. Mở khóa tiềm năng thực sự của công nghệ blockchain với Self Chain và trở thành một phần của cuộc cách mạng phi tập trung.
************************************************************************************************************
Research and translate by VNBnodes - A professional group with experienced validators/researchers. We are proud to be partner of many blockchain projects, to share the aim to bring securities to blockchain industry and educate the blockchain technologies to non-technical users.
Visit us VNBnodes at:
Docs: https://docs.vnbnode.com
Facebook: https://www.facebook.com/VNBnode
Telegram news: https://t.me/Vnbnode
Telegram Chat group: t.me/VNBnodegroup




