Post
Topic
Board Bitcoin Discussion
Merits 35 from 12 users
Re: Craig Wright? - signed Bitcoin message
by
pooya87
on 30/10/2021, 07:00:28 UTC
⭐ Merited by DdmrDdmr (6) ,NeuroticFish (6) ,BlackHatCoiner (4) ,o_e_l_e_o (4) ,vapourminer (4) ,ETFbitcoin (3) ,witcher_sense (2) ,RickDeckard (2) ,Lucius (1) ,hosseinimr93 (1) ,aoluain (1) ,Rizzrack (1)
It's a trick, similar to the one in this thread: https://bitcointalk.org/index.php?topic=5367558.0

I don't know how it is done, but the fact that the second characters of the addresses are "C", "W", "r", "i", "g", "h", "t" means nothing.
Rather simple.
You start in reverse meaning instead of adding random public keys to the starting pubkey, you find the final key and then start working your way backwards by subtracting the pub key (of the private key you already have) from the starting public key (which you don't have the private key of).

A simple example would be like this:
The starting public key is a pubkey from blockchain that we do NOT own its private key. Lets use the one posted by OP (called pub1):
04d285c703648887f226137be3f3868a95ca562f70fa1654f19d530d134cbc00edf6f5827b367d9 b358b4ea00f32486b19e630603f5f8708d068c2ba759dec9665
It can be converted to the following address: 1C7X4UWpSa4GteWHaRBm49fMCC2SNvJQF

Then we create a random private key. I used SHA256 hash of my username (SHA256("pooya87)).
5KivUXF2GxYN4aY9ebpY9Yif4J7VJ3QXyPUB7ozA2HtRcNyTjwa
This key is the final key we use to sign a message and its public key (after we modify it) will be the result of adding all the intermediary pubkeys.
Call this privX and pubX

Now decide what dumb letter you want in your second address. Lets say it is "W".
I will use 3 keys in total to keep the computational cost to minimum since I don't want to waste my time.
1. C (from origninal pubkey posted above). 2. W (what we want to aceheive) 3. Random letter that doesn't matter.
Call this pub2

LOOP:
  Compute pub2 = pubX - pub1
  Compute address of pub2 and check if it starts with W
    return if true
    change privX to privX+1
END;

If you repeat the above loop 24 times you end up with the following mid public key:
04456541df8a1bd19f0ae85da3c73baa3812a537a8fa7b02f22d853828bb3053e4bad7b79fdfaf1 f8136f2b052a89f55f0af5c248d5ea9c4d9d1094dc58b26299f
That has the following address starting with the dumb letter W:
1WMrgrfEpJ9HWkWU4azaj4iLSCq3gnyQ1

And you have the private key to the modified privX that is the original + 24 which you can use to sign a dumb message!
5KivUXF2GxYN4aY9ebpY9Yif4J7VJ3QXyPUB7ozA2HtRf9dm6bK