Bitcoin Forum
June 15, 2024, 02:37:18 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2]  All
  Print  
Author Topic: Как получить спис. транз. с адресами?  (Read 2059 times)
Valle
Full Member
***
Offline Offline

Activity: 177
Merit: 101


View Profile
January 04, 2014, 01:55:46 AM
 #21

это может быть новые коины, тогда входов вообще не будет.
Ну, полагаю, что если я не участвую в майнинге, то этот вариант мне не грозит. Wink

ну да, там может быть какой-нибудь другой ребус (скрипт)
Вот это интересный вариант. Как это так: какой-то "скрипт" в том месте, где должен быть адрес?

Могут быть выходы, которые может потратить вообще кто-угодно. Перевод с адреса на адрес требуя подпись этого адреса - это всего-лишь одна возможность использования.
Это тоже вариант инетересный. Разве в алгоритме предусмотрена возможность оправить деньги "любому получателю"? Где бы про это почитать подробнее?
https://en.bitcoin.it/wiki/Script
icreator
Legendary
*
Offline Offline

Activity: 1554
Merit: 1008



View Profile WWW
August 12, 2014, 07:21:05 PM
 #22

берешь с txid asm вторую часть после пробела, это будет public key и...
Code:
function get_address($publickey) {
// step 1

$step1=hexStringToByteString($publickey);

// step 2

$step2=hash("sha256",$step1);


// step 3

$step3=hash('ripemd160',hexStringToByteString($step2));

// step 4

$step4="00".$step3;

// step 5

$step5=hash("sha256",hexStringToByteString($step4));

// step 6

$step6=hash("sha256",hexStringToByteString($step5));

// step 7

$checksum=substr($step6,0,8);

// step 8

$step8=$step4.$checksum;

// step 9
// base conversion is from hex to base58 via decimal.
// Leading hex zero converts to 1 in base58 but it is dropped
// in the intermediate decimal stage.  Simply added back manually.

$step9=bc_base58_encode(bc_hexdec($step8));
return $step9;
}

function hexStringToByteString($hexString){
    $len=strlen($hexString);

    $byteString="";
    for ($i=0;$i<$len;$i=$i+2){
        $charnum=hexdec(substr($hexString,$i,2));
        $byteString.=chr($charnum);
    }

return $byteString;
}


// BCmath version for huge numbers
function bc_arb_encode($num, $basestr) {
    if( ! function_exists('bcadd') ) {
        Throw new Exception('You need the BCmath extension.');
    }

    $base = strlen($basestr);
    $rep = '';

    while( true ){
        if( strlen($num) < 2 ) {
            if( intval($num) <= 0 ) {
                break;
            }
        }
        $rem = bcmod($num, $base);
        $rep = $basestr[intval($rem)] . $rep;
        $num = bcdiv(bcsub($num, $rem), $base);
    }
    return $rep;
}

function bc_arb_decode($num, $basestr) {
    if( ! function_exists('bcadd') ) {
        Throw new Exception('You need the BCmath extension.');
    }

    $base = strlen($basestr);
    $dec = '0';

    $num_arr = str_split((string)$num);
    $cnt = strlen($num);
    for($i=0; $i < $cnt; $i++) {
        $pos = strpos($basestr, $num_arr[$i]);
        if( $pos === false ) {
            Throw new Exception(sprintf('Unknown character %s at offset %d', $num_arr[$i], $i));
        }
        $dec = bcadd(bcmul($dec, $base), $pos);
    }
    return $dec;
}


// base 58 alias
function bc_base58_encode($num) {
    return bc_arb_encode($num, '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz');
}
function bc_base58_decode($num) {
    return bc_arb_decode($num, '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz');
}

//hexdec with BCmath
function bc_hexdec($num) {
    return bc_arb_decode(strtolower($num), '0123456789abcdef');
}
function bc_dechex($num) {
    return bc_arb_encode($num, '0123456789abcdef');
}

а для этого не нужно базу блоков делать с индексом :
тоесть bitcoin-qt НЕ нужно запустить с параметром '-txindex 1' ?

Erachain Blockchain is fully ready for use Digital Ecosystem based on blockchain technology for business and government with low transaction costs, identification and built-in functions.
+Decentralized exchange of tokens in Erachain
Pages: « 1 [2]  All
  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!