The Relay from Piper Merriam's Ethereum Alarm Clock, created by the scheduler itself to forward one call at a time.
Context
Created 22 October 2015, during the Frontier era.
Key Facts
Description
A two function call forwarder from the Ethereum Alarm Clock, whose flattened source names Piper Merriam as its author. The constructor records whoever created it as operator. relayCall takes a target address, a four byte function selector and a data blob, throws unless the caller is the operator, and returns whether target.call of that selector and data succeeded. This one was not deployed directly: the scheduler contract at 0xbcbf4d2ce032769be810890bc1bf3b23a56eab62 creates two relays inside its own constructor, so that contract is the operator and no other address can make it forward anything. Two later scheduler deployments each created another pair with the same runtime bytecode.
Source Verified
Heuristic Analysis
The following characteristics were detected through bytecode analysis and may not be accurate.
Frontier Era
The initial release of Ethereum. A bare-bones implementation for technical users.
Bytecode Overview
Verified Source Available
Source verified through compiler archaeology and exact bytecode matching.
View Verification ProofShow source code (Solidity)
// Submitted by EthereumHistory (ethereumhistory.com)
contract Relay {
address operator;
function Relay() {
operator = msg.sender;
}
function relayCall(address contractAddress, bytes4 abiSignature, bytes data) public returns (bool) {
if (msg.sender != operator) {
throw;
}
return contractAddress.call(abiSignature, data);
}
}External Links
Related contracts
MemberRegistry
Same deployerOwner-controlled dynamic-array member registry.
0x1f3b19...7c161aAugust 13, 2015Members
Same deployerOwner-controlled member registry with array + mapping tracking.
0xaeb2ac...a5fd37August 14, 2015MembershipRoster
Same deployerAn Ethereum Public Trust roster contract for adding, removing, and checking members.
0xf1d327...aa0455August 14, 2015KillMul
Same deployerTest/utility contract with `suicide(address)` kill switch and a `multiply2` helper.
0x3e5e1f...7c78cdAugust 14, 2015Members
Same deployerOwner-controlled member registry using sequential id + mapping storage.
0xc6810e...db4e6fAugust 14, 2015EthereumAlarmClock
Same deployerThe first deployment of Piper Merriam's Ethereum Alarm Clock, a smart contract protocol for scheduling transactions at future block numbers, launched on Septemb
0xb0059e...cc0cc1September 22, 2015