Bitimage
- load
- getCollection("bitimage")
- author
- Corey Phillipsgithub.com
- puzzles
- 2 · 1 solved · 1 unsolved
- prize recorded
- 0.01097033 BTC
- still unsolved
- 0.010019 BTC
- known material
- 1 public keys · 0 private keys
The puzzle
Corey Phillips wrote a three part series on turning a photo into a private key. Hash the image bytes, use the hash as BIP39 entropy, derive along m/84'/0'/0'/0/0. Then he funded two addresses from two images and posted them. The first image was Andreas Antonopoulos's kitten tweet. Solved in six days. The second adds a BIP39 passphrase on top of the image hash, and it's still open.
What the records carry
This is the collection that exercises the entropy part of the key builder. The kitten record has a derivation path, no phrase, and an entropy block with the hash and where it came from:
export const bitimagePuzzleKitten = bitcoinPuzzle({
id: "bitimage/kitten",
address: p2wpkh(
"bc1q57euh23y3qs2f9d5mtwpax5lqecfvrdkqce82a",
"a7b3cbaa248820a495b4dadc1e9a9f0670960db6",
),
sourceUrl: "https://corey-lyle-phillips.medium.com/…",
startedAt: "2019-07-03 02:48:04",
status: Status.Solved,
pubkey: compressed("021209b131dfbd1efcfe15b1d1e92002653f5fc98e9ff6cb73a0d70153dbe58463"),
key: derivation("m/84'/0'/0'/0/0").entropy(
"1808d35318ac7cb98b69ff9779b699d6a631f15e0b353ac89b7c4020774832ed",
source(
"https://twitter.com/aantonop/status/603701870482300928",
"Antonopoulos kitten tweet (May 2015)",
),
),
prize: 0.00095133,
solvedAt: "2019-07-09 21:26:12",
assets: assets({
puzzle: "kitten/puzzle.jpg",
sourceUrl: "https://twitter.com/aantonop/status/603701870482300928",
}),
});
A path and an entropy hash aren't a secret in the library's sense. secretOf wants a phrase, so hasPrivateKey() is false here and verifyPuzzle answers unavailable. The hash is the puzzle's statement of what the seed was built from, kept for whoever wants to reproduce the derivation. The second record marks its passphrase as Required instead of inventing one.
Status
One solved, one open. The open one is bitimage/kitten_passphrase, 0.01 BTC, and the image is in assets/bitimage/.
Every puzzle
One page each: the record, the transactions and the live balance.
bitimage.all()2 puzzles
1 solved 1 unsolved
- kitten solved0.00095133 BTCbc1q57euh23y3q…dkqce82a
- kitten_passphrase unsolved0.010019 BTCbc1qcyrndzgy03…wgt0246r
every name is a page · the key icon marks a published private key
Ballet wallets
Three Ballet cards with BIP38 keys printed on them. One decrypted for 0.0011 BTC. Two hold a bitcoin each. One waits on a passphrase and one on its encrypted key.
Bitaps mnemonic challenge
One SegWit address behind a 3 of 5 Shamir secret sharing scheme. Two shares and the extended public key are published. One bitcoin and change since 2020.