Post
Topic
Board Collectibles
Re: 1SPLiTKEY is a solution to prevent creators from sweeping physical collectibles
by
LoyceV
on 16/01/2023, 16:57:59 UTC
"private source code"   Roll Eyes
That's a problem, but using splitkey could work to make sure no single person knows all data to create the private key.

Quoting from my vanity address thread:
Step 1: Goto https://www.bitaddress.org/ move your mouse/type in the field until it shows 100% and wait a second.
Step 1.5: Optional but highly recommended. Download the page, verify the download and run it locally*.
Step 2: Click Vanity Wallet click the Generate button next to Generate your "Step1 Key Pair"
Step 3: Reply to this thread with your public key and the prefix for your address. Save the private key somewhere safe. You will need it later when I generated your partial private key. Also, let me know if your preferred prefix is case sensitive, or any case is okay (the latter is much faster)
Step 4: Once you received your partial private key, go back to bitaddress.org and click on Vanity Wallet.
Step 5: Go to step 2 Calculate your vanity wallet. In the first field put the private key you saved and in the second field put the partial private key I gave you. Click Add and Calculate Vanity Wallet
Step 6: Copy the Vanity Private Key (WIF) and import it into your preferred wallet.
Credits to shorena for most of these instructions!
If something doesn't work as expected, have a look at this example.

Let's say 2 highly trusted people want to make a collectible pre-funded coin. Person A does Steps 1-3, and (the red part) gives the public key to Person B.
Person B creates a split-key vanity address, let's say starting with 1Safer. That creates a partial private key, which he doesn't share.

Now back to the coin: Person A adds the private key, under a hologram. Person B adds the partial private key, also under a hologram. Person B also knows the address to fund/publish.

The buyer, when he wants to redeem the coin, has to do Steps 5-6.

I see 2 risks:
1. Mistakes. Since nobody should access the private key, nobody knows if a mistake has been made. If so, it will be impossible to create the private key that belongs to the address.
2. You can't check if Person B gave the correct address, unless you redeem the coin. Once in a while someone would have to peel a coin to verify they're not unfunded.