|
25 | 25 | #include"hash/sha512.h" |
26 | 26 | #include"hash/sha256.h" |
27 | 27 |
|
28 | | -#defineRELEASE"1.17" |
| 28 | +#defineRELEASE"1.18" |
29 | 29 |
|
30 | 30 | usingnamespacestd; |
31 | 31 |
|
@@ -456,12 +456,18 @@ int main(int argc, char* argv[]) { |
456 | 456 | a++; |
457 | 457 | string priv =string(argv[a]); |
458 | 458 | Int k; |
459 | | - k.SetBase16(argv[a]); |
| 459 | +bool isComp =true; |
| 460 | +if(priv[0]=='K') { |
| 461 | + k = secp->DecodePrivateKey((char *)priv.c_str(),&isComp); |
| 462 | + }else { |
| 463 | + k.SetBase16(argv[a]); |
| 464 | + } |
460 | 465 | Point p = secp->ComputePublicKey(&k); |
461 | | -printf("PubKey: %s\n",secp->GetPublicKeyHex(true,p).c_str()); |
462 | | -printf("Addr (P2PKH): %s\n", secp->GetAddress(P2PKH,true,p).c_str()); |
463 | | -printf("Addr (P2SH): %s\n", secp->GetAddress(P2SH,true,p).c_str()); |
464 | | -printf("Addr (BECH32): %s\n", secp->GetAddress(BECH32,true,p).c_str()); |
| 466 | +printf("PrivAddr: p2pkh:%s\n",secp->GetPrivAddress(isComp,k).c_str()); |
| 467 | +printf("PubKey: %s\n",secp->GetPublicKeyHex(isComp,p).c_str()); |
| 468 | +printf("Addr (P2PKH): %s\n", secp->GetAddress(P2PKH,isComp,p).c_str()); |
| 469 | +printf("Addr (P2SH): %s\n", secp->GetAddress(P2SH,isComp,p).c_str()); |
| 470 | +printf("Addr (BECH32): %s\n", secp->GetAddress(BECH32,isComp,p).c_str()); |
465 | 471 | exit(0); |
466 | 472 | }elseif (strcmp(argv[a],"-rp") ==0) { |
467 | 473 | a++; |
|