Specified data directory does not exist – but it does…

anyone ever had a similar issue where the directory exists but bitcoin-cli isn’t recognizing it? Perhaps this is related to me setting the folder up as a symlink to my external HDD?

Thank you!

-Mac-mini:~ $ bitcoin-cli -regtest generate 1
Error reading configuration file: specified data directory "/Users/---/Library/Application\ Support/Bitcoin" does not exist.
-Mac-mini:~ $ cd /Users/---/Library/Application\ Support/Bitcoin
-Mac-mini:Bitcoin $ ls
banlist.dat bitcoind.pid    chainstate  db.log      peers.dat
bitcoin.conf    blocks      database    debug.log   wallet.dat

Private key only wallet for Bitcoin Core regtest

I’m running a private regtest network on GCP. I generated a list of 2000 vanity testnet addresses ordered sequentially from prefixes mooo1 to n2ooo with their respective pub/priv key pairs, and to prevent complications, I want to only have one private key for each node (change in outgoing transactions are sent to the original address). Because there’s no security concern in my setting (it’s just a performance test, no money or attacker is involved), I want to make each bitcoind instance only use a single private key for all transactions, and not generate new addresses through an HD wallet. This is because viewing transactions is much more streamlined. I can tell which node is sending bitcoins to which other node, and diagnose issues more easily. Is there an option in bitcoind to only use a single private key?

How do different implementations of the Bitcoin Cash client know which type of coin they’re processing?

TL;DR: Where in this code does the SV client figure out that it’s not processing an ABC blockchain?

This image prompted my question.

There are a couple different mutually incompatible (I am assuming anyway) implementations of the Bitcoin Cash cryptocurrency client software…

  1. Bitcoin Cash ABC
  2. Bitcon Cash SV

My question assumes that each implementation processes their respective transactions using similar but mutually-incompatible blockchain processing rules.

Is it normal to run a Bitcoin Cash SV client implementation in a Bitcoin Cash ABC network? And vise versa? How, then, does one implementation know that the network it is running in, is (in)compatible with its particular processing rules?

bitcoin core wallet transactions syncing

ill explain the steps i want figure out.

I have an empty bitcoin core wallet .

Step 1. I backup the wallet and go offline. 

Step 2. Someone send me a bitcoin to this wallet and i can see it(in balance).

Step 3 .Ill restore my bitcoin core wallet to the initial point..

What will happen then ?

I assume that ill start over with the blockchain from scratch, And
what will happen is that initially the balance will be 0 (since my
node is not yet aware of the transaction). So ill need to synchronize
up to the block where the transaction was included (this will take
some time). At that time the balance will be updated. After that the
synchronization will continue until it’s up-to-date with the head.

I’m trying to avoid making test this week because lake of time,
So if someone can help and know the exactly answer, i will be glad to be updated ASAP .

If not , ill update after testing if its working as i mentioned above.

CScript to CPubKey or derive CPubKey from CScript

Please can someone advise if it is possible to derive the CPubKey from a CSript object? Provided i get it up with an address before hand,

I can use numerous functions to attain all the info from the CPubKey using functions, but can you make a CPubKey from a CSript?

Or are they too much chalk and cheese?

Thank you,

Following the first answer I’ve tried the below to no joy. The script returns totally empty:

CScript scriptPubKey1;
CBitcoinAddress address("L4VPgtoBtuxsYMgyrRvQRadSV1Y139TDfd");

CScript::const_iterator it = scriptPubKey1.begin(); // or specifically, the location of the pubkey in the CScript object
opcodetype opcode;
std::vector<unsigned char> data;
scriptPubKey1.GetOp(it, opcode, data); // data now contains the byte vector

CPubKey pubkey3 = CPubKey(data);

Networking in cryptocurrency

I am learning and trying to implement my own cryptocurrency and I am thinking about how could I achieve the peer to peer connections.

I read that bitcoin is using DNS seeds for discovering users.
In such case when running full node at home, one must configure his router to forward the port, firewall, etc..

What do you think about webRTC technology? Do you think this could be good way of solving p2p network? In this case, no router configuration is needed and firewall is ok.

Do you see some pros/cons of these aproaches?

Is there a way to report/shutdown a Bitcoin Criminal/Bad-Actor?

I received a SPAM/Phishing/Blackmail email demanding payment to a specific Bitcoin wallet.

BTC: 15vUqauqHybEPvXYLv97WW4XwM2YHXYC1d

How can this criminal be shutdown?

If legal action is problematic, could a “User Rating/Classification” be added to BTC Wallets so that it’s possible to “tag” Bitcoin users who are using this technology for illegal purposes?

EDIT (evening of 20181125)

BitCoin Address Transactions for Wallet 15vUqauqHybEPvXYLv97WW4XwM2YHXYC1d

         |  Number of   |
         |   Receive    |
Date     | Transactions |
20181116 |         5    |
20181117 |         4    |
20181118 |         7    |
20181119 |        11    |
20181120 |         3    |
20181121 |         3    |
20181122 |         1    |
20181125 |         2    |

1.55036944 BTC scammed so far to just this wallet.
Other accumulator/consolidation wallets hold much more.

On 20181119 everything was transferred to BTC Wallet 38b3k1qkYDQDxX7FTZ14UtioemUmvH6Wfv. This wallet then showed receiving two transactions for the sum of 3.78129807 BTC.

On 20181120 small transactions to the origin wallet continued.

BTC Wallet 38b3k1qkYDQDxX7FTZ14UtioemUmvH6Wfv received one more transaction for a total of 3.78129807 BTC. This wallet was then transfered to BTC Wallet 1KNY4i1642h7Rhrd2YUUv6RCJ3eifybbeF which shows a total receipt of 15.31805607 BTC – all apparent consolidations on 20181120.

On 20181122 the contents of the original wallet was transferred to BTC Wallet 38ezWFTTFJbyAD1oHXzydfVAxsXUwZYukg. Less than 20 minutes later, this entire wallet was transferred to 2 other wallets.

Being a BitCoin criminal seems to be very lucrative.