[ 0x01 / CONTRACT IDENTITY LAB ]

FACE4663 RESEARCH

FACE4663 CONTRACT
IDENTITY LAB

An open research lab exploring contract identity on-chain — how addresses are generated, how rarity is measured, and how recognizability can become verifiable identity.

Understand the address. Measure the rarity. Verify the identity.

[ 0x02 / PATTERN CALCULATOR ]

VANITY PATTERN CALCULATOR

CALCULATE THE COST
OF A VANITY ADDRESS

Estimate difficulty, time, and probability for mining a vanity contract address with specific prefix/suffix patterns. Now with EIP-55 checksum casing analysis.

Hex: 0-9, a-f
Hex: 0-9, a-f
Exact mode adds checksum bits: each alphabetic hex char (a-f) adds 1 bit of difficulty
Hash operations per second

RESULTS

Pattern Type
Locked Hex Chars0
Alphabetic Chars (a-f)0
Raw Bits (4 × chars)0
Checksum Bits0
Effective Bits0
Raw Difficulty (2^n)1
Effective Difficulty
Raw Avg Attempts1
Effective Avg Attempts
Rarity1 in 1
Avg Search Time
Median Time (50%)
90% Probability Time
Prob ≤ 1 min
Prob ≤ 1 hr
Prob ≤ 1 day
Prob ≤ 1 week

Mining is probabilistic — actual time may vary. These are statistical estimates, not guarantees. Effective bits include EIP-55 checksum casing constraints when enabled.

[ 0x03 / ADDRESS INSPECTOR ]

ADDRESS INSPECTOR

INSPECT ANY ADDRESS
FOR UNIQUE PATTERNS

Analyze an address structure, verify EIP-55 checksum casing, and compare against an explicit prefix or suffix target.

0x + 40 hex characters (0-9, a-f). Try EIP-55 test: 0x52908400098527886E0F7030069857D2E4169EE7
Hex only: 0-9, a-f (auto-lowercased)
[ 0x04 / KNOWLEDGE BASE ]

EDUCATIONAL REFERENCE

UNDERSTAND
CONTRACT IDENTITY

01 What Is a Vanity Contract Address?

A vanity contract address is a smart contract address that contains a recognizable prefix or suffix — like 0xface...4663 or 0x...face4663.

The address is generated by searching through many possible deployment parameters (typically CREATE2 salts) until one produces an address matching the desired pattern.

Important: A vanity address does not change the contract's functionality, security, or behavior. The contract code is identical regardless of the address. It is purely cosmetic — but cosmetics can become identity.

02 Prefix vs Suffix Patterns

Prefix pattern: The address starts with specific characters after 0x. Example: 0xFACE4663...

Suffix pattern: The address ends with specific characters. Example: 0x...face4663

Key difference: Each additional hex character you lock adds 4 bits of difficulty, making the search 16× harder per character.

CharsDifficulty (16^n)Avg Attempts
465,53665,536
616,777,21616,777,216
84,294,967,296~4.3 billion

Prefix and suffix patterns have the same statistical difficulty when they lock the same number of hexadecimal characters. Suffixes are often chosen for branding because they appear like a signature at the end of an address.

03 Valid Hex Characters

Ethereum addresses use hexadecimal encoding. Valid characters after 0x are:

01234567 89abcdef

That's 16 possible values per character position. Hex addresses are case-insensitive on EVM chains — 0xABCD and 0xabcd refer to the same address.

Characters like g, h, x, y, z are invalid in hex strings and will be rejected by this lab's tools.

04 Raw Hex vs EIP-55 Display Casing

An Ethereum address is a 20-byte (160-bit) value. At the protocol level, the address is just raw bytes — case does not matter. 0xABC... and 0xabc... are the same address.

EIP-55 (Ethereum Improvement Proposal 55) introduced a mixed-case checksum encoding for human-readable display. It works by:

  1. Take the lowercase hex address (without 0x)
  2. Compute Keccak-256 of the lowercase hex string
  3. For each character position: if the corresponding nibble of the hash is ≥ 8, capitalize it; otherwise keep it lowercase

This creates a deterministic casing pattern derived from the address itself. If a single character's case is wrong, it means either the address was mistyped or the display is not EIP-55 compliant.

EIP-55: capitalize(hex[i]) iff keccak256(hex.toLowerCase())[i] >= 8

Why This Matters for FACE4663

FACE4663 targets the suffix face4663 — all lowercase. For the EIP-55 checksum to produce an address that displays as lowercase in these positions, the Keccak-256 hash nibbles at those positions must all be < 8.

This adds extra entropy constraints beyond just matching the raw hex pattern. Each alphabetic hex character (a-f) in the target adds 1 bit of checksum difficulty because there's a ~50% chance the hash nibble will be ≥ 8 (forcing uppercase).

ConstraintPattern: face4663Explanation
Locked hex chars88 characters fixed in address
Raw difficulty2^324 bits × 8 chars
Alphabetic chars (a-f)4 (f, a, c, e)Numeric chars (4, 6, 6, 3) have no case constraint
Checksum bits+4Each alpha char adds ~1 bit
Effective difficulty2^3632 + 4 = 36 bits total

Raw Match vs Exact EIP-55 Match

A vanity miner can find addresses that match the raw hex pattern (case-insensitive) relatively easily. But to match the exact EIP-55 display casing, you need the Keccak-256 checksum nibbles to cooperate — which is ~16× harder for each alphabetic character in the pattern.

The two badges reflect this distinction:

  • RAW MATCH — The hex digits match (case-insensitive)
  • EXACT EIP-55 MATCH — The hex digits match AND the casing is exactly as specified by EIP-55
05 CREATE2 Salt Mining

The CREATE2 opcode allows deterministic address generation. The deployed address is calculated from three inputs:

address = keccak256(0xff ++ factory ++ salt ++ keccak256(initCode))[12:]

This means you can compute the address before deploying, and search for a salt value that produces a desired pattern.

The mining process:

  1. Fix the factory address and init-code hash
  2. Try different salt values (usually starting from 0 and incrementing)
  3. Compute the CREATE2 address for each salt
  4. Check if the address matches the target pattern
  5. When found, deploy with that specific salt

The speed of this search depends on hashing throughput — Optimized GPU miners can test hundreds of millions to billions of candidate salts per second, depending on hardware and implementation.

06 CREATE2 vs CREATE

CREATE

Address Factors
Deployer address + deployer nonce
Predictability
Can predict before deployment (if nonce is known)
Pattern Control
Possible through deployer-key search at a selected nonce, but operationally less convenient than CREATE2
Deploy Cost
Standard gas
Key Risk
The intended nonce must remain unchanged. Any earlier transaction or deployment from that wallet can change the resulting contract address

CREATE2

Address Factors
Factory address + salt + init-code hash
Predictability
Fully deterministic from inputs
Pattern Control
Full control via salt mining
Deploy Cost
Similar to standard deployment, with additional hashing cost for the init code
Key Risk
Changing any input changes the address entirely

CREATE2 enables vanity address mining because the salt parameter can be any 32-byte value, giving 2^256 possible addresses to search through.

07 Why Difficulty Grows Fast

Each hex character has 16 possible values. Adding one more character multiplies difficulty by 16. This exponential growth means:

CharsDifficulty (2^(4n))Avg Attempts~Time @ 500M salts/s
42^16 = 65,53665,536Instant
62^24 = 16,777,216~16.8M~0.03s
82^32 = 4,294,967,296~4.3B~8.6s
102^40 ≈ 1.1 × 10^12~1.1 trillion~36 min
122^48 ≈ 2.8 × 10^14~281 trillion~6.5 days

At 12+ characters, mining requires specialized hardware running for days or weeks. This is why truly long vanity patterns are considered rare and valuable as identity markers.

[ 0x05 / GENESIS BENCHMARK ]

PUBLIC PROOF

GENESIS BENCHMARK

Transparent, verifiable proof of the mining process. Every parameter will be published for independent verification.

PENDING PUBLIC BENCHMARK
Target Pattern
face4663
Pattern Type
Suffix
Pattern Length
8 chars (4 alphabetic)
Difficulty
Raw: 2^32 = 4,294,967,296
Checksum: Exact lowercase EIP-55
Checksum bits: +4 (2^4)
Effective: 2^36 = 68,719,476,736
Hardware
Pending
Miner / Software
Pending
Miner Version
Pending
Salts / Second
Pending
Search Start
Pending
Search End
Pending
Total Duration
Pending
Factory Address
Pending
Init-Code Hash
Pending
Salt Used
Pending
Predicted Address
Pending
Deployed Contract
Pending
Deployment Tx Hash
Pending
Explorer Verification
Pending

Every benchmark must be reproducible. All parameters will be published for independent verification.

[ 0x06 / MILESTONES ]

PUBLIC MILESTONES

THE PATH FORWARD

Each milestone represents an increasing level of difficulty and a new public benchmark.

GENESIS Current

8-char suffix

Target: face4663 — the foundational identity suffix.

Raw suffix difficulty: 2^32 Exact lowercase EIP-55: 2^36 Raw average: ~4.29 billion Effective average: ~68.72 billion
LAB I Planned

9–10 char suffix

Extending the identity suffix beyond 8 characters.

Difficulty: 2^36 — 2^40 ~68B — ~1.1T attempts
LAB II Planned

Dual prefix–suffix feasibility research

Matching both beginning and ending of the address simultaneously.

Difficulty: 2^48+ ~281T+ attempts
FRONTIER Long-term

Faster mining, longer patterns

Pushing the boundary of what's computationally feasible for vanity identity.

Difficulty: 2^56+ Custom hardware acceleration

Every milestone will be benchmarked publicly with full reproducibility.

[ 0x07 / SECURITY NOTES ]

⚠ SECURITY

IMPORTANT
SECURITY NOTES

Salt ≠ Private Key

The salt used in CREATE2 deployment is not a private key. It is a public parameter that determines the contract address. Exposing a salt does not compromise wallet security.

All Three Inputs Matter

CREATE2 address = f(factory, salt, init-code). Changing any of these three inputs produces a completely different address. There is no partial match.

Verify Independently

Never trust a claimed address without verifying it on-chain yourself. Compute the CREATE2 address from the published factory, salt, and init-code hash, then compare with the deployed contract.

Don't Expose Config Early

If you plan to deploy a vanity contract, do not publish a discovered salt or complete executable deployment configuration before deployment unless the factory prevents unauthorized deployment or front-running.

Never Share Private Keys

No legitimate tool, lab, or project will ever ask for your private keys, seed phrases, or wallet recovery information. Never submit these to any interface.

This Lab Doesn't Request Keys

FACE4663 Contract Identity Lab is entirely client-side. All calculator and inspection operations run locally in your browser. No keys are requested and no wallets are connected.

[ 0x08 / CLOSING ]

THE ADDRESS WAS
NEVER JUST A STRING.

GENESIS PROOF — DEPLOYMENT RECORD

TX Hash:
0xd014645812df8e52c6083285ff6b09d0e02b24a4ae38238bc02b7caf779b38c9
Block:
26767533
Timestamp:
2026-08-03 12:37:14 UTC
Gas Used:
7233889
CA (checksummed):
0xd64EfA7476B345934248Cb8Bc9eC22A0FAcE4663
CA (lowercase):
0xd64efa7476b345934248cb8bc9ec22a0face4663
Salt:
0x88291f1e104ba3612de9fbbdf984c7a088062327d84da4fe6e07f34451c79d1e
Init Code Hash:
0x3917436f1660e4203163ceb0090f76cdbb06c4460859757998ca096b4b1d63cf
Config Hash:
cff1c875375e75c417af8c471f984fb26db80557512a6bf6919c42ee23cca936
Factory:
0xA5aAb3F0c6EeadF30Ef1D3Eb997108E976351feB
Deployer:
0xe1071F450ca0f461f9Fe51ae6753D7bc158F6B69
Supply:
1,000,000,000 tokens
Initial Buy:
0.2 ETH
Verification:
PENDING
Explorer:
https://robinhoodchain.blockscout.com/address/0xd64EfA7476B345934248Cb8Bc9eC22A0FAcE4663