I solved a bitcoin puzzle with receiving value of 5btc
Pyhon3 Article #0.1
Background story.
When I was a child my mother bought a Nokia 3310 I was fascinated by this small electronic thing back then, that I go to any length necessary just to understand what is what, and then I put the phone into a PUK mode being a child reading that word will give you a subliminal message I only discovered what its meant thanks to my knowledgeable and trustworthy friend Google.
But more to that in my next article I will stray from the topic.
Puzzle background story.
On March 12, 2015 coin_artist sent 4.34364077 bitcoin to a vanity address of 1FLAME stating to her/his Twitter account that this painting hold a certain bitcoin value and to whoever solved the puzzle from the image can sweep all the funds of all the bitcoin hence giving birth to The Legend Of Satoshi Nakamoto.
That is the original painting I only resize it for the sake of decrypting the message you can check the original here
I've searched a lot of websites and forums regarding this puzzle but I can't seem to find the step-by-step instruction to really open the treasure chest that's why I decided to make my own article about solving this famous puzzle.
Actual work.
Thanks for the explanation of TheArchaeologist on bitcointalk.org I actually understand what to do with the puzzle.
first of all, we need the key for decrypting the message which is the actual key in the painting.
short ribbon equals 0 and long ribbon equals 1 in binary.
key = '011010'
conca_str = '00101011100101011010111000011100100100011110001101000101100001101110111000011011110100111110111000000001100010101011101000001000110010001111111001101001110101001111101100011011110011111110111000010000100100111101000101010001111011101111001100100010100101001100111000111001100111101010110101011101111011011100110100101111100111101100110000000001110111101111010100011111100100011110111000001011110000011111100000011101110100101111010000000000111001001010100000001110110111101110101100010001111101101010001000100010111010111100111101010000111100101110110100100010100111101111010100001101111001111010101101010001'
And according to TheArchaeologist we need to concatenate all the binary of the painting and use a Xor method using the key then check the character representation of that Xored binary.
key = '011010'
conca_str = '00101011100101011010111000011100100100011110001101000101100001101110111000011011110100111110111000000001100010101011101000001000110010001111111001101001110101001111101100011011110011111110111000010000100100111101000101010001111011101111001100100010100101001100111000111001100111101010110101011101111011011100110100101111100111101100110000000001110111101111010100011111100100011110111000001011110000011111100000011101110100101111010000000000111001001010100000001110110111101110101100010001111101101010001000100010111010111100111101010000111100101110110100100010100111101111010100001101111001111010101101010001'
code = []
for i in range(len(conca_str)):
bin_str = int(conca_str[i])
key_str = int(key[i % len(key)])
xord = bin_str ^ key_str
code.append(str(xord))
print(''.join(code))
Once we run that program we will receive the xored binary of the painting we just need it to extract the character value of each 8 bit of strings.
xored = '01000010001100110011010001110101001101110111100100101100001000000111010001110010011101010111010001101000001011000010000001100001011011100110010000000000011100100110000101110010011010010111010001111001001101010100101100111000010010000110100101001011001100100101010001010000001110000011011100110100010010110101011101000110001110000101011001101000011110000110111101110110001101110111010001100010011001110110001001110100011101000110111001101001010000100011001001100111011110000111000101111000010100000011100001001011010011010101010100111001010101000111011101001011001110000110111101100100010000010011000100111000'
new_code = ''.join(code)
decrypt = []
for i in range(0, len(new_code), 8):
dec = (chr(int(new_code[i:i+8],2)))
decrypt.append(str(dec))
print(''.join(decrypt))
If we print this line of code we expect to see this.
The highlighted pink border is the privatekey of the bitcoin address 1FLAME.
As we can see the address of 1FLAME is right there I'm just too late for the race geeh. Let me know what you think of this puzzle in the comment section.
My other social media where you can contact me for anything.
NoiseCash: noise.cash/@Vernardo
Telegram: PanPanHam
Sheesh! That's some coding stuffs there. If I may ask, are u a programmers or?