Search content
Sort by

Showing 20 of 44 results by supika
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
supika
on 23/04/2024, 14:19:02 UTC
I removed the space between the private keys.
See how the first 4 digits of the private key are known?
Now guess 66!

https://www.talkimg.com/images/2024/04/23/jWRcT.gif

So the private key is starting with 37 in hex?
Post
Topic
Board Project Development
Re: List of all Bitcoin addresses with a balance
by
supika
on 29/04/2021, 08:40:02 UTC
Out of curiosity: why do you need dormant addressess? If you're trying to brute-force private keys, does it really matter if they're long-term hodlers (or forgotten)?

Thanks for your answer. It was a curiosity of how many addresses are untouched for more than 10 years.
From my point of view brute forcing of sha256 encrypted private keys is a waste of time.
Post
Topic
Board Project Development
Re: List of all Bitcoin addresses with a balance
by
supika
on 28/04/2021, 06:49:16 UTC
Hi,

It's possible to add a column with the date of last spending tx?
Would be nice to identify the dormant addresses.
Thanks!
Post
Topic
Board Development & Technical Discussion
Re: Pollard's kangaroo ECDLP solver
by
supika
on 16/06/2020, 09:33:56 UTC
All the other mortals are spectators at the show created by Zielar and Jean Luc. I like the show. The show must go on Smiley
Post
Topic
Board Development & Technical Discussion
Re: VanitySearch (Yet another address prefix finder)
by
supika
on 03/06/2020, 09:08:19 UTC
Hello,

@arulbero or others

I use below python script generator against pub keys. each core is using a random starting point for given keyspace.
From your experience, can be improved to be more faster?
Thanks!

#import random
import secrets
from bit import *
from bit.format import bytes_to_wif
from binascii import hexlify
import multiprocessing
from multiprocessing import Pool

print("Loading...")
with open("pub.txt","r") as m:
    add = m.read().split()
add= set(add)

#ran = secrets.randbits(253)
#ran = secrets.randbelow(115792089237316195423570985008687907852837564279074904382605163141518161494337)
#ran = random.randrange(1,115792089237316195423570985008687907852837564279074904382605163141518161494337)
ran = secrets.randbelow(115792089237316195423570985008687907852837564279074904382605163141518161494337)

r = 0
cores=2

def seek(r):
    while True:
        global ran
        key1 = Key.from_int(ran)
        wif = bytes_to_wif(key1.to_bytes(), compressed=False)
        key2 = Key(wif)
        pub1 = hexlify(key1.public_key).decode()
        pub2 = hexlify(key2.public_key).decode()
        myhex = "%064x" % ran
        if pub1 in add:
            print ("found!!!",ran, pub1)
            s1 = str(ran)
            s2 = pub1
            f=open(u"win.txt","a")
            f.write(s1)
            f.write(":"+s2)     
            f.close()
            break
        if pub2 in add:
            print ("found!!!",ran, pub2)
            s1 = str(ran)
            s2 = pub2
            f=open(u"win.txt","a")
            f.write(s1)
            f.write(":"+s2)     
            f.close()
            break
        else:
            print ("pubnr...", myhex, pub1)
            ran = ran + 1

if __name__ == '__main__':
        jobs = []
        for r in range(cores):
                p = multiprocessing.Process(target=seek, args=(r,))
                jobs.append(p)
                p.start()
Post
Topic
Board Development & Technical Discussion
Re: Pollard's kangaroo ECDLP solver
by
supika
on 30/05/2020, 22:50:23 UTC
Nice job!

How much will jean_luc get  Cool?

How much he wants Smiley
Post
Topic
Board Bitcoin Discussion
Re: dormant addresses are waking up?
by
supika
on 20/02/2020, 20:43:24 UTC
Second round. All addressees are  from 2011. A total of aprox 3653 BTC.

Almost all of them are having input transactions of 0.00000888 BTC, 0.00000666 BTC or other similar values.

121PD8dUB7qV3iBti2oh749FB6ewKhrUVd
12Sw5TdWmhNBrp4aatyUbuwvjTWiGBN6Ud
15HFtBRHb1YBya59qqBh4ixERvpghqHPm9
163FHEwPo24J8qJpeGn49bfW1ZFvtveetg
17p9trUz5EEwdBS2w1RH2ZtuHmHFhWVzSh
186XnrNi2PaaaDkmR5Uy1ApJ6XEwjWyAGu
1cyWYR4WxXrXY18Exi6xwAPJaT18nPRfk
1DAq5ddQygy8FYxUv2GcnVG6do8kvxEBZM
1DvjpfhySgayHZbDtRkMLbYLyfHjQJfy6g
1Ehoz6WPFfVPgCJeifiPMirsVUYQ8So9oM
1GTKWmjYzVZbckw7WYkk4obadsTFACAHCp
1H4VEycmCNW3mxUMemYW68BKBM4giBkVLe
1KdypGFpuYc6RSiwon2LZkRasdjTM6TgMH
1QHQMWtQoJMouPrQHfJPHyqx9asvJTMRSP
Post
Topic
Board Bitcoin Discussion
Re: == Bitcoin challenge transaction: ~100 BTC total bounty to solvers! ==UPDATED==
by
supika
on 10/02/2020, 13:04:48 UTC
hey supika, nice software i guess,
smart man you are, but when you transfer it to that another language thing you said,

could you do it a bit faster for us, so we can get used to that piece,

thanks bro

Is not my script. I only wrote the first part of the script from the video, which is the generator but the second part which is most important was not revealed.
Will be released when the creator of the script will decide to do so.
Regarding speed there is on github pollard-kangaroo-c99 from Telariust with multicore ..up to 128 cores.
Post
Topic
Board Bitcoin Discussion
Re: == Bitcoin challenge transaction: ~100 BTC total bounty to solvers! ==UPDATED==
by
supika
on 08/02/2020, 17:45:04 UTC
I didn't want to say it here by either delete your video or blur out your code. If really don't want to share it yet.



Doesn't have to delete any video. The first part of the script is useless/generic.

import collections
import time
import gmpy2
import random

EllipticCurve = collections.namedtuple('EllipticCurve', 'name p a b g n h')

curve = EllipticCurve(
    'secp256k1',
    p=0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F,
    a=0,
    b=7,
    g=(0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798,0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8),
    n=0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141,
    h=1,
)

def pubkey_point(pubkey):

    if len(pubkey) == 130:
        hexpubX = pubkey[2:66]
        hexpubY = pubkey[67:130]
        X = int(hexpubX,16)
        Y = int(hexpubY,16)
        return (X, Y)
    else:
        hexpub = pubkey[2:66]
        prefix = pubkey[1:2]
        X = int(hexpub,16)
        Y = pow(int(X**3+7), int((curve.p+1)//4), int(curve.p))
        if Y%2 !=0:
            if int(prefix)%2 !=0:
                Y = Y
            else:
                Y = curve.p - Y
        else:
            if int(prefix)%2 ==0:
                Y = Y
            else:
                Y = curve.p - Y
        return (X, Y)

def point_neg(point):

    if point is None:
        return None
    x, y = point
    result = (x, -y % curve.p)
    return result

def point_add(point1, point2):

    if point1 is None:
        return point2
    if point2 is None:
        return point1
    x1, y1 = point1
    x2, y2 = point2
   
    if x1 == x2 and y1 != y2:
        return None
    if x1 == x2:
        #m = (3 * x1 *x1 + curve.a) * inverse_mod(2 * y1, curve.p)
        m = (3 * x1 *x1 + curve.a) * gmpy2.invert(2 * y1, curve.p)
    else:
        m = (y1 - y2) * gmpy2.invert(x1-x2, curve.p)
        #m = (y1 - y2) * inverse_mod(x1-x2, curve.p)
    x3 = m * m - x1 - x2
    y3 = y1 + m * (x3 - x1)
    result = (x3 % curve.p, -y3 % curve.p)
    return result

def scalar_mult(k, point):
    if k % curve.n == 0 or point is None:
        return None
    if k < 0:
        return scalar_mult(-k, point_neg(point))
    result = None
    power = ' '
    addend = point
   
    while k:
        if k & 1:
            result = point_add(result, addend)
        addend = point_add(addend, addend)
        k >>= 1
    return result

def make_keypair(intkey, point=curve.g):
    public_key = scalar_mult(intkey, point)   #random.randrange(1, curve.n)
    return public_key

if __name__ == '__main__':
   
    start = time.time()
    target_bit = 45
   
    while True:
        tb = random.randrange(1, 2**target_bit)
        if tb.bit_length()            pass
        else:
            target_pnt = make_keypair(tb)
            break
    print ('Target random:', tb)
    print ('Target random hex:', hex(tb))
   
    target_pnt = '026ecabd2d22fdb737be21975ce9a694e108eb94f3649c586cc7461c8abf5da71a'
    target_pnt = pubkey_point(target_pnt)
Post
Topic
Board Bitcoin Discussion
Re: == Bitcoin challenge transaction: ~100 BTC total bounty to solvers! ==UPDATED==
by
supika
on 06/02/2020, 10:02:43 UTC
which python libraries you using if its no secret ?
And i'm interested in your video as well, please show if you not mind.

https://drive.google.com/open?id=1abZRyPMhC0A5W7esdp-odh_-ToB6hHaw

Can you send this python file to me in PM for testing?

Sharing is caring Wink
Post
Topic
Board Bitcoin Discussion
Re: It is necessary to find one private key out of 10 million Bitcoin Addresses
by
supika
on 14/11/2019, 06:29:19 UTC
What is the value of the "G - basis point" ? Thanks!

Actually G is the Point of ECDSA secp256k1 curve

in HEX:
Gx = 79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798
Gy = 483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8

in DEC:
Gx = 55066263022277343669578718895168534326250603453777594175500187360389116729240
Gy = 32670510020758816978083085130507043184471273380659243275938904335757337482424

Visually G point is 47.55% on X ordinate and 28.21% on Y ordinate (considering that maximum X and Y values are modul value which is close to 2^256), so approx. Gx is 47.55 * 2^256 and Gy is 28.21% * 2^256



I want to understand how you found the solution for the below equation. Do you use some script?
Thanks!
Q + 13000000*G =
024154b506ab766f42fbe37f699976f84db89f4f2f6bed98325c1a0b6e326dd4e4 +
034d11d3fef403710f1332ae54d99d12e383e9ad1a87d3972ab737b0dffe359be7 =
02464e23afad4a987d1d7c93ffe1d2d1cd196b0c1999b76bf1225e229fd7a1e770
Post
Topic
Board Bitcoin Discussion
Re: It is necessary to find one private key out of 10 million Bitcoin Addresses
by
supika
on 13/11/2019, 20:40:43 UTC

In ECDSA group there is rule for point additions: for p*G=Q (where p is some key, G - basis point and Q - public key for p), and some increment number k, (p+k)*G = p*G + k*G = Q + R, where R is public point for k. It means that you can receive another address from the public key (Q) without knowing the private key (p), just making the point addition to the public point.



What is the value of the "G - basis point" ? Thanks!
Post
Topic
Board Bitcoin Discussion
Re: dormant addresses are waking up?
by
supika
on 28/10/2019, 15:24:16 UTC

Maybe someone solved a puzzle.


Yeah. The puzzle of life. I want to solve a puzzle of 3000BTC to.
Post
Topic
Board Bitcoin Discussion
Re: Science Fair Project to trap Bitcoin private keys using Kangaroos!
by
supika
on 28/10/2019, 09:02:24 UTC
this thread not posting nada, niet, nothing,

23-10-2019 08:26:33 PMPosted by: brainless
but the posters are the best. serious hard work and nice work.
but no BurtW software as of yet released, just test result i guessed.

so guys let some of you be heard we wan't it to.

greetings.

Something new will appear in one month aprox, after they will find 110 puzzle.
After that they will need something new because kangaroo will not find 115 in a reasonable time.
Post
Topic
Board Bitcoin Discussion
Re: dormant addresses are waking up?
by
supika
on 26/10/2019, 22:29:04 UTC
One question OP, how did you 'specifically' found this addresses?
I am guessing you have been monitoring it before now to know when the owner made this move.
Anyways, three particular thing is involved here;
1) Perhaps the owner suddenly remembered he had some certain amount of Bitcoin

2) The owner has been hodling since and probably finally decided to make use of the funds (Not sure why he didn't spend not even one when the price was 20k though)

3) Someone else got hold of the private key or assess to the funds. (I hope this is not the case here)

I have a list with dormant addresses around 2700 and I'm monitoring their activity for personal reasons.
Few days back I checked the balance on all of them and I saw that the funds were moved for some.

We don't know if is one person or a group. Also we don't know if is the owner..but it has the private keys.
The funds were only moved to other addresses.

Post
Topic
Board Bitcoin Discussion
Re: dormant addresses are waking up?
by
supika
on 26/10/2019, 22:21:02 UTC
-snip-

As you are not the author of this collection (did not find these addresses by yourself in blockchain), it is always good style to make the reference to the original post: https://bitcointalk.org/index.php?topic=1306983.msg52879592#msg52879592

However, thank you for transorming all the public keys to final addresses.

I am not author of this collection Smiley) LOL
What's the point? I don't get it. So grow up Smiley

I posted the info on a telegram group in 23 Oct. (me and drotika we are members in that group). drotika took the adressess and extracted the public keys and posted the info on the puzzle topic.
I have other 2700 dormant addresses and I'm monitoring their activity for months now.
I didn't had to transform anything from anything.
Post
Topic
Board Bitcoin Discussion
Topic OP
dormant addresses are waking up?
by
supika
on 26/10/2019, 17:00:29 UTC
Hi,

All below addresses were emptied this year. Most of them in Sept. 2019. Around 2982 BTC in 21 addresses.
All addresses were first used in 2011, and dormant until now.
BCH is still there except 1 address.

No spending transactions on them so the public key was not known.
The owner he suddenly remembered after 8 years that he had some BTC?

12CpK8apTJfaMSiPYhGMDdaRRFYoS721Px
13GUJutC6GKgJQTcGzCtznDDYFQKVJFVwp
13Sa73PU9Ar5sE4SdFcBdbg9ntbNcMQhaA
14k4GhqA1svNZPbssdAjgdnfzWTpAigZVH
14nppk7sMVv91n1Nch6DQKaFto3wVmh8yT
16KVwFVDfU3DKrvnGGSM7hsGp3MnvHczuB
17tXBRCQzQz87zYetp3wwJRms4fcWN4a8v
18ws2qaW2xBRWGCmfjnDiDHa55A5iSJogP
18xEu7DB8u58ivNa3VwEFeEc4ZbjtMVtPD
19w2MURRz5LsjNHCckmp65YX4WCc7kJdJF
1APGxVLKXhXepeaAjV6z3s4d7xCYXXDwmj
1Aw7mXtLMDjTBNcaqjv6cT935BEQQr5vRF
1B3m4F831f9u6ySnpYbUwgriJAgS3tuso5
1BpqxJp2LEban4mJou5rDHYmzA9eTwKbXY
1CbvcQXEYrqXqbBczHL8to3xeVZ3EsgrhH
1DKwr32h5F6uuUmePdT7esZ21AfK7ovASK
1FRtwC64bWcMb7RGBcwLJTup6tYrCMs9ge
1HQT2UZEK4i3yHnYbVTaXNccgnM45th94f
1MtUY5R3xixWfthqrprVPWMMTwR5A7GU2x
1nYrmtXVjX9G3Q86tdKcKQRCq2MPVvNp9

What are your opinions?
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
supika
on 23/09/2019, 14:14:09 UTC
#105 is solved. I'll post the private key later, after learn most significant BTC forks. A checkpoint right now is uncompressed address that corresponds to the same private key: 1JATjHbShdvgkvGHyoRv1vTnEeiibqMVnj.
Thanks very much for the creator of the puzzle! I have learned so many beautiful math at puzzle solving.   

@57e
What hardware did you used, CPU/GPU?
How long the discovery of private key took?
In your opinion the other keys up to a point can be found without huge resources?
I`m thinking that if huge resources are necessary only few people have access to huge amount of processing power.
Thanks!

I have used my own version of CUDA GPU code which almost exactly reproduces Pollard's Kangaroo algorithm published earlier as Python code. Solving #105 takes 1 month of working of GTX 1080ti at 270-275 Mh/s, and last 2 week of work of all my available GPUs (total h/s was approximately 1800Mh/s). So, it was not so simple as the Python code presented. I haven't reached published by j2002ba2 1600Mh/s. I has obtained only 470Mh/s with a cloud GPU server and one Tesla V100. I'm not a good programmer in CUDA, that why.
I guess, huge power is necessary for problems behind #120, as mentioned before by j2002ba2. At least with today state of art of ECDLP. Not only GPU power, but CPU and storage too, because we need to generate a huge amount of distinguished points (it was 24GB of data in my case) and to analyze this data in appropriate time. I guess, it is the reason why #105 was unsolved so long time.
The luck was 25% in my case. Very good luck. I apologize for my English.

Thank you for you answer. Most of us we are not native english speakers so your english is ok.
So this puzzle is a fight between coders. I`m not a coder but I wish good luck to all brilliant coders Smiley
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin puzzle transaction ~32 BTC prize to who solves it
by
supika
on 23/09/2019, 07:14:57 UTC
#105 is solved. I'll post the private key later, after learn most significant BTC forks. A checkpoint right now is uncompressed address that corresponds to the same private key: 1JATjHbShdvgkvGHyoRv1vTnEeiibqMVnj.
Thanks very much for the creator of the puzzle! I have learned so many beautiful math at puzzle solving.   

@57e
What hardware did you used, CPU/GPU?
How long the discovery of private key took?
In your opinion the other keys up to a point can be found without huge resources?
I`m thinking that if huge resources are necessary only few people have access to huge amount of processing power.
Thanks!
Post
Topic
Board Bitcoin Discussion
Re: Bitcoin challenge transaction: ~100 BTC total bounty to solvers!
by
supika
on 19/09/2019, 08:43:59 UTC
This "another" key works as well. Try to check it in bitcoin address generator, or try to import this file into your wallet. You will receive the access to the same address of wallet #62 lol )

Maximum value for secp256k1 is:

FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C D0364141

Your key is above this value:

FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B F60FB2AB 8647ED2F

Some software will correctly reject this out of range value, but others will just overflow and wrap max+1 to 0.

The result of F60FB2AB 8647ED2F minus BFD25E8C D0364141 is 363D541E B611ABEE, which is the "proper" key. That's why your key works: when wrapped around it ends up being the same calculated value.

(If this was a clever joke, sorry that I spoiled it. Smiley )

It is possible that some private keys to be "outside" of the standard agreed key space? Somewhere where nobody will search?