Description:
Smart contract deployed on Ethereum with Factory features.
Blockchain: Ethereum
Source Code: View Code On The Blockchain
Solidity Source Code:
{{
"language": "Solidity",
"sources": {
"src/Secrets.sol": {
"content": "// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.13;
interface AzimuthCheck {
function isOwner(uint32 point, address _address) external view returns (bool);
function canManage(uint32 point, address _address) external view returns (bool);
}
contract UrbitSecrets {
event SecretPosted(uint32 indexed point, bytes32 indexed name, bytes secret);
AzimuthCheck public immutable azimuth;
constructor(address azimuthAddress) {
azimuth = AzimuthCheck(azimuthAddress);
}
function postSecret(uint32 point, bytes32 name, bytes calldata secret) public {
require(
azimuth.isOwner(point, msg.sender) || azimuth.canManage(point, msg.sender),
"Not authorized to post secret for this point"
);
emit SecretPosted(point, name, secret);
}
}
"
}
},
"settings": {
"remappings": [
"@forge-std/=lib/forge-std/src/",
"@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/",
"erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
"forge-std/=lib/forge-std/src/",
"halmos-cheatcodes/=lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/",
"openzeppelin-contracts/=lib/openzeppelin-contracts/"
],
"optimizer": {
"enabled": true,
"runs": 200
},
"metadata": {
"useLiteralContent": false,
"bytecodeHash": "ipfs",
"appendCBOR": true
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "paris",
"viaIR": true
}
}}
Submitted on: 2025-10-08 20:15:44
Comments
Log in to comment.
No comments yet.