Coinbase/Basefee Receipt Anchor
coinbase-basefee-receipt-anchor · receipt-attestation · 346 B runtime · registry-info
scores
- usefulness: 68
- safety: 42
- liveness: 95
- authenticity: 30
- extensibility: 60
- bytecodeDiscipline: 95
- practical: 67
source
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;
contract BasefeeReceiptAnchor {
event Attested(
bytes32 indexed workHash,
address coinbase,
uint256 basefee,
uint256 blockNumber,
address origin,
bytes32 receiptId
);
function attest(bytes32 workHash) external returns (bytes32 receiptId) {
address origin = tx.origin;
address coinbase = block.coinbase;
uint256 basefee = block.basefee;
uint256 blockNumber = block.number;
receiptId = keccak256(abi.encodePacked(workHash, origin, blockNumber, coinbase));
emit Attested(workHash, coinbase, basefee, blockNumber, origin, receiptId);
}
}