Bitaps mnemonic challenge
Bitaps mnemonic challenge
bitcoin
A 3 of 5 secret sharing scheme with two shares published.
- Author
- Bitaps
- Prize recorded
- 1.00016775 BTC
- Still unsolved
- 1 · 1.00016775 BTC
Census
- unsolved
- 1100%
- public keys
- 1100%
- private keys
- 00%
Access
- Load
getCollection("bitaps") - Showbitaps in the playground
The puzzle
Bitaps split a mnemonic into five shares with a threshold of three. They published two of them and the account's zpub, and put a bitcoin on the first receiving address. Three shares recover the seed. Two don't, by construction. So the challenge is a statement about the scheme as much as a bounty: you can't get there from what's public.
What the records carry
The one record in the collection is the only one with shares on it:
export const bitapsPuzzle = puzzle({
id: "bitaps",
chain: "bitcoin",
address: "bc1qyjwa0tf0en4x09magpuwmt2smpsrlaxwn85lh6",
sourceUrl: "https://bitaps.com/mnemonic/challenge",
startedAt: "2020-06-19 13:24:41",
pubkey: compressed("0385a3a591451ed7ed6c90dae882db918107d6f906d270cf4728d168126e0e89aa"),
key: derivation("m/84'/0'/0'/0/0")
.xpub(
"zpub6qdEDkv51FpxX6g1rpFGckmiL46vV8ccmtEgPAkj3qj8N4ZZHyXDRA9RwpTiFK2Kb8vRaDmSmwgX6rfB4t2K8Ktdq8ExQ6fumKpn2ndJCqL",
)
.shares(3, 5, [
share(1, "session cigar grape merry useful churn fatal thought very any arm unaware"),
share(
2,
"clock fresh security field caution effort gorilla speed plastic common tomato echo",
),
]),
prize: 1.00016775,
transactions: [
funding("a24e…25e6", "2020-06-19 13:24:41", 1),
increase("bb0b…f167", "2021-11-29 12:20:03", 0.00008781),
increase("fe3f…c14d", "2022-02-05 20:43:56", 0.00002403),
increase("910c…b272", "2022-10-13 00:48:34", 0.0000522),
increase("c617…3419", "2026-02-01 14:34:35", 0.00000371),
],
});
The public key is known because the zpub gives it. The private key isn't. A path plus an xpub is no secret, so hasPrivateKey() says false. The four top-ups since 2020 are on the record as increase transactions. That's why the prize has change on the end.
Status
Open, and a singleton. The id is bitaps, bitaps.get() takes no argument, and get("bitaps") at the top level finds it too.
The record
The one puzzle in this collection, the way its page shows it.
bitcoinp2wpkh unsolved
Record
puzzle({
chain: "bitcoin",
address: "bc1qyjwa0tf0…xwn85lh6",
key: derivation("m/84'/0'/0'/0/0").xpub("zpub6qdEDkv5…n2ndJCqL").shares(3, 5, [share(1, "session ciga… unaware"), share(2, "clock fresh …ato echo")]),
})- Prize
- 1.00016775 BTC
- Key material
- none published
- Verification
- unverifiable
- Solved
- not yet
- Trail
- Explorerblockstream.info
- Sourcebitaps.com/mnemonic/challenge
- Trybitaps in the playground
- Address
- bc1qyjwa0tf0en4x09magpuwmt2smpsrlaxwn85lh6
hash160 249dd7ad2fccea67977d4078edad50d8603ff4ce
Key
- public key · compressed
- 0385a3a591451ed7ed6c90dae882db918107d6f906d270cf4728d168126e0e89aa
- derivation path
- m/84'/0'/0'/0/0
- extended public key
- zpub6qdEDkv51FpxX6g1rpFGckmiL46vV8ccmtEgPAkj3qj8N4ZZHyXDRA9RwpTiFK2Kb8vRaDmSmwgX6rfB4t2K8Ktdq8ExQ6fumKpn2ndJCqL
- secret sharing
- 3 of 5 shares, 2 published
- share 1
- session cigar grape merry useful churn fatal thought very any arm unaware
- share 2
- clock fresh security field caution effort gorilla speed plastic common tomato echo
Transactions
- funding2020-06-191 BTCa24e37411d…9925e6
- increase2021-11-290.00008781 BTCbb0b6c3198…c8f167
- increase2022-02-050.00002403 BTCfe3f6d1f45…2ec14d
- increase2022-10-130.0000522 BTC910c4c6af9…a1b272
- increase2026-02-010.00000371 BTCc6178e5541…943419
Techniques
- shamir-sharespuzzlebitaps.com/mnemonic/challenge