Bài đăng

Đang hiển thị bài đăng từ 2020

Derod memory consumption bug lead to DoS

Hình ảnh
Dero là một blockchain có công nghệ rất tốt, nhiều tiềm năng mà tôi đã có bài viết review . Trong quá trình tìm hiểu codebase của nó, tôi đã tìm ra một bug trong handshake protocol của derod - node của dero network. Lỗi này cho phép bất cứ attacker nào gửi một lượng lớn dữ liệu dẫn đến derod bị bội thực RAM mà chết :) Sau đây là quá trình tôi tìm ra bug, kèm theo mã khai thác. Package p2p phụ trách giao tiếp giữa các node với nhau. Package này xử lý một giao thức custom chạy trên tcp. Trong đó, bước đầu tiên là Handshake. Hãy cùng xem file handshake.go và xem nó handle handshake như thế nào. Handshake có nhiều trường, nhưng có một trường đáng chú ý là PeerList. Trường này chứa danh sách là địa chỉ ip:port của các peers đang kết nối đến node hiện tại. Mục đích của trường này là broadcast địa chỉ của các peers ra network. Nhờ đó mà network có thể hoạt động mà không cần một centralized server nào. Tuy nhiên, trong hàm Handle_Handshake lại không có điều kiện nào kiểm tra độ dài của trườn

Giới thiệu về Dero blockchain - Fully Privacy Smart Contract

Dero là một dự án blockchain được giới thiệu vào năm 2017. Mục tiêu của nó là cung cấp một nền tảng hoàn toàn ẩn danh tương tự như Monero, Zcash... đồng thời cung cấp khả năng tạo Smart Contract tương tự Ethereum. Phiên bản hiện tại của Dero là Atlantis đã cung cấp các tính năng gồm: Cryptonote protocol: Ẩn danh BlockDAG: kết hợp giữa block (khối) và DAG (công nghệ đã làm cho nano tăng chóng mặt). Nhờ đó dero có khả năng mở rộng vô hạn và chống lại tấn công %51. Bulletproofs: tăng tốc độ cho giao thức Cryptonote. AstroBWT: Thuật toán PoW CPU-friendly tự sáng tạo, không hề copy paste từ RandomX như nhiều loại coin khác. Đây là thuật toán ưu tiên mining cho CPU, nhờ đó gia tăng độ phân tán, bảo mật của mạng lưới. Hiện tại, Dero đang rục rịch ra mắt phiên bản Stargate bổ sung các tính năng sau: DHEBP: Dero Fully Homomorphic Encryption Protocol: Đây là giao thức ẩn danh mới, thay thế cho Cryptonote đã cũ. Với giao thức này, Dero sẽ tách biệt hoàn toàn với các dòng coin dựa trên Cryptonote

Fully Homomorphic Encryption (FHE) là gì? Có ý nghĩa như thế nào với công nghệ blockchain?

Hình ảnh
1. Overview Homomorphic encryption là một phương thức mã hóa cho phép thao tác các hàm toán học trên dữ liệu đã được mã hóa thay vì dữ liệu gốc ở dạng rõ (plain text). Kết quả cuối cùng sau khi được giải mã sẽ tương đương với kết quả thu được như khi thao tác trên dữ liệu gốc chưa được mã hóa. Hình vẽ dưới đây sẽ cho bạn một hình dung tốt hơn về cách mà homomorphic encryption hoạt động. Quá trình bắt đầu với một mẩu dữ liệu ở dạng rõ, gọi là m . m có thể là tên của ai đó, ví dụ như "Nguyen Van A". Mục tiêu là thực hiện hàm f lên m , ví dụ chuyển m thành chữ hoa (kết quả là "NGUYEN VAN A"). Sẽ không có gì đáng nói nếu chúng ta chỉ việc dùng hàm f lên m . Tuy nhiên vì lý do bảo mật, chúng ta không muốn cho bên thứ ba biết dạng rõ m . Thay vào đó, người ta mã hóa m bằng khóa k (hoặc cặp khóa k,v ). Kết quả m được mã hóa từ "Nguyen Van A" thành 1928292 (ví dụ). Tiếp tục sử dụng một phiên bản homomorphic encryption của f , f(x) = x + 127 (ví dụ), thu đ