Hợp đồng thông minh của Ethereum hoạt động như thế nào?

phungtram 26/02/2018

Giống như nhiều ý tưởng khác trong ngành công nghiệp blockchain, khái niệm hợp đồng thông minh thường bị nhầm lẫn. Hợp đồng thông minh là một công nghệ được tạo ra trên nền tảng public blockchain.

Trong khi một hợp đồng bình thường bao gồm các điều khoản ràng buộc mối quan hệ của hai bên đối tác thì hợp đồng thông minh ràng buộc mối quan hệ đó bằng mã code.

Đặc biệt hơn, các hợp đồng thông minh này sẽ thực thi những điều khoản đó một cách chính xác kể từ khi nó được lập trình bởi người sáng lập.

Ý tưởng về hợp đồng thông minh được đề cập lần đầu tiên vào năm 1993, và được mô tả bởi nhà khoa học máy tính, nhà mật mã học Nick Szabo. Anh ấy mô tả hợp đồng thông minh như một chiếc máy bán hàng tự động kỹ thuật số. Trong một ví dụ nổi tiếng của mình, Nick Szabo mô tả cách người dùng có thể nhập dữ liệu hoặc giá trị rồi sau đó họ sẽ nhận được một sản phẩm hữu hình từ ‘máy’, trong trường hợp này là snack hay nước giải khát.

Trong một ví dụ đơn giản khác, người sử dụng Ethereum có thể gửi 10 ETH cho bạn của mình vào một ngày nào đó bằng hợp đồng thông minh (xem hướng dẫn của chúng tôi: “Ether là gì?”).

Trong trường hợp này, người dùng sẽ tạo một hợp đồng và để dữ liệu vào hợp đồng đó. Sau đó, hợp đồng này sẽ tự động thực thi theo lệnh đã được lập trình ban đầu.

Ethereum là một mạng máy tính khổng lồ để một nền tảng được xây dựng đặc biệt tạo ra hợp đồng thông minh.

Ngoài hợp đồng thông minh, Ethereum còn xây dựng ứng dụng phân quyền và ứng dụng tổ chức phân quyền tự vận hành (DAO). Xem các bài hướng dẫn khác “Các ứng dựng phân quyền là gì?”, “DAO là gì”.

Smart contract hoạt động như thế nào?

Cần lưu ý rằng Bitcoin là ứng dụng đầu tiên dùng các hợp đồng thông minh cơ bản, có nghĩa là network có thể chuyển giá trị từ người này sang người khác. Các node của hệ thống chỉ được xác nhận các giao dịch là hợp lệ nếu nó thõa một số điều kiện nhất định. Tuy nhiên, Bitcoin bị giới hạn trong trường hợp sử dụng tiền tệ.

Trong khi đó, Ethereum thay thế ngôn ngữ lập trình hạn chế (một trong có hàng trăm ngôn ngữ lập trình) của Bitcoin bằng một ngôn ngữ lập trình cho phép các nhà phát triển phần mềm có thể viết được các chương trình của riêng mình.

Ethereum cho phép các nhà phát triển phần mềm lập trình các hợp đồng thông minh hay các ‘đại lý tự trị’- ‘autonomous agents’ được nhắc đến trong White Paper của Ethereum. ‘Turning-complete’, có nghĩa là hỗ trợ một hướng dẫn sử dụng máy điện toán rộng hơn.

Hợp đồng thông minh có thể:

_Có chức năng như các tài khoản ‘nhiều chữ ký’, các quỹ chỉ được chi tiêu khi đáp ứng đủ tỷ lệ người đồng ý.

_Quản lý thỏa thuận giữa những người sử dụng, ví dụ, nếu một người mua bảo hiểm từ người khác.

_Cung cấp tiện tích cho các hợp đồng khác (tương tự như cách các phần mềm hoạt động của thư viện).

_Lưu trữ thông tin về một ứng dụng, chẳng hạn như thông tin đăng ký tên miền hay dữ liệu thành viên.

Sức mạng của những con số

Các hợp đồng thông minh có thể sẽ cần hỗ trợ từ các hợp đồng thông minh khác.

Khi một người nào đó đặt tiền cược của mình vào việc dự đoán thời tiết ngày hôm nay, hợp đồng thông minh của vụ cá cược này gây ra sự tiếp nối các hợp đồng chi tiết hơn.

Một hợp đồng sẽ sử dụng dữ liệu bên ngoài để xác định thời tiết và một hợp đồng khác có thanh toán số tiền đặt cược dựa trên thông tin nhận được từ hợp đồng đầu tiên khi điều kiện được đáp ứng.

Việc xử lý các yêu cầu của hợp đồng sẽ mất một khoảng ETH, được xem là phí. Phí này sẽ phụ thuộc vào năng lực tính toán cần đến (amount of computational power required). Bởi lẽ, Ethereum là một mạng máy tính khổng lồ nên mỗi khi hệ thống này việc xử lý các giao dịch thông minh thì chúng sẽ tiêu tốn năng lực xử lý của hệ thống.

Như đã giải thích trong phần hướng dẫn của chúng tôi “Ethereum hoạt động như thế nào?”, Ethereum chạy mã hợp đồng thông minh khi một người sử dụng hay hợp đồng khác gửi nó một giao dịch với lệ phí đủ để giao dịch.

Sau đó, Ethereum sẽ thực thi các hợp đồng thông minh bằng ‘bytecode’, hoặc một dãy số 1&0 mà nó có thể được đọc và chuyển mã bởi mạng.

P.Trầm – Theo Coindesk

Đánh giá