Back to HomeDeployer 0x8674c2...Da94E2 Deployment Block 54,329 Deployment Date Aug 8, 2015, 04:45 PM Code Size 1.2 KB Gas at Deploy 340,017
Deployed August 8, 2015 (10 years ago)Block 54,329
A deployment of the nonce-based messaging contract, identical interface to rank 45 but by a different deployer.
Key Facts
Transactions by Year
20152
Deployment Transaction: 0xd1324021689838fa...f3ec7dcd84bf7d0b
Description
A messaging contract deployed at block 54,329 (August 2015) with the same function interface as rank 45, including the nonce counter for unique message hashing. Deployed by a different address, suggesting the source code was shared or published as a tutorial.
Source Verified
SolidityNear-exact bytecode match
Compiler: soljson
near_exact_match: reconstructed source with nonce-based sha3 hashing. All selectors confirmed via openchain.xyz (including affed0e0=nonce()).
Heuristic Analysis
The following characteristics were detected through bytecode analysis and may not be accurate.
Detected Type: other
Frontier Era
The initial release of Ethereum. A bare-bones implementation for technical users.
Block span: 0 — 1,149,999
July 30, 2015 — March 14, 2016
Bytecode Overview
Opcodes1,216
Unique Opcodes93
Jump Instructions59
Storage Operations25
Verified Source Available
This contract has verified source code.
Show source code (Solidity)
contract Messaging {
mapping(bytes32 => string) messageContents;
mapping(bytes32 => uint) messageTime;
mapping(address => bytes32[]) public hashes;
mapping(address => mapping(bytes32 => bool)) public messages;
uint public nonce;
function sendMessage(address to, string content) {
bytes32 h = sha3(msg.sender, to, content, nonce++);
messageContents[h] = content;
messageTime[h] = block.timestamp;
hashes[to].push(h);
}
function getMessageContents(bytes32 hash) constant returns (string) {
return messageContents[hash];
}
function getMessageTime(bytes32 hash) constant returns (uint) {
return messageTime[hash];
}
function deleteMessage(bytes32 hash) {
delete messageContents[hash];
delete messageTime[hash];
}
}