Ví Multisig: Cách Bảo Vệ và Nguy Cơ Đánh Cắp Từ Các Kho Bạc Lớn Nhất Trong Thế Giới Crypto

2 giờ trước đây
26 phút đọc
2 lượt xem

Giới thiệu về Ví Đa Chữ Ký (Multisig)

Ví đa chữ ký (multisig) là một công cụ bảo vệ quan trọng cho hầu hết số tiền lớn trong lĩnh vực tiền điện tử, bao gồm kho bạc của các tổ chức phi lợi nhuận (DAO), lưu trữ lạnh của các sàn giao dịch, quỹ giao thức và tài khoản tiết kiệm của những người chú trọng đến an ninh. Tuy nhiên, chúng cũng là mục tiêu của những vụ trộm lớn nhất trong ngành, từ vụ đánh cắp 1,5 tỷ USD của Bybit đến vụ vi phạm UXLINK năm nay, khi những kẻ tấn công không còn cố gắng bẻ khóa mà thay vào đó lừa gạt những người giữ chìa khóa. Hướng dẫn này sẽ giải thích cách thức hoạt động của multisig, các lựa chọn thiết kế M-of-N, cách mà những vụ hack multisig nổi tiếng xảy ra, và cách vận hành một ví mà không trở thành nạn nhân của các cuộc tấn công.

Mục lục

Khi được hỏi nơi nào có số tiền lớn trong crypto, câu trả lời rõ ràng là ở những ví đa chữ ký. Phần lớn các tổ chức giữ tài sản đều sử dụng các thỏa thuận đa chữ ký; các kho bạc DAO nắm giữ hàng tỷ đồng thông qua chúng; các sàn giao dịch bảo vệ lưu trữ lạnh bằng chúng; các chuỗi giữ tài sản cho các sản phẩm tổ chức phụ thuộc vào chúng; và các giao thức lưu trữ các chìa khóa nâng cấp và quỹ dự trữ bên trong chúng, phổ biến nhất là Gnosis Safe, một hệ thống hợp đồng thông minh đã bảo vệ giá trị tương đương với các ngân hàng lớn. Ý tưởng này đã có từ lâu, được vay mượn từ các kho bạc ngân hàng và các quy trình khởi động hạt nhân: không một cá nhân, chìa khóa hay máy móc nào có thể di chuyển những gì quan trọng. Yêu cầu M chữ ký từ N chìa khóa (ví dụ: 2-of-3, 3-of-5) có nghĩa là một kẻ trộm phải làm tổn hại đến nhiều người bảo vệ độc lập thay vì chỉ một.

Các Vụ Trộm Nổi Tiếng và Thách Thức An Ninh

Tuy nhiên, vụ trộm lớn nhất trong lịch sử crypto, 1,5 tỷ USD của Bybit, đã xảy ra thông qua một multisig. Vụ vi phạm UXLINK năm nay trị giá 11,3 triệu USD cũng tương tự, và vụ cầu Ronin trị giá 600 triệu USD trước đó cũng không ngoại lệ. Mô hình này phản ánh một thực tế trong an ninh crypto hiện đại: toán học của multisig chưa bao giờ bị phá vỡ; con người và giao diện xung quanh nó thì liên tục bị tấn công. Multisig loại bỏ điểm thất bại đơn lẻ và thay thế nó bằng một câu hỏi tinh tế hơn: liệu nhiều điểm thất bại của bạn có thực sự độc lập hay không? Hồ sơ thảm họa của ngành cho thấy rằng chúng không độc lập.

Cơ Chế Hoạt Động của Multisig

Hướng dẫn này sẽ đề cập đến cơ chế và các chế độ thất bại của multisig với sự nghiêm túc tương đương: cách mà các kế hoạch đa chữ ký hoạt động trên Bitcoin và các chuỗi hợp đồng thông minh, cách chọn MN và mỗi lựa chọn trao đổi điều gì, phân tích các vụ trộm multisig lớn và vấn đề ký mù ở trung tâm của chúng, so sánh multisig với các đối thủ hiện đại như MPC và tài khoản thông minh, và hướng dẫn hoạt động giúp các kho bạc sống sót khỏi những kho bạc bị tấn công.

Một ví multisig yêu cầu một ngưỡng chữ ký, M, từ một tập hợp các chìa khóa được ủy quyền, N, trước khi bất kỳ giao dịch nào được thực hiện. Một thiết lập cá nhân 2-of-3 có thể chia sẻ các chìa khóa giữa một ví phần cứng ở nhà, một thiết bị thứ hai trong một hộp ngân hàng, và một người thân đáng tin cậy; trong khi một kho bạc DAO 4-of-7 phân bổ các chìa khóa giữa các thành viên hội đồng ở các châu lục khác nhau. Ngưỡng là yếu tố điều chỉnh của thiết kế: an ninh chống lại sự xâm phạm tăng lên với M, khả năng phục hồi chống lại việc mất chìa khóa tăng lên với khoảng cách giữa NM, và ma sát hoạt động tăng lên với cả hai.

Kiến Trúc và Luồng Giao Dịch

Dưới nắp, hai kiến trúc thực hiện ý tưởng này. Trên Bitcoin, multisig là bản địa của kịch bản giao thức: một địa chỉ mã hóa yêu cầu M-of-N, và việc chi tiêu yêu cầu các chữ ký được trình bày và xác minh bởi mạng. Nó là tối thiểu, đã được thử nghiệm trong thực tế, và cứng nhắc; việc thay đổi người ký có nghĩa là chuyển tiền đến một địa chỉ mới. Trên Ethereum và các chuỗi tương tự, multisig sống trong các hợp đồng thông minh: một chương trình, chẳng hạn như Gnosis Safe, giữ quỹ và thực thi chính sách, thu thập chữ ký cho đến khi ngưỡng được đáp ứng và sau đó thực hiện. Cách tiếp cận hợp đồng này linh hoạt hơn rất nhiều, cho phép xoay vòng người ký, thay đổi ngưỡng, giới hạn hàng ngày và thời gian khóa, và mở rộng mô-đun có thể được thêm vào. Tuy nhiên, sự linh hoạt đó cũng có thể trở thành điểm yếu: chính sách là mã, mã có thể có lỗi, và, như các vụ thảm họa đã cho thấy, sự phong phú của những gì một ví hợp đồng có thể thực hiện chính là điều mà các kẻ tấn công hiện đại khai thác.

Luồng giao dịch trong cả hai thế giới theo cùng một nhịp điệu. Ai đó đề xuất một giao dịch, bao gồm người nhận, số tiền, và, trên các ví hợp đồng, các cuộc gọi chương trình tùy ý. Đề xuất được lưu hành đến các người ký, mỗi người xem xét và phê duyệt nó bằng cách mã hóa với chìa khóa của riêng họ, trên thiết bị của riêng họ. Khi các phê duyệt đạt đến ngưỡng, giao dịch trở nên có thể thực hiện và được phát sóng. Mỗi bước đều có thể kiểm toán: chuỗi ghi lại chính xác các chìa khóa nào đã phê duyệt điều gì, tạo ra dấu vết trách nhiệm khiến multisig trở thành công cụ quản trị được lựa chọn cho các kho bạc DAO, nơi quyền kiểm soát thường bị tranh chấp thông qua các cuộc bỏ phiếu bằng token, cho các quỹ doanh nghiệp yêu cầu sự phê duyệt của nhân viên, và cho các thỏa thuận ký quỹ nơi một chìa khóa trung lập phân xử tranh chấp.

Lựa Chọn Ngưỡng và Chính Sách Người Giữ Chìa Khóa

Lựa chọn ngưỡng là một phân bổ rủi ro, và các cấu hình tiêu chuẩn mỗi cái trả lời một câu hỏi khác nhau. 2-of-2 là một quan hệ đối tác không có người phân xử và không có phục hồi; một chìa khóa bị mất làm cho quỹ bị mắc kẹt, và chủ yếu được sử dụng với một chìa khóa được giữ bởi một dịch vụ. 2-of-3 là con ngựa làm việc của cá nhân: nó sống sót qua việc mất bất kỳ một chìa khóa nào, chống lại sự xâm phạm của bất kỳ một chìa khóa nào, và giữ cho ma sát ký vẫn có thể chấp nhận được; cấu hình cá nhân cổ điển phân bổ ba chìa khóa phần cứng ở các vị trí khác nhau, và cấu hình hợp tác-giữ cổ điển cung cấp một chìa khóa cho một dịch vụ chuyên nghiệp có thể đồng ký phục hồi nhưng không bao giờ có thể di chuyển quỹ một mình. 3-of-5 và cao hơn là lãnh thổ tổ chức, chịu đựng nhiều tổn thất và yêu cầu nhiều sự xâm phạm, với giá của chi phí phối hợp mà, trong thực tế, cám dỗ các tổ chức vào những sai lầm tồi tệ nhất của thể loại này: tập trung, nhiều chìa khóa được giữ bởi một người, một văn phòng, một laptop, hoặc một tài khoản đám mây. Một 3-of-5 mà các chìa khóa của nó sống trong ba trình duyệt và hai ngăn kéo của cùng một văn phòng là một 1-of-1 với các bước bổ sung, và các bài phân tích hậu quả của những tổn thất thực tế tìm thấy hình dạng này liên tục. Quy tắc mà không gian thiết kế giảm xuống: an ninh của một multisig là an ninh của các chìa khóa có tương quan nhất của nó, và sự độc lập, của con người, thiết bị, phần mềm, và địa lý, là toàn bộ điểm của bài tập này.

Hồ Sơ Vụ Trộm và Ký Mù

Chính sách người giữ chìa khóa quan trọng không kém gì các con số. Mỗi người ký là một mục tiêu ngay khi thỏa thuận trở nên rõ ràng trên chuỗi, và các kho bạc lớn về bản chất là rõ ràng, được theo dõi bởi cùng một ống kính phân bổ ví mà lập bản đồ mọi cá voi. Các hoạt động nghiêm túc do đó coi các người ký như một bề mặt tấn công: chỉ các chìa khóa phần cứng, thiết bị ký chuyên dụng, không công bố danh tính người ký một cách không cần thiết, và các quy trình được diễn tập trước khi cần thiết, vì ngày mà một kho bạc phải di chuyển quỹ dưới áp lực là ngày tồi tệ nhất để phát hiện ra chìa khóa của người ký thứ ba nằm trong một két sắt mà không ai có thể mở.

Hồ sơ vụ trộm là nơi chủ đề này kiếm được vị trí của nó trong chương trình giảng dạy an ninh, vì các cuộc tấn công chia sẻ một giải phẫu và nó không phải là một trực giác mà mong đợi. Không có tổn thất multisig lớn nào đến từ việc phá vỡ mật mã. Chúng đến từ việc khiến những người đúng ký vào điều sai.

Vụ trộm Bybit, 1,5 tỷ USD, lớn nhất trong lịch sử ngành, là trường hợp điển hình. Kho lưu trữ lạnh của sàn giao dịch nằm sau một multisig với các giám đốc điều hành là người ký, chính xác như thực tiễn tốt nhất quy định. Các kẻ tấn công, được cho là thuộc về Nhóm Lazarus của Bắc Triều Tiên, đã làm tổn hại đến cơ sở hạ tầng của giao diện ví mà các người ký sử dụng, vì vậy khi các giám đốc điều hành thực hiện một chuyển khoản định kỳ, màn hình của họ hiển thị giao dịch hợp pháp trong khi các chìa khóa phần cứng của họ ký một tải trọng khác, một tải trọng đã trao cho các kẻ tấn công quyền kiểm soát logic của ví. Mỗi chữ ký đều là chính xác. Mỗi người ký đều cẩn thận theo tiêu chuẩn những gì họ có thể thấy. Kho chứa giữ vững; cửa sổ của kho chứa đã nói dối. Cầu Ronin trước đó đã rơi xuống khác nhưng có âm điệu tương tự: một cấu trúc 5-of-9 mà các chìa khóa của nó không đủ độc lập, với một tổ chức kiểm soát đủ nhiều trong số đó mà việc làm tổn hại đến nó, thông qua một nhân viên bị tấn công xã hội, đã vượt qua ngưỡng, mẫu hình làm tổn hại chìa khóa đứng sau những thảm họa cầu lớn nhất. Và vụ vi phạm UXLINK năm nay đã cho thấy phiên bản quy mô nhỏ: các kẻ tấn công có quyền kiểm soát ngưỡng không chỉ rút tiền, họ sử dụng chính quyền quản trị của ví, thêm chính họ vào danh sách người ký, loại bỏ các chủ sở hữu, vì trên một multisig hợp đồng, quyền quản trị của ví chính là một giao dịch khác.

Biện Pháp Phòng Ngừa và Tương Lai của Multisig

Sợi chỉ chung là ký mù. Một chìa khóa phần cứng bảo vệ chữ ký; nó không cho người ký biết, bằng ngôn ngữ con người trung thực, những gì họ đang ký, và các tải trọng hợp đồng phức tạp là các băm không thể đọc được trên một màn hình nhỏ. Do đó, các kẻ tấn công nhắm vào lớp giữa ý định và chữ ký: giao diện web, laptop của người ký, đường ống đề xuất, thói quen của con người. Các biện pháp phòng ngừa giải quyết điều này là cụ thể và ngày càng tiêu chuẩn: xác minh độc lập của mỗi tải trọng trên một kênh thứ hai trước khi ký, thiết bị ký giải mã và hiển thị ý nghĩa giao dịch, công cụ mô phỏng mà xem trước các tác động thực tế của một giao dịch, thời gian khóa mà trì hoãn các chuyển động lớn đủ lâu để xem xét, và quy tắc tổ chức đơn giản rằng không có giao dịch nào là định kỳ, vì định kỳ chính là trạng thái tâm lý mà các kẻ tấn công Bybit đang chờ đợi.

Lịch sử multisig là lịch sử của việc bảo quản crypto trưởng thành, và các cột mốc của nó giải thích các mặc định ngày nay. Khả năng này gần như đã có từ khi Bitcoin ra đời, được chính thức hóa trong những năm đầu của giao thức thông qua các địa chỉ pay-to-script-hash cho phép các điều kiện chi tiêu, bao gồm cả yêu cầu chữ ký M-of-N, được mã hóa trên chuỗi. Thế hệ tổ chức đầu tiên được xây dựng trực tiếp trên nó: các nhà tiên phong sàn giao dịch và bảo quản đầu tiên đã vận hành các kho multisig Bitcoin, và các doanh nghiệp hợp tác-giữ đầu tiên đã bán các thỏa thuận 2-of-3 cho cá nhân cách đây một thập kỷ. Ý tưởng này đã chuyển sang Ethereum dưới dạng ví hợp đồng thông minh, nơi sự linh hoạt của mã đã tạo ra cả những thành công và những vết sẹo: một lỗi thư viện nổi tiếng năm 2017 trong một ví hợp đồng được sử dụng rộng rãi đã đóng băng hàng trăm triệu mãi mãi, bài học hình thành rằng mã bảo quản linh hoạt chính là một bề mặt tấn công, và người sống sót của sự hợp nhất thời kỳ đó, Gnosis Safe, đã được củng cố qua nhiều năm kiểm toán và giá trị đối kháng thành mặc định mà nó là bây giờ.

Ngày nay, các hợp đồng kiểu Gnosis Safe bảo vệ các kho bạc có giá trị tổng hợp rival với các ngân hàng lớn, thời kỳ DAO đã biến hội đồng multisig thành cơ quan quản trị tiêu chuẩn của crypto, và dòng dõi multisig của Bitcoin tiếp tục song song, được ưa chuộng cho lưu trữ lạnh sâu chính xác vì bề mặt kịch bản cứng nhắc, tối thiểu của nó cung cấp rất ít để khai thác.

Kết Luận

Sự chuẩn hóa có một hệ quả đáng được nêu tên: sự tập trung theo một cách khác. Khi một hệ thống hợp đồng bảo vệ phần lớn các kho bạc trên chuỗi, mã của nó, giao diện của nó, và quy trình nâng cấp của nó trở thành cơ sở hạ tầng hệ thống, và việc tấn công Bybit làm tổn hại đến cơ sở hạ tầng giao diện là, giữa những thứ khác, một minh chứng rằng các quả trứng của hệ sinh thái chia sẻ nhiều giỏ hơn những gì toán học M-of-N gợi ý. Phản ứng, sự đa dạng giao diện, dịch vụ xác minh giao dịch độc lập, giải mã thiết bị ký, thực sự là cộng đồng xây dựng lại sự độc lập một lớp lên trên, cùng nguyên tắc mà các ví mã hóa, áp dụng cho các công cụ xung quanh chúng.

Đối với một độc giả cá nhân, lối vào thực tiễn xứng đáng có sự cụ thể. Một thiết lập cá nhân 2-of-3 ngày nay là một dự án cuối tuần: ba chìa khóa phần cứng, lý tưởng từ hai nhà cung cấp khác nhau để tránh lỗi firmware chung; một ví hợp đồng trên một mạng giá rẻ hoặc một multisig Bitcoin bản địa, tùy thuộc vào tài sản nắm giữ; địa chỉ chủ sở hữu được kiểm tra ba lần trước khi triển khai, vì một chủ sở hữu nhập sai là một người lạ vĩnh viễn với quyền ký; và ba chìa khóa được phân phối ở các vị trí thực sự tách biệt: nhà, hộp ngân hàng, bên thứ ba đáng tin cậy, với hướng dẫn phục hồi mà một người khác ngoài bạn có thể theo dõi.

Chi phí tái diễn là nhỏ, phí gas triển khai và phí giao dịch hơi lớn hơn, và các kỷ luật tái diễn thì không: thử nghiệm thiết lập với các số tiền nhỏ trước, diễn tập một cuộc di chuyển chìa khóa bị mất trước khi mất một cái, giữ một số dư gas nhỏ nơi hợp đồng cần nó, và xem xét lại thỏa thuận bất cứ khi nào một người ký, thiết bị, hoặc tình huống sống thay đổi. Ma sát là có thật, mỗi giao dịch trở thành một buổi lễ nhỏ, và ma sát là tính năng: một ví yêu cầu sự cân nhắc không thể bị rút cạn bởi một cú nhấp chuột sai, điều này, vì một sự phê duyệt sai lầm đơn lẻ là cách mà hầu hết các tổn thất cá nhân hiện nay xảy ra, là toàn bộ giá trị đề xuất trong một câu.

Hai công nghệ liền kề giải quyết cùng một vấn đề điểm thất bại đơn lẻ, và việc chọn giữa chúng là một quyết định thực sự, không phải thương hiệu. Tính toán đa bên (MPC) chia một chìa khóa thành các phần toán học được giữ bởi các bên khác nhau, những người cùng nhau tính toán một chữ ký mà không có chìa khóa đầy đủ bao giờ tồn tại ở bất kỳ đâu. Đối với blockchain, kết quả trông giống như một chữ ký đơn giản thông thường: rẻ hơn, riêng tư, không phụ thuộc vào chuỗi, và không tiết lộ gì về chính sách phía sau nó. Sự trao đổi là sự mờ đục và phụ thuộc: logic ngưỡng sống trong phần mềm ngoài chuỗi của các nhà cung cấp thay vì trong mã công khai, không có dấu vết trên chuỗi về ai đã phê duyệt điều gì, và thị trường MPC tổ chức bị chi phối bởi các nhà cung cấp mà hệ thống của họ phải được tin tưởng. Các tổ chức ngày càng sử dụng cả hai, MPC cho các luồng hoạt động nóng, multisig cho quản trị lạnh sâu.

Bất kỳ ai nắm giữ nhiều crypto hơn họ có thể chịu đựng để mất do một sai lầm đơn lẻ: cá nhân có tiết kiệm đáng kể, và, gần như không có ngoại lệ, các tổ chức, DAO quản lý kho bạc cộng đồng, công ty có crypto trên bảng cân đối kế toán, các giao thức giữ chìa khóa nâng cấp, và các nhóm cần ký quỹ. Đối với các số dư nhỏ hàng ngày, ma sát phối hợp thường vượt quá lợi ích.

Ký mù là phê duyệt một giao dịch mà nội dung thực sự của nó bạn không thể đọc, thường là một tải trọng hợp đồng thông minh phức tạp được hiển thị dưới dạng một băm mờ. Đây là vector đứng sau những vụ trộm multisig lớn nhất: các kẻ tấn công làm tổn hại đến giao diện để người ký thấy một giao dịch hợp pháp trong khi phê duyệt một giao dịch độc hại. Các biện pháp phòng ngừa bao gồm các thiết bị giải mã tải trọng, xác minh kênh thứ hai độc lập, và các công cụ mô phỏng xem trước tác động.

Trên các multisig hợp đồng thông minh, việc thêm hoặc loại bỏ người ký và thay đổi ngưỡng chính là các giao dịch yêu cầu phê duyệt ngưỡng. Sự linh hoạt đó cho phép xoay vòng và phục hồi, và nó cũng là một mục tiêu, vì một kẻ tấn công đạt đến ngưỡng có thể hoàn toàn loại bỏ các chủ sở hữu hợp pháp, như các vụ vi phạm gần đây đã cho thấy. Xem xét các thay đổi trong bộ người ký như là hoạt động nhạy cảm nhất mà ví thực hiện.