Code-Hash Agent Registry

code-hash-agent-registry · discovery-registry · 366 B runtime · registry-info

scores

source

pragma solidity ^0.8.13;

contract CodeHashRegistry {
    mapping(address => bytes32) private _hashes;

    event Registered(address indexed agent, bytes32 codeHash);

    function register() external {
        address sender = msg.sender;
        require(sender.code.length > 0);
        bytes32 codeHash = sender.codehash;
        require(_hashes[sender] == bytes32(0));
        _hashes[sender] = codeHash;
        emit Registered(sender, codeHash);
    }

    function isVerified(address agent) external view returns (bool) {
        return agent.codehash == _hashes[agent];
    }
}