Address Details
contract

0xe80dF32C7EeC2265E394F3B34E4D0feB4322E8D2

Contract Name
IDCred
Creator
0x308d4f–d96e84 at 0x7c803a–62bce5
Balance
0 CELO ( )
Locked CELO Balance
0.00 CELO
Voting CELO Balance
0.00 CELO
Pending Unlocked Gold
0.00 CELO
Tokens
Fetching tokens...
Transactions
Fetching transactions...
Transfers
Fetching transfers...
Gas Used
Fetching gas used...
Last Balance Update
8445825
This contract has been verified via Sourcify. View contract in Sourcify repository
Contract name:
IDCred




Optimization enabled
false
Compiler version
v0.4.26+commit.4563c3fc




EVM Version
byzantium




Verified at
2022-08-19T06:13:08.710739Z

IPFS.sol

pragma solidity ^0.4.6;

contract IDCred {

  struct UserStruct {
    string hashId;
    uint index;
  }
  
  struct HashList {
    string hash;
    uint index;
  }
  
  mapping(address => UserStruct) private userStructs;
  mapping(address => HashList) private hashList;
  address[] private userIndex;

  event LogNewUser   (address indexed userAddress, uint index, string hashId);

  address[] private userIndexText;

  event LogNewUserText   (address indexed userAdd, uint index, string hash);

  function isUser(address userAddress)
    public 
    constant
    returns(bool isIndeed) 
  {
    if(userIndex.length == 0) return false;
    return (userIndex[userStructs[userAddress].index] == userAddress);
  }
  


  function insertID(
    address userAddress, 
    string hashId
    ) 
    public
    returns(uint index)
  {
    if(isUser(userAddress)) return; 
    userStructs[userAddress].hashId = hashId;
    userStructs[userAddress].index = userIndex.push(userAddress)-1;
    emit LogNewUser(
        userAddress, 
        userStructs[userAddress].index, 
        hashId);
    return userIndex.length-1;
  }
  
   function insertText(
    address userAdd, 
    string hash
    ) 
    public
    returns(uint index)
  {
    if(isUserText(userAdd)) return; 
    hashList[userAdd].hash = hash;
    hashList[userAdd].index     = userIndexText.push(userAdd)-1;
    emit LogNewUserText(
        userAdd, 
        hashList[userAdd].index, 
        hash);
    return userIndexText.length-1;
  }
  
    function isUserText(address userAdd)
    public 
    constant
    returns(bool isIndeed) 
  {
    if(userIndexText.length == 0) return false;
    return (userIndexText[hashList[userAdd].index] == userAdd);
  }
  
  function getText(address userAddress)
    public 
    constant
    returns(string hashId, uint index)
  {
      
    if(!isUser(userAddress)) return; 
    return(
      userStructs[userAddress].hashId, 
      hashList[userAddress].index);
  } 
  
  function getUserText(address userAdd)
    public 
    constant
    returns(string hashId, uint index)
  {
      
    if(!isUserText(userAdd)) return; 
    return(
      hashList[userAdd].hash, 
      hashList[userAdd].index);
  }
  
  


  function getUserCount() 
    public
    constant
    returns(uint count)
  {
    return userIndex.length;
  }
  
  function getUserTextCount() 
    public
    constant
    returns(uint count)
  {
    return userIndexText.length;
  }


}
        

Contract ABI

[{"type":"function","stateMutability":"nonpayable","payable":false,"outputs":[{"type":"uint256","name":"index"}],"name":"insertText","inputs":[{"type":"address","name":"userAdd"},{"type":"string","name":"hash"}],"constant":false},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"uint256","name":"count"}],"name":"getUserTextCount","inputs":[],"constant":true},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"bool","name":"isIndeed"}],"name":"isUser","inputs":[{"type":"address","name":"userAddress"}],"constant":true},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"bool","name":"isIndeed"}],"name":"isUserText","inputs":[{"type":"address","name":"userAdd"}],"constant":true},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"string","name":"hashId"},{"type":"uint256","name":"index"}],"name":"getUserText","inputs":[{"type":"address","name":"userAdd"}],"constant":true},{"type":"function","stateMutability":"nonpayable","payable":false,"outputs":[{"type":"uint256","name":"index"}],"name":"insertID","inputs":[{"type":"address","name":"userAddress"},{"type":"string","name":"hashId"}],"constant":false},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"string","name":"hashId"},{"type":"uint256","name":"index"}],"name":"getText","inputs":[{"type":"address","name":"userAddress"}],"constant":true},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"uint256","name":"count"}],"name":"getUserCount","inputs":[],"constant":true},{"type":"event","name":"LogNewUser","inputs":[{"type":"address","name":"userAddress","indexed":true},{"type":"uint256","name":"index","indexed":false},{"type":"string","name":"hashId","indexed":false}],"anonymous":false},{"type":"event","name":"LogNewUserText","inputs":[{"type":"address","name":"userAdd","indexed":true},{"type":"uint256","name":"index","indexed":false},{"type":"string","name":"hash","indexed":false}],"anonymous":false}]
              

Contract Creation Code

0x608060405234801561001057600080fd5b50610db1806100206000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630448d07f1461009357806308ff5e2c146101305780634209fff11461015b5780636b42601b146101b657806379248489146102115780639668c7c8146102d4578063aec196bc14610371578063b5cb15f714610434575b600080fd5b34801561009f57600080fd5b5061011a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061045f565b6040518082815260200191505060405180910390f35b34801561013c57600080fd5b50610145610688565b6040518082815260200191505060405180910390f35b34801561016757600080fd5b5061019c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610695565b604051808215151515815260200191505060405180910390f35b3480156101c257600080fd5b506101f7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061075e565b604051808215151515815260200191505060405180910390f35b34801561021d57600080fd5b50610252600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610828565b6040518080602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561029857808201518184015260208101905061027d565b50505050905090810190601f1680156102c55780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156102e057600080fd5b5061035b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061096b565b6040518082815260200191505060405180910390f35b34801561037d57600080fd5b506103b2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b91565b6040518080602001838152602001828103825284818151815260200191508051906020019080838360005b838110156103f85780820151818401526020810190506103dd565b50505050905090810190601f1680156104255780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561044057600080fd5b50610449610cd3565b6040518082815260200191505060405180910390f35b600061046a8361075e565b1561047457610682565b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000190805190602001906104ca929190610ce0565b50600160038490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555003600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055508273ffffffffffffffffffffffffffffffffffffffff167f7f73a883d0f34d0babefa4ba0bfa6010d7894f2527257450743ff96a73d86991600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154846040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561063b578082015181840152602081019050610620565b50505050905090810190601f1680156106685780820380516001836020036101000a031916815260200191505b50935050505060405180910390a260016003805490500390505b92915050565b6000600380549050905090565b60008060028054905014156106ad5760009050610759565b8173ffffffffffffffffffffffffffffffffffffffff1660026000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015481548110151561071457fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161490505b919050565b60008060038054905014156107765760009050610823565b8173ffffffffffffffffffffffffffffffffffffffff166003600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548154811015156107de57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161490505b919050565b606060006108358361075e565b151561084057610966565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154818054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561095a5780601f1061092f5761010080835404028352916020019161095a565b820191906000526020600020905b81548152906001019060200180831161093d57829003601f168201915b50505050509150915091505b915091565b600061097683610695565b1561098057610b8b565b816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000190805190602001906109d5929190610ce0565b50600160028490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055508273ffffffffffffffffffffffffffffffffffffffff167f1ebf925978e1982ddb1157dbd639436963b5345ccf86d4828909346867d4ab1d6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154846040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610b44578082015181840152602081019050610b29565b50505050905090810190601f168015610b715780820380516001836020036101000a031916815260200191505b50935050505060405180910390a260016002805490500390505b92915050565b60606000610b9e83610695565b1515610ba957610cce565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cc25780601f10610c9757610100808354040283529160200191610cc2565b820191906000526020600020905b815481529060010190602001808311610ca557829003601f168201915b50505050509150915091505b915091565b6000600280549050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610d2157805160ff1916838001178555610d4f565b82800160010185558215610d4f579182015b82811115610d4e578251825591602001919060010190610d33565b5b509050610d5c9190610d60565b5090565b610d8291905b80821115610d7e576000816000905550600101610d66565b5090565b905600a165627a7a723058203212cad1a41f72f96ca07b0da555bb9f9118545589fe1d6d00e62fe9d8c561e60029

Deployed ByteCode

0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630448d07f1461009357806308ff5e2c146101305780634209fff11461015b5780636b42601b146101b657806379248489146102115780639668c7c8146102d4578063aec196bc14610371578063b5cb15f714610434575b600080fd5b34801561009f57600080fd5b5061011a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061045f565b6040518082815260200191505060405180910390f35b34801561013c57600080fd5b50610145610688565b6040518082815260200191505060405180910390f35b34801561016757600080fd5b5061019c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610695565b604051808215151515815260200191505060405180910390f35b3480156101c257600080fd5b506101f7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061075e565b604051808215151515815260200191505060405180910390f35b34801561021d57600080fd5b50610252600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610828565b6040518080602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561029857808201518184015260208101905061027d565b50505050905090810190601f1680156102c55780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156102e057600080fd5b5061035b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061096b565b6040518082815260200191505060405180910390f35b34801561037d57600080fd5b506103b2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b91565b6040518080602001838152602001828103825284818151815260200191508051906020019080838360005b838110156103f85780820151818401526020810190506103dd565b50505050905090810190601f1680156104255780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561044057600080fd5b50610449610cd3565b6040518082815260200191505060405180910390f35b600061046a8361075e565b1561047457610682565b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000190805190602001906104ca929190610ce0565b50600160038490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555003600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055508273ffffffffffffffffffffffffffffffffffffffff167f7f73a883d0f34d0babefa4ba0bfa6010d7894f2527257450743ff96a73d86991600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154846040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561063b578082015181840152602081019050610620565b50505050905090810190601f1680156106685780820380516001836020036101000a031916815260200191505b50935050505060405180910390a260016003805490500390505b92915050565b6000600380549050905090565b60008060028054905014156106ad5760009050610759565b8173ffffffffffffffffffffffffffffffffffffffff1660026000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015481548110151561071457fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161490505b919050565b60008060038054905014156107765760009050610823565b8173ffffffffffffffffffffffffffffffffffffffff166003600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548154811015156107de57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161490505b919050565b606060006108358361075e565b151561084057610966565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154818054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561095a5780601f1061092f5761010080835404028352916020019161095a565b820191906000526020600020905b81548152906001019060200180831161093d57829003601f168201915b50505050509150915091505b915091565b600061097683610695565b1561098057610b8b565b816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000190805190602001906109d5929190610ce0565b50600160028490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055508273ffffffffffffffffffffffffffffffffffffffff167f1ebf925978e1982ddb1157dbd639436963b5345ccf86d4828909346867d4ab1d6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154846040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610b44578082015181840152602081019050610b29565b50505050905090810190601f168015610b715780820380516001836020036101000a031916815260200191505b50935050505060405180910390a260016002805490500390505b92915050565b60606000610b9e83610695565b1515610ba957610cce565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cc25780601f10610c9757610100808354040283529160200191610cc2565b820191906000526020600020905b815481529060010190602001808311610ca557829003601f168201915b50505050509150915091505b915091565b6000600280549050905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610d2157805160ff1916838001178555610d4f565b82800160010185558215610d4f579182015b82811115610d4e578251825591602001919060010190610d33565b5b509050610d5c9190610d60565b5090565b610d8291905b80821115610d7e576000816000905550600101610d66565b5090565b905600a165627a7a723058203212cad1a41f72f96ca07b0da555bb9f9118545589fe1d6d00e62fe9d8c561e60029