= Kleopatra Test Plan **Status: in progress** <> == Introduction The purpose of this test plan is to ensure Kleopatra works well on all supported operating systems. == Test environment Choose one combination of the following target platforms supported by Kleopatra. Operating system: * Windows Vista (32 or 64bit) * Windows 7 (32 or 64bit) * Windows 8 (32 or 64bit) * Windows 10 (32 or 64bit) It is recommended to use a clean virtual test environment, e.g. with [[https://www.virtualbox.org/|VirtualBox]]. == Preconditions * GnuPG (latest release) Installed * Kleoptra Installed * ~OpenPGP public key (*.asc or *.gpg) and private key (*.asc or *.gpg) * S/~M~I~M~E certificate chain (*.pem) and private key (*.p12) == Tests === Testsuite 1: Basic Functions ==== Testsuite 1.1: Create Certificates (OpenPGP) # Choose "File" from MenuBar # Click "New Secret Key" # Choose "OpenPGP Keypair" # Fill in some random information # Choose a Passphrase # The new Certificate will appear in the overview ==== Testsuite 1.2: Create Certificate-Request (X.509) # Choose "File" from MenuBar # Click "New Secret Key" # Choose "X.509 Keypair" # Fill some random information # Choose a Passphrase # Save the Certificate Request to file ==== Testsuite 1.3: Import Certificates (OpenPGP) # Choose "File" from MenuBar # Click "Import..." # Navigate to a previously exported Certificate # Click "Open" # The imported certificate will appear in the overview ==== Testsuite 1.4: Import Certificates incl. Trustchain (X.509) # Choose "File" from MenuBar # Click "Import..." # Navigate to a previously exported Certificate # Click "Open" # The imported certificate will appear in the overview ==== Testsuite 1.5: Encrypt Files (OpenPGP) # Click the Sign/Encrypt Files Button # Choose a file within the dialogue # Deselect the Sign Option # Select an OpenPGP Certificate as Target # Click the Sign/Encrypt button # An Encrypted File is at the defined Target ==== Testsuite 1.6: Encrypt Files (X.509) # Click the Sign/Encrypt Files Button # Choose a file within the dialogue # Deselect the Sign Option # Select an X.509 Certificate as Target # Click the Sign/Encrypt button # An Encrypted File is at the defined Target ==== Testsuite 1.7: Sign Files (OpenPGP) # Click the Sign/Encrypt Files Button # Choose a file within the dialogue # Deselect the Encrypt Option # Select an OpenPGP Certificate as Signing Source # Click the Sign/Encrypt button # A signed File is at the defined Target ==== Testsuite 1.8: Sign Files (X.509) # Click the Sign/Encrypt Files Button # Choose a file within the dialogue # Deselect the Encrypt Option # Select an X.509 Certificate as Signing Source # Click the Sign/Encrypt button # An signed File is at the defined Target ==== Testsuite 1.9: Sign & Encrypt Files (OpenPGP) # Click the Sign/Encrypt Files Button # Choose a file within the dialogue # Select an OpenPGP Certificate as Signing Source # Click the Sign/Encrypt button # A signed and enncrypted File is at the defined Target ==== Testsuite 1.10: Sign & Encrypt Files (X.509) # Click the Sign/Encrypt Files Button # Choose a file within the dialogue # Select an X.509 Certificate as Signing Source # Click the Sign/Encrypt button # An signed and enncrypted File is at the defined Target ==== Testsuite 1.11: Decrypt Files (OpenPGP) # Click the Verify/Decrypt Files Button # Choose a file encrpyted to a OpenPGP certificate within the dialogue # Enter the Passphrase # A decrypted File is at the defined Target ==== Testsuite 1.12: Decrypt Files (X.509) # Click the Verify/Decrypt Files Button # Choose a file encrpyted to a X.509 certificate within the dialogue # Enter the Passphrase # A decrypted File is at the defined Target ==== Testsuite 1.13: Check Signature # Click the Verify/Decrypt Files Button # Choose a signed File within the dialogue # Enter the Passphrase # A decrypted File is at the defined Target ==== Testsuite 1.14: Lookup Key on Server If no Server is defined, please execute Testsuite 2.13 first. # Click on "Lookup on Server" # Search for a Name (i.E. "Einstein") # Select a Key # Click the "Import" button # The imported key appears in the "Imported Certificates" Tab ==== Testsuite 1.15: Export public and private Key # Right Click on a Key you created before # Click the "Export..." Button # Select a Location in the dialogu # Click the "Save Button" # The eported Key is at the choosen location ==== Testsuite 1.16: Trust otheres Certificates # Rightclick a previously imported public key # Select the "Trust" option # Select the UIDs you want to Trust # Approve, that Fingerprints are checked # Select that you want to approve it just for yourself # klick the "Approve" button # Enter the Passphrase of your Identity # Finish the dialogue # Rightclick on the previously trusted key # Click on Details # Check the Trust Level ==== Testsuite 1.17: Folder Encrypt # Click on File in the MenuBar # Select the "Sign/Encrypt Folder" Option # Select a Folder fron the Dialgue # Click the "Sign/Encrypt" Button # Enter your Passphrase # The encrypted Folder is at the selected Destination ==== Testsuite 1.18: Change Owner Trust # Right click on a imported Public key # Select the "Change Ownertrust" option # Select one of the given options === Testsuite 2: Advanced Functions ==== Testsuite 2.1: Revocation Certificates # Click on "File" in the MenuBar # Select the Import Option # Select a Revocation Certificate for an imported Certificate ==== Testsuite 2.2: Certificate Revocation List # Select "Extras" in the MenuBar # Choose the "Import Revocation List from File" Option # Select the Revocation Certificate List on the File Dialogue ==== Testsuite 2.3: Check Trust-Chains in WoT # Create Two additional OpenPGP Certificates # Set the owner-trust with your first certificate on the second certificate # Change the Trust with the Second Certificate on the Third # Sign with the Second Certificate on the Third # Export the Public Key of the second and third key # Delete the Second and third key # Import the Public Keys of the second and third key # Check the Trust on the Third key ==== Testsuite 2.4: Check TrustLevels in TOFU ==== Testsuite 2.5: Check Mixed Encryption with X.509 and OpenPGP # Select the File Sing/Encrypt Option # Select a File from the File Dialogue # Deselect the Sign Option # Select two Recipients, one OpenPGP and X.509 Certificate # Click the Sign/Encrypt Button ==== Testsuite 2.6: Check GnuPG-Tar Encryption # Click on File in the MenuBar # Select the "Sign/Encrypt Folder" Option # Select a Folder fron the Dialgue # Click the "Sign/Encrypt" Button # Enter your Passphrase # The encrypted Folder is at the selected Destination ==== Testsuite 2.7: Change Certificate Server for X.509 # Select Preference in MenuBar # Click the Kleopatra preferences # Click on "New" in the Certificate Server dialogue # Enter the Details of your Server ==== Testsuite 2.8: Change Validity # Right Click one of your own OpenPGP Certificates # Click on Detials # Click on "Change" next to the Expires Option # Select a Date # Click on O.K. ==== Testsuite 2.9: Export Trustchain ==== Testsuite 2.10: Check Certificate Details # Right Click a Certificate # Choose "Details" # Choose "More Details" ==== Testsuite 2.11: add UID to Key # Right Click a Certificate # Choose "Details" # Click "Add email adress" # Enter some random Information # Approve the Dialogue # Enter your Passphrase ==== Testsuite 2.12: create Certificate using Brainpool # Choose "File" from MenuBar # Select teh OpenPGP Option # Enter some Random Information # Select the "Advanced Options..." Button # Select the ECDSA Option # Choose a Brainpool Alogrithm # Select OK # Select Next in the Initial Dialogue # Enter a Passphrase # The created Key appears in the Overview ==== Testsuite 2.13: add Catalogue Service # Select Preference in MenuBar # Click the Kleopatra preferences # Click on "New" in the Certificate Server dialogue # Approve the added Server === Testsuite 3: Interoperability ==== Testsuite 3.1: Check Integrity of Downloaded Files with Signatures # Download a File and the Signatures of it (e.g. https://www.gnupg.org/download/) # Download the Signing Keys (e.g. https://www.gnupg.org/signature_key.html) # Import the Signing Keys # Select the "Check and Decrypt Files" option # Select the Downloaded Signature ==== Testsuite 3.2: Decrypt File that was encrypted under Linux (OpenPGP) # Select the "Check and Decrypt Files" option # Select the Encrypted File # Enter your Passphrase ==== Testsuite 3.3: Decrypt File that was encrypted under Linux (X.509) # Select the "Check and Decrypt Files" option # Select the Encrypted File # Enter your Passphrase ==== Testsuite 3.4: Check Signature on File that was signed under linux (OpenPGP) # Select the "Check and Decrypt Files" option # Select the Signed File ==== Testsuite 3.5: Check Signature on File that was signed under linux (X.509) # Select the "Check and Decrypt Files" option # Select the Signed File === Testsuite 4: Kleoptra Smartcard Support ==== Testsuite 4.1: Initialize OpenPGP Smartcard ==== Testsuite 4.2: Use OpenPGP Smartcard for Encryption (OpenPGP 2.1) ==== Testsuite 4.3: Use OpenPGP Smartcard for Signing ==== Testsuite 4.4: Use X.509 Smartcard for Encryption (NetKey Card) ==== Testsuite 4.5: Use X.509 Smartcard for Signing (NetKey Card) ==== Testsuite 4.6: Use X.509 Smartcard for Trusted Signing (NetKey Card)