You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

57 lines
1.3 KiB

#
BEGIN { if (-e $ENV{SITE}.'/lib') { use lib $ENV{SITE}.'/lib'; } }
our $dbug=1;
print "--- $0\n";
use YAML::Syck qw(Dump);
use seed qw(readsalt);
use encode qw(mbase58);
use CAStore qw(CASRead);
use botname qw(botname);
use ECKeys qw($keys ecsign ecverif loadKeys eckeygen saveKeys);
printf "--- keys %s...\n",Dump($keys);
use Genesis qw(createCoinBaseTx);
my $nonce = &readsalt($ENV{SITE}.'/salts/CBtxi.yml');
printf "=== createCoinBaseTx w/ default message ===\n";
# &createCoinBaseTx($tic,$msg,$nonce,$type,$dif);
# using default message ...
my ($txaddr,$txcoin) = &createCoinBaseTx(1625714463012468224,undef,$nonce,'CBtxi',($dbug?4:7));
printf "txaddr: %s\n",$txaddr;
printf "=== get it from the pool (for verification) ===\n";
my $tx = &CASRead($ENV{SITE}.'/txpool',$txaddr);
printf "--- tx %s...\n",Dump($tx);
use TXPOOL qw(isTxValid);
$TXPOOL::UTXO->{coinbase} = 100;
my $valid = isTxValid($tx);
printf "tx: %s is %s\n",$txaddr,($valid?'valid':'rejected');
if (0) {
my $msg= qq'["coinbase","100","default coinbase"]';
my $sig = &ecsign('coinbase',$msg);
printf "- default coinbase: %s\n",$sig;
my $key58 = $keys->{coinbase}{public};
print "verification ...";
my $sigok = &ecverif($key58,$sig,$msg);
print ($sigok?'ok':'failed'),"\n";
}
printf "DBUG %s @%s\n",$::db++,__LINE__; # <------------------------------------- /!\ ---
exit $?;
1;