Bài viết này không trình bày một cách chi tiết về một ứng dụng nào đó trong thực tế của blockchain mà đưa ra một cách nhìn về nguồn gốc của công nghệ blockchain theo khía cạnh toán học và các thuật toán đồng thuận để hiểu hơn về bản chất của blockchain.
TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, Trường Đại học Khoa học, ĐH Huế Tập 19, Số (2021) BLOCKCHAIN - NỀN TẢNG TOÁN HỌC VÀ CÁC THUẬT TOÁN ĐỒNG THUẬN Nguyễn Mậu Hân Trường Đại học Khoa học, Đại học Huế Email: nmhan@husc.edu.vn Ngày nhận bài: 12/5/2021; ngày hoàn thành phản biện: 7/6/2021; ngày duyệt đăng: 02/11/2021 TÓM TẮT Công nghệ blockchain phát minh lạ mà kết hợp lý thuyết công nghệ tồn qua nhiều năm: lý thuyết mật mã, mạng ngang hàng thuật toán đồng thuận lý thuyết trò chơi Vài năm gần đây, công nghệ blockchain 3.0 vượt khỏi biên giới lĩnh vực tài – tiền tệ thâm nhập đa dạng vào các lĩnh vực khác đời sống xã hội Bài báo khơng trình bày cách chi tiết ứng dụng thực tế blockchain mà đưa cách nhìn nguồn gốc cơng nghệ blockchain theo khía cạnh tốn học thuật tốn đồng thuận để hiểu chất blockchain Từ khóa: blockchain, thuật toán đồng thuận, lý thuyết mật mã, sổ kế tốn MỞ ĐẦU Blockchain cơng nghệ cho phép truyền tải liệu cách an tồn dựa vào hệ thống mã hố vơ phức tạp, tương tự sổ kế toán công ty, nơi mà hoạt động liên quan đến tiền bạc công ty giám sát cách chặt chẽ Blockchain sử dụng việc lưu trữ thông tin khối liên kết với mở rộng theo thời gian Mỗi khối chứa thông tin liệu giao dịch, thời gian khởi tạo thông tin khối liên kết trước Do khối thơng tin quản lý tất người tham gia hệ thống nên blockchain tạo để chống lại thay đổi liệu hệ thống, làm giả, phá hủy liên kết khối thông tin Khi nhập vào chuỗi khối blockchain thơng tin thay đổi cá nhân bổ sung thêm thơng tin có chấp thuận tất người hệ thống [7] Điều có nghĩa phần hệ thống blockchain bị sụp đổ máy tính nút khác tiếp tục hoạt động để bảo vệ thông tin 35 Blockchain - tảng toán học thuật toán đồng thuận Các loại công nghệ sử dụng blockchain là: Lý thuyết mật mã: Sử dụng public key chữ ký số giá trị băm (hash function) để đảm bảo tính minh bạch, tồn vẹn riêng tư Mạng ngang hàng: Một hệ thống mạng mà nút mạng có vai trị nhau, tự quản lý tài nguyên Một nút xem client server để lưu trữ liệu [1] Lý thuyết trò chơi: Tất nút tham gia vào hệ thống phải tuân thủ luật chơi đồng thuận (PoW, PoS) thúc đẩy động lực xác định trước [7] Cơng nghệ blockchain đóng vai trò giống sổ ghi lại tất giao dịch xảy hệ thống có đặc điểm kể đến như: Không thể làm giả: Các chuỗi blockchain gần khơng thể bị phá hủy Theo lý thuyết có máy tính lượng tử can thiệp vào giải mã chuỗi blockchain bị phá hủy hoàn toàn Internet toàn cầu biến [6] Tính bất biến: Dữ liệu blockchain gần khơng thể sửa đổi (chỉ sửa đổi người tạo nó, phải đồng thuận nút mạng) liệu lưu giữ mãi Bảo mật liệu: Các thông tin, liệu blockchain phân tán độ an toàn cao, có người nắm giữ private key có quyền truy xuất liệu [2] Tính minh bạch: Có thể theo dõi đường liệu blockchain từ địa tới địa khác thống kê tồn lịch sử địa Hợp đồng thơng minh: Blockchain khơng cần bên thứ ba tham gia vào hệ thống, bảo đảm tất bên tham gia biết chi tiết hợp đồng điều khoản tự động thực điều kiện bảo đảm [6] PHƯƠNG PHÁP NGHIÊN CỨU Trên sở tảng toán học khối kiến thức lý thuyết mật mã, mạng ngang hàng lý thuyết trò chơi, phương pháp nghiên cứu sử dụng báo khai thác nguồn tài liệu khác tảng lý thuyết thuật tốn sử dụng cơng nghệ blockchain nhằm làm rỏ chất cấu trúc chi tiết công nghệ blockchain NỀN TẢNG TOÁN HỌC CỦA BLOCKCHAIN Lý thuyết mật mã khoa hoc nghiên cứu cách viết bí mật, rõ biến đổi thành mã, q trình biến đổi gọi mã hóa Q trình 36 TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học, ĐH Huế Tập 19, Số (2021) ngược lại biến đổi mã thành rõ gọi giải mã Công nghệ blockchain phát triển dựa hai tảng có nguồn gơc từ lý thuyết mật mã, hàm băm chữ ký số 3.1 Hàm băm Hàm băm hàm toán học dùng để chuyển đổi văn có độ dài thành chuỗi bit có độ dài cố định Bất kỳ nỗ lực gian lận để thay đổi phần blockchain bị phát giá trị băm không phù hợp với thông tin cũ blockchain Bằng cách này, ngành khoa học mật mã (cần thiết cho việc mã hóa thơng tin mua sắm trực tuyến, ngân hàng) trở thành công cụ hiệu để giao dịch mở 3.1.1 Khái niệm hàm băm Hàm băm định nghĩa công thức: h = H(M), với M văn cần băm, H hàm băm h giá trị băm Hàm băm H khơng có chức mã hóa giải mã không văn ban đầu Giá trị băm h xâu bit gọi “đại diện thông điệp” Hàm băm H hàm chiều, theo nghĩa giá trị hàm băm nhất, từ giá trị băm “khó” suy ngược lại nội dung hay độ dài ban đầu liệu gốc Các hàm băm dòng MD: MD2, MD4, MD5 Rivest đưa có kết đầu với độ dài 128 bit Hàm băm MD4 đưa vào năm 1990 Một năm sau, phiên mạnh MD5 đưa Năm 1993, hàm băm SHA phức tạp nhiều, kết đầu có độ dài 160 bit, xây dựng dựa phương pháp tương tự 3.1.2 Đặc tính hàm băm Hàm băm h hàm chiều với đặc tính sau: - Với văn đầu vào M thu giá trị băm h=H(M) - Nếu liệu văn Văn băm H=H(M) M bị thay đổi hay Văn M cần băm Thuật toán băm H (có độ dài tùy ý) (có độ dài cố định) bị xóa để thành tin M’, giá trị băm Hình Sơ đồ mơ tả thuật tốn băm H(M’) ≠ H(M) cho dù thay đổi nhỏ Ví dụ cần thay đổi bit liệu văn gốc M, giá trị băm H(M) thay đổi theo Điều có nghĩa hai thơng điệp khác nhau, giá trị băm chúng khác - Nội dung tin gốc “khó” suy từ giá trị hàm băm Nghĩa là: Với thơng điệp M “dễ” xác định h=H(M), lại “khó” xác định ngược lại M biết giá trị băm h=H(M) (kể biết hàm băm H) 37 Blockchain - tảng toán học thuật toán đồng thuận 3.2 Chữ ký số 3.2.1 Giới thiệu chữ kí số Chữ ký nói chung chứng thể người ký có chủ định ký vào văn bản, làm cho người nhận văn biết người ký văn Về mặt ngun tắc chữ ký khơng thể sử dụng lại được, chép sang văn khác, văn ký thay đổi, giả mạo chối bỏ ký Chữ ký có nhiều ưu điểm dễ kiểm tra, không chép được, chữ ký người giống nhiều tài liệu, có giá trị tài liệu cụ thể Chữ ký số có tính chất chữ ký, tạo cách biến đổi liệu sử dụng hệ mã hóa khóa cơng khai, người có liệu ban đầu khóa cơng khai người ký xác thực chữ ký số vừa ký Theo đó, người dùng sở hữu cặp khóa gồm khóa bí mật khóa cơng khai Khóa bí mật lưu trữ bí mật sử dụng để ký kết giao dịch Các giao dịch ký dùng chữ ký số phát toàn mạng Bản chất chữ ký số chuỗi số gắn kết với văn với (hoặc nhiều) thực thể nguồn Nếu văn thay đổi chữ ký số phải thay đổi theo, chữ ký số đảm bảo tính tồn vẹn văn ký Chữ ký số sử dụng lại không làm giả Chữ ký số đảm bảo tính xác thực có người ký xác thực chữ ký Chữ ký số xác thực đảm bảo tính khơng thể chối bỏ chữ ký Người ký chối bỏ không ký vào tài liệu Chữ ký số liên quan đến hai giai đoạn: Giai đoạn tạo chữ ký số giai đoạn xác minh 3.2.2 Cấu tạo chữ ký số Sơ đồ chữ ký số năm thành phần gồm (P, A, K, S, V), Trong đó: - P tập hợp hữu hạn văn - A tập hợp hữu hạn chữ ký sử dụng - Khơng gian khóa K tập hợp hữu hạn khóa sử dụng Trong khơng gian khóa K ′ để tạo nên chữ ký, khơng gian khóa K ′′ kiểm tra chữ ký Thuật tốn tạo nên khóa: K → K ′ x K ′′ (K ′ : khơng gian khóa bí mật, K ′′ : khơng gian khóa cơng khai) - S tập thuật tốn tạo chữ ký sig K′ ∈ S, sig K′ : P → A - V tập thuật toán kiểm tra chữ ký verK′′ ∈ V, verK′′ : P x A → {đúng, sai}, thỏa mãn điều kiện sau tin x ∈ P chữ ký y ∈ A ∀𝑥 ∈ 𝑃, ∀𝑦 ∈ 𝐴: Đú𝑛𝑔, 𝑛ế𝑢 𝑦 = 𝑠𝑖𝑔𝐾′ (𝑥) 𝑣𝑒𝑟𝐾′′ (𝑥, 𝑦) = { 𝑆𝑎𝑖, 𝑛ế𝑢 𝑦 ≠ 𝑠𝑖𝑔𝐾′ (𝑥) Bởi văn cần ký thường có chiều dài dài Một biện pháp để ký chia văn đoạn nhỏ sau ký lên đoạn ghép lại 38 TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học, ĐH Huế Tập 19, Số (2021) 3.2.3 Các giai đoạn tạo kiểm tra chữ ký số Văn ký a Giai đoạn tạo chữ ký số Văn Dùng thuật toán băm cho văn cần truyền đi, kết tóm lược, sử dụng khóa bí mật điểm gửi để mã hóa tóm lược Bản tóm lược đảm bảo tính chất sau: (1) Tính nhất: khác có bit khác nhau, khơng trùng lặp có độ dài khơng đổi; Văn chữ ký Hàm băm Khóa bí mật Mã hóa Bản tóm lược Chữ ký Hình Giai đoạn tạo chữ ký số (2) Tính chiều: Từ tóm lược khơng suy ngược lại nội dung văn Bản tóm lược mã hóa khóa bí mật điểm gửi kết hợp với văn bản, gửi đến điểm nhận tóm lược mã hóa chữ ký số b Giai đoạn xác minh chữ ký số Điểm nhận sau nhận văn ký số, trình tiến hành kiểm tra thực sau: Bước 1: Tiến hành tách văn chữ ký số Bước 2: Lấy đoạn văn bản, đưa qua hàm băm thu kết băm tóm lược Văn ký Bước 3: Giải mã chữ ký số (bản tóm lược mã hóa khóa bí mật), sử dụng khóa cơng khai điểm gửi để giải mã nhận tóm lược Bước 4: Tiến hành so sánh tóm lược vừa giải mã với tóm lược nhận bước 2, giống khóa cơng khai chắn điểm gửi gửi kết luận: (1) văn nhận xác; Tách Văn Chữ ký Khóa cơng khai Hàm băm Giải mã Sai Khơng Đúng Bản tóm lược Bản tóm lược So dánh Khác Văn thay đổi Giống Văn Hình Giai đoạn kiểm tra chữ ký số 39 Blockchain - tảng toán học thuật toán đồng thuận (2) văn nhận điểm gửi gửi điểm nhận xác thực có khóa bí mật phù hợp với khóa cơng khai sử dụng để giải mã Trường hợp tóm lược khác kết luận văn bị sửa đổi Chữ ký số tạo biến đổi văn sử dụng hệ mã hóa khóa cơng khai, theo điểm nhận có văn ban đầu khóa cơng khai điểm gửi xác định 3.2.4 Vai trò chữ ký số blockchain Hiện đồng tiền điện tử sử dụng để trao đổi sản phẩm dịch vụ, giống đồng đô la Mỹ (USD), Euro (EUR), đồng nhân dân tệ Trung Quốc (CNY) loại tiền tệ quốc gia khác Do tạm lấy đồng tiền làm đại diện để nói ngun lý hoạt động vai trị chữ ký số công nghệ blockchain Cũng giống la Mỹ thân khơng mang giá trị, có giá trị có cộng đồng đồng ý sử dụng làm đơn vị giao dịch hàng hóa dịch vụ Để theo dõi số lượng bitcoin mà người sở hữu tài khoản định theo dõi giao dịch phát sinh từ cần đến sổ kế tốn, trường hợp blockchain thực tế tệp kỹ thuật số theo dõi tất giao dịch bitcoin Tệp sổ không lưu trữ máy chủ trung tâm, ngân hàng trung tâm liệu mà ngược lại phân phối tồn giới thơng qua mạng lưới máy tính ngang hàng với vai trị lưu trữ liệu thực thi tính tốn Mỗi máy tính đại diện cho “nút” mạng lưới blockchain nút có tệp sổ Nếu A muốn gửi bitcoin cho B bitcoin A phát thơng báo tới mạng lưới cho biết số lượng bitcoin tài khoản giảm số lượng bitcoin tài khoản B tăng lên tương ứng Mỗi nút mạng sau nhận thông báo ánh xạ giao dịch yêu cầu vào sổ kế toán họ, theo số dư tài khoản hai bên cập nhật Để thực giao dịch blockchain, bạn cần ví tiền điện tử, thực chất phần mềm cho phép lưu trữ trao đổi đồng bitcoin bạn Vì có bạn chi tiêu đồng bitcoin ví tiền điện tử bảo vệ phương pháp mã hóa đặc biệt sử dụng cặp khóa bảo mật nhất: khóa riêng tư (private key) khóa cơng khai (public key) Nếu thơng điệp mã hóa khóa cơng khai cụ thể chủ sở hữu khóa riêng tư cặp với khóa cơng khai giải mã đọc nội dung thông điệp Khi A muốn gửi bitcoin, cần phát thông điệp mã hóa khóa riêng ví điện tử mình, dùng bitcoin mà 40 TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, Trường Đại học Khoa học, ĐH Huế Tập 19, Số (2021) sở hữu A người biết khóa riêng tư anh cần thiết để mở ví điện tử Mỗi nút mạng kiểm tra chéo yêu cầu giao dịch gửi từ A xác hay không cách giải mã thông điệp yêu cầu giao dịch khóa cơng khai A Khi mã hóa yêu cầu giao dịch khóa riêng tư từ ví bạn tức bạn tạo chữ ký số máy tính mạng lưới blockchain sử dụng để kiểm tra chủ thể gửi tính xác thực giao dịch Chữ ký chuỗi văn kết việc kết hợp yêu cầu giao dịch khóa riêng tư bạn Nếu bạn thay đổi ký tự đơn thơng điệp u cầu giao dịch chữ ký điện tử thay đổi theo khơng có kẻ cơng tiềm tàng thay đổi yêu cầu giao dịch bạn thay đổi số lượng bitcoin mà bạn gửi CƠ CHẾ ĐỒNG THUẬN TRONG BLOCKCHAIN 4.1 Cấu trúc blockchain Blockchain có cấu trúc phi tập trung Nghĩa là, sở liệu khơng dựa vào tổ chức thứ ba để quản lý xác thực, kiểm sốt trung tâm, tất nút nhận thông tin tự kiểm tra, truyền tải, quản lý, đặt tin tưởng vào nút, cho phép nút lưu trữ giao dịch khối Các khối ghép nối với tạo nên chuỗi khối (blockchain) Cấu trúc phi tập chung đặc điểm bật quan trọng blockchain [5] Hình Cấu trúc liệu blockchain Mỗi block blockchain bao gồm thành phần sau: - Index (Block#): Thứ tự block (block gốc có thứ tự 0) - Hash: Giá trị băm block - Previous Hash: Giá trị băm block trước - Timestamp: Thời gian tạo block; 41 Blockchain - tảng toán học thuật tốn đồng thuận - Data: Thơng tin lưu trữ block; - Nonce: Giá trị biến thiên để tìm giá trị băm thỏa mãn yêu cầu blockchain; Hình Cấu trúc block gốc Giá trị băm (Hash) băm toàn thông tin cần thiết timestamp, previous hash, index, data, nonce Khi có block thêm vào, block có giá trị “Previous Hash” giá trị băm block thêm trước Blockchain tìm kiếm block thêm vào gần để lấy giá trị index previous hash Block tính sau: - Index: 0+1 = 1; - Previous Hash: 0000018035a828da0… 9; - Timestamp: thời gian block tạo ra; - Data: liệu lưu trữ block; - Hash: ??; - Nonce: ??; Ta cần tìm giá trị “nonce” phù hợp để có giá trị băm Hash thỏa mãn điều kiện blockchain Số lượng số đầu gọi “difficulty” Bằng cách lưu trữ liệu tất nút mình, mạng blockchain loại bỏ rủi ro kèm với liệu tổ chức lưu trữ tập trung Trong mạng khơng có điểm tập trung dễ bị tổn thương cho hệ thống, khơng có điểm trung tâm làm cho hệ thống dừng hoạt động Bất kỳ nút mạng dừng hoạt động không ảnh hưởng đến vận hành hệ thống 4.2 Nguyên lý tạo khối Các giao dịch sau gửi lên mạng lưới blockchain nhóm vào khối Các giao dịch khối coi xảy lúc giao dịch chưa thực khối coi chưa xác nhận Mỗi nút nhóm giao dịch với thành khối gửi vào mạng lưới hàm ý cho khối gắn vào sau Để thêm vào blockchain, khối phải chứa đoạn mã tạo hàm băm đảo ngược Trong hệ thống phi tập trung (decentralized system), điểm mấu chốt làm thống nội dung liệu lưu trữ blockchain Vì có nhiều nút hệ thống, đảm bảo tất nút cập nhật, lưu trữ liệu 42 TẠP CHÍ KHOA HỌC VÀ CƠNG NGHỆ, Trường Đại học Khoa học, ĐH Huế Tập 19, Số (2021) cách xác Cơ chế đồng thuận đời để đảm bảo điều Có thể hiểu chế đồng thuận “luật chơi” hệ thống Bất kỳ tham gia phải tn theo khơng thể cố tình chơi sai luật 4.3 Thuật toán đồng thuận Blockchain Cơ chế đồng thuận blockchain hiểu cách thức mà người quản lý hệ thống blockchain đồng ý cho giao dịch xảy hệ thống không Dưới số chế đồng thuận phổ biến blockchain: - Proof of Work (PoW): chế đồng thuận phổ biến nhất, dùng bitcoin, Ethereum, Litecoin, Dogecoin hầu hết loại tiền mã hoá Đây chế đồng thuận tiêu tốn nhiều điện PoW ghi nhận cơng sức bỏ để hồn thành cơng việc Nút hồn thành cơng việc trước quyền thêm block vào blockchain Cơng việc tìm giá trị nonce thoả mãn điều kiện Ví dụ: hash(nonce) < 000000000000000000285a375f9d33e17… Ở đây, hash hàm băm, nonce giá trị ngẫu nhiên tìm cho hash(nonce) nhỏ ngưỡng Giá trị 000000000000000000285a375f9d33e17… ví dụ cho ngưỡng Q trình tìm giá trị nonce trình thử sai Các nút thường bắt đầu với nonce = 0, 1, …, đến giá trị hash nonce thoả mãn điều kiện ngưỡng Khi block tìm thấy, block cơng bố toàn mạng để nút khác kiểm tra Nếu tính tốn, giao dịch block xác, nút cập nhật vào blockchain lưu trữ cục nút - Proof of Stake (PoS): chế đồng thuận giải pháp thay cho PoW vấn đề tiết kiệm lượng tiêu hao lượng khó bị cơng PoS phổ biến Decred, Peercoin nhiều loại tiền mã hoá khác Nhiều blockchains theo chế đồng thuận PoW từ đầu muốn chuyển đổi dần sang PoS [10] Ví dụ, ethereum có kế hoạch chuyển từ Ethash (một loại PoW) [27] cho Casper (một loại PoS) [28] - Delegated Proof-of-Stake (DPoS): chế đồng thuận phổ biến Steemit, EOS, BitShares Cơ chế đồng thuận có chi phí giao dịch rẻ; có khả mở rộng; hiệu suất lượng cao Tuy nhiên mang tính chất tập trung thuật tốn lựa chọn người đáng tin cậy để uỷ quyền với mục đích tránh rủi ro 43 Blockchain - tảng tốn học thuật toán đồng thuận - Proof of Authority (PoA): Đây chế đồng thuận phổ biến thường thấy POA.Network, Ethereum Kovan Testnet Cơ chế đồng thuận có hiệu suất cao, có khả mở rộng tốt - Proof-of-Weight (PoW): Phổ biến Algorand, Filecoin Có thể tuỳ chỉnh khả mở rộng tốt Tuy nhiên trình thúc đẩy việc phát triển thử thách lớn - Ripple [6] thuật toán đồng thuận sử dụng mạng mạng lớn Trong mạng, nút chia thành hai loại: máy chủ cho tham gia trình đồng thuận máy khách hàng tham gia vấn đề giao dịch tiền bạc Mỗi máy chủ quản lý danh sách nút (Unique Node ListUNL) Khi cần xác định có nên đặt giao dịch vào sổ hay khơng máy chủ truy vấn nút UNL thỏa thuận nhận đạt tới 80% giao dịch thực đóng gói vào sổ Tùy theo đặc trưng Blockchain người thiết kế sử dụng thuật tốn đồng thuận thích hợp Nhờ mã hóa, hàm băm chế đồng thuận mà Blockchain bị công, sửa đổi nội dung hacker người sử dụng KẾT LUẬN Blockchain cho thấy tiềm để chuyển đổi số hoạt động ngành công nghiệp truyền thống với đặc điểm nó: phi tập trung, khơng thể làm giả, bất biến, bảo mật liệu, minh bạch hợp đồng thông minh Trong báo này, để có nhìn chất blockchain không sâu ứng dụng blockchain ngành công nghiệp cụ thể mà khảo sát phân tích tảng tốn học thuật toán chuyên sâu sử dụng để tạo nên công nghệ TÀI LIỆU THAM KHẢO [1] Nguyễn Mậu Hân (2012), Cơ sở liệu phân tán, NXB Đại Học Huế [2] Phan Đình Diệu (2002) Lý thuyết mật mã an tồn thơng tin, NXB ĐHQG Hà Nội [3] Amos K Kibet, Demeke G Bayyou, Rosanna Esquive (2019), Blockchain: It’s structure, principles, applications and foreseen issues, JETIR [4] Dylan Yaga, Peter Mell, Nik Roby, Karen Scarfone (2019), Blockchain Technology Overview, NIST Internal Report [5] Gates M (2017) Blockchain: Ultimate guide to understanding blockchain, cryptocurrencies, smart contracts and the future of money Wise Fox Publishings and Mark Gates [6] D Schwartz, N Youngs, and A Britto, “The ripple protocol consensus algorithm,” Ripple Labs 44 TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, Trường Đại học Khoa học, ĐH Huế Tập 19, Số (2021) Inc White Paper, vol 5, 2014 [7] Zibin Zheng, Shaoan Xie, Hongning Dai, Xiangping Chen Website, (2017), An Overview of Blockchain Technology: Architecture, Consensus, and Future Trends [8] A Kosba, A Miller, E Shi, Z Wen, and C Papamanthou, “Hawk: The blockchain model of cryptography and privacy-preserving smart contracts,” in Proceedings of IEEE Symposium on Security and Privacy (SP), San Jose, CA, USA, 2016, pp 839–858 [9] Y Zhang and J Wen, “An iot electric business model based on the protocol of bitcoin,” in Proceedings of 18th International Conference on Intelligence in Next Generation Networks (ICIN), Paris, France, 2015, pp 184–191 [10] M Sharples and J Domingue, “The blockchain and kudos: A distributed system for educational record, reputation and reward,” in Proceedings of 11th European Conference on Technology Enhanced Learning (EC-TEL 2015), Lyon, France, 2015, pp 490–496 [11] C Noyes, “Bitav: Fast anti-malware by distributed blockchain consensus and feedforward scanning,” arXiv preprint arXiv:1601.01405, 2016 [12] I Eyal and E G Sirer, “Majority is not enough: Bitcoin mining is vulnerable,” in Proceedings of International Conference on Financial Cryptography and Data Security, Berlin, Heidelberg, 2014, pp 436– 454 [13] “State of blockchain q1 2016: Blockchain funding http://www.coindesk.com/ state-of-blockchain-q1-2016/ [14] S Nakamoto, “Bitcoin: https://bitcoin.org/bitcoin.pdf A peer-to-peer electronic overtakes cash bitcoin,” system,” 2016 2008 [15] G W Peters, E Panayi, and A Chapelle, “Trends in crypto-currencies and blockchain technologies: A monetary theory and regulation perspective,” 2015, http://dx.doi.org/10.2139/ssrn 2646618 [16] [6] B W Akins, J L Chapman, and J M Gordon, “A whole new world: Income tax considerations of the bitcoin economy,” 2013 [Online] Available: https://ssrn.com/abstract=2394738 45 Blockchain - tảng toán học thuật toán đồng thuận BLOCKCHAIN - A MATHEMATICAL PLATFORM AND CONSENSUS ALGORITHMS Nguyen Mau Han University of Sciences, Hue University Email: nmhan@hueuni.edu.vn ABSTRACT Blockchain technology is not only a new invention but also a combination of theories and technologies that have existed for many years: cryptographic theory, peer-to-peer networks and consensus algorithms in game theory In recent years, Blockchain Technology 3.0 has transcended the boundaries of the financial monetary field and diversified its penetration into various fields of social life This article does not present a detailed description of a blockchain application, but gives a perspective on blockchain technology in terms of mathematical and consensus algorithms to better understand the nature of blockchain Keywords: blockchain, consensus algorithm, cryptography theory, ledger Nguyễn Mậu Hân sinh năm 1957 Thừa thiên Huế Năm 1981, ông tốt nghiệp cử nhân toán Trường Đại học Tổng hợp Huế Năm 1998, ông nhận thạc sĩ Khoa học máy tính Trường Đại học Bách khoa Hà Nội Năm 2003, ơng nhận tiến sĩ Khoa học Máy tính Viện Công nghệ Thông tin Hà Nội Hiện ông Phó Giáo sư, Giảng viên cao cấp Trường Đại học Khoa học, Đại học Huế Lĩnh vực nghiên cứu: Công nghệ phần mềm, Cơ sở liệu, Xử lý song song phân tán 46 ... tránh rủi ro 43 Blockchain - tảng toán học thuật toán đồng thuận - Proof of Authority (PoA): Đây chế đồng thuận phổ biến thường thấy POA.Network, Ethereum Kovan Testnet Cơ chế đồng thuận có hiệu... 4.3 Thuật tốn đồng thuận Blockchain Cơ chế đồng thuận blockchain hiểu cách thức mà người quản lý hệ thống blockchain đồng ý cho giao dịch xảy hệ thống không Dưới số chế đồng thuận phổ biến blockchain: ... Thời gian tạo block; 41 Blockchain - tảng toán học thuật toán đồng thuận - Data: Thông tin lưu trữ block; - Nonce: Giá trị biến thiên để tìm giá trị băm thỏa mãn yêu cầu blockchain; Hình Cấu trúc