ERC20
This contract is an ERC20 token.
Name
SelfKey
Symbol
KEY
Decimals
18
Total Supply
5,999,999,954 KEY
About link description
Selfkey (KEY) is a cryptocurrency and operates on the Ethereum platform. Selfkey has a current supply of 5,999,999,954.464072 with 4,640,469,445.705637 in circulation. The last known price of Selfkey is 0.00678262 USD and is down -0.61 over the last 24 hours. It is currently trading on 22 active market(s) with $11,483,746.42 traded over the last 24 hours. More information can be found at https://selfkey.org/.
Identical Contracts
The following contracts have identical source code.
Stats
Public Functions
12
Event Types
6
Code Size
29,863 bytes
Events (6) keyboard_arrow_up
State Variables (7) keyboard_arrow_up
Functions
transferOwnership keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function transferOwnership(address newOwner) public onlyOwner {
require(newOwner != address(0));
OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
balanceOf keyboard_arrow_up
transfer keyboard_arrow_up
Modifiers help
canTransfer checks for the following:
One or more of the following:
-
owner
must be equal to
the sender's address
- ORtransfersEnabled must be true
Requirements help
Source Code
function transfer(address _to, uint256 _value)
public
canTransfer(msg.sender, _value)
returns (bool)
{
return super.transfer(_to, _value);
}
allowance keyboard_arrow_up
transferFrom keyboard_arrow_up
Modifiers help
canTransfer checks for the following:
One or more of the following:
-
owner
must be equal to
the sender's address
- ORtransfersEnabled must be true
Requirements help
Source Code
function transferFrom(
address _from,
address _to,
uint256 _value
) public canTransfer(_from, _value) returns (bool) {
return super.transferFrom(_from, _to, _value);
}
approve keyboard_arrow_up
Source Code
function approve(address _spender, uint256 _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
Approval(msg.sender, _spender, _value);
return true;
}
increaseApproval keyboard_arrow_up
Source Code
function increaseApproval(address _spender, uint256 _addedValue)
public
returns (bool)
{
allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(
_addedValue
);
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
decreaseApproval keyboard_arrow_up
Source Code
function decreaseApproval(address _spender, uint256 _subtractedValue)
public
returns (bool)
{
uint256 oldValue = allowed[msg.sender][_spender];
if (_subtractedValue > oldValue) {
allowed[msg.sender][_spender] = 0;
} else {
allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
}
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
mint keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
canMint checks for the following:
Source Code
function mint(address _to, uint256 _value)
public
onlyOwner
canMint
returns (bool)
{
require(totalSupply.add(_value) <= cap);
return super.mint(_to, _value);
}
finishMinting keyboard_arrow_up
enableTransfers keyboard_arrow_up
burn keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function burn(uint256 _value) public onlyOwner {
require(_value > 0);
address burner = msg.sender;
balances[burner] = balances[burner].sub(_value);
totalSupply = totalSupply.sub(_value);
Burned(burner, _value);
}
Internal Functions
Internal functions are parts of the contract that can't be used directly, but instead are used by the public functions listed above.