You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Some edits.
* Added whitespace so I could comment on the line in the PR.
* Fixed ambiguous 'this' phrasing
* Typo
* Update docs/btcli-permissions.md
Co-authored-by: Michael Trestman <[email protected]>
* Update docs/btcli-permissions.md
Co-authored-by: Michael Trestman <[email protected]>
* Update docs/btcli-permissions.md
Co-authored-by: Michael Trestman <[email protected]>
* Update docs/btcli-permissions.md
Co-authored-by: Michael Trestman <[email protected]>
* Fixed bullet points on page to be consistent.
---------
Co-authored-by: Josh Earlenbaugh <[email protected]>
Co-authored-by: Michael Trestman <[email protected]>
Copy file name to clipboardExpand all lines: docs/btcli-permissions.md
+31-29Lines changed: 31 additions & 29 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,19 +25,19 @@ Interacting with Bittensor generally falls into one of three levels of security,
25
25
26
26
The workstations you use to do this work can be referred to as a permissionless workstation (requiring neither private key), a coldkey workstation or a hotkey workstation, depending on which private key is provisioned.
27
27
28
-
1. A **permissionless workstation** has only coldkey *public keys* on it. which are sufficient for viewing all public information about a wallet, such as TAO and alpha stake balances. Information about subnets, miners, and validators can be viewed without introducing the security risk of initializing your private keys on a device.
28
+
1. A **permissionless workstation** has only coldkey *public keys* on it. Public keys are sufficient for viewing all information about a wallet, such as TAO and alpha stake balances. Information about wallets, subnets, miners, and validators can and should be viewed without initializing your private keys on a device, to avoid the security risk of compromising your keys.
29
29
30
30
:::tip coldkey workstation security
31
31
See [Permissionless workstation](./getting-started/coldkey-hotkey-security#permissionless-workstation)
32
32
:::
33
33
34
-
1. A **coldkey workstation** contains coldkey in the `wallet_path`. For any coldkey associated with mainnet TAO, the coldkey workstation should be held to the highest possible security standards.
34
+
1. A **coldkey workstation** contains one or more coldkey private key in the `wallet_path`. For any coldkey associated with mainnet TAO, the coldkey workstation should be held to the highest possible security standards.
35
35
36
36
:::tip coldkey workstation security
37
37
See [Coldkey workstation](./ getting-started/coldkey-hotkey-security#coldkey-workstation)
38
38
:::
39
39
40
-
1.**A hotkey workstation**, which is generally a servers used for mining or validation, contains a hotkey private key in the `wallet_path` in the `btcli config`, as well as a coldkey public key for the corresponding coldkey. Compromised hotkeys can damage your reputation if they are used to maliciously submit false weights (if you are a validator), or bad work as a miner. However, ownership of TAO or alpha stake can only be transferred with a coldkey, and a leaked hotkey can be swapped using the coldkey; therefore hotkey leaks are far less dangerous than coldkey leaks.
40
+
1.**A hotkey workstation**—which is generally a server used for mining or validation—contains a hotkey private key in the `wallet_path`located in the `btcli config`, as well as a coldkey public key for the corresponding coldkey. Compromised hotkeys can damage your reputation if they are used to maliciously to submit inaccurate weights as a validator, or bad work as a miner. However, ownership of TAO or alpha stake can only be transferred with a coldkey, and a leaked hotkey can be swapped using the coldkey; therefore hotkey leaks are far less dangerous than coldkey leaks.
41
41
42
42
:::tip hotkey workstation
43
43
See [Hotkey workstation security](./getting-started/coldkey-hotkey-security#hotkey-workstation)
@@ -46,7 +46,7 @@ The workstations you use to do this work can be referred to as a permissionless
46
46
## Requirements for `btcli` functions
47
47
### Coldkey
48
48
49
-
Your primary, fully privileged key; important for all users. Should be handled on a maximum security **coldkey workstation** only, to avoid catastrophic loss or malicious actions if compromised.
49
+
Your coldkey is your primary, fully privileged key; important for all users. This key should be handled on a maximum security **coldkey workstation** only, to avoid catastrophic loss or malicious actions if compromised.
50
50
51
51
See [Coldkey and Hotkey Workstation Security](../getting-started/coldkey-hotkey-security).
52
52
@@ -73,9 +73,9 @@ Required for:
73
73
74
74
### Available liquidity
75
75
76
-
Some operations require a TAO balance or alpha stake balance.
76
+
Some operations require a TAO balance or alpha stake balance to execute.
77
77
78
-
- Transfers of TAO will fail if you lack the specified amount
78
+
- Transfers of TAO fail if you lack the specified amount
79
79
- Staking and unstaking operations fail if they specify more than the owner has
80
80
- Registering a hotkey on a subnet to mine or validate has a fee that can be paid with TAO or proof-of-work.
81
81
- Creating a subnet requires a fee, which is computed dynamically. The price to create a subnet doubles when someone creates a subnet, and then gradually decreases. This system is designed as a kind of distributed auction, where price is determined by what people are willing to pay given the uncertain estimation of what others are willing to pay.
@@ -96,7 +96,7 @@ The `btcli config ...` commands are used to configure `btcli`, including:
96
96
- selecting the targeted network (`finney` a.k.a. mainnet or `test` for test network)
97
97
- setting the directory where your Bittensor wallet coldkeys and/or hotkeys are stored
98
98
99
-
These commands don't require any permissions to run. Rather, you will run these commands on all `btcli` workstations to initialize them.
99
+
These commands don't require any permissions to run. Rather, you run these commands on all `btcli` workstations to initialize them.
100
100
101
101
See: [Coldkey and Hotkey Workstation Security](./getting-started/coldkey-hotkey-security)
102
102
@@ -120,36 +120,38 @@ See: [Coldkey and Hotkey Workstation Security](./getting-started/coldkey-hotkey-
120
120
121
121
### `wallet`
122
122
123
-
Wallet subcommands have a variety of uses and must be run on all different kinds of workstation.
123
+
`wallet` subcommands have a variety of uses and must be run on all different kinds of workstation.
124
124
125
-
This command is required to provision keys to `btcli`, so it can access your wallet. This is essentially the equivalent of logging in/authentication. This is true for both coldkeys (which all users require), and hotkeys (required only by miners and validators, and for advanced functions).
125
+
The `wallet`command is required to provision keys to `btcli`, so it can access your wallet. This is essentially the equivalent of logging in/authentication. This is true for both coldkeys, which all users require, and hotkeys, which are required only by miners and validators as well as for advanced functions.
126
126
127
127
:::tip mind your keys
128
128
See: [Coldkey and Hotkey Workstation Security](./getting-started/coldkey-hotkey-security)
129
129
:::
130
130
131
131
#### Provisioning keys
132
132
133
-
1.**`btcli wallet regen-coldkeypub`**: Initializes a wallet for a **permissionless workstation** with a public key only. This allows you to read all information about your wallet, which is public information, but not to sign any transactions, hence not to make any *changes* to the state of the blockchain, including any of your balances or stakes.
133
+
1.**`btcli wallet regen-coldkeypub`**: This initializes a wallet for a **permissionless workstation** with a public key only. It allows you to read all information about your wallet, which is public information. However, it doesn't allow you to sign any transactions and therefore doesn't allow you to make any *changes* to the state of the blockchain, including any of your balances or stakes.
134
134
135
135
1.**`new coldkey`** is used to initialize a coldkey workstation using a newly created *seed phrase*. This is a high security risk operation due to the inherent risk of handling the seed phrase.
136
+
136
137
1.**`regen coldkey`** is used to initialize a coldkey workstation using a pre-existing wallet's *seed phrase*. This is a high security risk operation due to the inherent risk of handling the seed phrase.
137
138
138
139
1.**`new hotkey`** is used to initialize a hotkey workstation using a newly created *seed phrase*. This is a high security risk operation due to the inherent risk of handling the seed phrase. Hotkeys should be created on secure coldkey workstation and then carefully provisioned to working nodes for mining and validation.
140
+
139
141
1.**`regen hotkey`** is used to initialize a hotkey workstation using a pre-existing wallet's *seed phrase*. This is a high security risk operation due to the inherent risk of handling the seed phrase.
-**`btcli wallet balance`**: Displays a wallet balance.
144
146
-**`btcli wallet overview`**: Displays a wallet overview.
145
147
146
148
#### Operations requiring coldkey private key:
147
149
148
-
-**`swap-hotkey`**: rotate a hotkey coldkey owned by the coldkey
149
-
-**`new-hotkey`**: create a new hotkey owned by the coldkey
150
-
-**`transfer`**: transfer TAO to another coldkey
151
-
-**`set-identity`**: set the coldkey's public identity information
152
-
-**`sign`(with coldkey)**: sign a message with the coldkey
150
+
-**`swap-hotkey`** rotates a hotkey coldkey owned by the coldkey.
151
+
-**`new-hotkey`** creates a new hotkey owned by the coldkey.
152
+
-**`transfer`** transfers TAO to another coldkey.
153
+
-**`set-identity`** sets the coldkey's public identity information.
154
+
-**`sign`(with coldkey)** signs a message with the coldkey.
153
155
154
156
#### Operations requiring hotkey private key:
155
157
-**`sign`** (with hotkey): sign a message with the hotkey
@@ -281,16 +283,16 @@ See: [Coldkey and Hotkey Workstation Security](./getting-started/coldkey-hotkey-
281
283
282
284
#### Read commands (permissionless)
283
285
284
-
-**`get`**: (same as `btcli subnet hyperparameters`), displays hyperparameters.
285
-
-**`proposals`**: displays proposals currently before the senate.
286
-
-**`senate`**: displays current senators.
287
-
-**`get-take`**: shows the validator take of a given validator.
286
+
-**`get`** (same as `btcli subnet hyperparameters`), displays hyperparameters.
287
+
-**`proposals`** displays proposals currently before the senate.
288
+
-**`senate`** displays current senators.
289
+
-**`get-take`** shows the validator take of a given validator.
288
290
289
291
#### Write commands (require coldkey)
290
292
291
-
-**`set`**: sets the hyperparameters for a subnet (requires the coldkey of the subnet creator).
292
-
-**`set-take`**: sets the validator take for a validator (requires the validator's coldkey).
293
-
-**`senate-vote`**: votes on a proposal before the senate (requres a coldkey with senate permissions).
293
+
-**`set`** sets the hyperparameters for a subnet (requires the coldkey of the subnet creator).
294
+
-**`set-take`** sets the validator take for a validator (requires the validator's coldkey).
295
+
-**`senate-vote`** votes on a proposal before the senate (requres a coldkey with senate permissions).
294
296
295
297
<details>
296
298
<summary>`btcli sudo`</summary>
@@ -321,11 +323,11 @@ See: [Coldkey and Hotkey Workstation Security](./getting-started/coldkey-hotkey-
321
323
322
324
#### Read commands (permissionless)
323
325
324
-
-**`list`**: Lists subnets.
325
-
-**`show` alias `metagraph`**: Displays info about miner and validator activity on the subnet.
326
-
-**`hyperparameters`**: Shows configuration of a specific subnet.
327
-
-**`price`**: Displays a graph of alpha token prices of subnets over time.
328
-
-**`burn_cost`**: Shows current fee to create subnet.
326
+
-**`list`** lists subnets.
327
+
-**`show` alias `metagraph`** displays info about miner and validator activity on the subnet.
328
+
-**`hyperparameters`** shows configuration of a specific subnet.
329
+
-**`price`** displays a graph of alpha token prices of subnets over time.
330
+
-**`burn_cost`** shows current fee to create subnet.
329
331
330
332
#### Write commands (require coldkey)
331
333
@@ -399,4 +401,4 @@ To set weights with `commit`, a validator must meet several requirements. See [R
399
401
### `utils`
400
402
401
403
#### `btcli utils convert`
402
-
This is a convenience command for performing conversions between minimal units (RAO) and TAO, or other chain-specific conversions. Permissionless (no key required) because it performs no on-chain operation, just a local calculation.
404
+
`btcli utils convert`is a convenience command for performing conversions between minimal units (RAO) and TAO, or other chain-specific conversions. It is permissionless (no key required) because it performs no on-chain operation, just a local calculation.
0 commit comments