Nội dung
Blockchain là một hệ thống gồm nhiều node kết nối ngang hàng peer2peer với nhau, khác với kiểu kết nối server-client (Centralized) kiểu kết nối này được gọi là phân tán phi tập trung (Decentralized) do không có một máy chủ nào nắm quyền tập trung quản lý các máy còn lại. Mọi máy trong hệ thống đều được lưu data như nhau và được gọi là node, do đó blockchain khó bị các tin tặc tấn công vì dữ liệu được phân bố ở nhiều node.
Hình 1 – Mô hình tổ chức mạng.
Dữ liệu trên blockchain được lưu theo khối (block), các khối liên kết với nhau thành một chuỗi dựa trên mã băm của khối (hash), một khối mới được tạo ra phải chứa mã băm của khối trước đó (parent hash) cùng với thời gian tạo ra (timestamp). Điều này khiến cho blockchain trở nên minh bạch và đáng tin cậy bởi vì không thể nào thay đổi dữ liệu của một khối vì nó sẽ làm thay đổi hash và timestamp của khối, và khi hash và parent hash không khớp nhau, hệ thống sẽ phát hiện dữ liệu bị chỉnh sửa.
Hình 2 – Mô hình blockchain.
Tìm hiểu về ethereum
Với những đặc trưng minh bạch và an toàn dữ liệu của mình, công nghệ blockchain được áp dụng vào tiền ảo (cryptocurrency) như bitcoin.
Hợp đồng thông minh (smart contract) cũng ra đời để quy định điều khoản và lưu vết các giao dịch tiền ảo.
Ethereum cũng là một nền tảng blockchain có tiền ảo riêng của mình như bitcoin là ETH, nhưng trong khi hợp đồng thông minh của bitcoin chỉ để thực hiện giao dịch tiền ảo, thì ethereum khuyến khích các nhà phát triển lập trình các hợp đồng thông minh để áp dụng blockchain vào nhiều lĩnh vực trong cuộc sống như bỏ phiếu bầu cử, lưu thông tin và theo dõi sức khỏe bệnh nhân…
Miner trong blockchain
Như đã nói, hệ thống blockchain gồm nhiều node kết nối với nhau, các node luôn thực hiện đồng bộ với các node khác để chứa dữ liệu đầy đủ của cả hệ thống được gọi là full-node, các node chỉ kết nối vào được gọi là light-node. Và miner chính là các node nhận nhiệm vụ mã hóa các dữ liệu, hệ thống blockchain sẽ có một cơ chế để kiểm tra block do miner tạo ra có được chấp nhận hay không, nếu được thì block sẽ được lưu lên hệ thống và miner sẽ được nhận thưởng một khoản tiền.
Phần mềm Geth
Geth là phần mềm để tạo node, miner trên ethereum. Đồng thời geth cũng cung cấp một console để quản lý và điều khiển miner.