Phân Tích Hook của Uniswap v4: Thiết Kế Kiến Trúc, Lỗ Hổng Phổ Biến và Thực Hành Phòng Ngừa

marsbitXuất bản vào 2026-06-22Cập nhật gần nhất vào 2026-06-22

Tóm tắt

Kể từ khi Uniswap v4 ra mắt mainnet, cơ chế Hook đã trở thành một trong những đổi mới được chú ý nhất trong DeFi. Bài viết này phân tích kiến trúc Hook của Uniswap v4, các lỗ hổng bảo mật phổ biến và thực hành phòng ngừa. Trọng tâm của v4 là hợp đồng PoolManager đơn lẻ và mô hình unlock/callback. Mọi thay đổi trạng thái pool phải thông qua PoolManager.unlock(), với ràng buộc then chốt là NonzeroDeltaCount phải bằng 0 khi kết thúc giao dịch. Mỗi pool được liên kết với một hợp đồng Hook cố định, được PoolManager gọi lại tại các điểm sự kiện quan trọng (ví dụ: beforeSwap, afterAddLiquidity). Quyền hạn của Hook được mã hóa trong 14 bit thấp của địa chỉ triển khai, đòi hỏi phải tính toán cẩn thận bằng công cụ như HookMiner. Bài viết chỉ ra nhiều lỗ hổng và điểm rủi ro tiềm ẩn: - **Kiểm soát truy cập thiếu sót:** BaseHook ban đầu chỉ bảo vệ unlockCallback(), để các hàm hook khác (beforeSwap, afterSwap...) không có bảo vệ, cần được triển khai thủ công. - **Ràng buộc pool lỏng lẻo:** PoolManager không giới hạn việc một Hook có thể được sử dụng cho nhiều pool. Hook cần tự triển khai whitelist hoặc cơ chế ràng buộc đơn pool trong beforeInitialize. - **Async/Custom Curve Hook rủi ro cao:** Hook có thể chặn toàn bộ số lượng swap (bằng cách trả về delta phủ định), thay thế hoàn toàn logic swap gốc của Uniswap, trở thành một hợp đồng tài chính tự trị cần được kiểm toán cực kỳ nghiêm ngặt. - **Kế toán Delta chỉ đảm bảo "bảo toàn", không đảm bảo "chính xác":** NonzeroDeltaCount == 0 đảm bả...

Kể từ khi Uniswap v4 ra mắt mainnet, cơ chế Hook đã trở thành một trong những đổi mới được quan tâm nhất trong DeFi. Nền tảng phóng memecoin Flaunch trên Base chain đã sử dụng Hook để triển khai cơ chế giá bán trước cố định và phát hành tự động thanh lý; Giao thức thanh khoản Bunni v2 sử dụng Hook để xây dựng mô hình thanh khoản có thể lập trình và tái thế chấp; Những token xoay quanh cách chơi với Hook như SATO, uPEG (Unipeg), Slonks năm nay cũng đã đạt được mức tăng hàng chục lần trong thời gian ngắn.

Ở một mặt khác của sự phồn thịnh của hệ sinh thái Hook, các cuộc tấn công nhắm vào lỗi triển khai Hook cũng đang gia tăng đáng kể. Bài viết này sẽ bắt đầu từ cơ chế Hook của Uniswap v4, phân tích từng bước ngăn xếp gọi lõi của nó, giúp các dự án hiểu được các lỗ hổng tiềm ẩn.

Bảo mật Hook của Uniswap v4

1. Giới thiệu

Thay đổi kiến trúc nổi bật nhất của Uniswap v4 so với v3 là việc giới thiệu cơ chế Hook (móc): cho phép nhà phát triển gắn các hợp đồng tùy chỉnh vào các sự kiện vòng đời của pool thanh khoản, tiêm các logic tùy ý vào các điểm quan trọng như swap, thêm/bớt thanh khoản, khởi tạo, v.v.

Một số thay đổi quan trọng của v4 như sau:

- Chế độ Singleton: Trạng thái của tất cả các pool được quản lý tập trung bởi một hợp đồng PoolManager duy nhất, không còn triển khai hợp đồng riêng biệt cho từng pool

- Flash accounting (Kế toán chớp nhoáng): Thay đổi số dư trung gian trong quá trình giao dịch chỉ được ghi nhận trong bộ nhớ tạm thời (transient storage), và chỉ được quyết toán đồng loạt khi giao dịch kết thúc

- Cơ chế Hook: Mỗi pool có thể liên kết với một hợp đồng Hook, PoolManager sẽ gọi lại hợp đồng này tại các điểm mấu chốt (beforeInitialize, beforeSwap, afterAddLiquidity, v.v.)

- Hook không thể thay thế: Một khi pool được khởi tạo xong, địa chỉ Hook được liên kết sẽ cố định vĩnh viễn (Địa chỉ Hook được liên kết với pool không thể sửa đổi, nhưng bản thân hợp đồng Hook có thể nâng cấp hay không phụ thuộc vào cách triển khai của nó)

Trong thời kỳ v3, nhà phát triển chỉ cần tin tưởng vào chính giao thức Uniswap; còn trong thời kỳ v4, tính bảo mật của mỗi pool phụ thuộc vào Hook mà nó liên kết. Hook biến AMM từ một nguyên thủy tài chính cố định, thành một cơ sở hạ tầng tài chính có thể lập trình, nhưng mô hình bảo mật cũng bị phân mảnh từ cấp "giao thức" xuống cấp "pool".

2. Kiến trúc Hook

2.1 PoolManager và mô hình unlock/callback

Hợp đồng cốt lõi của v4 là PoolManager đơn thể. Bất kỳ thao tác nào thay đổi trạng thái pool (swap, thêm/bớt thanh khoản) đều phải gọi PoolManager.unlock() trước, nhận quyền gọi lại một lần, sau đó thực hiện hành động cụ thể trong unlockCallback(). Khi toàn bộ quy trình kết thúc, PoolManager sẽ xác minh xem sổ sách có cân bằng hay không:

Khi NonzeroDeltaCount != 0 sẽ revert trực tiếp, đây là ràng buộc cốt lõi của flash accounting trong v4. Bất kỳ Hook nào trong quá trình thực thi cũng có thể tạm thời làm mất cân bằng sổ sách, nhưng trước khi giao dịch kết thúc phải tự settle, nếu không toàn bộ giao dịch sẽ rollback.

Mỗi pool được xác định duy nhất bởi cấu trúc PoolKey, trong đó có trường hooks:

PoolId được tính bằng keccak256(PoolKey), do đó địa chỉ hooks khác nhau sẽ tạo ra pool khác nhau. Đồng thời, điều này có nghĩa là PoolManager sẽ không xác minh xem một địa chỉ Hook có từng được sử dụng cho pool khác hay chưa, cùng một hợp đồng Hook có thể được nhiều pool liên kết đồng thời.

2.2 Quyền hạn Hook được mã hóa trong địa chỉ

Một thiết kế trái với trực giác của v4 là: Quyền hạn của Hook không được quyết định bởi một biến nào đó bên trong hợp đồng, mà được quyết định bởi địa chỉ triển khai hợp đồng Hook.

PoolManager kiểm tra 14 bit thấp của địa chỉ Hook để xác định xem Hook đó có cần được gọi tại một điểm nào đó trong vòng đời hay không:

Ví dụ BEFORE_SWAP_FLAG = 1 << 7. Nếu bit thứ 7 của địa chỉ Hook là 1, PoolManager sẽ gọi beforeSwap() của Hook đó trước khi swap; ngược lại, ngay cả khi hợp đồng Hook đã triển khai beforeSwap(), nó cũng sẽ không bao giờ được PoolManager gọi.

Điều này có nghĩa là khi triển khai Hook phải sử dụng CREATE2 + salt để tính toán địa chỉ, tạo ra một địa chỉ có các bit thấp hoàn toàn khớp với quyền hạn mục tiêu. Uniswap chính thức cung cấp công cụ HookMiner cho mục đích này:

Khi quyền hạn bit và việc triển khai hàm không khớp sẽ tạo ra hai loại vấn đề:

(1) Đã triển khai một hàm hook nào đó, nhưng địa chỉ chưa mã hóa bit quyền tương ứng——PoolManager sẽ không bao giờ gọi hàm đó, logic trở nên vô dụng

(2) Địa chỉ đã mã hóa một bit quyền nào đó, nhưng hook không triển khai hàm tương ứng——PoolManager khi gọi lại có thể xảy ra revert, gây DOS hoặc xác minh giá trị trả về thất bại, khiến thao tác liên quan không thể thực hiện.

Đồng thời, đây cũng là trở ngại tự nhiên cho việc nâng cấp Hook: Nếu Hook có thể nâng cấp thông qua proxy, địa chỉ triển khai không thay đổi khi nâng cấp, do đó sau khi nâng cấp chỉ có thể sửa đổi việc triển khai của các hàm hook hiện có, mà không thể thêm loại hook mới. Để dự phòng khả năng mở rộng trong tương lai, bắt buộc phải "đào" trước tất cả các bit quyền có thể sử dụng ngay từ lần triển khai ban đầu.

2.3 BaseHook và một bẫy kiểm soát truy cập bị bỏ qua phổ biến

BaseHook là hợp đồng trừu tượng do phiên bản cũ của Uniswap v4 periphery cung cấp, nhà phát triển có thể kế thừa nó để triển khai Hook tùy chỉnh. Một tác dụng quan trọng của BaseHook là cung cấp bộ chỉnh sửa onlyPoolManager cho hàm unlockCallback():

Tuy nhiên – ở đây tồn tại một bẫy thiết kế rất dễ bị bỏ qua – BaseHook phiên bản đầu chỉ thêm onlyPoolManager cho unlockCallback, không có biện pháp bảo vệ nào đối với các hàm gọi lại hook khác (beforeSwap, afterSwap, beforeAddLiquidity, v.v.). Việc kiểm soát truy cập cho các hàm này phải được nhà phát triển Hook tự thêm vào một cách rõ ràng.

3. Đi qua mã vòng đời Hook

Lấy một lần swap exact-input làm ví dụ, dưới đây phân tích ngăn xếp gọi đầy đủ từ khi người dùng khởi tạo giao dịch đến khi quyết toán.

3.1 Khởi tạo pool và liên kết Hook

Bất kỳ ai cũng có thể gọi PoolManager.initialize() để tạo pool mới:

isValidHookAddress chỉ kiểm tra tính tương thích giữa bit quyền của địa chỉ và trường fee, không kiểm tra xem Hook đã được sử dụng trong pool khác hay chưa, cũng không kiểm tra Hook đó có "muốn" chấp nhận PoolKey này hay không. Nếu khi thiết kế Hook không thêm logic danh sách trắng hoặc liên kết đơn pool trong beforeInitialize, bất kỳ ai cũng có thể tạo một pool mới sử dụng cùng Hook nhưng với cặp token bất kỳ và kích hoạt tất cả các lần gọi lại tiếp theo của Hook.

3.2 beforeSwap và BeforeSwapDelta

Lối vào quy trình swap là PoolManager.swap(), nó sẽ gọi Hooks.beforeSwap() trước khi thực thi logic swap cốt lõi:

Giá trị trả về của beforeSwap là một bộ ba (bytes4, BeforeSwapDelta, uint24):

- bytes4: Phải bằng IHooks.beforeSwap.selector, nếu không PoolManager sẽ revert trực tiếp

- BeforeSwapDelta: Điều chỉnh delta của Hook đối với specified token và unspecified token trong lần swap này

- uint24: Giá trị ghi đè phí LP động (chỉ có hiệu lực khi pool bật phí động)

BeforeSwapDelta là bí danh của int256, 128 bit cao là delta của specified token (tức token mà người dùng chỉ định số lượng), 128 bit thấp là delta của unspecified token:

Cần lưu ý, ngữ nghĩa của BeforeSwapDelta là Hook thu phí nên trả về giá trị dương, Hook hoàn trả token nên trả về giá trị âm. Nhà phát triển rất dễ nhầm lẫn dấu; đồng thời, quan hệ tương ứng giữa specified và unspecified phụ thuộc vào params.zeroForOne và dấu của amountSpecified, chỉ cần viết sai một chút sẽ xảy ra lỗi vị trí token.

PoolManager sẽ cộng trực tiếp specifiedDelta được trả về từ beforeSwap vào amountToSwap:

Dòng này ẩn chứa một ngữ nghĩa then chốt: Hook có thể giữ lại số lượng swap. Khi hookDeltaSpecified bằng -params.amountSpecified, amountToSwap trực tiếp về 0, tương đương với việc Hook hoàn toàn tiếp quản swap này——đây chính là Async Hook hay Custom Curve Hook được nhắc đến.

Async Hook là một trong những mô hình thiết kế rủi ro cao nhất trong v4: về bản chất, nó sử dụng logic riêng của Hook để thay thế logic swap của Uniswap. Nếu Hook tồn tại lỗ hổng hoặc bản thân nó là độc hại, tiền của người dùng sẽ không còn bị ràng buộc bởi logic định giá gốc của Uniswap, mà chủ yếu phụ thuộc vào tính chính xác của việc triển khai Hook.

3.3 Quyết toán Delta và NonzeroDeltaCount

Delta được trả về bởi beforeSwap và afterSwap sẽ không ngay lập tức kích hoạt chuyển khoản, mà được ghi lại vào sổ sách nội bộ của PoolManager:

Mỗi khi tổng delta tích lũy của một token chuyển từ 0 sang khác 0, NonzeroDeltaCount tăng lên; khi chuyển về 0 thì giảm xuống. Như đã nói ở 2.1, nếu khi unlock() kết thúc mà NonzeroDeltaCount != 0, toàn bộ giao dịch sẽ revert.

Hook thông qua hai hành động settle() (chuyển khoản cho PoolManager) và take() (lấy từ PoolManager) để cân bằng delta của mình:

Cơ chế này mang lại ngữ nghĩa bảo mật rõ ràng: Cuối cùng tất cả mọi người đều phải cân bằng sổ sách. Nhưng nó chỉ đảm bảo "bảo toàn sổ sách", không đảm bảo "sổ sách chính xác". Nếu Hook trả về một delta bị cấu tạo độc hại trong beforeSwap, PoolManager sẽ trung thành ghi sổ theo delta này, chỉ cần cuối cùng được settle cân bằng, giao dịch sẽ thành công – ngay cả khi điều này có nghĩa là Hook có thể thông qua việc giả mạo trạng thái nghiệp vụ, khiến hệ thống nhận định sai rằng kẻ tấn công có một số quyền lợi tài sản nào đó, mà PoolManager không thể nhận ra sai lầm ở cấp độ nghiệp vụ này.

Sự kiện bảo mật trước đây của Cork Protocol là do Hook của nó tồn tại lỗ hổng, và trước khi bị tấn công, nó đã được 4 công ty kiểm toán thẩm tra. Sau khi phân tích lại, chúng tôi phát hiện:

- Trong 4 công ty kiểm toán, có 3 công ty có phạm vi kiểm tra không bao gồm hợp đồng CorkHook

- Công ty duy nhất kiểm tra CorkHook đã xác định được một số vấn đề mã và đưa ra đề xuất cải tiến, nhưng chưa bao phủ hoàn toàn vấn đề kiểm soát truy cập

- Một công ty kiểm tra khác đã nêu rõ trong báo cáo: "một sự tham gia thú vị tiếp theo sẽ là chứng minh các bất biến cho các hàm CorkHook đang được các thành phần khác nhau xác minh trong phạm vi của sự tham gia này". Từ góc độ phân tích lại sự việc, đề xuất này có tính mục tiêu khá cao.

Điều này phơi bày một điểm mù kiểm tra mới trong thời đại Hook v4: Độ phức tạp của giao thức tăng theo cấp số nhân khiến việc xác định phạm vi trở thành một quyết định bảo mật. Đường dẫn tương tác giữa Hook và các hợp đồng khác của giao thức rất dài, việc kiểm tra riêng hợp đồng Hook là không đủ để phát hiện các vấn đề kết hợp xuyên hợp đồng; ngược lại, kiểm tra các hợp đồng xung quanh và bỏ Hook ra ngoài phạm vi, sẽ bỏ lỡ mặt tấn công lớn nhất trong thời đại v4.

4. Suy ngẫm

Nhìn lại cơ chế giao thức và phân tích lại cuộc tấn công Cork, có thể tổng kết một số điểm cốt lõi của mô hình bảo mật Hook v4:

(1) Nếu hàm gọi lại Hook phụ thuộc vào ngữ cảnh gọi do PoolManager cung cấp, nên hạn chế rõ ràng chỉ được gọi bởi PoolManager. BaseHook sẽ không làm việc này thay cho nhà phát triển, đây là bẫy thiết kế dễ gây xung đột nhất với kinh nghiệm kiểm tra hợp đồng thông thường trong v4

(2) Mối quan hệ liên kết giữa Hook và pool không bị PoolManager hạn chế. Nhà phát triển phải tự triển khai logic danh sách trắng pool hoặc liên kết đơn pool trong beforeInitialize

(3) Bit quyền của địa chỉ Hook phải hoàn toàn khớp với việc triển khai hàm. Địa chỉ được tính toán nên bao gồm trước tất cả các bit quyền có thể mở rộng trong tương lai

(4) Async / Custom Curve Hook về bản chất là việc triển khai swap hoàn toàn tùy chỉnh. Nó không có bất kỳ sự bảo vệ nào ở cấp độ giao thức Uniswap, phải được kiểm tra theo tiêu chuẩn "hợp đồng tài chính hoàn toàn tự trị"

(5) "Bảo toàn" của kế toán Delta không bằng "chính xác". NonzeroDeltaCount == 0 chỉ có thể đảm bảo sổ sách cuối cùng cân bằng, không thể đảm bảo nội dung sổ sách không bị thao túng độc hại

(6) Sự nhầm lẫn loại token xuyên thị trường là mặt tấn công mới trong thời đại v4. Khi giao thức cho phép người dùng tạo thị trường, việc xác minh ngữ nghĩa của token là bắt buộc, không thể chỉ dựa vào kiểm tra giao diện

Mỗi Hook là một miền tin cậy độc lập, tính bảo mật của mỗi pool được quyết định bởi Hook mà nó liên kết. Do đó, độ phức tạp của việc kiểm tra bảo mật Hook không còn là "kiểm tra một đoạn mã", mà là "kiểm tra một giao thức con hoàn chỉnh" – sự thay đổi này đối với dự án và bên kiểm tra đều có nghĩa là nâng cấp phương pháp luận.

Xem bài gốc

Tiền kỹ thuật số thịnh hành

Câu hỏi Liên quan

QCơ chế Hook của Uniswap v4 hoạt động như thế nào?

ACơ chế Hook của Uniswap v4 cho phép nhà phát triển gắn một hợp đồng tùy chỉnh vào các sự kiện trong vòng đời của nhóm thanh khoản, chẳng hạn như swap, thêm/giảm thanh khoản hoặc khởi tạo. Hook được gọi lại bởi hợp đồng PoolManager tại các thời điểm then chốt (trước/sau khi thực hiện giao dịch) để chèn logic tùy ý.

QVấn đề bảo mật chính trong việc triển khai Hook của Uniswap v4 là gì?

AVấn đề bảo mật chính là thiếu kiểm soát truy cập (access control) cho các hàm callback như beforeSwap, afterSwap trong các phiên bản BaseHook ban đầu. Các hàm này phải được nhà phát triển tự thêm bảo vệ một cách rõ ràng. Ngoài ra, việc gắn Hook với pool không bị hạn chế, cho phép bất kỳ ai cũng có thể tạo pool mới sử dụng cùng Hook, có thể dẫn đến các lỗ hổng nếu Hook không có cơ chế danh sách trắng.

QAsync Hook hoặc Custom Curve Hook là gì và rủi ro của nó ra sao?

AAsync Hook hoặc Custom Curve Hook là mẫu thiết kế trong đó Hook có thể giữ lại toàn bộ số tiền swap (bằng cách trả về deltaSpecified bằng với số lượng âm của amountSpecified), từ đó thay thế hoàn toàn logic swap mặc định của Uniswap. Rủi ro chính là người dùng không còn được bảo vệ bởi logic định giá nguyên bản của Uniswap, mà phụ thuộc hoàn toàn vào tính đúng đắn của việc triển khai Hook, khiến nó trở thành một hợp đồng tài chính tự trị với rủi ro cao nếu có lỗi hoặc độc hại.

QCơ chế 'flash accounting' và 'NonzeroDeltaCount' trong Uniswap v4 hoạt động thế nào?

AFlash accounting là cơ chế ghi sổ tạm thời, trong đó các thay đổi số dư trung gian trong giao dịch chỉ được ghi nhận trong bộ nhớ tạm (transient storage) và chỉ được quyết toán thống nhất khi giao dịch kết thúc. 'NonzeroDeltaCount' là biến đếm số lượng token có delta (chênh lệch số dư) khác không. Nếu khi kết thúc giao dịch (kết thúc lệnh gọi unlock), NonzeroDeltaCount khác 0, toàn bộ giao dịch sẽ bị revert, đảm bảo sổ sách luôn cân bằng.

QCác quyền (permission) của Hook trong Uniswap v4 được xác định như thế nào?

AQuyền của Hook được xác định bởi 14 bit thấp nhất của địa chỉ triển khai hợp đồng Hook. PoolManager kiểm tra các bit này để xác định xem có cần gọi hàm callback tương ứng (như beforeSwap, afterAddLiquidity) hay không. Điều này có nghĩa là địa chỉ Hook phải được tính toán trước (thường dùng CREATE2 và salt) để có các bit quyền cụ thể. Nếu bit quyền và hàm triển khai không khớp, Hook có thể không hoạt động như mong đợi.

Nội dung Liên quan

Làm thế nào để khiến bản thân trở nên không thể bị thay thế bởi trí tuệ nhân tạo

**Tóm tắt: Làm thế nào để trở nên không thể bị thay thế bởi AI** Bài viết phản đối việc than vãn về AI và thay vào đó đề xuất một giải pháp căn cơ: trở thành một "siêu cá nhân" không thể bị thuê mướn. Mối đe dọa thực sự không phải là AI, mà là tình trạng "nô lệ lương thưởng" – phụ thuộc hoàn toàn vào người khác để sinh tồn, làm công việc nhàm chán mà không có mục đích. Để thoát khỏi vòng luẩn quẩn này và phát triển mạnh trong kỷ nguyên AI, bạn cần trau dồi 5 yếu tố then chốt: 1. **Tính tự chủ:** Khả năng hành động mà không cần chờ chỉ thị. 2. **Khiếu thẩm mỹ:** Khả năng nhận biết điều gì thực sự có giá trị. 3. **Khả năng thuyết phục:** Thu hút sự chú ý và sự công nhận. 4. **Sự kiên trì:** Không sợ thất bại, xem đó là bài học. 5. **Khả năng lặp:** Điều chỉnh dựa trên phản hồi để tiến tới mục tiêu. Giải pháp là đầu tư vào sự nghiệp của chính mình. Trong khi AI giỏi tạo ra "tài sản" (nội dung, code), nó không thể thay thế được khả năng phân biệt thứ gì đáng để tạo ra, làm cho mọi người quan tâm và kiên trì theo đuổi. Trong hai kỹ năng đòn bẩy mạnh mẽ là **Code (Lập trình)** và **Media (Nội dung)**, bài viết nhấn mạnh **Nội dung** quan trọng hơn. Giá trị của nội dung là chủ quan và đòi hỏi sự am hiểu, trải nghiệm mà AI khó có được, tạo không gian cho các cá nhân sáng tạo thực sự. **Cách bắt đầu (Bài tập 15 phút):** 1. **Khai thác nguyên liệu thô của bạn:** Xác định chủ đề bạn am hiểu sâu, vấn đề bạn tự giải quyết được, hay sở thích đặc biệt từ nhỏ. 2. **Xác định "trục phản biện" của bạn:** Tìm ra quan điểm độc đáo của bạn – những điều bạn tin là đúng nhưng số đông lại sai trong lĩnh vực của mình. 3. **Xuất bản ý tưởng đầu tiên:** Kết hợp câu trả lời từ bước 1 và 2, tạo ra một nội dung (bài đăng, video) và đăng nó lên. Hành động này mang lại phản hồi thực tế, bắt đầu quá trình học hỏi, lặp lại và phát triển kỹ năng thuyết phục. Bằng cách xây dựng một sự nghiệp xoay quanh con người thật, trải nghiệm thật và góc nhìn độc đáo của mình thông qua nội dung, bạn có thể tạo ra giá trị mà AI không thể sao chép, từ đó trở nên không thể thay thế.

marsbit2 giờ trước

Làm thế nào để khiến bản thân trở nên không thể bị thay thế bởi trí tuệ nhân tạo

marsbit2 giờ trước

Nhờ việc tung xúc xắc, chìa khóa Bitcoin được lưu trữ offline, nhưng không phải ai cũng muốn làm điều này

Cảm biến từ cuộc tranh cãi gần đây xung quanh lỗ hổng trong ví phần cứng Coldcard, bài viết thảo luận về phương pháp tạo seed (cụm từ khôi phục) cho ví Bitcoin bằng cách xúc xắc vật lý. Mỗi lần xúc xắc công bằng cung cấp khoảng 2,6 bit entropy (thước đo tính ngẫu nhiên). Để đạt mức entropy an toàn cho một seed 12 từ (128 bit), cần khoảng 50 lần xúc xắc; Coldcard khuyến nghị 99 lần để đạt mức bảo mật cao hơn. Lợi thế chính của phương pháp này là tách biệt hoàn toàn với bất kỳ lỗi phần cứng hoặc phần mềm nào trong trình tạo số ngẫu nhiên của thiết bị, từ đó bảo vệ seed chính của ví. Tuy nhiên, bài viết cảnh báo rằng trong sự cố Coldcard, các chức năng phụ khác của thiết bị (như tạo ví giấy, khóa đa chữ ký, mật mã phiên USB) vẫn có thể bị ảnh hưởng nếu chúng dựa vào trình tạo số lỗi, ngay cả khi seed chính được tạo an toàn bằng xúc xắc. Nhược điểm lớn của việc dùng xúc xắc là quá trình thủ công, dễ xảy ra sai sót, tốn thời gian và không thực tế cho đa số người dùng mới. Người dùng có thể ghi chép sai, sử dụng xúc xắc gian lận, hoặc để lộ chuỗi kết quả. Do đó, mặc dù có nền tảng toán học vững chắc, phương pháp này đòi hỏi sự tỉ mỉ cao và không phải là giải pháp khả thi cho việc áp dụng Bitcoin rộng rãi. Bài viết kết luận rằng mục tiêu dài hạn vẫn là phát triển phần cứng/phần mềm tạo số ngẫu nhiên mạnh mẽ và đáng tin cậy, trong khi vẫn giữ phương pháp thủ công như một tùy chọn cho người dùng có kinh nghiệm. Cuối cùng, bài viết đưa ra khuyến nghị cho chủ sở hữu Coldcard: cập nhật firmware, kiểm tra các chức năng phụ đã sử dụng và xem xét các biện pháp bảo mật bổ sung như ví đa chữ ký kết hợp nhiều nhà sản xuất để giảm thiểu rủi ro từ một điểm yếu đơn lẻ.

cryptonews.ru5 giờ trước

Nhờ việc tung xúc xắc, chìa khóa Bitcoin được lưu trữ offline, nhưng không phải ai cũng muốn làm điều này

cryptonews.ru5 giờ trước

Michael Saylor tuyên bố, bản cập nhật Bitcoin mà ông phản đối đã không thể được thông qua!

Michael Saylor tuyên bố rằng về mặt toán học, BIP-110 không thể đạt ngưỡng hỗ trợ 55% từ các tình nguyện viên trong chu kỳ điều chỉnh độ khó khai thác Bitcoin hiện tại. Dữ liệu của ông cho thấy, trong tổng số 946 khối được tạo ra tính đến khối 960.561, chỉ 24 khối chứa tín hiệu ủng hộ BIP-110 trong trường phiên bản tiêu đề khối. Tất cả các tín hiệu này đều đến từ thợ đào DATUM chia sẻ phần thưởng thông qua nhóm khai thác OCEAN, và không có tín hiệu nào từ các thợ đào bên ngoài OCEAN. Saylor nhấn mạnh rằng trong tình huống này, BIP-110 sẽ không đạt được mức hỗ trợ tự nguyện 55% trong chu kỳ xem xét, và các tín hiệu hiện tại không thể được coi là sự đồng thuận chung của các thợ đào. BIP-110 là một đề xuất nhằm gây khó khăn cho việc thêm ảnh, văn bản hoặc các loại dữ liệu lớn khác vào mạng Bitcoin, ngoài giao dịch chuyển tiền. Người ủng hộ cho rằng Bitcoin chỉ nên được dùng để chuyển tiền và không nên làm tắc nghẽn mạng bằng dữ liệu không cần thiết. Tuy nhiên, Michael Saylor phản đối BIP-110. Ông lập luận rằng mạng Bitcoin không nên quyết định giao dịch nào là cần thiết, luật lệ không nên thay đổi theo ý muốn của một số ít người, và tỷ lệ hỗ trợ cao có thể không phản ánh đúng sự ủng hộ thực sự của thợ đào do một phần mềm tự động hóa quá trình báo hiệu.

cryptonews.ru5 giờ trước

Michael Saylor tuyên bố, bản cập nhật Bitcoin mà ông phản đối đã không thể được thông qua!

cryptonews.ru5 giờ trước

Số lượng bình luận tiêu cực về Bitcoin đạt mức cao nhất lịch sử: Điều này có nghĩa là gì?

Công ty phân tích tiền mã hóa Santiment thông báo rằng tình cảm tiêu cực đối với Bitcoin trên mạng xã hội đã đạt mức cao kỷ lục. Tỷ lệ bình luận tích cực/tiêu cực về Bitcoin trên các nền tảng như X, Reddit, Telegram đã giảm xuống mức thấp nhất kể từ khi công ty triển khai hệ thống giám sát hiện đại. Một lỗ hổng bảo mật trong phần sụn của ví cứng Coldcard được xác định là nguyên nhân chính gây lo ngại, làm dấy lên nghi ngờ về tính an toàn của phương pháp lưu trữ lạnh vốn được coi là an toàn nhất. Santiment lưu ý rằng, khác với các cuộc khủng hoảng lớn trước đây như sự sụp đổ của FTX hay Mt. Gox, cuộc thảo luận lần này tập trung vào rủi ro bảo mật phần cứng và ví lạnh nói chung, thay vì chỉ trích các sàn giao dịch tập trung. Theo dữ liệu, hiện chỉ có 0,58 bình luận tích cực cho mỗi bình luận tiêu cực về Bitcoin, cho thấy "nỗi sợ hãi" đang áp đảo "lòng tham" ở mức đáng kể. Mặc dù dữ liệu chỉ trong một ngày, mức độ hoảng loạn hiện tại được đánh giá là cao hơn cả đỉnh lo ngại về chiến tranh đầu năm và các cuộc khủng hoảng tiền mã hóa lớn trong quá khứ.

cryptonews.ru6 giờ trước

Số lượng bình luận tiêu cực về Bitcoin đạt mức cao nhất lịch sử: Điều này có nghĩa là gì?

cryptonews.ru6 giờ trước

Giao dịch

Giao ngay

Bài viết Nổi bật

Làm thế nào để Mua ONE

Chào mừng bạn đến với HTX.com! Chúng tôi đã làm cho mua Harmony (ONE) trở nên đơn giản và thuận tiện. Làm theo hướng dẫn từng bước của chúng tôi để bắt đầu hành trình tiền kỹ thuật số của bạn.Bước 1: Tạo Tài khoản HTX của BạnSử dụng email hoặc số điện thoại của bạn để đăng ký tài khoản miễn phí trên HTX. Trải nghiệm hành trình đăng ký không rắc rối và mở khóa tất cả tính năng. Nhận Tài khoản của tôiBước 2: Truy cập Mua Crypto và Chọn Phương thức Thanh toán của BạnThẻ Tín dụng/Ghi nợ: Sử dụng Visa hoặc Mastercard của bạn để mua Harmony (ONE) ngay lập tức.Số dư: Sử dụng tiền từ số dư tài khoản HTX của bạn để giao dịch liền mạch.Bên thứ ba: Chúng tôi đã thêm những phương thức thanh toán phổ biến như Google Pay và Apple Pay để nâng cao sự tiện lợi.P2P: Giao dịch trực tiếp với người dùng khác trên HTX.Thị trường mua bán phi tập trung (OTC): Chúng tôi cung cấp những dịch vụ được thiết kế riêng và tỷ giá hối đoái cạnh tranh cho nhà giao dịch.Bước 3: Lưu trữ Harmony (ONE) của BạnSau khi mua Harmony (ONE), lưu trữ trong tài khoản HTX của bạn. Ngoài ra, bạn có thể gửi đi nơi khác qua chuyển khoản blockchain hoặc sử dụng để giao dịch những tiền kỹ thuật số khác.Bước 4: Giao dịch Harmony (ONE)Giao dịch Harmony (ONE) dễ dàng trên thị trường giao ngay của HTX. Chỉ cần truy cập vào tài khoản của bạn, chọn cặp giao dịch, thực hiện giao dịch và theo dõi trong thời gian thực. Chúng tôi cung cấp trải nghiệm thân thiện với người dùng cho cả người mới bắt đầu và người giao dịch dày dạn kinh nghiệm.

Tổng lượt xem 653Xuất bản vào 2024.12.12Cập nhật vào 2026.06.02

Làm thế nào để Mua ONE

Thảo luận

Chào mừng đến với Cộng đồng HTX. Tại đây, bạn có thể được thông báo về những phát triển nền tảng mới nhất và có quyền truy cập vào thông tin chuyên sâu về thị trường. Ý kiến ​​của người dùng về giá của ONE (ONE) được trình bày dưới đây.

活动图片