tss2_createkey(1)

🌸 tss2_createkey (1) β€” from the General Commands Manual 🌸

okay bestie, welcome to the manual page for tss2_createkey β€” yes she's a whole General Commands Manual girlie, and yes she's about to make you a key. let's go 🫢

✨ NAME ✨

tss2_createkey(1) β€” literally just that, no cap. that's the name, that's the whole vibe πŸ’…

πŸ’« SYNOPSIS πŸ’«

tss2_createkey [OPTIONS]

πŸ¦‹ SEE ALSO πŸ¦‹

  • fapi-config(5) β€” peek at this one if you wanna tweak your Fapi parameters, like which cryptographic profile gets used, or the TCTI, or the directories where the Fapi metadata storages live.
  • fapi-profile(5) β€” this is the one that decides the cryptographic algorithms and parameters for all the keys and operations of a specific TPM interaction. we're talking the name hash algorithm, the asymmetric signature algorithm, scheme and parameters, and PCR bank selection. she's in charge of the whole aesthetic ✨

πŸ‘‘ DESCRIPTION πŸ‘‘

So. tss2_createkey(1) β€” this command creates a key inside the TPM and stores it in the FAPI metadata store, and if you ask nicely it'll also store it persistently inside the TPM. πŸ’Ύ

Depending on the key type you specify, the cryptographic algorithms and parameters for the created key are determined by the corresponding cryptographic profile β€” cf., fapi-profile(5). so like, the profile is the main character here, you're just picking the type πŸŽ€

πŸ’… OPTIONS πŸ’…

These are the available options:

  • -p, --path=STRING β€” the path to the new key. that's it, that's the whole thing πŸ›£οΈ
  • -t, --type=STRING β€” identifies the intended usage. optional parameter, bestie. types may be any comma-separated combination of:
    • "sign" β€” sets the sign attribute of a key.
    • "decrypt" β€” sets the decrypt attribute of a key.
    • Hint: if neither sign nor decrypt are provided, both attributes are set. πŸ™ˆ
    • "restricted" β€” sets the restricted attribute of a key.
    • Hint: if restricted is set, sign or decrypt (but not both) need to be set. ⚠️
    • "exportable" β€” clears the fixedTPM and fixedParent attributes of a key or sealed object.
    • "noda" β€” sets the noda attribute of a key or NV index.
    • "system" β€” stores the data blobs and metadata for a created key or seal in the system-wide directory instead of user's personal directory.
    • A hexadecimal number (e.g. "0x81000001") β€” marks a key object to be made persistent and sets the persistent object handle to this value.
  • -P, --policyPath=STRING β€” the policy to be associated with the new key. optional parameter. if you omit it, then no policy will be associated with the key. and here's how a policyPath is built: it's composed of two elements, separated by /. a policyPath starts with /policy. the second path element identifies the policy or policy template using a meaningful name. iykyk πŸ’œ
  • -a, --authValue=STRING β€” the new UTF-8 password. optional parameter. if it is neglected then the user is queried interactively for a password. to set no password, this option should be used with the empty string (""). and the maximum password size is determined by the digest size of the chosen name hash algorithm in the cryptographic profile (cf., fapi-profile(5)). for example, choosing SHA256 as hash algorithm allows passwords of a maximum size of 32 characters. so like, know your limits πŸ“

🌈 COMMON OPTIONS 🌈

this collection of options are common to all tss2 programs and provide information that many users may expect. the group chat classics 🫢

  • -h, --help [man|no-man] β€” display the tool's manpage. by default, it attempts to invoke the manpager for the tool, however, on failure will output a short tool summary. this is the same behavior if the "man" option argument is specified, however if explicit "man" is requested, the tool will provide errors from man on stderr. if the "no-man" option is specified, or the manpager fails, the short options will be output to stdout.

To successfully use the manpages feature requires the manpages to be installed or on MANPATH. See man(1) for more details. πŸ“–

  • -v, --version β€” display version information for this tool, supported tctis and exit. cute and quick πŸ’«

πŸ”₯ EXAMPLE πŸ”₯

Create a key without password

tss2_createkey --path=HS/SRK/myRsaCryptKey --type="noDa, decrypt" --authValue=""

Create a key, ask for password on the command line

tss2_createkey --path=HS/SRK/myRsaCryptKey --type="noDa, decrypt"

Create a key with password "abc".

tss2_createkey --path=HS/SRK/myRsaCryptKey --type="noDa, decrypt" --authValue=abc

⭐ RETURNS ⭐

0 on success or 1 on failure. that's the whole mood chart, no in-between 😭

πŸ’€ BUGS πŸ’€

Github Issues β€” you know where to find them.

🧚 HELP 🧚

See the Mailing List.

πŸŽ€ License πŸŽ€

This work is licensed under the Creative Commons Attribution 4.0 International License (CC BY 4.0).


ok that's the whole page, bestie. go forth and create keys, you absolute icon πŸ‘‘

and shoutout to tpm2-tools, dated APRIL 2019 β€” that's the source and version, and yes she's been serving since 2019 πŸ’–βœ¨πŸŒΈ

πŸ“¦ where this page comes from