
Tấn công 51% (51% attack) là gì? Sự nguy hại của tấn công 51%
Exchange Script mời bạn đọc cùng tìm hiểu: Tấn công 51% (51% attack) là gì? Sự nguy hại của tấn công 51%, tấn công 51% có dạng như thế nào? qua bài viết này nhé.
Phụ Lục
Tấn công 51% (51% Attack) là gì?
Tấn công 51% (51% Attack) là một cuộc tấn công vào mạng lưới Blockchain của một đồng tiền điện tử nào đó, thường được thực hiện bởi một nhóm các thợ đào nhằm kiểm soát trên 50% hashrate khai thác của mạng. Mục đích của các cuộc tấn công 51% làm cho các giao dịch không thể xác nhận do tắc nghẽn mạng, điều đáng lo ngại hơn là giao dịch có thể bị đảo ngược nếu kẻ tấn công kiểm soát toàn bộ mạng lưới.
Một ví dụ về việc đảo ngược giao dịch để các bạn có thể thấy được sự nguy hiểm của nó: Giả sử tôi có 1.000 Bitcoin, và dùng để mua một chiếc máy bay tư nhân. Sau khi chuyển 1.000 BTC này vào ví của cửa hàng bán máy bay, chiếc máy bay được giao đến cho tôi vài ngày sau đó. Bằng cách thực hiện tấn công 51% vào blockchain của Bitcoin, tôi có thể đảo ngược giao dịch. Nếu thành công, tôi sẽ lấy lại được 1.000 BTC đã chuyển cho cửa hàng bán máy bay và vẫn có được chiếc máy bay.
Tấn công 51% không thể thay đổi được các block cũ trong hệ thống Blockchain, vì vậy nó sẽ không phá huỷ được Bitcoin hay các đồng tiền điện tử khác, nhưng sẽ để lại một thiệt hại khá lớn.
Hashrate là gì?
Hashrate là đơn vị đo lường khả năng tính toán của thiết bị dùng để khai thác các đồng tiền điện tử. Vào thời điểm đào bitcoin, cần giải quyết rất nhiều bài toán, chỉ sau đó mới có thể kiếm đồng tiền ảo.
Khi đó, tất cả những giao dịch trước đó sẽ được lưu trữ tại khu vực chung. Các thợ mỏ bitcoin tập hợp hash cần thiết từ các kết hợp khác nhau, cho phép truy cập vào các khóa bí mật và các hoạt động giao dịch mới.
Chu trình toán học phức tạp này đòi hỏi phải có thiết bị mạnh, giúp tìm ra hash cần thiết trong khoảng thời gian tối thiểu. Tốt nhất nên tìm hiểu thiết bị hashrate dựa trên những kinh nghiệm của bản thân bởi vì các nhà sản xuất công nghệ không phải luôn đưa ra các thông tin chính xác.
Sự nguy hại của tấn công 51%
Bitcoin và hầu hết các tiền điện tủ khác đều dựa trên Blockchain, một cách quản lý sổ cái phi tập trung (tìm hiểu thêm về công nghệ Blockchain)
Bất kỳ ai trong mạng lưới đều có thể xem, kiểm tra cuốn sổ cái ghi chép các giao dịch này. Blockchain, đúng như tên gọi của nó, chứa một chuỗi các block, mỗi block là data chứa thông tin giao dịch trong một khoảng thời gian nhất định. Một khi block được niêm phong, trong ngôn ngữ Blockchain là đào, thông tin trong nó sẽ không thể bị thay đổi.
Tuy nhiên, bằng việc kiểm soát hơn 50% sức mạnh khai thác của mạng lưới, nhóm tấn công có thể kiểm soát tiến trình tạo block mới. Chúng ngăn chặn các block được các thợ mỏ khác đào được xác nhận (do các thợ mỏ khác nắm sức mạnh khai thác nhỏ hơn). Từ đó chúng sẽ độc quyền khai thác và chiếm toàn bộ phần thưởng từ việc khai thác. Ngoài ra chúng còn có thể thực hiện (Double Spend) bằng cách gửi đi giao dịch, sau đó đảo ngược lại nó. Khi đó số tiền gửi đi lại quay về túi.
Mặc dù kẻ tấn công kiểm soát được hệ thống, sẽ rất khó để sửa nội dung các khối cũ trong hệ thống Blockchain (trước thời điểm tấn công). Nếu muốn sửa thông tin các khối cũ, chúng sẽ phải đào lại toàn bộ các khối tiếp theo đó. Dẫn tới việc sửa thông tin ở khối ở vị trí càng xa thời điểm hiện tại thì công việc càng nhiều và càng bất khả thi.
Tấn công 51% có thể làm gì?
Thứ nhất, họ có thể “kiểm duyệt” giao dịch với động cơ không trong sáng. Chẳng hạn, không sắp xếp vào block tất cả giao dịch gửi đến địa chỉ của Amazon. Điều này thì không cần chiếm 51%, cứ có số % lớn đủ gây ảnh hưởng là có thể làm được.
Thứ hai, họ có thể tiêu 1 khoản tiền 2 lần (double spending).
Các máy đào phối hợp với nhau như thế nào?
Mỗi khi đào được 1 block hợp lệ, máy đào ngay lập tức phát tán đi khắp mạng lưới Blockchain. Các máy đào khác khi nhận được sẽ xác nhận, lưu lại, rồi chuyển sang đào block tiếp theo.
Bởi vì đường truyền có độ trễ nên khi bạn đào được 1 block thì cũng sẽ mất vài giây để truyền tới máy đào khác cách nửa vòng trái đất. Điều gìsẽ xảy ra nếu trong thời gian đó máy bên kia cũng đào được? Lúc này blockchain lưu ở 1 số node có sự khác biệt so với blockchain lưu ở các node còn lại.
Để giải quyết, 1 quy tắc được đưa ra: bên nào dài hơn bên ấy hợp lệ. Độ dài của Blockchain ở 2 nhánh ban đầu là bằng nhau. Tuy nhiên, sau một thời gian, nhánh nào được đào bởi tập hợp máy đào có hash rate lớn hơn sẽ dài hơn. Khi đó, các node sẽ đồng loạt chuyển sang dùng bản dài hơn, và nhánh ngắn hơn sẽ không còn ý nghĩa. Sẽ chẳng còn máy đào nào phí công đào cái nhánh bỏ đi đó nữa.
Việc double pending sẽ thực hiện theo cách như sau:
- Thực hiện 1 giao dịch chuyển tiền để mua 1 xe máy điện Klara, tạm gọi là giao dịch A
- Âm thầm thực hiện đào các block, nhưng cố tình bỏ qua giao dịch Akia. Đào được 1 block thì không truyền cho các máy đào khác mà âm thầm đào tiếp trong bóng tối. Ta tạm gọi là nhánh tối
- Ở nhánh sáng, các máy đào khác xác nhận giao dịch A. Phía cửa hàng sau khi thấy giao dịch thành công, đợi 1 thời gian ngắn cho block đủ sâu, rồi giao hàng
- Lúc này, nhánh tối đã dài hơn nhánh sáng. Sau khi nhận được xe Klara, đối tượng mới thực hiện phát tán nhánh tối ra mạng lưới. Các node đồng loạt chấp nhận nhánh tối, do nó dài hơn. Trong nhánh tối không có giao dịch A, nên tiền vẫn còn trong tài khoản. Trong khi hàng thì đã nhận rồi!
Như vậy là đối tượng có xe Klara đi mà không mất tiền, sau đó lại dùng tiền đó để tiêu tiếp. Mặc dù cửa hàng đã đợi cho block được xác nhận đủ lâu mới giao hàng nhưng vẫn không tránh được cú lừa này. Hơn nữa, do đào nhánh tối hoàn toàn một mình, đối tượng chiếm toàn bộ tiền thưởng!
Về mặt lý thuyết, nếu có đủ sức mạnh, có thể kiên nhẫn đào lại toàn bộ block trong quá khứ để nhận hết phần thưởng. Tuy nhiên, làm như vậy giá trị của đồng coin tương ứng sẽ rớt thảm, tiền thưởng đó sẽ không thấm vào đâu so với chi phí đào.
Trên thực tế, tấn công 51% chưa xảy ra lần nào với Bitcoin và Ethereum. Vào năm 2014, ghash.io có lúc vượt 50% hash rate của Bitcoin. Tuy nhiên, sau đó nó tự nguyện giảm xuống và hứa sẽ không bao giờ vượt quá 40%, vì sự lành mạnh của mạng lưới là một đảm bảo về quyền lợi của máy đào. Các blockchain nhỏ hơn thì không được may mắn như thế. Do chi phí để chiếm phần lớn hash rate không quá lớn, đã có nhiều cuộc tấn công 51% được ghi nhận (như đối với Bitcoin Gold, Verge, v.v.).
Chiếm 51% hash rate còn có thể làm được 1 số điều khác, nhưng 2 điều đã nói ở trên là cơ bản nhất.
Tấn công 51% có dạng như thế nào?
Một mạng lưới blockchain được duy trì nhờ có các node mạng phân tán, do đó tất cả các thành viên sẽ phải tham gia vào quá trình đi đến sự thống nhất. Đây là một trong đó các nguyên nhân đảm bảo tính bảo mật cho mạng lưới blockchain. Các mạng lưới càng lớn thì càng có độ bảo mật cao chống lại các vụ tấn công và làm giả dữ liệu.
Với các blockchain nền tảng Proof of Work, một miner sở hữu càng nhiều hash rate sẽ càng có nhiều cơ hội tìm ra lời giải thích hợp cho block tiếp theo. Nguyên nhân là bởi việc khai thác bao gồm vô số phép thử đối với các hash, do đó với càng nhiều năng lượng tính toán thì số lần thử mỗi giây sẽ càng nhiều hơn. Rất nhiều thợ đào có thâm niên gia nhập mạng lưới của Bitcoin nhằm đóng góp vào việc phát triển và bảo mật hệ thống. Bitcoin – với công dụng làm một loại tiền tệ – có giá trị ngày càng tăng, thì số lượng thợ đào mới gia nhập mạng lưới để cạnh tranh các phần thưởng của block (hiện tại là 12.5 BTC cho một block) đã tăng lên một cách chóng mặt. Chính sự cạnh tranh khốc liệt đó đã tạo nên tính bảo mật cực cao của mạng lưới Bitcoin. Thực hiện các công việc một cách trung thực để cố gắng nhận được các phần thưởng block là lý do duy nhất các thợ đào sẵn sàng đầu tư một khối lượng tài nguyên lớn vào Bitcoin.
Do đó, khả năng tấn công 51% vào Bitcoin gần như là không thể bởi quy mô của mạng lưới này là cực lớn. Khi một blockchain phát triển dần đến một quy mô nhất định, khả năng một cá nhân hay tổ chức đơn lẻ có thể thu thập được đủ năng lượng tính toán để áp đảo được các thành viên khác cũng sẽ dần đi đến mức độ không thể thực hiện được.
== Tiền điện tử Bitcoin là gì?
Hơn nữa, việc thay đổi các block đã được xác thực trước đó sẽ ngày càng khó khăn khi độ lớn của chuỗi tăng lên, bởi các block này được liên kết với nhau bằng các bằng chứng mã hóa. Tương tự, một khối khi càng có được nhiều xác nhận, thì chi phí để sửa đổi hay đảo ngược các giao dịch trong khối đó sẽ càng lớn. Điều này làm cho một vụ tấn công cho dù có thành công được cũng chỉ có thể sửa đổi các giao dịch trong một số block mới nhất trong một khoảng thời gian rất ngắn.
Để có thể hiểu sâu hơn, chúng ta cùng xét một trường hợp khi một cá thể, không màng lợi nhuận, quyết định thực hiện vụ tấn công nhằm phá hủy mạng lưới Bitcoin bằng bất cứ giá nào. Ngay cả khi kẻ tấn công thành công trong việc làm gián đoạn mạng lưới, thì các giao thức và phần mềm của Bitcoin có thể nhanh chóng thay đổi và thích nghi để đáp trả lại vụ tấn công đó. Điều này yêu cầu các node mạng khác phải đạt được sự đồng thuận đối với các thay đổi này một cách nhanh chóng trong trường hợp khẩn cấp. Bitcoin có khả năng phục hồi cực kỳ tốt đối với các vụ tấn công, và được xem là loại tiền mã hóa có tính bảo mật và độ tin cậy cao nhất đang tồn tại.
Mặc dù việc những kẻ tấn công thu thập được nhiều năng lượng tính toán hơn phần còn lại là rất khó khăn, đối với mạng lưới Bitcoin, nhưng với các loại tiền mã hóa có quy mô nhỏ hơn thì việc này lại dễ dàng hơn rất nhiều. Khi so sánh với Bitcoin, các đồng altcoin có khối lượng hashing power tương ứng trong việc bảo mật hệ thống khá thấp, đủ để các vụ tấn công 51% có thể thực hiện được trên thực tế. Đã có những ví dụ thực tế đáng ghi nhớ về một số loại tiền mã hóa trở thành nạn nhân của các vụ tấn công hình thức này, trong đó có Monacoin, Bitcoin Gold và ZenCash.
Tấn công 51% có dễ thực hiện không?
Tấn công 51% về mặt lý thuyết có thể rất khó để thực hiện. Vì cần một cá nhân hoặc một nhóm có khả năng kiểm soát hơn một nửa sức mạnh khai thác của mạng lưới. Đó là một thách thức lớn, nhất là với những mạng lưới mà số lượng thợ mỏ lớn như Bitcoin.
Về mặt lý thuyết thì tấn công 51% sẽ không thể tồn tại lâu. Blockchain của Bitcoin hay các loại tiền điện tử khác phát triển ổn định theo thời gian: khi có thêm thợ mỏ tham gia vào mạng lưới Blockchain, sức mạnh tính toán sẽ được bổ sung và vượt trên cả kẻ tấn công. Sẽ rất tốn kém nếu kẻ tấn công muốn tăng thêm hashrate bổ sung vào sức mạnh của mình.
Dù sao thì tấn công 51% vẫn là một mối đe doạ có khả thi, có thể bất ngờ xảy ra bất cứ lúc nào, chỉ có điều là lợi ích đạt được không lớn hơn chi phí bỏ ra.
Một số cuộc tấn công 51%
- Krypton và Shift: Krypton và Shift, hai blockchain dựa trên Ethereum, đã chịu 51% tấn công vào tháng 8/2016.
- Bitcoin Gold: Vào tháng 5 năm 2018, Bitcoin Gold, một đồng coin hard fork từ Bitcoin đã bị tấn công 51%. Hacker đã kiểm soát một lượng lớn năng lượng băm của Bitcoin Gold để ngay cả khi Bitcoin Gold liên tục cố gắng tăng ngưỡng giao dịch, những kẻ tấn công đã có thể chi tiêu gấp đôi trong vài ngày, cuối cùng đã đánh cắp Bitcoin Gold trị giá hơn 18 triệu đô la .
- Ethereum Classic: Vào đầu tháng 1 năm 2019, một cuộc tấn công 51 % cũng sảy ra với Ethereum Classic. Monacoin, Zencash, Verge Litecoin Cash, Vertcoin (VTC) cũng từng bị tấn công 51%
- Tấn công 34%: Một sổ cái phân tán khác biệt cơ bản với blockchain nhưng được thiết kế để thực hiện các mục tiêu tương tự, về mặt lý thuyết có thể chịu thua kẻ tấn công triển khai trên một phần ba hashrate của mạng, được gọi là tấn công 34%.
Kết luận
Như vậy là Exchange Script vừa thực hiện xong bài viết: “Tấn công 51% (51% attack) là gì? Sự nguy hại của tấn công 51%” hy vọng những thông tin trong bài sẽ giúp cho các bạn đang tìm kiếm thông tin về tấn công 51%. Đừng quên chia sẻ kiến thức cho bạn bè nhé.
Chúc các bạn thành công!