# Passwords and Keys Manual

## Introduction

You can use Passwords and Keys to create and manage PGP and SSH keys.

Passwords and Keys provides a front end to many of the features of Gnu Privacy Guard (GPG) and integrates with multiple components of the GNOME desktop.

With Passwords and Keys you can:

- Create and manage PGP and SSH keys,

- Export and import PGP and SSH keys,

- Share your keys with others,

## Getting Started

### Starting Passwords and Keys

You can start Passwords and Keys in the following ways:

Applications menu

- Choose Accessories Password and Keys .

Command Line

- Type `seahorse` then press Return.

### When You Start Passwords and Keys

When you start Passwords and Keys, the Password and Keys window is displayed.

#### The Passwords and Keys Window

Show the Passwords and Keys window.

The Passwords and Keys window contains the following elements:

Menubar

- The menus on the menubar contain all of the commands that you need to perform tasks in Passwords and Keys.

Toolbar

- Use the toolbar to quickly access commonly-used commands.

Keys and Passwords Tabs

- Provides access to the keys and passwords in the keyring.

First time options

- Provides fast access to useful actions for first time users. From here you can:

  - Browse the help system,

  - Import keys in the keyring,

  - Create new keys.

## Creating OpenPGP Keys

OpenPGP is a non proprietary protocol for encrypting e-mail with the use of public key cryptography based on PGP. It defines standard formats for encrypted messages, signatures, private keys and certificates for exchanging public keys.

Public key cryptography is a concept which involves the use of two keys: a public key, that you can give to anyone with whom you would like to communicate, and a private key which is private and must be kept secret.

To create OpenPGP keys:

1. Choose File New...

2. Select PGP Key and click Continue

3. Enter your full name (first - last), your e-mail address and any additional information. You can also specify advanced options for the key: see below.

4. Click Create to create the new key pair.

5. The Passphrase for New PGP Key dialog will open. Enter the passphrase twice for your new key.

Use similar practices to generating a strong password when choosing a passphrase. The main difference between a password and a passphrase is that, in a passphrase, spaces are valid characters.

### Advanced options

Expand the Advanced key options section to specify the following options for a new key:

Encryption Type

- This field specifies the encryption algorithms used to generate your keys.

  DSA ElGamal

- This is the suggested choice as it will allow you to encrypt, decrypt, sign and verify as needed.

DSA

- Will allow signing only.

RSA

- Will allow signing only.

Key Strength (bits)

- This is the length of the key in bits. The longer the key, the more secure it will be, provided a strong passphrase is used. Conversely, performing any operation with a longer key will require more time than it would with a shorter key. Acceptable values are between 1024 and 4096 bits. At least 2048 bits is recommended.

Expiration Date

- This is the date at which the key will cease to be usable for performing encryption or signing operations. 6 months is a reasonable time to set it to. You will have to either change the expiration date or generate a new key or subkey after this amount of time passes.

  Sign your new key with your old one before it expires to preserve your trust status.

## Creating Secure Shell Keys

Secure Shell (SSH) is a way of logging into a remote computer to execute commands on that machine. SSH keys are used in key-based authentication system, as an alternative to the default password authentication system. With key-based authentication there is no need to manually type a password to authenticate.

Secure Shell keys are made of two keys: a private key, that must be kept secret, and a public key which can be uploaded to any computer you need to access.

To create a Secure Shell key:

1. Choose File New...

2. Select Secure Shell Key and click Continue

3. Enter a description of what the key is to be used for. You can use your e-mail address or any other reminder. You can also specify advanced options for the key: see below.

4. Click Just Create Key to create the new key, or Create and Set Up to create the key and set up another computer to use it for authentication.

5. The Passphrase for New Secure Shell Key dialog opens. Enter the passphrase twice for your new key.

   Use similar practices to generating a strong password when choosing a passphrase. The main difference between a password and a passphrase is that, in a passphrase, spaces are valid characters.

### Advanced options

Expand the Advanced key options section to specify the following options for a new key:

Encryption Type

- This field specifies the encryption algorithms used to generate your key.

  RSA

- Use the Rivest-ShamirAdleman (RSA) algorithm to create the SSH key. This is the preferred and more secure choice.

DSA

- Use the Digital Signature Algorithm (DSA) to create the SSH key.

Key Strength (bits)

- This is the length of the key in bits. The longer the key, the more secure it will be, provided a strong passphrase is used. Conversely, performing any operation with a longer key will require more time than it would with a shorter key. Acceptable values are between 1024 and 4096 bits. At least 2048 bits is recommended.

## OpenPGP Key Properties

The descriptions in this section apply to all OpenPGP keys.

To view properties of a PGP key:

- Select the PGP key from the main window,

- Double click on it or choose Properties from the toolbar,

- Select the Details tab.

### Properties

Fingerprint

- The fingerprint is a unique string of characters that exactly identifies a key.

KeyID

- The KeyID is similar to the Fingerprint. However the KeyID only contains the last 8 characters of the fingerprint. Most of the time it is possible to identify a key with only the KeyID, but occasionally two keys may have the same ID.

Type

- Specifies the encryption algorithm used to generate a key. DSA keys can only sign. ElGamal keys are used to encrypt.

Created

- Indicates the date the key was created.

Expires

- Indicates the date the key can no longer be used.

Strength

- Indicates the length in bits of a key. In general the longer the key, the more security it provides.

  A long key is not enough to make up for the use of a weak passphrase.

### Trust

Trust is an indication of how sure you are of a person's ability to correctly extend the web of trust. When you are faced with a key you have not signed, the validity of that person's key will be determined based on the signatures they have collected and how well or not you trust the people who have made those signatures. By default, an unknown key will require 3 signatures with marginal trust value or 1 fully trusted signature.

- Unknown: You are not familiar with the person's ability to sign keys correctly.

- Never: This person cannot correctly sign keys.

- Marginal: This person checks for photo ID before signing a key, but does not necessarily scrutinize the IDs.

- Full: This person scrutinizes each and every person's photo IDs before signing them (e.g. they only sign keys that truely belong to the person asking for the signature).

- Ultimate: This level of trust should only be assigned to your own keys.

### Enabling and Disabling Keys

When a key is enabled, it can be used to perform encryption operations. When a key is disabled, it cannot be used to encrypt to or verify signatures made by it.

### Expiration Date

A key can no longer be used to perform key operations after it has expired. Changing a key's expiration date to a point in the future re-enables it. A good general practice would be to have a master key that never expires and multiple subkeys that do and are signed by the master key.

### User IDs

User IDs allow multiple identities and email addresses to be used with the same key.

They usually take the form of:

    Name (comment) <email address>

#### Adding a User ID

Adding a user ID is useful when you want to have an identity for your job and one for your friends.

To add a user ID to a key:

- Select the key from the main window,

- Double click on it or choose Properties from the toolbar,

- Select the Names and Signatures tab,

- Click on Add Name.

After following the instructions above, you will be presented with a dialog to fill in. The fields are detailed below.

Full Name

- Enter your full name in the form

      <first> <last>

  A middle name or initial is optional.

  You must enter at least 5 characters in this field.

Email Address

- Your email address is how most people will locate your key on a key server or other key provider. Make sure it is correct before continuing.

  It should be of the form

      <username>@<domainname>

Key Comment

- The comment field can be used to place any additional information into the displayed name of your new ID. This information can be searched for on key servers.

### Photo IDs

Photo IDs allow a key owner to embed one or more pictures of themselves in a key. These identities can be signed just like normal user IDs. A photo ID must be in JPEG format and is recommended to be no larger than 240x288 pixels.

If the chosen image is not of the required file type or size Passwords and Keys can resize and convert it on the fly from any image format supported by the GDK library.

### Changing the Passphrase

To change the passphrase assigned to a key:

- Select the key from the main window,

- Double click on it or choose Properties from the toolbar,

- Click on Change Passphrase.

Enter the new passphrase and click OK.

### Deleting a Key

To delete a key from your keyring:

- Select the key from the main window,

- Right click on it and choose Delete Key or choose Edit Delete Key .

You can delete your keys, trusted keys and collected keys.

## OpenPGP Subkey Properties

Each OpenPGP key has a single master key used to sign only. Subkeys are used to encrypt and to sign as well. In this way, if your sub key is compromised, you don't need to revoke your master key.

ID

- This is the identifier of the subkey.

Type

- Specifies the encryption algorithm used to generate a subkey. DSA keys can only sign, ElGamal keys are used to encrypt while RSA keys are used to sign or to encrypt.

Created

- Indicates the date the key was created.

Expires

- Indicates the date the key can no longer be used.

Status

- Indicates the status of the key.

Strength

- Indicates the length in bits of the key. In general the longer the key, the more security it provides.

  A long key is not enough to make up for the use of a weak passphrase.

### Adding a Subkey

To add a subkey to a key, from the Subkeys section click on Add button.

After following the instructions above, you will be presented with a dialog to fill in. The fields are detailed below.

Key Type

- Specifies the encryption algorithm used to generate a subkey.

  DSA

- Use the Digital Signature Algorithm (DSA) to create the subkey. This subkey can sign only.

ElGamal

- Use the ElGamal algorithm to create the subkey. This subkey can encrypt only.

RSA

- Use the Rivest-Shamir Adleman (RSA) algorithm to create the subkey. This subkey can be used to sign or encrypt, but you have to create two different subkeys.

Key Length

- Indicates the length in bits of the subkey. In general the longer the key, the more security it provides.

Expiration Date

- Indicates the date the subkey can no longer be used.

### Changing a Subkey Expiration Date

To change a subkey expiration date, select the subkey from the Subkeys section, then:

- Click on the Expire button on the left,

- From the date dialog choose the new expiration date or select Never expires for no expiration date.

### Revoking a Subkey

To revoke a subkey, select the subkey from the Subkeys section, then:

- Click on the Revoke button on the left,

- Choose a reason why to revoke the subkey:

  No Reason

- There isn't a specific reason to revoke the key.

Compromised

- The key has been compromised.

Superseded

- The key has been superseded by another one.

Not Used

- The key is not used anymore.

- Enter a description of why you are revoking the key,

- Click on Revoke.

The effect of revoking a subkey is immediate.

### Deleting a Subkey

To delete a subkey, select the subkey from the Subkeys section, then:

- Click on the Delete button on the left.

## Secure Shell Key Properties

The descriptions in this section apply to all SSH keys.

To view properties of a SSH key:

- Select the Secure Shell key from the main window,

- Double click on it or choose Properties from the toolbar,

- Select the Details tab.

### Properties

Fingerprint

- The fingerprint is a unique string of characters that exactly identifies a key.

Algorithm

- Specifies the encryption algorithm used to generate a key.

Location

- This is the location where the private key has been stored.

Strength

- Indicates the length in bits of a key. In general the longer the key, the more security it provides.

  A long key is not enough to make up for the use of a weak passphrase.

### Deleting a Secure Shell Key

To delete a Secure Shell key:

- Select the SSH key from the main window,

- Right click on it and choose Delete key or choose Edit Delete Key .

## Importing Keys

To import keys choose File Import and select, from the file chooser, a file containing at least one ASCII armored public key.

Importing can also be performed by pasting the keys inside Passwords and Keys:

- Select an ASCII armored public block of text,

- Copy it to the clipboard,

- Choose Edit Paste Keys .

## Exporting Keys

To export keys, select the keys in the main window and choose File Export .

You can also export keys to the clipboard in an ASCII armored block of text:

- Select the keys in the main window,

- Choose Edit Copy Keys .

## Signing a Key

Signing another person's key means you are giving trust to that person. Before signing a key, you have to carefully check the key's fingerprint to be sure that the key really belongs to that person.

To sign a key in your keyring:

- Select the key you want to sign from the Trusted Keys or Other Collected Keys tabs,

- Choose Sign from the toolbar or File Sign ,

- Select how carefully the key has been checked,

- Indicate if the signature should be local to your keyring, and if your signature can be revoked,

- Click on Sign.

## Preferences

This section describes the preferences settable in Passwords and Keys by choosing Edit Preferences from within Passwords and Keys.

### Password Keyrings

#### Creating Keyrings

To create a new keyring, from the menu choose File New and choose Password Keyring. Enter a name for the new keyring, and press enter.

#### Changing Keyring Passwords

To change the unlock password of the keyring, first select the appropriate keyring and then press Change Unlock Password button. You will then be prompted to type the old password in the Old password text box, the new password in the New password text box and confirm it in the Confirm password text box. To apply the settings, press Change. If the old password is correct, you will get a status message indicating the success of the operation. If the old password is not correct you will be asked to check its correctness.

#### Removing Keyrings

To remove a keyring, first select the appropriate keyring and then from the menu choose Edit Delete.

### Key Servers

Keep your and other's keys up to date by syncing keys periodically with remote keyservers. Syncing will make sure that you have the latest signatures made on all of your keys so that the web of trust will be the most useful.

Passwords and Keys provides support for HKP and LDAP keyservers.

HKP Servers

- HKP keyservers are ordinary web based keyservers such as the popular hkp://pool.sks-keyservers.net, also accessible at http://sks-keyservers.net.

LDAP Keyservers

- LDAP keyservers are less common, but use the standard LDAP protocol to serve keys. ldap://keyserver.pgp.com is a good LDAP server.

### Key Sharing

Key Sharing is provided by DNS-SD, also known as Bonjour or Rendevous. Enabling key sharing will add the local Passwords and Keys users' public key rings to the remote search dialog. Using these local "key servers" will most likely be faster than accessing remote servers.

## About Passwords and Keys

Passwords and Keys, its associated plugins, the preferences applet and the panel applet are known collectively as Seahorse. Seahorse was written by Jacob Perkins. The current maintainers are Stef Walter and Adam Schreiber. This manual is by Adam Schreiber. The project's web site was designed by Jim Pharis. To find more information about Seahorse, the project , please visit the Seahorse web page.

To report a bug or make a suggestion regarding this application or this manual, follow the directions in the Feedback section of the GNOME User Guide.

This program is distributed under the terms of the GNU General Public license as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. A copy of this license is included with this documentation; another can be found in the file COPYING included with the source code of this program.