![]() |
| Token ERC 20 |
Nếu bạn vẫn còn kiên nhẫn để đọc ở đây, xin chúc mừng, bạn
đã sẵn sàng để tham gia câu lạc bộ triệu đô la: P. Có lẽ thuật ngữ Token không
xa lạ với những người quan tâm đến tiền điện tử. Token về cơ bản là một văn bản
tượng trưng cho quyền sở hữu của một hoặc nhiều cá nhân có tài sản. Tài sản ở
đây có thể là rất nhiều thứ như điểm thưởng, cổ phiếu, kỹ thuật số hoặc thậm
chí vàng, bất động sản, vv Token này có thể được trao đổi giữa nhiều cá nhân.
Trong hệ thống blockchain Ethereum, Token là một hợp đồng
thông minh. Để tạo thuận lợi cho việc chuyển giao, trao đổi và mua lại Token,
Ethereum cung cấp một giao thức chung cho Token. Giao thức này bao gồm các
phương thức mà Token phải thực hiện. Mỗi Token tuân theo giao thức này được gọi
là Token ERC20. Các công nghệ khác như NEO có tiêu chuẩn riêng của họ được gọi
là NEP-5 …
TotalSupply [Tổng số Token được phát hành]
BalanceOf (address _owner) constant returns (uint256
balance) [truy vấn số lượng Token 1 cá nhân sở hữu]
transfer(address _to, uint256 _value) returns (bool success)
[gửi số lượng _value Token của người thực hiện giao dịch (caller) tới một địa
chỉ _to]
transferFrom(address _from, address _to, uint256 _value)
returns (bool success)[Gửi Token _value Token từ caller thông qua địa chỉ _from
đến địa chỉ _to, cần sự đồng thuận của caller cho địa chỉ _from, xem phương thức
approve() ở dưới]
approve(address _spender, uint256 _value) returns (bool
success) [Cho phép _spender tiêu 1 lượng Token tối đa là _value từ account của
caller.
allowance (address *_owner*, address *_spender*) constant
returns (uint256 remaining) [Trả về số lượng Token địa chỉ _owner uỷ quyền cho
_spender ]
Một ERC20 sau khi được deploy sẽ như distributed ledger)với nội dung chỉ có thể được
thay đổi bởi các giao dịch được đồng thuận của cả network. Trong 1 ERC20 Token
ta thường có 2 bảng giá trị
Tên: XYZ
Số lượng tối đa: 1,000,000,000
Balance: Bảng giá trị lưu số lượng Token được sở hữu bởi các
cá nhân trong mạng Ethereum (bao gồm các SC). Balance được update khi SC thực
thi các phương thức như transfer, transferFrom
╔═════════╦═════════╗
║ Địa chỉ ║ Số lượng║
╠═════════╬═════════╣
║ 0x1 ║
10000 ║
║ 0x2 ║
20000 ║
║ 0x3 ║
30000 ║
╚═════════╩═════════╝
Allowance: Bảng giá trị cho quy đinh số lượng Token được một
địa chỉ cấp phép cho một địa chỉ khác sử dụng. Thường được dùng khi chuyển
Token lên sàn giao dịch. Allowance được update khi SC thực thi phương thức
approve
╔═════════╦═════════════════╦═════════╗
║ Địa chỉ ║Đỉa chỉ uỷ quyển ║Số lượng ║
╠═════════╬═════════════════╬═════════╣
║ 0x1 ║0x2 ║200 ║
║ ║0x3 ║100 ║
║ 0x2 ║0x4 ║300 ║
╚═════════╩═════════════════╩═════════╝
Ở đây, 0x2 và 0x3 được sự cho phép của 0x1 có được quyền
giao dịch với số lượng Token tương ứng là 200& 100 Token. Lượng Token này
khi được giao dịch sẽ bị trừ vào lượng Token mà 0x1 nắm giữ.
Một điều cần lưu ý đó là tất cả các giao dịch cho một Token
đều được thực hiện trên hệ thống blockchain của Ethereum vì vậy bạn sẽ phải có
1 lượng Ether tối thiểu để có thể giao dịch. Ether, đơn vị trao đổi chính của
Ethereum cũng có thể coi là 1 Token với đia chỉ 0x0.

