Ethereum là gì?
Ethereum là nền tảng điện toán phân tán, mã nguồn mở dựa trên công nghệ chuỗi khối (Blockchain) có khả năng thực thi hợp đồng thông minh (Smart Contract) – tức là điều khoản được ghi trong hợp đồng sẽ được thực thi một cách tự động khi các điều kiện trước đó được thỏa mãn, không ai có thể can thiệp vào. Đồng thời, Ethereum cũng cho phép các nhà phát triển xây dựng các ứng dụng phi tập trung (DApps) và các tổ chức tự trị phi tập trung (DAOs). Trong đó:
Các ứng dụng phi tập trung (DApps – Decentralized Application) là các phần mềm được triển khai độc lập, không nằm trên một máy chủ duy nhất mà được lưu trữ một cách phân tán trên các kho lưu trữ phi tập trung và có thể được viết bằng bất kỳ ngôn ngữ nào.
Các tổ chức tự trị phi tập trung (DAOs – Decentralized Autonomous Organizations) là một tổ chức được vận hành bởi các thành viên dựa trên một bộ quy tắc được mã hóa bằng code. Tất cả các thành viên đều có quyền biểu quyết các quyết định quan trọng của DAOs. Đổi lại, các thành viên tham gia DAOs phải có phần thưởng khi tham gia vận hành DAOs.
Lịch sử Ethereum
Ý tưởng ra đời với Mastercoin
Vào tháng 10 năm 2013, Vitalik Buterin là một lập trình viên trẻ và đam mê Bitcoin đã đề xuất một giải pháp cải tiến cho dự án Mastercoin (nay là OmniLayer).
Trong bản đề xuất đó, Vitalik đã đưa ra giải pháp cho phép MasterCoin có thể hỗ trợ được nhiều loại hợp đồng hơn mà không cần phải thêm các tính năng phức tạp.
Mặc dù đội ngũ phát triển Mastercoin rất ấn tượng với bản đề xuất của Vitalik nhưng họ đã không áp dụng giải pháp đó vào dự án của họ.
Khởi đầu của Ethereum
Sau khi MasterCoin không áp dụng giải pháp của mình, Vitalik đã tiếp tục nghiên cứu và nhận ra rằng: Các smart contract có thể được khái quát hóa hoàn toàn.
Vào tháng 11/2013, Vitalik lần đầu tiên chia sẻ bản whitepaper phác thảo của Ethereum. Chỉ có vài chục người có quyền truy cập và đọc trước bản phác thảo này. Sau đó họ đưa ra những phản hồi, giúp cho Vitalik có thể hoàn thiện bản whitepaper cho Ethereum.
Kể từ khi chia sẻ bản whitepaper, Vitalik đã có thêm một người đồng đội cùng tham gia xây dựng Ethereum và người đó chính là: Gavin Wood. Gavin Wood là người đầu tiên chủ động liên lạc với Vitalik và đề nghị giúp đỡ bằng kỹ năng lập trình C++ của mình.
Vào mùa hè năm 2014, Gavin Wood công bố yellow paper cho Ethereum. Cũng trong thời gian này, Vitalik cũng ra thông báo rằng Ethereum sẽ được phát triển bởi tổ chức phi lợi nhuận Ethereum Foundation.
Sau một năm xây dựng và phát triển, vào tháng 06/2015 khối (block) đầu tiên của Ethereum đã được khai thác. Nó đánh dấu sự hình thành chính thức của Ethereum Blockchain – Một trong những chuỗi khối có tầm quan trọng nhất trong toàn bộ hệ sinh thái tiền điện tử hiện nay.
Hard Fork Ethereum
Trước khi bản soft fork được thông qua vài tiếng, một vài thành viên trong cộng đồng đã phát hiện một lỗi khiến cho mạng lưới của Ethereum đối mặt với nguy cơ bị tấn công DoS (tấn công dịch vụ).
Để bảo vệ mạng lưới, cộng đồng Ethereum đã đồng ý với lựa chọn duy nhất là: The Hard Fork Ethereum – thay đổi các quy tắc, luật lệ đang được áp dụng trên chuỗi khối của Ethereum khiến cho các khối (block), giao dịch được xác nhận bởi quy tắc cũ trở nên không hợp lệ.
Hard fork chính là phương án cuối cùng để vừa có thể lấy lại được khoảng tiền bị lấy cắp ở “child DAO”, vừa giúp cho mạng lưới Ethereum tránh khỏi nguy cơ bị tấn công DoS. Cả cộng đồng Ethereum đã quyết định tiến hành hard fork tại khối 1,920,000. Đây là khối block trước khi “child DAO” tách ra khỏi The DAO.
Mặc dù lấy lại được số tiền bị mất nhưng hệ quả của việc hard fork đã khiến cho mạng lưới của Ethereum đã chia làm hai – Ethereum và Ethereum Classic.
Cách hoạt động của Ethereum Blockchain
Trước khi hiểu về Ethereum, anh em cần phải hiểu về cách Blockchain hoạt động như thế nào.
Về cơ bản, Blockchain của Ethereum cũng tương tự như các Blockchain khác, nó được cấu thành bởi mạng lưới các máy tính hay còn gọi là Nodes.
Để tham gia vào mạng lưới, các nodes cần cài đặt phần mềm Ethereum Client như Geth, Parity,…
Khi cài đặt Ethereum Client, đồng nghĩa với việc các nodes sẽ phải chạy một chương trình máy ảo là Ethereum Virtual Machine (EVM). EVM sẽ chịu trách nhiệm thực thi các Smart Contract (hợp đồng thông minh).
Khi các nhà phát triển muốn xây dựng ứng dụng phi tập trung (dapps) trên Ethereum, họ cần phải triển khai các smart contract thông qua ngôn ngữ lập trình Solidity.
Và để kích hoạt việc thực thi các hoạt động như smart contract, lệnh giao dịch… mạng lưới cần đến một lượng phí gọi là “Gas”. Phí Gas trong mạng Ethereum sẽ được thanh toán bằng đồng tiền kỹ thuật số gọi là Ether (Ξ hay ETH).
Khi giao dịch được thực thi, đây là lúc cần đến việc xác nhận giao dịch đó có hợp lệ hay không. Trong mạng của Ethereum, thành phần đảm nhiệm việc xác nhận giao dịch này có tên – Miner Node.
Để mạng lưới vận hành độc lập, nhất quán các miner nodes phải tuân theo luật đồng thuận là Consensus (hay còn gọi là cơ chế đồng thuận). Ethereum sử dụng cơ chế đồng thuận tên là Proof of Work (PoW – bằng chứng công việc), tức là các miner nodes phải chứng minh được công việc họ đã hoàn thành và thông báo đến toàn mạng lưới. Sau đó, các miner nodes khác trong mạng lưới sẽ xác nhận xem bằng chứng này là có hợp lệ hay không. Công việc ở đây có thể là:
Tạo ra block mới bằng cách tìm ra lời giải thông qua thuật toán – Ethash.
Xác nhận giao dịch trên mạng lưới.
Khi bằng chứng được thông qua (tức hợp lệ), dữ liệu giao dịch sẽ được ghi vào Blockchain của Ethereum và không thể thay đổi.
Các chuẩn Token của Ethereum (Token Standard)
ERC (Ethereum Request for Comments) là các bộ quy tắc cần thiết để triển khai token trên mạng lưới của Ethereum. Các bộ tiêu chuẩn này được sử dụng bởi các nhà phát triển để triển khai các hợp đồng thông minh trên nền tảng Blockchain của Ethereum.
Trước khi trở thành tiêu chuẩn được áp dụng trên chuỗi khối Ethereum, ERC phải được sửa đổi, nhận xét và chấp nhận bởi cộng đồng thông qua EIP (Ethereum Improvement Proposal) hay còn gọi là bản đề xuất cải tiến Ethereum.
ERC20 là gì?
ERC20 là bộ danh sách các quy tắc, quy định chung dành cho việc phát hành các token trên nền tảng Ethereum, được Vitalik Buterin đề xuất lần đầu tiên vào tháng 06/2015.
Sự ra đời của tiêu chuẩn ERC20 đã giúp cho các nhà phát triển có một chuẩn chung khi triển khai các Fungible Token trên nền tảng Ethereum. Đồng thời, ERC20 khiến cho việc tạo một token trên chuỗi khối của Ethereum dễ dàng hơn bao giờ hết. Điều đó, kết hợp với sự bùng nổ của phong trào gọi vốn ICO vào năm 2017.
Dưới đây là bộ quy tắc của ERC20, với 6 quy định bắt buộc và 3 quy định không bắt buộc.
6 quy tắc bắt buộc, gồm:
- totalSupply: Tổng số mã token được phát hành.
- balanceOf: Kiểm tra số dư token trong mỗi ví Ethereum.
- transfer: Chức năng này sẽ quản lý việc chuyển token vào địa chỉ ví người dùng.
- transferFrom: Cho phép người nắm giữ token có thể trao đổi với nhau.
- approve: Kiểm tra từng giao dịch và so sánh với tổng nguồn cung để đảm bảo không thiếu hoặc thừa token.
- allowance: Kiểm tra số dư token nhằm biết địa chỉ ví có đủ token để chuyển hay không.
3 quy tắc không bắt buộc, gồm:
- Token Name: Tên token.
- Symbol: Mã token.
- Decimal (up to 18): Số thập phân nhỏ nhất
ERC721 là gì?
ERC721 là bộ tiêu chuẩn dành cho việc phát hành các Non-Fungible Token (NFTs) trên nền tảng của Ethereum, được William Entriken, Dieter Shirley, Jacob Evans và Nastassia Sachs đề xuất vào tháng 01/2018.
NFT (viết tắt của Non-Fungible Token) được hiểu là một loại token đại diện cho một thứ gì đó độc nhất. Vì vậy, một NFT này không thể hoán đổi, thay thế bởi một NFT khác. Ví dụ: Một token đại diện cho vé xem phim Spiderman không thể hoán đổi với một token đại diện cho vé xem phim Avenger được.
Nhờ có tiêu chuẩn ERC721, các nhà phát triển trên Ethereum đã mở ra một hệ sinh thái mới về các dapps sử dụng các NFTs. Với cú HIT đầu tiên không thể không nói đến đó là CryptoKitties, một DApps nuôi mèo trên nền tảng Ethereum đã gây sốt trong cộng đồng tiền điện tử 1 thời gian dài.
Một số tiêu chuẩn ERC khác
Ngoài ERC20 và ERC721, Ethereum còn có 2 tiêu chuẩn token khác mà mình nghĩ anh em cũng nên biết đến, bao gồm:
- ERC777: Tiêu chuẩn cải thiện các vấn đề của ERC20 gặp phải và nó đang được kỳ vọng sẽ soán ngôi của ERC20 bởi tính ưu việt của nó.
- ERC1155: Tiêu chuẩn dành cho nhiều loại token gồm Non-Fungible Token và Fungible Token. Đây là sự kết hợp giữa tiêu chuẩn ERC20 và ERC721, do CTO của dự án Enjin Coin đề xuất lên cộng đồng Ethereum vào tháng 06/2018.
Ngoài ra, anh em có thể vào https://eips.ethereum.org/erc để tham khảo thêm các EIPs và ERCs mới của Ethereum.
Các tổ chức của Ethereum
Đây là các tổ chức có vai trò quan trọng trong việc thúc đẩy toàn bộ hệ sinh thái của Ethereum phát triển. Trong đó, gồm 3 tổ chức sau:
- Ethereum Foundation: Đây là tổ chức phi lợi nhuận chịu trách nhiệm phát triển các tính năng của Blockchain Ethereum. Nó được thành lập vào năm 2014 và có trụ sở hoạt động tại Thuỵ Sĩ.
- Enterprise Ethereum Alliance: Đây là tổ chức sẽ chịu trách nhiệm thúc đẩy, mở rộng việc sử dụng công nghệ chuỗi khối Ethereum cho TẤT CẢ các doanh nghiệp.
- Consensys: Đây là công ty có tầm quan trọng đối với Ethereum nói riêng và Crypto nói chung. Đối với Ethereum, Consensys giống như nơi ương mầm cho các dự án chạy trên nền tảng của Ethereum.
Giao dịch và mua bán ETH ở đâu?
Anh em có thể mua bán ETH ở các sàn giao dịch, trong Crypto sẽ có 2 loại sàn:
- Sàn tập trung (CEX): Là sàn giao dịch có một bên thứ 3 đứng ra kiểm soát và làm cầu nối để trao đổi các tài sản crypto. Thường thì anh em phải tạo tài khoản có ID và password để đăng nhập nhằm tuần theo qui định KYC (Know your customer ) của chính phủ. Ví dụ: Binance, Huobi, Bittrex, Gate.io, Kucoin, BitMax,…
- Sàn phi tập trung (DEX): Là sàn giao dịch được xây dựng & hoạt động một cách phi tập trung dựa trên nền tảng của blockchain. Sàn DEX khác với sàn CEX ở chỗ, người dùng có thể giao dịch, trao đổi đồng coin ngay trên ví của họ, mà không cần phải di chuyển ra ngoài, chỉ khi người dùng được cấp phép thì giao dịch mới xảy ra. Private key do người dùng nắm giữ. Ví dụ: Uniswap, Sushiswap,…