@@ -65,25 +65,25 @@ updates.
65
65
The repository tool supports multiple public-key algorithms, such as
66
66
[ RSA] ( https://en.wikipedia.org/wiki/RSA_%28cryptosystem%29 ) and
67
67
[ Ed25519] ( https://ed25519.cr.yp.to/ ) , and multiple cryptography libraries.
68
- Which cryptography library to use is determined by the default, or user modified,
69
- settings in [ settings.py] ( ../tuf/settings.py ) .
70
-
71
- The [ PyCrypto] ( https://www.dlitz.net/software/pycrypto/ ) library may be
72
- selected to generate RSA keys and
73
- [ RSA-PSS] ( https://en.wikipedia.org/wiki/RSA-PSS ) signatures. If generation of
74
- Ed25519 signatures is needed, the [ PyNaCl] ( https://github.com/pyca/pynacl )
75
- library setting should be enabled. PyNaCl is a Python binding to the
76
- Networking and Cryptography Library. For key storage, RSA keys may be stored
77
- in PEM or JSON format, and Ed25519 keys in JSON format. Private keys, for both
78
- RSA and Ed25519, are encrypted and passphrase-protected (strengthened with
68
+
69
+ Using [ RSA-PSS] ( https://tools.ietf.org/html/rfc8017#section-8.1 ) or
70
+ [ ECDSA] ( https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm )
71
+ signatures requires the [ cryptography] ( https://cryptography.io/ ) library. If
72
+ generation of Ed25519 signatures is needed
73
+ [ PyNaCl] ( https://github.com/pyca/pynacl ) library should be installed. This
74
+ tutorial assumes both dependencies are installed: refer to
75
+ [ Installation Instructions] ( INSTALLATION.rst#install-with-more-cryptographic-flexibility )
76
+ for details.
77
+
78
+ The Ed25519 and ECDSA keys are stored in JSON format and RSA keys are stored in PEM
79
+ format. Private keys are encrypted and passphrase-protected (strengthened with
79
80
PBKDF2-HMAC-SHA256.) Generating, importing, and loading cryptographic key
80
81
files can be done with functions available in the repository tool.
81
82
82
83
To start, a public and private RSA key pair is generated with the
83
84
` generate_and_write_rsa_keypair() ` function. The keys generated next are
84
85
needed to sign the repository metadata files created in upcoming sub-sections.
85
86
86
-
87
87
Note: In the instructions below, lines that start with ` >>> ` denote commands
88
88
that should be entered by the reader, ` # ` begins the start of a comment, and
89
89
text without prepended symbols is the output of a command.
0 commit comments