From 7e903b3629975e4fc5bb02356aba1a8cd36b9c3a Mon Sep 17 00:00:00 2001 From: Ataraxia Date: Thu, 6 Nov 2025 10:16:58 +0530 Subject: [PATCH] Updating RPC documentation from Core to Knots --- doc/JSON-RPC-interface.md | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/doc/JSON-RPC-interface.md b/doc/JSON-RPC-interface.md index 10d8ee52ebe8d..9f271248f4243 100644 --- a/doc/JSON-RPC-interface.md +++ b/doc/JSON-RPC-interface.md @@ -64,7 +64,7 @@ bitcoin-cli -named createwallet mywallet load_on_startup=true ## Versioning -The RPC interface might change from one major version of Bitcoin Core to the +The RPC interface might change from one major version of Bitcoin Knots to the next. This makes the RPC interface implicitly versioned on the major version. The version tuple can be retrieved by e.g. the `getnetworkinfo` RPC in `version`. @@ -92,21 +92,21 @@ protocol in v27.0 and prior releases. ## Security -The RPC interface allows other programs to control Bitcoin Core, +The RPC interface allows other programs to control Bitcoin Knots, including the ability to spend funds from your wallets, affect consensus verification, read private data, and otherwise perform operations that can cause loss of money, data, or privacy. This section suggests how -you should use and configure Bitcoin Core to reduce the risk that its +you should use and configure Bitcoin Knots to reduce the risk that its RPC interface will be abused. - **Securing the executable:** Anyone with physical or remote access to - the computer, container, or virtual machine running Bitcoin Core can + the computer, container, or virtual machine running Bitcoin Knots can compromise either the whole program or just the RPC interface. This includes being able to record any passphrases you enter for unlocking - your encrypted wallets or changing settings so that your Bitcoin Core + your encrypted wallets or changing settings so that your Bitcoin Knots program tells you that certain transactions have multiple confirmations even when they aren't part of the best block chain. For - this reason, you should not use Bitcoin Core for security sensitive + this reason, you should not use Bitcoin Knots for security sensitive operations on systems you do not exclusively control, such as shared computers or virtual private servers. @@ -116,19 +116,19 @@ RPC interface will be abused. and passphrase). Any program on your computer with access to the file system and local network can obtain this level of access. Additionally, other programs on your computer can attempt to provide - an RPC interface on the same port as used by Bitcoin Core in order to + an RPC interface on the same port as used by Bitcoin Knots in order to trick you into revealing your authentication credentials. For this - reason, it is important to only use Bitcoin Core for + reason, it is important to only use Bitcoin Knots for security-sensitive operations on a computer whose other programs you trust. - **Securing remote network access:** You may optionally allow other - computers to remotely control Bitcoin Core by setting the `rpcallowip` + computers to remotely control Bitcoin Knots by setting the `rpcallowip` and `rpcbind` configuration parameters. These settings are only meant for enabling connections over secure private networks or connections that have been otherwise secured (e.g. using a VPN or port forwarding with SSH or stunnel). **Do not enable RPC connections over the public - Internet.** Although Bitcoin Core's RPC interface does use + Internet.** Although Bitcoin Knots's RPC interface does use authentication, it does not use encryption, so your login credentials are sent as clear text that can be read by anyone on your network path. Additionally, the RPC interface has not been hardened to @@ -138,21 +138,21 @@ RPC interface will be abused. `bitcoind -help` for more information about these settings and other settings described in this document. - Related, if you use Bitcoin Core inside a Docker container, you may + Related, if you use Bitcoin Knots inside a Docker container, you may need to expose the RPC port to the host system. The default way to do this in Docker also exposes the port to the public Internet. Instead, expose it only on the host system's localhost, for example: `-p 127.0.0.1:8332:8332` -- **Secure authentication:** By default, when no `rpcpassword` is specified, Bitcoin Core generates unique +- **Secure authentication:** By default, when no `rpcpassword` is specified, Bitcoin Knots generates unique login credentials each time it restarts and puts them into a file - readable only by the user that started Bitcoin Core, allowing any of + readable only by the user that started Bitcoin Knots, allowing any of that user's RPC clients with read access to the file to login - automatically. The file is `.cookie` in the Bitcoin Core + automatically. The file is `.cookie` in the Bitcoin Knots configuration directory, and using these credentials is the preferred RPC authentication method. If you need to generate static login credentials for your programs, you can use the script in the - `share/rpcauth` directory in the Bitcoin Core source tree. As a final + `share/rpcauth` directory in the Bitcoin Knots source tree. As a final fallback, you can directly use manually-chosen `rpcuser` and `rpcpassword` configuration parameters---but you must ensure that you choose a strong and unique passphrase (and still don't use insecure