Bitcoin Forum
August 30, 2025, 11:01:28 AM *
News: Latest Bitcoin Core release: 29.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 [220] 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 ... 579 »
  Print  
Author Topic: Bitcoin puzzle transaction ~32 BTC prize to who solves it  (Read 333458 times)
citb0in
Hero Member
*****
Offline Offline

Activity: 1050
Merit: 783


Bitcoin g33k


View Profile
January 22, 2024, 05:39:15 AM
 #4381

Agreed it is an avalanche effect, up to a point. From the private key perspective, but not the public key perspective.
The avalanche effect refers to the property where a small change in the input data results in a significantly different output (hash value). In other words, even a slight modification to the input should cause a drastic and unpredictable change in the hash output. This is a crucial property for cryptographic for all kind of hash functions. These properties do not distinct between a pubkey or address generation, hash functions were made to fulfill this.

Some signs are invisible, some paths are hidden - but those who see, know what to do. Follow the trail - Follow your intuition - [bc1qqnrjshpjpypepxvuagatsqqemnyetsmvzqnafh]
WanderingPhilospher
Sr. Member
****
Offline Offline

Activity: 1400
Merit: 271

Shooters Shoot...


View Profile
January 22, 2024, 06:46:51 AM
 #4382

Agreed it is an avalanche effect, up to a point. From the private key perspective, but not the public key perspective.
The avalanche effect refers to the property where a small change in the input data results in a significantly different output (hash value). In other words, even a slight modification to the input should cause a drastic and unpredictable change in the hash output. This is a crucial property for cryptographic for all kind of hash functions. These properties do not distinct between a pubkey or address generation, hash functions were made to fulfill this.

Lol, thanks for the education on hashing and cryptographic properties. I appreciate you.

If you take a hash160 and change the last character, how does that affect the final public address? Remember, it goes through 2 more SHA256 rounds. Is the final public address changed drastically?

What if we replace the last 5-10 characters? Drastic change?
3dmlib
Jr. Member
*
Offline Offline

Activity: 66
Merit: 2


View Profile
January 22, 2024, 01:05:22 PM
 #4383

I think even if i had two of first HEX numbers i wouldn't be able to solve it anyway.

The remaining search space is 2^(66-2) = 2^64.

It would take approximately 584 years to complete the task in Python.

So your saying theres a chance?

wheew you had me going there!

64 puzzle was solved 2022-09-10 then we had 3090 maximum.
Now we have 4090 which is 2x faster.
Next year we'll have 5090 which probably even 2x faster then 4090.

66 puzzle exactly have 4x more difficulty then 64 puzzle.
So next year solving 66 with 5090 will be the same probability as solving 64 with 3090 in 2022.
AlanJohnson
Member
**
Offline Offline

Activity: 185
Merit: 11


View Profile
January 22, 2024, 01:39:52 PM
 #4384


66 puzzle exactly have 4x more difficulty then 64 puzzle.


Are you sure ?
nomachine
Full Member
***
Offline Offline

Activity: 742
Merit: 110


View Profile
January 22, 2024, 01:57:50 PM
Last edit: May 09, 2024, 11:41:06 AM by nomachine
 #4385

share with us sir


I can share puzzle search app in Rust. I'm sick of code in Python. Grin

main.rs
Code:
extern crate bitcoin;
extern crate rand;
extern crate reqwest;
extern crate secp256k1;
extern crate num_cpus;
extern crate thousands;
extern crate threadpool;
extern crate chrono;

use bitcoin::network::Network;
use bitcoin::address::Address;
use bitcoin::key::PrivateKey;
use rand::Rng;
use std::env;
use std::fs::File;
use std::io::Write;
use std::sync::{Arc, Mutex};
use threadpool::ThreadPool;
use chrono::Local;

const TARGET: &str = "1QCbW9HWnwQWiQqVo5exhAnmfqKRrCRsvW";

fn main() {
    // Print the current time when the script starts
    let current_time = Local::now();
    println!("[+] Puzzle search\n[+] Script started at: {}", current_time);

    let args: Vec<String> = env::args().collect();
    let num_threads = if args.len() < 2 {
        num_cpus::get() as u32
    } else {
        args[1].parse().expect("Failed to parse number of threads")
    };

    let begin: u128 = 16383;
    let end: u128 = 32767;

    println!(
        "[+] concurrency:{}\n[+] from:{} to:{}\n[+] target:{}",
        num_threads,
        begin,
        end,
        TARGET
    );

    let found_flag = Arc::new(Mutex::new(false));
    let pool = ThreadPool::new(num_threads.try_into().unwrap());

    for _ in 0..num_threads {
        let pool = pool.clone();
        let found_flag = found_flag.clone();
        pool.execute(move || {
            let mut rng = rand::thread_rng();
            random_lookfor(rng.gen_range(begin..end), end, found_flag);
        });
    }

    pool.join();
}

fn random_lookfor(begin: u128, end: u128, found_flag: Arc<Mutex<bool>>) {
    let secp = bitcoin::secp256k1::Secp256k1::new();

    loop {
        let value: u128 = rand::thread_rng().gen_range(begin..end);
        let private_key_hex = format!("{:0>64x}", value);
        let private_key_bytes = hex::decode(&private_key_hex).expect("Failed to decode private key hex");

        let private_key: PrivateKey = PrivateKey {
            compressed: true,
            network: Network::Bitcoin,
            inner: bitcoin::secp256k1::SecretKey::from_slice(&private_key_bytes).unwrap(),
        };

        let public_key = private_key.public_key(&secp);
        let address = Address::p2pkh(&public_key, Network::Bitcoin).to_string();
        print!(
            "\r[+] WIF: {}",
            private_key
        );

        // Check if a match has been found by another thread
        let mut found_flag = found_flag.lock().unwrap();
        if *found_flag {
            break;
        }

        if address == TARGET {
            let current_time = Local::now();
            let line_of_dashes = "-".repeat(80);
            println!(
                "\n[+] {}\n[+] KEY FOUND! {}\n[+] decimal: {} \n[+] private key: {} \n[+] public key: {} \n[+] address: {}\n[+] {}",
                line_of_dashes,
                current_time,
                value,
                private_key,
                public_key,
                address,
                line_of_dashes         
            );

            // Set the flag to true to signal other threads to exit
            *found_flag = true;

            if let Ok(mut file) = File::create("KEYFOUNDKEYFOUND.txt") {
                let line_of_dashes = "-".repeat(130);
                writeln!(
                    &mut file,
                "\n{}\nKEY FOUND! {}\ndecimal: {} \nprivate key: {} \npublic key: {} \naddress: {}\n{}",
                line_of_dashes,
                current_time,
                value,
                private_key,
                public_key,
                address,
                line_of_dashes     
                )
                .expect("Failed to write to file");
            } else {
                eprintln!("Error: Failed to create or write to KEYFOUNDKEYFOUND.txt");
            }
            break;
        }
    }
}

Cargo.toml
Code:
[package]
name = "puzzle"
version = "0.1.0"
edition = "2021"

[dependencies]
threadpool = "1.8.0"
bitcoin_hashes = "0.13.0"                
bitcoin = "0.31.1"
hex = "0.4.3"
rand = "0.8.5"
reqwest = "0.11.23"
secp256k1 = "0.28.1"
num_cpus = "1.16.0"
thousands = "0.2.0"
chrono = "0.4"

  • --------------------------------------------------------------------------------
  • KEY FOUND!
  • decimal: 26867
  • private key: KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFY5iMZbuRxj
  • public key: 02fea58ffcf49566f6e9e9350cf5bca2861312f422966e8db16094beb14dc3df2c
  • address: 1QCbW9HWnwQWiQqVo5exhAnmfqKRrCRsvW
  • --------------------------------------------------------------------------------

Install Rust:
Code:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Configure Rust Environment:
Code:
source $HOME/.cargo/env

Code:
export PATH="$HOME/.cargo/bin:$PATH"

Create a Puzzle Rust Project:
Code:
cargo new puzzle

copy/paste above main.rs & Cargo.toml

Code:
cd  puzzle

Build program
Code:
cargo build --release

Start
Code:
cargo run

or directly as a bin application
Code:
./target/release/puzzle

p.s.
You can remove :      
Code:
        print!(
            "\r[+] WIF: {}",
            private_key
        );

for more speed....

I have similar levels of performance in Rust and C. But much less bugs in Rust  Wink

BTC: bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
3dmlib
Jr. Member
*
Offline Offline

Activity: 66
Merit: 2


View Profile
January 22, 2024, 07:50:38 PM
 #4386


66 puzzle exactly have 4x more difficulty then 64 puzzle.


Are you sure ?

Yes.
zahid888
Member
**
Online Online

Activity: 329
Merit: 24

the right steps towerds the goal


View Profile
January 23, 2024, 08:41:28 AM
 #4387

Agreed it is an avalanche effect, up to a point. From the private key perspective, but not the public key perspective.

Meaning, normally, if you have the same number of leading public key characters, they often will hash to the same leading characters in an address.

I was recently reading this, somewhere.

However, the private key is the wildcard. Trying to match the first x amount of characters and it hash to same public key or address is not the norm.

People like to tinker. Nothing wrong with that. Their idea may spawn something that helps solve quicker. Maybe, maybe not, but it doesn’t hurt anyone from a person tinkering out their ideas.

Thank you, I felt very good hearing this, look at the jump which I want, in sequence still challenging but far better then blindly random..



1BGvwggxfCaHGykKrVXX7fk8GYaLQpeixA
Feron
Jr. Member
*
Offline Offline

Activity: 69
Merit: 1


View Profile
January 23, 2024, 12:15:23 PM
 #4388

It's not that easy in the 66 bit range there is only one address, those numbers must be 100% exactly one bit different and you will get a completely different address
rosengold
Jr. Member
*
Offline Offline

Activity: 149
Merit: 7


View Profile
January 25, 2024, 08:47:39 AM
 #4389

share with us sir


I can share puzzle search app in Rust. I'm sick of code in Python. Grin

main.rs
Code:
extern crate bitcoin;
extern crate rand;
extern crate reqwest;
extern crate secp256k1;
extern crate num_cpus;
extern crate thousands;
extern crate threadpool;
extern crate chrono;

use bitcoin::network::Network;
use bitcoin::address::Address;
use bitcoin::key::PrivateKey;
use rand::Rng;
use std::env;
use std::fs::File;
use std::io::Write;
use std::sync::{Arc, Mutex};
use threadpool::ThreadPool;
use chrono::Local;

const TARGET: &str = "1QCbW9HWnwQWiQqVo5exhAnmfqKRrCRsvW";

fn main() {
    // Print the current time when the script starts
    let current_time = Local::now();
    println!("[+] Puzzle search\n[+] Script started at: {}", current_time);

    let args: Vec<String> = env::args().collect();
    let num_threads = if args.len() < 2 {
        num_cpus::get() as u32
    } else {
        args[1].parse().expect("Failed to parse number of threads")
    };

    let begin: u128 = 16383;
    let end: u128 = 32767;

    println!(
        "[+] concurrency:{}\n[+] from:{} to:{}\n[+] target:{}",
        num_threads,
        begin,
        end,
        TARGET
    );

    let found_flag = Arc::new(Mutex::new(false));
    let pool = ThreadPool::new(num_threads.try_into().unwrap());

    for _ in 0..num_threads {
        let pool = pool.clone();
        let found_flag = found_flag.clone();
        pool.execute(move || {
            let mut rng = rand::thread_rng();
            random_lookfor(rng.gen_range(begin..end), end, found_flag);
        });
    }

    pool.join();
}

fn random_lookfor(begin: u128, end: u128, found_flag: Arc<Mutex<bool>>) {
    let secp = bitcoin::secp256k1::Secp256k1::new();

    loop {
        let value: u128 = rand::thread_rng().gen_range(begin..end);
        let private_key_hex = format!("{:0>64x}", value);
        let private_key_bytes = hex::decode(&private_key_hex).expect("Failed to decode private key hex");

        let private_key: PrivateKey = PrivateKey {
            compressed: true,
            network: Network::Bitcoin,
            inner: bitcoin::secp256k1::SecretKey::from_slice(&private_key_bytes).unwrap(),
        };

        let public_key = private_key.public_key(&secp);
        let address = Address::p2pkh(&public_key, Network::Bitcoin).to_string();
        print!(
            "\r[+] WIF: {}",
            private_key
        );

        // Check if a match has been found by another thread
        let mut found_flag = found_flag.lock().unwrap();
        if *found_flag {
            break;
        }

        if address == TARGET {
            let current_time = Local::now();
            let line_of_dashes = "-".repeat(80);
            println!(
                "\n[+] {}\n[+] KEY FOUND! {}\n[+] decimal: {} \n[+] private key: {} \n[+] public key: {} \n[+] address: {}\n[+] {}",
                line_of_dashes,
                current_time,
                value,
                private_key,
                public_key,
                address,
                line_of_dashes          
            );

            // Set the flag to true to signal other threads to exit
            *found_flag = true;

            if let Ok(mut file) = File::create("KEYFOUNDKEYFOUND.txt") {
                let line_of_dashes = "-".repeat(130);
                writeln!(
                    &mut file,
                "\n{}\nKEY FOUND! {}\ndecimal: {} \nprivate key: {} \npublic key: {} \naddress: {}\n{}",
                line_of_dashes,
                current_time,
                value,
                private_key,
                public_key,
                address,
                line_of_dashes      
                )
                .expect("Failed to write to file");
            } else {
                eprintln!("Error: Failed to create or write to KEYFOUNDKEYFOUND.txt");
            }
            break;
        }
    }
}

Cargo.toml
Code:
[package]
name = "puzzle"
version = "0.1.0"
edition = "2021"

[dependencies]
threadpool = "1.8.0"
bitcoin_hashes = "0.13.0"                
bitcoin = "0.31.1"
hex = "0.4.3"
rand = "0.8.5"
reqwest = "0.11.23"
secp256k1 = "0.28.1"
num_cpus = "1.16.0"
thousands = "0.2.0"
chrono = "0.4"

  • --------------------------------------------------------------------------------
  • KEY FOUND!
  • decimal: 26867
  • private key: KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFY5iMZbuRxj
  • public key: 02fea58ffcf49566f6e9e9350cf5bca2861312f422966e8db16094beb14dc3df2c
  • address: 1QCbW9HWnwQWiQqVo5exhAnmfqKRrCRsvW
  • --------------------------------------------------------------------------------

Install Rust:
Code:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Configure Rust Environment:
Code:
source $HOME/.cargo/env

Code:
export PATH="$HOME/.cargo/bin:$PATH"

Create a Puzzle Rust Project:
Code:
cargo new puzzle

copy/paste above main.rs & Cargo.toml

Code:
cd  puzzle

Build program
Code:
cargo build --release

Start
Code:
cargo run

or directly as a bin application
Code:
./target/release/puzzle

p.s.
You can remove :      
Code:
        print!(
            "\r[+] WIF: {}",
            private_key
        );

for more speed....

I have similar levels of performance in Rust and C. But much less bugs in Rust  Wink

amazing, thanks.

I will study your code and implement some own logic of mine.
nomachine
Full Member
***
Offline Offline

Activity: 742
Merit: 110


View Profile
January 25, 2024, 09:28:57 PM
 #4390



amazing, thanks.

I will study your code and implement some own logic of mine.

It has incredible possibilities for compiling. I was able to run this on an ARM processor as well on Amd Zen 2, 3 and 4

 on almost everything..... Grin

https://doc.rust-lang.org/rustc/platform-support.html

example
Code:
RUSTFLAGS="-C target-cpu=znver4" cargo build --release --target=x86_64-unknown-linux-gnu

run
Code:
./target/x86_64-unknown-linux-gnu/release/puzzle

BTC: bc1qdwnxr7s08xwelpjy3cc52rrxg63xsmagv50fa8
Tepan
Jr. Member
*
Offline Offline

Activity: 82
Merit: 1


View Profile
January 27, 2024, 07:32:32 AM
 #4391

is worth it to search the address by this method?

[2024-01-27 14:30:18] : Found address 13zCn8PenSN9QLGdeyccJv7kb8m8RnkDGY
[2024-01-27 14:30:18] : Private key HEX 0000000000000000000000000000000000000000000000030011c37937e0887a
[2024-01-27 14:30:18] : Found address 13zoZpGGwVs6ysE9wJbxWvyrWg5CLkVifw
[2024-01-27 14:30:18] : Private key HEX 0000000000000000000000000000000000000000000000030011c37937e0890d
[2024-01-27 14:30:19] Thread: Searched 3000 keys in 9.97 seconds
[2024-01-27 14:30:20] Thread: Searched 2000 keys in 11.07 seconds
[2024-01-27 14:30:20] Thread: Searched 3000 keys in 11.07 seconds
[2024-01-27 14:30:20] : Found address 13zb2pSKyRk7vbagvGvueczkrJ1aKJYpmR
[2024-01-27 14:30:20] : Private key HEX 0000000000000000000000000000000000000000000000030011c37937e08ad8

i only use Thread, any code to use with GPU or something else ? like pool scanning for faster ?
MrlostinBTC
Jr. Member
*
Offline Offline

Activity: 51
Merit: 30


View Profile
January 28, 2024, 04:58:34 PM
 #4392

Agreed it is an avalanche effect, up to a point. From the private key perspective, but not the public key perspective.

Meaning, normally, if you have the same number of leading public key characters, they often will hash to the same leading characters in an address.

I was recently reading this, somewhere.

However, the private key is the wildcard. Trying to match the first x amount of characters and it hash to same public key or address is not the norm.

People like to tinker. Nothing wrong with that. Their idea may spawn something that helps solve quicker. Maybe, maybe not, but it doesn’t hurt anyone from a person tinkering out their ideas.

bx sha256 1234 - hash 1234
3a103a4e5729ad68c02a678ae39accfbc0ae208096437401b7ceab63cca0622f - Produced EC key from hash
bx ec-to-public 3a103a4e5729ad68c02a678ae39accfbc0ae208096437401b7ceab63cca0622f
03b57de06f5c674af0d789530249bb658b0e317d4d179e1b1b1b0aa2ba668bb5f5 - Public key
bx ec-to-public 3a103a4e5729ad68c02a678ae39accfbc0ae208096437401b7ceab63cca0622a - Only last digit of public key has been changed
02e70d3902ef877ba400f15ec109e1933956da79b14d6d33054f50cad9c30e5d5d - Public key

Changing f to a on the EC key resulted in two very different pub keys.
03b57de06f5c674af0d789530249bb658b0e317d4d179e1b1b1b0aa2ba668bb5f5
02e70d3902ef877ba400f15ec109e1933956da79b14d6d33054f50cad9c30e5d5d

Resulting in the following addresses
bx ec-to-address 03b57de06f5c674af0d789530249bb658b0e317d4d179e1b1b1b0aa2ba668bb5f5
16sxaRqyfABv4LBsH1hEgj6tr1g5u2yNtC
bx ec-to-address 02e70d3902ef877ba400f15ec109e1933956da79b14d6d33054f50cad9c30e5d5d
1CQttaNNbyei9SPeo2WSc6fsc6asWmcvkP

However I have noticed public keys working towards address do somewhat share similar conversion traits. Not sure how it would be useful. Much like all the EC keys we are looking for all start the same. Just too many of possible values.
WanderingPhilospher
Sr. Member
****
Offline Offline

Activity: 1400
Merit: 271

Shooters Shoot...


View Profile
January 28, 2024, 05:03:48 PM
 #4393

Agreed it is an avalanche effect, up to a point. From the private key perspective, but not the public key perspective.

Meaning, normally, if you have the same number of leading public key characters, they often will hash to the same leading characters in an address.

I was recently reading this, somewhere.

However, the private key is the wildcard. Trying to match the first x amount of characters and it hash to same public key or address is not the norm.

People like to tinker. Nothing wrong with that. Their idea may spawn something that helps solve quicker. Maybe, maybe not, but it doesn’t hurt anyone from a person tinkering out their ideas.

bx sha256 1234 - hash 1234
3a103a4e5729ad68c02a678ae39accfbc0ae208096437401b7ceab63cca0622f - Produced EC key from hash
bx ec-to-public 3a103a4e5729ad68c02a678ae39accfbc0ae208096437401b7ceab63cca0622f
03b57de06f5c674af0d789530249bb658b0e317d4d179e1b1b1b0aa2ba668bb5f5 - Public key
bx ec-to-public 3a103a4e5729ad68c02a678ae39accfbc0ae208096437401b7ceab63cca0622a - Only last digit of public key has been changed
02e70d3902ef877ba400f15ec109e1933956da79b14d6d33054f50cad9c30e5d5d - Public key

Changing f to a on the EC key resulted in two very different pub keys.
03b57de06f5c674af0d789530249bb658b0e317d4d179e1b1b1b0aa2ba668bb5f5
02e70d3902ef877ba400f15ec109e1933956da79b14d6d33054f50cad9c30e5d5d
Agreed; did you see my follow up explanation/question?
Now do hash160 effect. Compare changing characters in hash160 to final BTC address.
brainless
Member
**
Offline Offline

Activity: 418
Merit: 35


View Profile
January 28, 2024, 07:37:33 PM
Last edit: May 01, 2024, 08:28:44 PM by Mr. Big
 #4394

I'm very exciting to see the results of @mcdouglasx, as he said that he developed a new method and will solve #130 before the end of January.

It's 10 days left, so ! Wink let's go!
3 days left



Any one seen PK for #120 #125
Any updates regarding above solved addresses ?

13sXkWqtivcMtNGQpskD78iqsgVy9hcHLF
zahid888
Member
**
Online Online

Activity: 329
Merit: 24

the right steps towerds the goal


View Profile
January 30, 2024, 07:12:02 AM
 #4395

In the spirit of trying and testing new ideas I have created a gui slider bar with the min:max decimal representations of puzzle #66. You can slide the bar and it will print to the terminal. This idea doesn't really work and I imagine it's because of memory and cpu limitations.

UPDATE:
This code is a working example. It still has many limitations.

problem 1:   every number printed to the terminal is a multiple of 2.

problem 2:   the hexadecimal output is limited to 14 characters, I always have 000 at the end of the string.


slider_code.py
Code:
import tkinter as tk
from bitcoin import *

def update_bitcoin_key(value):
    decimal_value = int(value)
    hex_private_key = hex(int(decimal_value))[2:]
    private_key = '0' * 47 + hex_private_key + "21"
    public_key = privtopub(private_key)
    address = pubtoaddr(public_key)
    print(hex_private_key)
    #print(public_key)
    print(address)

root = tk . Tk ()    #remove spaces

value_slider = tk.Scale(root, from_=0x20000000000000000, to=0x3ffffffffffffffff, orient=tk.HORIZONTAL, length=400, command=update_bitcoin_key)
value_slider.pack(pady=20)

root.mainloop()
The default behavior of Tkinter's Scale widget is to increment in steps based on the range of values it's handling. With such a large range a slider might not be the best UI element.

1BGvwggxfCaHGykKrVXX7fk8GYaLQpeixA
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 38
Merit: 1


View Profile
January 30, 2024, 05:06:05 PM
 #4396

Anyone know how to get the private key for 58.5?
citb0in
Hero Member
*****
Offline Offline

Activity: 1050
Merit: 783


Bitcoin g33k


View Profile
January 30, 2024, 05:11:27 PM
 #4397

Anyone know how to get the private key for 58.5?

Sure, nothing could be easier Cheesy

Just generate it from decimal 58.5 or HEX 3a.8  Roll Eyes Grin

Jokes aside - if you want to derive a private key from a floating-point decimal for experimental or educational purposes, you could devise your own method. Bitcoin private key from a floating-point decimal isn't standard practice, as Bitcoin private keys are typically generated using cryptographic algorithms that rely on random numbers.

good luck in whatever you're trying to achieve


Some signs are invisible, some paths are hidden - but those who see, know what to do. Follow the trail - Follow your intuition - [bc1qqnrjshpjpypepxvuagatsqqemnyetsmvzqnafh]
mabdlmonem
Jr. Member
*
Offline Offline

Activity: 38
Merit: 1


View Profile
January 30, 2024, 05:13:24 PM
 #4398

Anyone know how to get the private key for 58.5?

Sure, nothing could be easier Cheesy

Just generate it from decimal 58.5 or HEX 3a.8  Roll Eyes Grin

Jokes aside - if you want to derive a private key from a floating-point decimal for experimental or educational purposes, you could devise your own method. Bitcoin private key from a floating-point decimal isn't standard practice, as Bitcoin private keys are typically generated using cryptographic algorithms that rely on random numbers.

good luck in whatever you're trying to achieve


I know already how to get private key that has floating 0.5 , I just curious if anyone got it
mcdouglasx
Sr. Member
****
Offline Offline

Activity: 742
Merit: 395



View Profile WWW
January 30, 2024, 07:44:36 PM
 #4399

Anyone know how to get the private key for 58.5?

Code:
import bitcoin

target= 585

Div=10

N=115792089237316195423570985008687907852837564279074904382605163141518161494337

a=bitcoin.inv(Div,N)

b= target*a % N

print("target r:",target/Div)
print("pk:",b)

▄▄█████████████████▄▄
▄█████████████████████▄
███▀▀█████▀▀░░▀▀███████

██▄░░▀▀░░▄▄██▄░░█████
█████░░░████████░░█████
████▌░▄░░█████▀░░██████
███▌░▐█▌░░▀▀▀▀░░▄██████
███░░▌██░░▄░░▄█████████
███▌░▀▄▀░░█▄░░█████████
████▄░░░▄███▄░░▀▀█▀▀███
██████████████▄▄░░░▄███
▀█████████████████████▀
▀▀█████████████████▀▀
Rainbet.com
CRYPTO CASINO & SPORTSBOOK
|
█▄█▄█▄███████▄█▄█▄█
███████████████████
███████████████████
███████████████████
█████▀█▀▀▄▄▄▀██████
█████▀▄▀████░██████
█████░██░█▀▄███████
████▄▀▀▄▄▀███████
█████████▄▀▄███
█████████████████
███████████████████
██████████████████
███████████████████
 
 $20,000 
WEEKLY RAFFLE
|



█████████
█████████ ██
▄▄█░▄░▄█▄░▄░█▄▄
▀██░▐█████▌░██▀
▄█▄░▀▀▀▀▀░▄█▄
▀▀▀█▄▄░▄▄█▀▀▀
▀█▀░▀█▀
10K
WEEKLY
RACE
100K
MONTHLY
RACE
|

██









█████
███████
███████
█▄
██████
████▄▄
█████████████▄
███████████████▄
░▄████████████████▄
▄██████████████████▄
███████████████▀████
██████████▀██████████
██████████████████
░█████████████████▀
░░▀███████████████▀
████▀▀███
███████▀▀
████████████████████   ██
 
[..►PLAY..]
 
████████   ██████████████
brainless
Member
**
Offline Offline

Activity: 418
Merit: 35


View Profile
January 30, 2024, 08:10:53 PM
 #4400

Anyone know how to get the private key for 58.5?

Code:
import bitcoin

target= 585

Div=10

N=115792089237316195423570985008687907852837564279074904382605163141518161494337

a=bitcoin.inv(Div,N)

b= target*a % N

print("target r:",target/Div)
print("pk:",b)

58.5

PK 0.5
57896044618658097711785492504343953926418782139537452191302581570759080747169

pk 58
58

58.5
57896044618658097711785492504343953926418782139537452191302581570759080747169
+
58
=
57896044618658097711785492504343953926418782139537452191302581570759080747227

in hex
0x7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20db

13sXkWqtivcMtNGQpskD78iqsgVy9hcHLF
Pages: « 1 ... 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 [220] 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 ... 579 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!