One of the earliest smart contracts on Ethereum, deployed August 7, 2015 (block 48,790). A pure function that finds the smallest prime factor of any number.
Historical Significance
One of the first 150 contracts ever deployed on Ethereum mainnet. A pure mathematical function with no economic purpose, demonstrating that Ethereum could serve as a general computation platform, not just a token ledger. Deployed from Vitalik Buterin's known address.
Context
The first week of Ethereum mainnet (July 30, 2015). The frontier release was live for just 8 days. Most activity was miners and core developers testing the network. Smart contract deployment was still a novelty.
Key Facts
Description
PrimeChecker was deployed on August 7, 2015, just eight days after Ethereum's mainnet launch. It contains a single function, smallestfactor(uint), which finds the smallest prime factor of a given number using trial division.
The contract was deployed twice within 9 minutes at blocks 48,790 and 48,827, producing identical bytecode both times. The deployer (0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B, Vitalik Buterin's known address) was likely testing deployment mechanics during Ethereum's earliest days.
The function name smallestfactor is entirely lowercase, an uncommon style choice. The selector (0xb19eaf1e) does not appear in any public function signature database. The contract has no constructor, no state variables, and no events. It is a pure computational function on-chain.
Source Verified
Exact bytecode match (154 bytes). Compiled with soljson v0.1.1 (no optimizer). The function selector 0xb19eaf1e is not in any public database. Identical bytecode deployed twice at blocks 48,790 and 48,827.
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)
contract PrimeChecker {
function smallestfactor(uint256 n) returns (uint256) {
for (uint256 i = 2; i * i <= n; i++) {
if (n % i == 0) return i;
}
return n;
}
}