Verify Virtual Machine Images on the Command Line
Your support makes all the difference!
We believe security software like Kicksecure needs to remain open source and independent. Would you help sustain and grow the project? Learn more about our 10 year success story and maybe DONATE!
Digital signatures can increase security but this requires knowledge. Learn more about digital software signature verification.
In order to verify the Kicksecure ™ image, GnuPG must be installed. GnuPG is the common OpenPGP implementation for Linux: it is installed by default in Debian, Ubuntu, Kicksecure ™ and many other distributions.
1. Import the signing key.
Refer the the more secure, detailed Kicksecure ™ KVM Signing Key instructions.
2. Download the cryptographic (OpenPGP) signature corresponding to the virtual machine image you want to verify.
3. Save the signature in the same folder as the virtual machine image.
4. Start the cryptographic verification.
This process can take several minutes.
cd [the directory in which you downloaded the .ova and the .asc]
gpg --verify-options show-notations --verify Kicksecure*.libvirt.xz.asc Kicksecure*.libvirt.xz
5. Check the output of the verification step.
If the virtual machine image is correct, the output will inform that the signature is good:
gpg: Good signature from "HulaHoop"
This output might be followed by a warning as follows.
gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner.
This message does not alter the validity of the signature related to the downloaded key. Rather, this warning refers to the level of trust placed in the Kicksecure ™ signing key and the web of trust. To remove this warning, the Kicksecure ™ signing key must be personally signed with your own key.
Check the GPG signature timestamp makes sense. For example, if you previously saw a signature from 2020 and now see a signature from 2019, then this might be a targeted rollback (downgrade) or indefinite freeze attack. 
The first line includes the signature creation timestamp; see the example below.
gpg: Signature made Mon 19 Jan 2015 11:45:41 PM CET using RSA key ID 77BB3C48
Note: OpenPGP signatures sign files, but not file names. 
file@name OpenPGP notation in Kicksecure ™ release signatures describes the file name. This helps to confirm that the file name has not been tampered with; see the example below.
gpg: Signature notation: file@name=Kicksecure-184.108.40.206.libvirt.xz
If the Virtual Machine image is not correct, the output will inform that the signature is bad:
gpg: BAD signature from "HulaHoop"
Do not continue if verification fails! This risks using infected or erroneous files! The whole point of verification is to confirm file integrity. This page is strongly related to the pages Placing Trust in Kicksecure ™ and Verifying Software Signatures.
When a GPG error is encountered, first try a web search for the relevant error. The security stackexchange website can also help to resolve GPG problems. Describe the problem thoroughly, but be sure it is GPG-related and not specific to Kicksecure ™.
More help resources are available on the Support page.
- ↑ As defined by TUF: Attacks and Weaknesses:
- ↑ https://lists.gnupg.org/pipermail/gnupg-users/2015-January/052185.html
Kicksecure ™ KVM/Verify the virtual machine images using the command line wiki page Copyright (C) Amnesia <amnesia at boum dot org>
Kicksecure ™ KVM/Verify the virtual machine images using the command line wiki page Copyright (C) 2012 - 2022 ENCRYPTED SUPPORT LP <
This program comes with ABSOLUTELY NO WARRANTY; for details see the wiki source code.
This is free software, and you are welcome to redistribute it under certain conditions; see the wiki source code for details.