ETH Price: $1,962.69 (+1.57%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Unlock Scholarsh...95764572020-02-29 4:18:152191 days ago1582949895IN
0x8D92e293...5D721D855
0 ETH0.000053671

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xF8712576...1462832C9
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
ScholarshipContract

Compiler Version
v0.5.8+commit.23d335f2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 1 of 4: ScholarshipContract.sol
pragma solidity >=0.4.21 <0.6.0;

import "./AlumniStore.sol";
import "./OpenCertsStore.sol";
import "./TokenContract.sol";

contract ScholarshipContract {
    OpenCertsStore openCertsStore;
    AlumniStore alumniStore;
    TokenContract tokenContract;

    address payable owner;

    constructor(address _openCertsStoreAddress, address _alumniStoreAddress, address _tokenContractAddress) public {
        owner = msg.sender;
        openCertsStore = OpenCertsStore(_openCertsStoreAddress);
        alumniStore = AlumniStore(_alumniStoreAddress);
        tokenContract = TokenContract(_tokenContractAddress);
    }

    modifier onlyOwner {
        require(
            msg.sender == owner,
            "Only owner can call this function."
        );
        _;
    }

    function() external payable {}

    function changeOwner(address payable _newOwnerAddress) public onlyOwner returns (bool) {
        owner = _newOwnerAddress;
        return true;
    }

    function isCertificateIssued(bytes32 _blockchainCertificateHash) private view returns (address payable _address) {
        if (openCertsStore.isIssued(_blockchainCertificateHash)) {
            return alumniStore.getAlumniAddress(_blockchainCertificateHash);
        } else {
            return 0x0000000000000000000000000000000000000000;
        }
    }

    function unlockScholarship(bytes32 _blockchainCertificateHash) public returns (bool){
        address payable studentAddress = isCertificateIssued(_blockchainCertificateHash);
        if (studentAddress != address(0x0)) {
            tokenContract.transfer(studentAddress,tokenContract.balanceOf(address(this)));
            return true;
        } else {
            return false;
        }
    }

    function refund() public onlyOwner returns (bool) {
        tokenContract.transfer(owner,tokenContract.balanceOf(address(this)));
        return true;
    }

    function selfDestruct() public onlyOwner {
        selfdestruct(owner);
    }
}

File 2 of 4: AlumniStore.sol
pragma solidity >=0.4.21 <0.6.0;

contract AlumniStore {
    function getAlumniAddress(bytes32 _blockchainCertificateHash) public view returns (address payable _address){}
}

File 3 of 4: OpenCertsStore.sol
pragma solidity >=0.4.21 <0.6.0;

contract OpenCertsStore {
    function isIssued(bytes32 document) public view returns (bool){}
}

File 4 of 4: TokenContract.sol
pragma solidity >=0.4.21 <0.6.0;

contract TokenContract {
    function balanceOf(address ownerAddress) public view returns (uint);
    function transfer(address to, uint tokens) public returns (bool success);
}

Contract Security Audit

Contract ABI

API
[{"constant":false,"inputs":[],"name":"refund","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"selfDestruct","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwnerAddress","type":"address"}],"name":"changeOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_blockchainCertificateHash","type":"bytes32"}],"name":"unlockScholarship","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_openCertsStoreAddress","type":"address"},{"name":"_alumniStoreAddress","type":"address"},{"name":"_tokenContractAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]

0x608060405234801561001057600080fd5b50604051606080610ae58339810180604052606081101561003057600080fd5b8101908080519060200190929190805190602001909291908051906020019092919050505033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550826000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505061097b8061016a6000396000f3fe60806040526004361061003f5760003560e01c8063590e1ae3146100415780639cb8a26a14610070578063a6f9dae114610087578063b2d52960146100f0575b005b34801561004d57600080fd5b50610056610143565b604051808215151515815260200191505060405180910390f35b34801561007c57600080fd5b506100856103d2565b005b34801561009357600080fd5b506100d6600480360360208110156100aa57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506104b3565b604051808215151515815260200191505060405180910390f35b3480156100fc57600080fd5b506101296004803603602081101561011357600080fd5b81019080803590602001909291905050506105a5565b604051808215151515815260200191505060405180910390f35b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061092e6022913960400191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156102eb57600080fd5b505afa1580156102ff573d6000803e3d6000fd5b505050506040513d602081101561031557600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561038f57600080fd5b505af11580156103a3573d6000803e3d6000fd5b505050506040513d60208110156103b957600080fd5b8101908080519060200190929190505050506001905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610478576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061092e6022913960400191505060405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461055b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061092e6022913960400191505060405180910390fd5b81600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000806105b1836107ba565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146107af57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb82600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156106c557600080fd5b505afa1580156106d9573d6000803e3d6000fd5b505050506040513d60208110156106ef57600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561076957600080fd5b505af115801561077d573d6000803e3d6000fd5b505050506040513d602081101561079357600080fd5b81019080805190602001909291905050505060019150506107b5565b60009150505b919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663163aa631836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082e57600080fd5b505afa158015610842573d6000803e3d6000fd5b505050506040513d602081101561085857600080fd5b81019080805190602001909291905050501561092357600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b64e30e2836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156108e157600080fd5b505afa1580156108f5573d6000803e3d6000fd5b505050506040513d602081101561090b57600080fd5b81019080805190602001909291905050509050610928565b600090505b91905056fe4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6e2ea165627a7a7230582036799da2bd4de30b1a359238b1519eef0ff6e73a86786b39cb3508689a0ba42c0029000000000000000000000000c2ec08aeafe5232ba6019365da08b34ffc4371760000000000000000000000003d3972c31d6b434000758a106b979b0722b3b5b00000000000000000000000001961b3331969ed52770751fc718ef530838b6dee

Deployed Bytecode

0x60806040526004361061003f5760003560e01c8063590e1ae3146100415780639cb8a26a14610070578063a6f9dae114610087578063b2d52960146100f0575b005b34801561004d57600080fd5b50610056610143565b604051808215151515815260200191505060405180910390f35b34801561007c57600080fd5b506100856103d2565b005b34801561009357600080fd5b506100d6600480360360208110156100aa57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506104b3565b604051808215151515815260200191505060405180910390f35b3480156100fc57600080fd5b506101296004803603602081101561011357600080fd5b81019080803590602001909291905050506105a5565b604051808215151515815260200191505060405180910390f35b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061092e6022913960400191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156102eb57600080fd5b505afa1580156102ff573d6000803e3d6000fd5b505050506040513d602081101561031557600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561038f57600080fd5b505af11580156103a3573d6000803e3d6000fd5b505050506040513d60208110156103b957600080fd5b8101908080519060200190929190505050506001905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610478576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061092e6022913960400191505060405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461055b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061092e6022913960400191505060405180910390fd5b81600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000806105b1836107ba565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146107af57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb82600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156106c557600080fd5b505afa1580156106d9573d6000803e3d6000fd5b505050506040513d60208110156106ef57600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561076957600080fd5b505af115801561077d573d6000803e3d6000fd5b505050506040513d602081101561079357600080fd5b81019080805190602001909291905050505060019150506107b5565b60009150505b919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663163aa631836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561082e57600080fd5b505afa158015610842573d6000803e3d6000fd5b505050506040513d602081101561085857600080fd5b81019080805190602001909291905050501561092357600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b64e30e2836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156108e157600080fd5b505afa1580156108f5573d6000803e3d6000fd5b505050506040513d602081101561090b57600080fd5b81019080805190602001909291905050509050610928565b600090505b91905056fe4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6e2ea165627a7a7230582036799da2bd4de30b1a359238b1519eef0ff6e73a86786b39cb3508689a0ba42c0029

Deployed Bytecode Sourcemap

124:1843:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1726:156;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1726:156:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1888:77;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1888:77:2;;;:::i;:::-;;809:149;;8:9:-1;5:2;;;30:1;27;20:12;5:2;809:149:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;809:149:2;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1324:396;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1324:396:2;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1324:396:2;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1726:156;1770:4;684:5;;;;;;;;;;;670:19;;:10;:19;;;649:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1786:13;;;;;;;;;;;:22;;;1809:5;;;;;;;;;;;1815:13;;;;;;;;;;;:23;;;1847:4;1815:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1815:38:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1815:38:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1815:38:2;;;;;;;;;;;;;;;;1786:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1786:68:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1786:68:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1786:68:2;;;;;;;;;;;;;;;;;1871:4;1864:11;;1726:156;:::o;1888:77::-;684:5;;;;;;;;;;;670:19;;:10;:19;;;649:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1952:5;;;;;;;;;;;1939:19;;;809:149;890:4;684:5;;;;;;;;;;;670:19;;:10;:19;;;649:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;914:16;906:5;;:24;;;;;;;;;;;;;;;;;;947:4;940:11;;809:149;;;:::o;1324:396::-;1403:4;1418:30;1451:47;1471:26;1451:19;:47::i;:::-;1418:80;;1538:3;1512:30;;:14;:30;;;1508:206;;1558:13;;;;;;;;;;;:22;;;1581:14;1596:13;;;;;;;;;;;:23;;;1628:4;1596:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1596:38:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1596:38:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1596:38:2;;;;;;;;;;;;;;;;1558:77;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1558:77:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1558:77:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1558:77:2;;;;;;;;;;;;;;;;;1656:4;1649:11;;;;;1508:206;1698:5;1691:12;;;1324:396;;;;:::o;964:354::-;1051:24;1091:14;;;;;;;;;;;:23;;;1115:26;1091:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1091:51:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1091:51:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1091:51:2;;;;;;;;;;;;;;;;1087:225;;;1165:11;;;;;;;;;;;:28;;;1194:26;1165:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1165:56:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1165:56:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1165:56:2;;;;;;;;;;;;;;;;1158:63;;;;1087:225;1259:42;1252:49;;964:354;;;;:::o

Swarm Source

bzzr://36799da2bd4de30b1a359238b1519eef0ff6e73a86786b39cb3508689a0ba42c

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.