diff --git a/content/reference-transaction-format.md b/content/reference-transaction-format.md index 58f755b2bf..251efafe3d 100644 --- a/content/reference-transaction-format.md +++ b/content/reference-transaction-format.md @@ -29,12 +29,13 @@ Any signature type can authorize any type of transaction, with the following exc ## Understanding Master and Regular Keys -In the XRP Ledger, a digital signature proves that a transaction is authorized to do a specific set of actions. A digital signature is created based on a key pair associated with the transaction's sending account. There are two types of key pairs available: master keys and regular keys. A key pair includes a private key and a public key. +In the XRP Ledger, a digital signature proves that a transaction is authorized to do a specific set of actions. A digital signature is created based on a key pair associated with the transaction's sending account. There are two types of key pairs available: master keys and regular keys. Each key pair includes a private key and a public key. +***TODO: I feel like some concept docs on private and public keys would be great -- like when to use them. Talk about the master_key, master_seed, master_seed_hex, public_key, and public_key_hex, for example, and why we provide them and what are the use cases. It would also be good to provide concept doc on how keys are used to generate the "signature" and the different types of signature-like values that we generate: Signature, SigningPubKey, and TxnSignature, for example. What are the use cases? I believe this info is in the doc, but discussed in the context of tutorials.*** ### Master Keys -When you create an account using the [`wallet_propose`](reference-rippled.html#wallet-propose) method, the `master_seed` (private key) and `public_key` returned in the response are the master keys for the account. These keys are an intrinsic part of the account's identity as the `account_id` (account address), also returned in the `wallet_propose` response, and the `public_key` value are mathematically related. +When you create an account using the [`wallet_propose`](reference-rippled.html#wallet-propose) method, the `master_seed` (private key) and `public_key` returned in the response are the **master keys** for the account. These master keys are an intrinsic part of the account's identity as the `account_id` (account address), also returned in the `wallet_propose` response, and the `public_key` value are mathematically related. Here's a sample `wallet_propose` response, including the `master_seed` (private key), `public_key`, and `account_id` (account address) values: @@ -54,8 +55,6 @@ Here's a sample `wallet_propose` response, including the `master_seed` (private } ``` -We refer to this key pair that is an intrinsic part of an account as the **master keys** for the account. - Master keys have more powerful signing authority than regular keys. In addition to being able to sign all transactions that regular keys can, master keys are the only keys that can be used to perform the following actions: * Use the master private key to [disable the master public key](#accountset-flags). diff --git a/content/tutorial-regular-keys.md b/content/tutorial-regular-keys.md index 3e0d830e40..e137658a86 100644 --- a/content/tutorial-regular-keys.md +++ b/content/tutorial-regular-keys.md @@ -46,9 +46,9 @@ Here's an example `wallet_propose` request and response. "result": { "account_id": "rM8oJwkKtgEU2HZkCHsJScLHqegWpgBRxt", "key_type": "secp256k1", - "master_key": "SAY ARMY KITE LETS PAN WAVE JUKE ACRE MAT TILT FEAT LED", + "master_key": "MAS TER PRIV ATE KEY RFC 1751 XXX XXXX XXX XXXX XXXX", "master_seed": "MasterPrivateKeyXXXXXXXXXXXXX", - "master_seed_hex": "47E8F7F59D0CC9A3F01FD3D69CCAE93A", + "master_seed_hex": "MasterPrivateKeyHexXXXXXXXXXXXXX", "public_key": "aBQEK3r6hb8isnCWmortkNdv3MSMKP74o7gj3kHZQF9vDkbXo4Qs", "public_key_hex": "032D911AE9887278110A8FE25169546D4E95A82AF5EFA25525FC3FDFFDC5A8B604" }, @@ -135,9 +135,9 @@ Here's an example `wallet_propose` request and response. "result": { "account_id": "rf9vUoqa83foreMr6CYFCEPTZUFagZv83c", "key_type": "secp256k1", - "master_key": "SAFE TUM GLEN CUR BALD WELT TIDY HO WAYS MALE DON SON", + "master_key": "REG ULAR PRIV ATE KEY RFC 1751 XXX XXXX XXX XXXX XXX", "master_seed": "RegularPrivateKeyXXXXXXXXXXXX", - "master_seed_hex": "7AF430DBE26743EBF3155506325268D5", + "master_seed_hex": "RegularPrivateKeyHexXXXXXXXXXXXX", "public_key": "aBR9dmoHfrfU24q1cbjdehNsFiuV9k5PrrQTLiH42qxhWr5ybc1K", "public_key_hex": "03A45E8E4BFECA7473F932839B982C33CD2FB7B788932A21DCDD8536AE63A1614C" }, @@ -226,7 +226,7 @@ Here's an example `Payment` request and response. #### WebSocket Response: -***TODO: I think it would be useful to call out the SigningPubKey and/or TxnSignature in the response to surface/link to a discussion about signatures and how they are created from keys. I think it's relevant in that the keys topic is surfaced through a discussion of transaction authorization via signing. Useful? Does a topic on signatures exist?*** +***TODO: Per earlier comment on a concepts doc about signatures, I think it would be useful to be able to link to such a doc to call out the SigningPubKey and/or TxnSignature. I think it's relevant in that the keys topic is surfaced via a discussion of transaction authorization via signing.*** ``` {