Bài viết Thuật toán đồng thuận PoW (Proof of work) của mạng lưới blockchain trình bày các thuật toán đồng thuận PoW trong mạng lưới Blockchain. Lĩnh vực blockchain vẫn còn rất mới mẻ và còn nhiều tiềm năng khám phá.
Tuyển tập Hội nghị Khoa học thường niên năm 2019 ISBN: 978-604-82-2981-8 THUẬT TOÁN ĐỒNG THUẬN PoW (Proof of Work) CỦA MẠNG LƯỚI BLOCKCHAIN Đỗ Oanh Cường Trường Đại học Thuỷ lợi, email: cuongdo@tlu.edu GIỚI THIỆU CHUNG Blockchain sổ ghi lại số dư lịch sử tất tài khoản tham gia vào chuỗi giao dịch Bình thường, giao dịch trực tuyến, cần đến bên trung gian thứ ba mà tin tưởng (ví dụ: cơng ty trung gian, công ty vận chuyển, ngân hàng…) với sở liệu tập trung để xác minh giao dịch nhằm chống gian lận kẻ gian sử dụng lại tập tin nhiều lần Công nghệ giải tốn (double-spending) mà khơng cần tới bên trung gian thứ ba tin cậy Công nghệ blockchain có nhiều ứng dụng khác mà tiền tệ Bitcoin số Ví dụ: Ứng dụng cho việc đăng ký sử dụng đất đai, loại công chứng, hợp đồng thông minh (tự động cho phép hủy giao dịch với số điều kiện lập trình sẵn), đăng ký tên miền, quy trình bỏ phiếu,… thuật toán trở nên đáng tin cậy bên trung gian thứ ba (mà khơng đáng tin cậy kiểm sốt chi phối thơng tin, tốn lợi ích …) Proof of work – PoW, thuật toán đồng thuận ban đầu mạng lưới Blockchain Với Blockchain, thuật toán dùng để xác nhận giao dịch tạo khối (block) Với PoW, thợ đào coin cạnh tranh với để hoàn tất giao dịch mạng lưới nhận phần thưởng Khi giao dịch trực tuyến, hệ thống sử dụng sổ phân quyền để chuyển lượng giao dịch định vào khối Nhiệm vụ đặc biệt thường biết đến với tên gọi mining (đào khối/block), người đảm nhiệm cơng việc miner (thợ đào coin) Ngun lí q trình phương trình tốn học phức tạp nhiệm vụ tìm phương thức để giải nhanh gọn tốt PHƯƠNG PHÁP NGHIÊN CứU “Mathematical puzzle” hay “phương trình tốn học phức tạp” gì? Một câu đố cần nhiều lực tính tốn máy tính giải Mơi trường dùng nghiên cứu: hệ thống testnet mạng Ethereum: https://ropsten.etherscan.io Một số tốn điển hình là: Hash function (hàm băm): tìm ẩn số đầu vào biết kết đầu - Integer factorization (thừa số nguyên): tìm số biết tích hai số khác - Guided tour puzzle protocol (giao thức hướng dẫn giải tốn): server cảm thấy bị cơng DoS, cần phải tính tốn lại hàm băm số node theo thứ tự định – trường hợp này, toán để “tìm chuỗi giá trị băm” Câu trả lời dành cho phương trình tốn học PoW gọi “hash” Thợ đào coin giải tốn, tạo khối sau xác nhận giao dịch Độ khó tốn đào khối phụ thuộc vào số lượng người dùng, lực khai thác tải trọng mạng lưới Hash 154 Tuyển tập Hội nghị Khoa học thường niên năm 2019 ISBN: 978-604-82-2981-8 khối chứa hash khối trước đó, giúp gia tăng mức độ an ninh tránh vi phạm Sau thợ đào coin giải tốn hệ thống cho phép tạo thêm khối Các giao dịch chuyển vào khối xem xác nhận Khi mạng lưới ngày lớn mạnh phải đối mặt với nhiều tốn với cấp độ khó Do vậy, thuật tốn để đủ sức tìm đáp số đào khối cần nhiều nhiều hash power – lực băm Vì thế, độ khó thuật tốn đào coin vấn đề nhạy cảm Blockchain Sự xác xử lí tốc độ Blockchain phụ thuộc nhiều vào PoW Độ khó tốn khơng nên phức tạp thời gian tạo khối lâu Các giao dịch bị nghẽn xác nhận chuyển vào khối dịng chảy cơng việc bị ngưng trệ Nếu tốn khơng thể giải khoản thời gian vô hạn định, mạng lưới xem sụp đổ Nhưng toán dễ mạng lưới lại tự đặt vào vị trí thuận lợi để bị spam, công DoS trục trặc khác Bên cạnh đó, đáp án trả nên đơn giản cho công tác kiểm tra chấp thuận Khơng phải node đủ khả để xác định liệu tất công đoạn tính tốn làm theo quy trình Lúc bạn phải tin tưởng vào định từ node khác vi phạm khía cạnh quan trọng Blockchain – tính minh bạch Hiện có thuật tốn PoW phổ biến Scrypt, SHA-256, Ethash, Ethash thể nhiều đặc điểm ưu việt ứng dụng hệ thống Ethereum Ethash thiết kế hoạt động hiệu hệ thống GPU, với nhớ cache ngẫu nhiên 16MB 1GB dataset Về mặt hệ thống, Ethereum hoạt động với Ethash thực 13 giao dịch/ giây, mạng lưới Bitcoin sử dụng thuật tốn SHA-256 thực 3-4 giao dịch/giây Mơ giải thuật Ethash sau: Hình Mơ giải thuật Ethash KẾT LUẬN Trên trình bầy thuật tốn đồng thuận PoW mạng lưới Blockchain Lĩnh vực blockchain mẻ nhiều tiềm khám phá, cịn khơng thách thức: Chi phí đầu tư phần cứng thực thuật toán đồng thuận PoW tương đối đắt đỏ Chi phí lượng tốn kém, chưa tối ưu hiệu sử dụng Có nguy bị công 51%, công 51%, hay công đa số, xảy nhóm người dùng kiểm sốt đa số lực khai thác - đảo ngược điều khiển kết hệ thống Để hạn chế giảm thiểu nguy bị công 51%, mạng lưới blockchain thường đề cao tính phân tán, phát triển lực tính tốn tổng mạng lưới (số lượng máy đào hiệu tính tốn) Với mạng lưới Ethereum, đề xuất thuật toán PoS thay cho PoW, nhằm tối ưu mạng lưới giảm thiểu nguy công 51% Với đầu tư tổ chức nghiên cứu, thời gian tới thuật toán đồng thuận mạng lưới Blockchain không ngừng cải thiện để khắc phục hạn chế thuật toán PoW cũ, nhằm đưa hệ thống Blockchain ứng dụng nhiều sống thành phần then chốt cách mạng 4.0 TÀI LIỆU THAM KHẢO [1] Ethereum Wiki https://github.com/ethereum/wiki/wiki/Ethash 155 ... giây, mạng lưới Bitcoin sử dụng thuật tốn SHA-256 thực 3-4 giao dịch/giây Mô giải thuật Ethash sau: Hình Mơ giải thuật Ethash KẾT LUẬN Trên trình bầy thuật toán đồng thuận PoW mạng lưới Blockchain. .. tối ưu mạng lưới giảm thiểu nguy công 51% Với đầu tư tổ chức nghiên cứu, thời gian tới thuật toán đồng thuận mạng lưới Blockchain không ngừng cải thiện để khắc phục hạn chế thuật toán PoW cũ,... công 51%, mạng lưới blockchain thường đề cao tính phân tán, phát triển lực tính tốn tổng mạng lưới (số lượng máy đào hiệu tính tốn) Với mạng lưới Ethereum, đề xuất thuật toán PoS thay cho PoW, nhằm