Support theme-aware diagrams:

- SVG diagrams can adapt to the visual theme of the site through CSS.
- Use the include_svg filter to include a diagram that adapts to the
  theme.
- The styles/_diagrams.scss file controls the color mappings for
  theme-aware digrams.
- Theme-aware diagrams are limited to specific colors and diagram
  styles. Use UMLet or Google Draw and confirm that the diagram is still
  legible when you build it.
- This commit updates existing diagrams in most places to be
  theme-aware.
This commit is contained in:
mDuo13
2020-08-05 20:49:10 -07:00
parent 7bbf5b309c
commit 72002fd773
113 changed files with 8861 additions and 3068 deletions

View File

@@ -15,7 +15,7 @@ There are several configurations with varying levels of security that may be acc
## Insecure Configurations
[![Diagram of insecure configurations](img/insecure-signing-options.png)](img/insecure-signing-options.png)
{{ include_svg("img/insecure-signing-options.svg", "Diagram of insecure configurations") }}
Any configuration in which outside sources may gain access to your secret key is dangerous, and is likely to result in a malicious user stealing all your XRP (and anything else your XRP Ledger address has). Examples of such configurations include ones where you use the [sign method][] of someone else's `rippled` server over the internet, or you transmit your secret key in plain text over the internet to your own server.
@@ -26,7 +26,7 @@ You should maintain the secrecy of your secret keys at all times, which includes
## Run rippled Locally
[![Diagram of using a local rippled server for signing](img/secure-signing-local-rippled.png)](img/secure-signing-local-rippled.png)
{{ include_svg("img/secure-signing-local-rippled.svg", "Diagram of using a local rippled server for signing") }}
In this configuration, you run `rippled` on the machine that generates the transactions. Since the secret key never leaves your machine, no one without access to your machine can get access to the secret key. You should, of course, follow industry-standard practices for securing your machine. To use this configuration:
@@ -47,7 +47,7 @@ In this configuration, you run `rippled` on the machine that generates the trans
## Run rippled on the same LAN
[![Diagram of using a rippled server over LAN for signing](img/secure-signing-lan-rippled.png)](img/secure-signing-lan-rippled.png)
{{ include_svg("img/secure-signing-lan-rippled.svg", "Diagram of using a rippled server over LAN for signing") }}
In this configuration, you run a `rippled` server on a dedicated machine in the same private local area network (LAN) as the machine that generates the transactions to be signed. This configuration lets you assemble transaction instructions on one or more machines with very modest system specs, while using a single dedicated machine for running `rippled`. This may appeal to you if you run your own datacenter or server room.
@@ -60,7 +60,7 @@ As always, follow industry-standard practices for securing your machines, such a
## Use a Client Library with Local Signing
[![Diagram of using a client library with local signing](img/secure-signing-client-library.png)](img/secure-signing-client-library.png)
{{ include_svg("img/secure-signing-client-library.svg", "Diagram of using a client library with local signing") }}
This configuration uses a client library in the programming language you are using to sign transactions locally. You need a client library for the programming language you use. Ripple publishes the following client libraries that can sign transactions for the XRP Ledger locally:
@@ -87,7 +87,7 @@ For greater security, you can load your secret keys from a management tool such
## Use a Dedicated Signing Device
[![Diagram of using dedicated signing hardware](img/secure-signing-dedicated-hardware.png)](img/secure-signing-dedicated-hardware.png)
{{ include_svg("img/secure-signing-dedicated-hardware.svg", "Diagram of using dedicated signing hardware") }}
Some companies sell dedicated signing devices, such as the [Ledger Nano S](https://www.ledger.com/products/ledger-nano-s), which are capable of signing XRP Ledger transactions using a secret key that never leaves the device. Some devices may not support all types of transactions.
@@ -96,7 +96,7 @@ Setting up this configuration depends on the specific device. You may need to ru
## Use a Secure VPN with a Remote rippled Server
[![Diagram of connecting securely to a remote `rippled` over VPN](img/secure-signing-over-vpn.png)](img/secure-signing-over-vpn.png)
{{ include_svg("img/secure-signing-over-vpn.svg", "Diagram of connecting securely to a remote rippled over VPN") }}
This configuration uses a `rippled` server hosted remotely, such as in a colocation facility or a distant datacenter, but connects to it securely using an encrypted VPN.

View File

@@ -70,7 +70,7 @@ RippleAPI uses the `maxLedgerVersion` field of [Transaction Instructions](ripple
The following diagram summarizes the recommended flow for submitting a transaction and determining its outcome:
[![Reliable transaction submission flowchart](img/reliable-tx-submission.svg)](img/reliable-tx-submission.svg)
{{ include_svg("img/reliable-tx-submission.svg", "Reliable transaction submission flowchart") }}
### Reliable Transactions Submission

View File

@@ -239,6 +239,10 @@ An example flow for a payment into the XRP Ledger:
![Diagram: ACME issues 3 EUR.ACME to Alice on the XRP Ledger](img/e2g-02.png)
<!--{# Disabled: UMLet version of this diagram.
{{ include_svg("img/gateway-to-xrpl.svg", "Diagram: ACME issues 3 EUR.ACME to Alice on the XRP Ledger") }}
#}-->
### Requirements for Sending to XRP Ledger