Επιχείρηση#

Αυτό το κεφάλαιο περιγράφει λειτουργικές εργασίες για χρήστες με τους ρόλους Διαχειριστής και Επιχειρητής. Ανατρέξτε στο κεφάλαιο Ρόλοι για να μάθετε περισσότερα σχετικά με το ρόλο.

Σημαντικό

Βεβαιωθείτε ότι έχετε διαβάσει τις πληροφορίες στην αρχή του ` παρόντος εγγράφου <index.html>`__ προτού ξεκινήσετε να εργάζεστε.

Διαχείριση κλειδιών#

Δημιουργία κλειδιού#

Το NetHSM μπορεί να δημιουργήσει ζεύγη κλειδιών. Συνιστάται να καθορίσετε την επιλογή ID κλειδιού για να του δώσετε ένα εκφραστικό όνομα.

Οι υποστηριζόμενοι τύποι κλειδιών και οι αντίστοιχοι μηχανισμοί τους είναι οι ακόλουθοι.

Τύπος κλειδιού

Μηχανισμοί

TAG

RSA_Decryption_RAW RSA_Decryption_PKCS1 RSA_Decryption_OAEP_MD5 RSA_Decryption_OAEP_SHA1 RSA_Decryption_OAEP_SHA224 RSA_Decryption_OAEP_SHA256 RSA_Decryption_OAEP_SHA384 RSA_Decryption_OAEP_SHA512 RSA_Signature_PKCS1 RSA_Signature_PSS_MD5 RSA_Signature_PSS_SHA1 RSA_Signature_PSS_SHA224 RSA_Signature_PSS_SHA256 RSA_Signature_PSS_SHA384 RSA_Signature_PSS_SHA512

Curve25519

EdDSA_Signature

USER_ID

EdDSA_Signature

USER_ID

EdDSA_Signature

USER_ID

EdDSA_Signature

USER_ID

EdDSA_Signature

USER_ID

AES_Encryption_CBC AES_Decryption_CBC

Keys are assigned to the Namespace of the user that generates the key.

Το κλειδί μπορεί να παραχθεί ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής.

Απαιτούμενες επιλογές

Επιλογή

Περιγραφή

-p, --port INTEGER

Ο τύπος του παραγόμενου κλειδιού. Οι πιθανές τιμές για το όρισμα KEYTYPE βρίσκονται στον παραπάνω πίνακα.

-m, --mechanism MECHANISM

Οι μηχανισμοί για το παραγόμενο κλειδί. Οι πιθανές τιμές για το όρισμα MECHANISM βρίσκονται στον παραπάνω πίνακα.

-l, --length INTEGER

Το μήκος του παραγόμενου κλειδιού

Προαιρετικές επιλογές

Επιλογή

Περιγραφή

-k, --key-id TEXT

Το αναγνωριστικό του παραγόμενου κλειδιού

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST generate-key --type RSA --mechanism RSA_Signature_PSS_SHA256 --mechanism RSA_Decryption_PKCS1 --length 2048 --key-id myFirstKey
Key myFirstKey generated on NetHSM localhost:8443

Κλειδί εισαγωγής#

Το NetHSM μπορεί να εισάγει υπάρχοντα ιδιωτικά κλειδιά στο Key Store.

Οι υποστηριζόμενοι τύποι κλειδιών και οι αντίστοιχοι μηχανισμοί τους είναι οι ακόλουθοι.

Τύπος κλειδιού

Μηχανισμοί

TAG

RSA_Decryption_RAW RSA_Decryption_PKCS1 RSA_Decryption_OAEP_MD5 RSA_Decryption_OAEP_SHA1 RSA_Decryption_OAEP_SHA224 RSA_Decryption_OAEP_SHA256 RSA_Decryption_OAEP_SHA384 RSA_Decryption_OAEP_SHA512 RSA_Signature_PKCS1 RSA_Signature_PSS_MD5 RSA_Signature_PSS_SHA1 RSA_Signature_PSS_SHA224 RSA_Signature_PSS_SHA256 RSA_Signature_PSS_SHA384 RSA_Signature_PSS_SHA512

Curve25519

EdDSA_Signature

USER_ID

EdDSA_Signature

USER_ID

EdDSA_Signature

USER_ID

EdDSA_Signature

USER_ID

EdDSA_Signature

USER_ID

AES_Encryption_CBC AES_Decryption_CBC

Keys are assigned to the Namespace of the user that imports the key.

Εισάγετε ένα ιδιωτικό κλειδί από ένα αρχείο PEM στο NetHSM ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής.

Επιχειρήματα

Επιχειρήματα

Περιγραφή

FILENAME

Private key file in PEM format

Προαιρετικές επιλογές

Επιλογή

Περιγραφή

-m, --mechanism MECHANISM

Οι μηχανισμοί για το παραγόμενο κλειδί. Οι πιθανές τιμές για το όρισμα MECHANISM βρίσκονται στον παραπάνω πίνακα.

-k, --key-id TEXT

Το αναγνωριστικό του νέου κλειδιού

--tags TEXT

Η ετικέτα για το νέο κλειδί

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST import-key \
   --mechanism RSA_Signature_PSS_SHA256 \
   --mechanism RSA_Decryption_PKCS1 \
   --key-id myFirstKey \
   mykey.pem
Key myFirstKey added to NetHSM localhost:8443

Private keys in raw format can be imported as follows.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής.

Απαιτούμενες επιλογές

Επιλογή

Περιγραφή

-p, --port INTEGER

Ο τύπος του παραγόμενου κλειδιού. Οι πιθανές τιμές για το όρισμα KEYTYPE βρίσκονται στον παραπάνω πίνακα.

-m, --mechanism MECHANISM

Οι μηχανισμοί για το παραγόμενο κλειδί. Οι πιθανές τιμές για το όρισμα MECHANISM βρίσκονται στον παραπάνω πίνακα.

-u, --user-id TEXT

Ο πρώτος p για κλειδιά RSA, κωδικοποιημένος σε base64

-u, --user-id TEXT

Ο πρώτος q για κλειδιά RSA, κωδικοποιημένος σε base64

-e, --public-exponent TEXT

Ο δημόσιος εκθέτης για κλειδιά RSA, κωδικοποιημένος σε base64

-d, --data TEXT

Τα δεδομένα κλειδιών για κλειδιά ED25519 ή ECDSA_*, κωδικοποιημένα σε base64

Προαιρετικές επιλογές

Επιλογή

Περιγραφή

-k, --key-id TEXT

Το αναγνωριστικό του νέου κλειδιού

--tags TEXT

Η ετικέτα για το νέο κλειδί

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST add-key \
   --type RSA \
   --mechanism RSA_Signature_PSS_SHA256 \
   --mechanism RSA_Decryption_PKCS1 \
   --key-id myFirstKey \
   --public-exponent AQAB \
   --prime-p "AOnWFZ+JrI/xOXJU04uYCZOiPVUWd6CSbVseEYrYQYxc7dVroePshz29tc+VEOUP5T0O8lXMEkjFAwjW6C9QTAsPyl6jwyOQluMRIkdN4/7BAg3HAMuGd7VmkGyYrnZWW54sLWp1JD6XJG33kF+9OSar9ETPoVyBgK5punfiUFEL" \
   --prime-q "ANT1kWDdP9hZoFKT49dwdM/S+3ZDnxQa7kZk9p+JKU5RaU9e8pS2GOJljHwkES1FH6CUGeIaUi81tRKe2XZhe/163sEyMcxkaaRbBbTc1v6ZDKILFKKt4eX7LAQfhL/iFlgi6pcyUM8QDrm1QeFgGz11ChM0JuQw1WwkX06lg8iv"
Key myFirstKey added to NetHSM localhost:8443

Πλήκτρο διαγραφής#

The NetHSM can delete keys from the Key Store. Users can only delete keys in their Namespace.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής.

Επιχειρήματα

Επιχειρήματα

Περιγραφή

--time

Το αναγνωριστικό κλειδιού του κλειδιού προς διαγραφή

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST delete-key myFirstKey
Key myFirstKey deleted on NetHSM localhost:8443

Λίστα κλειδιών#

The NetHSM can list all keys in the Key Store that are in the Namespace of the current user.

Ο κατάλογος μπορεί να ανακτηθεί ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής ή Επιχειρητής.

Προαιρετικές επιλογές

Επιλογή

Περιγραφή

-f, --filter TEXT

Η ετικέτα για αναζήτηση

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST list-keys
Keys on NetHSM localhost:8443:

Key ID          Type       Mechanisms                                      Operations  Tags
-----------     ----       ----------------------------------------------  ----------  ----
myFirstKey      RSA        RSA_Decryption_PKCS1, RSA_Signature_PSS_SHA256  0

Εμφάνιση λεπτομερειών κλειδιού#

The NetHSM can output more detailed information about a stored key. Users can only access keys in their Namespace.

Οι λεπτομερείς πληροφορίες μπορούν να ανακτηθούν ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής ή Επιχειρητής.

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST get-key myFirstKey
Key myFirstKey on NetHSM localhost:8443:
Type:            RSA
Mechanisms:      RSA_Decryption_RAW
Operations:      0
Modulus:         r62XHPWMDdEf2I1WEpSxGowY/fQF8lMPtv3EUQJE/PLWBvehF8G0QY3AVVZ3etlQWiKreOuGDx4Nr2PFNYAu5f+JP2Jc1lsFNOYF8D82RF41MBySbQR+k+44N/04B0ahTBCxX+ovFH7Sd6SzvxMPa7EKvhaOsLbgyrPlFZxQnhIEqJRCSo5DRRD+CRCPpGXsVXgFbJrNilh21i8OZCct4nC2OS191MeDKmCH4tjrfLMwOKJE8zKlwhdtA1uMY49+JuaC48GUFsLYwbLp1723Uv1PjZjC5jbUhScD0u9I+iNrqznAeka4dWsJ9jgA+h6hblSgCs0I3MWOsMXx/Y5PGQ==
Public exponent: AQAB

Το δημόσιο κλειδί ενός κλειδιού μπορεί να ανακτηθεί ως εξής. Είναι σε μορφή PKCS#8.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής ή Επιχειρητής.

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST get-key myFirstKey --public-key
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr62XHPWMDdEf2I1WEpSx
GowY/fQF8lMPtv3EUQJE/PLWBvehF8G0QY3AVVZ3etlQWiKreOuGDx4Nr2PFNYAu
5f+JP2Jc1lsFNOYF8D82RF41MBySbQR+k+44N/04B0ahTBCxX+ovFH7Sd6SzvxMP
a7EKvhaOsLbgyrPlFZxQnhIEqJRCSo5DRRD+CRCPpGXsVXgFbJrNilh21i8OZCct
4nC2OS191MeDKmCH4tjrfLMwOKJE8zKlwhdtA1uMY49+JuaC48GUFsLYwbLp1723
Uv1PjZjC5jbUhScD0u9I+iNrqznAeka4dWsJ9jgA+h6hblSgCs0I3MWOsMXx/Y5P
GQIDAQAB
-----END PUBLIC KEY-----

Το δημόσιο κλειδί μπορεί να ελεγχθεί για παράδειγμα με το OpenSSL ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής ή Επιχειρητής.

Παράδειγμα

nitropy nethsm --host= $NETHSM_HOST get-key myFirstKey --public-key | openssl rsa -pubin -text
Public-Key: (2048 bit)
Modulus:
   00:af:ad:97:1c:f5:8c:0d:d1:1f:d8:8d:56:12:94:
   b1:1a:8c:18:fd:f4:05:f2:53:0f:b6:fd:c4:51:02:
   44:fc:f2:d6:06:f7:a1:17:c1:b4:41:8d:c0:55:56:
   77:7a:d9:50:5a:22:ab:78:eb:86:0f:1e:0d:af:63:
   c5:35:80:2e:e5:ff:89:3f:62:5c:d6:5b:05:34:e6:
   05:f0:3f:36:44:5e:35:30:1c:92:6d:04:7e:93:ee:
   38:37:fd:38:07:46:a1:4c:10:b1:5f:ea:2f:14:7e:
   d2:77:a4:b3:bf:13:0f:6b:b1:0a:be:16:8e:b0:b6:
   e0:ca:b3:e5:15:9c:50:9e:12:04:a8:94:42:4a:8e:
   43:45:10:fe:09:10:8f:a4:65:ec:55:78:05:6c:9a:
   cd:8a:58:76:d6:2f:0e:64:27:2d:e2:70:b6:39:2d:
   7d:d4:c7:83:2a:60:87:e2:d8:eb:7c:b3:30:38:a2:
   44:f3:32:a5:c2:17:6d:03:5b:8c:63:8f:7e:26:e6:
   82:e3:c1:94:16:c2:d8:c1:b2:e9:d7:bd:b7:52:fd:
   4f:8d:98:c2:e6:36:d4:85:27:03:d2:ef:48:fa:23:
   6b:ab:39:c0:7a:46:b8:75:6b:09:f6:38:00:fa:1e:
   a1:6e:54:a0:0a:cd:08:dc:c5:8e:b0:c5:f1:fd:8e:
   4f:19
Exponent: 65537 (0x10001)
writing RSA key
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr62XHPWMDdEf2I1WEpSx
GowY/fQF8lMPtv3EUQJE/PLWBvehF8G0QY3AVVZ3etlQWiKreOuGDx4Nr2PFNYAu
5f+JP2Jc1lsFNOYF8D82RF41MBySbQR+k+44N/04B0ahTBCxX+ovFH7Sd6SzvxMP
a7EKvhaOsLbgyrPlFZxQnhIEqJRCSo5DRRD+CRCPpGXsVXgFbJrNilh21i8OZCct
4nC2OS191MeDKmCH4tjrfLMwOKJE8zKlwhdtA1uMY49+JuaC48GUFsLYwbLp1723
Uv1PjZjC5jbUhScD0u9I+iNrqznAeka4dWsJ9jgA+h6hblSgCs0I3MWOsMXx/Y5P
GQIDAQAB
-----END PUBLIC KEY-----

Ετικέτες για τα κλειδιά#

Οι ετικέτες μπορούν να χρησιμοποιηθούν για τον καθορισμό λεπτομερών περιορισμών πρόσβασης σε κλειδιά και αποτελούν προαιρετική λειτουργία. Μία ή περισσότερες ετικέτες ** μπορούν να αντιστοιχιστούν σε ένα κλειδί. Οι χρήστες Χειριστής μπορούν να βλέπουν όλα τα κλειδιά, αλλά να χρησιμοποιούν μόνο εκείνα με τουλάχιστον μία αντίστοιχη ετικέτα ** . Εάν ένα πλήκτρο δεν έχει καμία ετικέτα ** μπορεί να χρησιμοποιηθεί από όλους τους χρήστες Operator. Ένα Tag δεν μπορεί να τροποποιηθεί από έναν χρήστη Operator.

Για να μάθετε πώς να χρησιμοποιείτε τις ετικέτες Tags σε λογαριασμούς Operator, ανατρέξτε στο κεφάλαιο Ετικέτες για χρήστες.

Σημείωση

Η διαχείριση των Ετικετών γίνεται χωρίς περιορισμούς από χρήστες με το ρόλο Διαχειριστής.

Η ετικέτα Tag μπορεί να προστεθεί ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής.

Επιχειρήματα

Επιχειρήματα

Περιγραφή

--time

Το αναγνωριστικό κλειδιού για να οριστεί η ετικέτα

TAG

Η ετικέτα που πρέπει να οριστεί στο κλειδί

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST add-key-tag myFirstKey berlin
Added tag berlin for key myFirstKey on the NetHSM localhost:8443

Η ετικέτα Tag μπορεί να διαγραφεί ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής.

Επιχειρήματα

Επιχειρήματα

Περιγραφή

--time

Το αναγνωριστικό κλειδιού για την τοποθέτηση της ετικέτας.

TAG

Η ετικέτα που θα οριστεί στο κλειδί.

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST delete-key-tag myFirstKey berlin
Deleted tag berlin for key myFirstKey on the NetHSM localhost:8443

Πιστοποιητικά κλειδιών#

Είναι δυνατή η ρύθμιση και η αναζήτηση πιστοποιητικών για τα κλειδιά που είναι αποθηκευμένα σε ένα NetHSM.

Οι υποστηριζόμενοι τύποι MIME είναι οι εξής.

  • application/x-pem-file

  • application/x-x509-ca-cert

  • application/pgp-keys

Το πιστοποιητικό μπορεί να ρυθμιστεί ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής.

Απαιτούμενες επιλογές

Επιλογή

Περιγραφή

-k, --key-id TEXT

Το αναγνωριστικό του κλειδιού για το οποίο πρέπει να οριστεί το πιστοποιητικό

Προαιρετικές επιλογές

Επιλογή

Περιγραφή

-m, --mechanism MECHANISM

Ο τύπος MIME του πιστοποιητικού. Οι διαθέσιμοι τύποι MIME παρατίθενται παραπάνω.

Επιχειρήματα

Επιχειρήματα

Περιγραφή

FILENAME

Αρχείο πιστοποιητικού

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST set-certificate --key-id myFirstKey --mime-type application/x-pem-file /tmp/cert.pem
Updated the certificate for key myFirstKey on NetHSM localhost:8443

Το πιστοποιητικό μπορεί να ανακτηθεί ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής ή Επιχειρητής.

Απαιτούμενες επιλογές

Επιλογή

Περιγραφή

-k, --key-id TEXT

Το αναγνωριστικό του κλειδιού για το οποίο πρέπει να ληφθεί το πιστοποιητικό

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST get-certificate --key-id myFirstKey
-----BEGIN CERTIFICATE-----
MIICeTCCAWECFCbuzdkAvc3Zx3W53IoSnmhUen42MA0GCSqGSIb3DQEBCwUAMHsx
CzAJBgNVBAYTAkRFMQ8wDQYDVQQIDAZCZXJsaW4xDzANBgNVBAcMBkJlcmxpbjER
MA8GA1UECgwITml0cm9rZXkxFTATBgNVBAMMDG5pdHJva2V5LmNvbTEgMB4GCSqG
SIb3DQEJARYRaW5mb0BuaXRyb2tleS5jb20wHhcNMjIwODMwMjAxMzA2WhcNMjMw
ODMwMjAxMzA2WjBxMW8wCQYDVQQGEwJERTANBgNVBAcMBkJlcmxpbjANBgNVBAgM
BkJlcmxpbjAPBgNVBAoMCE5pdHJva2V5MBMGA1UEAwwMbml0cm9rZXkuY29tMB4G
CSqGSIb3DQEJARYRaW5mb0BuaXRyb2tleS5jb20wKjAFBgMrZXADIQDc58LGDY9B
wbJFdXTiDalNXrDC60Sxu3eHcpnh1MSoCjANBgkqhkiG9w0BAQsFAAOCAQEAGip8
aU5nJnzm3eic3t1ihUA3VJ0mAPyfrb1Rn8tEKOZo3vg0jpRd9CSESlBsKqhvxsdQ
A3eomM+W7R37TL5+ISm5QrbijLHz3OHoPM68c1Krz3bXTkJetf4YAxpLOPYfXXHv
weRzwVJb4y3E0lJGhZxI3sUE8Yn/T1UvTbu/o/O5P/XTA8vfFrSNQkQxWBgYh4gC
KjFFALqUPFrctSFIi34aqpdihNJWnjSS2Y7INm3oxwkR3NMKP8x4wBGfZK22nHnu
PPzXuMGJTmQM8GHTzltNvLx5Iv2sXoSHClXSpdIT5IBIcR1GmZ78fmcr75OAU0+z
3XbJq/1ij3tKsjV6WA==
-----END CERTIFICATE-----

Αιτήματα υπογραφής πιστοποιητικού κλειδιού#

Το NetHSM υποστηρίζει τη δημιουργία CSR (αιτήσεις υπογραφής πιστοποιητικών) για τα αποθηκευμένα κλειδιά.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Διαχειριστής ή Επιχειρητής.

Απαιτούμενες επιλογές

Επιλογή

Περιγραφή

-k, --key-id TEXT

Το αναγνωριστικό του κλειδιού για τη δημιουργία του CSR

--country TEXT

Το όνομα της χώρας

--state-or-province TEXT

Το όνομα της πολιτείας ή της επαρχίας

--locality TEXT

Το όνομα του τόπου

--organization TEXT

Το όνομα του οργανισμού

--organizational-unit TEXT

Το όνομα της οργανωτικής μονάδας

--common-name TEXT

Το κοινό όνομα

--email-address TEXT

Η διεύθυνση ηλεκτρονικού ταχυδρομείου

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST csr --key-id myFirstKey --country="DE" --state-or-province="Berlin" --locality="Berlin" --organization="Nitrokey" --organizational-unit="" --common-name=nitrokey.com --email-address="info@nitrokey.com"
-----BEGIN CERTIFICATE REQUEST-----
MIHxMIGkAgEAMHExbzAJBgNVBAYTAkRFMA0GA1UEBwwGQmVybGluMA0GA1UECAwG
QmVybGluMA8GA1UECgwITml0cm9rZXkwEwYDVQQDDAxuaXRyb2tleS5jb20wHgYJ
KoZIhvcNAQkBFhFpbmZvQG5pdHJva2V5LmNvbTAqMAUGAytlcAMhADJMNAifke6s
u7CYqHGDy3xGtXVOUNbTJG6Gn4oki+j3oAAwBQYDK2VwA0EAQilRK2Mf6kfJ4ByI
WCn9A+8IHsnE7iFcuFZpmaKfcJwZiaQppHvPg/Z0zqldzviPQ1cjKR7hSZG+8GHH
gWjEDg==
-----END CERTIFICATE REQUEST-----

Βασικές λειτουργίες#

All operations described in this chapter can only be executed for keys that are in the Namespace of the current user.

Κρυπτογράφηση#

Το NetHSM μπορεί να κρυπτογραφήσει δεδομένα για συμμετρικά κλειδιά, τα οποία είναι αποθηκευμένα στο Key Store. Αντίθετα, η κρυπτογράφηση δεδομένων με ασύμμετρα κλειδιά δεν μπορεί να γίνει στο NetHSM, λόγω της έννοιας στην κρυπτογραφία δημόσιου κλειδιού να είναι το δημόσιο κλειδί διαθέσιμο σε όλους. Για τα ασύμμετρα κλειδιά το NetHSM παρέχει το δημόσιο κλειδί, το οποίο μπορεί να χρησιμοποιηθεί για κρυπτογράφηση με ένα εξωτερικό εργαλείο. Ανατρέξτε στην ενότητα Show Key Details για να μάθετε περισσότερα σχετικά με τον τρόπο ανάκτησης του δημόσιου κλειδιού ενός κλειδιού στο Key Store.

Τα δεδομένα μπορούν να κρυπτογραφηθούν για ένα συμμετρικό κλειδί ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Operator.

Απαιτούμενες επιλογές

Επιλογή

Περιγραφή

-k, --key-id TEXT

Το αναγνωριστικό του κλειδιού με το οποίο θα κρυπτογραφηθούν τα δεδομένα

-d, --data TEXT

Τα δεδομένα σε κωδικοποίηση Base64

-m, --mode [AES_CBC]

Η λειτουργία κρυπτογράφησης

-iv, --initialization-vector TEXT

Το διάνυσμα αρχικοποίησης σε κωδικοποίηση Base64

Παράδειγμα

$ nitropy nethsm --host $NETHSM_HOST encrypt -k myFirstKey -d "TmV0SFNNIHJ1bGV6enp6enp6enp6enp6enp6enp6IQo=" -m AES_CBC -iv "aYlwUI4A9zL9tts4dMAq+A=="
Encrypted: Uk+9pgucdxTnbyIb/6+BDJef+HfRWhw+Eg3RcCvyHaU=
Initialization vector: aYlwUI4A9zL9tts4dMAq+A==

Αυτό εκτυπώνει το κρυπτογραφημένο και κωδικοποιημένο με base64 μήνυμα NetHSM rulezzzzzzzzzzzzzzzzzzz!, και το διάνυσμα αρχικοποίησης.

Τα δεδομένα μπορούν να κρυπτογραφηθούν για ασύμμετρα κλειδιά με το OpenSSL ως εξής.

$ echo 'NetHSM rulez!' | openssl pkeyutl -encrypt -pubin -inkey public.pem | base64 > data.crypt

Αυτό γράφει το κρυπτογραφημένο και κωδικοποιημένο με base64 μήνυμα NetHSM rulez! στο αρχείο data.crypt, χρησιμοποιώντας το δημόσιο κλειδί από το public.pem.

Αποκρυπτογράφηση#

Το NetHSM μπορεί να αποκρυπτογραφήσει δεδομένα για ένα ιδιωτικό κλειδί που είναι αποθηκευμένο στο Key Store στο NetHSM. Αυτό το παράδειγμα χρησιμοποιεί το κρυπτογραφημένο μήνυμα από το προηγούμενο κεφάλαιο Encrypt.

Οι υποστηριζόμενες λειτουργίες αποκρυπτογράφησης είναι οι εξής.

  • TAG

  • PKCS1

  • FILENAME

  • --network

  • OAEP_SHA224

  • OAEP_SHA224

  • OAEP_SHA224

  • OAEP_SHA224

  • USER_ID

Τα δεδομένα μπορούν να αποκρυπτογραφηθούν ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Operator.

Απαιτούμενες επιλογές

Επιλογή

Περιγραφή

-k, --key-id TEXT

Το αναγνωριστικό του κλειδιού για την αποκρυπτογράφηση του πλάτους των δεδομένων

-d, --data TEXT

Τα κρυπτογραφημένα δεδομένα σε κωδικοποίηση Base64

-d, --data TEXT

Η λειτουργία αποκρυπτογράφησης. Οι διαθέσιμες λειτουργίες αναφέρονται παραπάνω.

Παράδειγμα

$ nitropy nethsm -h $NETHSM_HOST decrypt -k myFirstKey -d "$(cat data.crypt)" -m PKCS1 | base64 -d
NetHSM rulez!

Υπογράψτε#

Το NetHSM μπορεί να υπογράψει δεδομένα για ένα ιδιωτικό κλειδί που είναι αποθηκευμένο στο Key Store στο NetHSM. Για υπογραφές με κλειδί RSA και ECDSA, πρέπει πρώτα να υπολογιστεί ένα digest.

Για τον υπολογισμό μιας σύνοψης απαιτούνται πρώτα τα δεδομένα. Ένα μήνυμα δημιουργείται ως εξής.

$ echo 'NetHSM rulez!' > data

Το digest υπολογίζεται με το OpenSSL ως εξής.

$ openssl dgst -sha256 -binary data | base64 > data.digest

Οι υποστηριζόμενοι τρόποι υπογραφής είναι οι εξής.

  • PKCS1

  • USER_ID

  • FILENAME

  • Curve25519

  • Curve25519

  • Curve25519

  • Curve25519

  • PKCS1

  • PKCS1

Από το digest μπορεί να δημιουργηθεί μια υπογραφή ως εξής.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Operator.

Απαιτούμενες επιλογές

Επιλογή

Περιγραφή

-k, --key-id TEXT

Το αναγνωριστικό του κλειδιού για την υπογραφή του πλάτους δεδομένων

-d, --data TEXT

Τα δεδομένα προς υπογραφή κωδικοποιημένα με χρήση Base64

-d, --data TEXT

Ο τρόπος λειτουργίας του σημείου

Παράδειγμα

$ nitropy nethsm -h $NETHSM_HOST sign -k myFirstKey -m PKCS1 -d "$(cat data.digest)" | base64 -d > data.sig

Η υπογραφή που δημιουργήθηκε μπορεί να επαληθευτεί με το OpenSSL ως εξής.

$ openssl dgst -sha256 -verify public.pem -signature data.sig -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:-1 data
Verified OK

Τυχαία#

Το NetHSM μπορεί να παρέχει τυχαία bytes ως συμβολοσειρά Base64.

Απαιτούμενος ρόλος

Αυτή η λειτουργία απαιτεί έλεγχο ταυτότητας με το ρόλο Operator.

Επιχειρήματα

Επιχειρήματα

Περιγραφή

--time

Bytes προς ανάκτηση

Παράδειγμα

nitropy nethsm --host $NETHSM_HOST random 4
94A2rg==