Verify Virtual Machine Images on Linux
|description=Instructions for OpenPGP and Signify Verification of {{project_name_long}} ISO, VirtualBox and KVM on the Command Line
|image=Approved-29149640.png
[[File:Approved-29149640.png|250px|thumbnail]]
Instructions for OpenPGP and Signify Verification of {{project_name_short}} ISO, VirtualBox and KVM on the Command Line
{{always_verify_signatures_reminder}}
|image=[[File:GnuPG-Logo.svg|25px]]
{{gpg_verification_introduction}}
'''1.''' Platform specific. Select your platform.
|linkid=virtualizer_openpgp
|title={{Headline|h=2|content={{project_name_short}} ISO}}
|image=[[File:Cd-rom-icon.png|25px]]
'''2.''' Import the signing key.
Refer to the more secure, detailed [[Main/Project_Signing_Key|{{project_name_short}} Signing Key]] instructions.
'''3.''' Download the cryptographic (OpenPGP) signature corresponding to the image you want to verify.
'''4.''' Save the signature in the same folder as the image.
{{Download_image_and_signature
|text_signature=ISO signature
|extension=Intel_AMD64.iso
|title={{Headline|h=2|content=VirtualBox}}
|image=[[File:Virtualbox_logo.png|25px]]
Refer to the more secure, detailed [[Main/Project_Signing_Key|{{project_name_short}} Signing Key]] instructions.
'''3.''' Download the cryptographic (OpenPGP) signature corresponding to the image you want to verify.
'''4.''' Save the signature in the same folder as the image.
Select Xfce or CLI version.
|title={{Headline|h=2|content={{project_name_short}} VirtualBox Xfce}}
|image=[[File:Clipart-gui.svg|25px]]
{{Download_image_and_signature
|text_image=VirtualBox Xfce image
|text_signature=VirtualBox Xfce signature
|extension=Intel_AMD64.ova
|title={{Headline|h=2|content={{project_name_short}} VirtualBox CLI}}
|image=[[File:Utilities-terminal.png|25px]]
{{Download_image_and_signature
|text_image=VirtualBox CLI image
|text_signature=VirtualBox CLI signature
|extension=Intel_AMD64.ova
|title={{Headline|h=2|content=KVM}}
|image=[[File:Kvm-new-logo.png|25px]]
Refer to the more secure, detailed [[Main/Project_Signing_Key|{{project_name_short}} Signing Key]] instructions.
'''3.''' Download the cryptographic (OpenPGP) signature corresponding to the image you want to verify.
'''4.''' Save the signature in the same folder as the image.
Select Xfce or CLI version.
|title={{Headline|h=2|content={{project_name_short}} KVM Xfce}}
|image=[[File:Clipart-gui.svg|25px]]
{{Download_image_and_signature
|text_image=KVM Xfce image
|text_signature=KVM Xfce signature
|extension=Intel_AMD64.qcow2.libvirt.xz
|title={{Headline|h=2|content={{project_name_short}} KVM CLI}}
|image=[[File:Utilities-terminal.png|25px]]
{{Download_image_and_signature
|text_image=KVM CLI image
|text_signature=KVM CLI signature
|extension=Intel_AMD64.qcow2.libvirt.xz
'''5.''' Change directory.
cd [the directory in which you downloaded the image and the signature]
'''6.''' Start the cryptographic verification.
This process can take several minutes.
|linkid=virtualizer_openpgp
|title={{Headline|h=2|content={{project_name_short}} ISO}}
|image=[[File:Cd-rom-icon.png|25px]]
gpg --verify-options show-notations --verify {{project_name_short}}-*.Intel_AMD64.iso.asc {{project_name_short}}-*.Intel_AMD64.iso
|title={{Headline|h=2|content=VirtualBox}}
|image=[[File:Virtualbox_logo.png|25px]]
gpg --verify-options show-notations --verify {{project_name_short}}-*.ova.asc {{project_name_short}}-*.ova
|title={{Headline|h=2|content=KVM}}
|image=[[File:Kvm-new-logo.png|25px]]
gpg --verify-options show-notations --verify {{project_name_short}}-*.libvirt.xz.asc {{project_name_short}}-*.libvirt.xz
'''7.''' Check the output of the verification step.
|linkid=virtualizer_openpgp
|title={{Headline|h=2|content={{project_name_short}} ISO}}
|image=[[File:Cd-rom-icon.png|25px]]
|title={{Headline|h=2|content=VirtualBox}}
|image=[[File:Virtualbox_logo.png|25px]]
|title={{Headline|h=2|content=KVM}}
|image=[[File:Kvm-new-logo.png|25px]]
This output might be followed by a warning as follows.
{{gpg_signature_timestamp}}
Example of signature creation timestamp; see below.
gpg: Signature made Mon 19 Jan 2023 11:45:41 PM CET using RSA key ID ...
{{gpg_file_name_notation}}
|linkid=virtualizer_openpgp
|title={{Headline|h=2|content={{project_name_short}} ISO}}
|image=[[File:Cd-rom-icon.png|25px]]
{{#tag:pre|gpg: Signature notation: file@name={{project_name_short}}-{{VersionNew}}.Intel_AMD64.iso}}
|title={{Headline|h=2|content=VirtualBox}}
|image=[[File:Virtualbox_logo.png|25px]]
{{#tag:pre|gpg: Signature notation: file@name={{project_name_short}}-{{VersionNew}}.Intel_AMD64.ova}}
|title={{Headline|h=2|content=KVM}}
|image=[[File:Kvm-new-logo.png|25px]]
{{#tag:pre|gpg: Signature notation: file@name={{project_name_short}}-{{Version_KVM}}.libvirt.xz}}
<u>If the digital software signature verification failed</u>, the output will inform that the signature is bad:
{{do_not_continue_on_gpg_verification_errors}}
Digital software signature verification using OpenPGP has been completed.
{{Template:GnuPG-Troubleshooting}}
|image=[[File:Signify_Logo.svg|25px]]
| image = [[File:Ambox_notice.png|40px|alt=Info]]
| text = Advanced users only!
'''1.''' Select your platform.
|linkid=virtualizer_signify
|title={{Headline|h=2|content={{project_name_short}} ISO Signify}}
|image=[[File:Cd-rom-icon.png|25px]]
'''2.''' [[Signing_Key#Download_the_signify_Key|Download the signify Key]] and save it as <code>derivative.pub</code>.
{{signing_key_main_signify}}
|title={{Headline|h=2|content=VirtualBox Signify}}
|image=[[File:Virtualbox_logo.png|25px]]
'''2.''' [[Signing_Key#Download_the_signify_Key|Download the signify Key]] and save it as <code>derivative.pub</code>.
{{signing_key_main_signify}}
|title={{Headline|h=2|content=KVM Signify}}
|image=[[File:Kvm-new-logo.png|25px]]
'''2.''' [[Signing_Key#Download_the_signify_Key|Download the signify Key]] and save it as <code>derivative.pub</code>.
{{signing_key_main_signify}}
'''3.''' Install <code>signify-openbsd</code>.
[https://forums.whonix.org/t/signify-openbsd/7842/5 It is impossible to <code>signify</code> sign images (<code>.ova</code> / <code>libvirt.tar.xz</code>) directly.] You can only verify the <code>.sha512sums</code> hash sum file using <code>signify-openbsd</code> and then verify the image against the <code>sha512</code> sum.
'''5.''' Download the <code>.sha512sums</code> and <code>.sha512sums.sig</code> files.
'''6.''' Verify the <code>.sha512sums</code> file with <code>signify-openbsd</code>.
signify-openbsd -Vp derivative.pub -m {{project_name_short}}-*.sha512sums
If the signature is valid, it will output:
If the signature is invalid, it will output an error.
'''7.''' Compare the hash of the image file with the hash in the <code>.sha512sums</code> file.
sha512sum --strict --check {{project_name_short}}-*.sha512sums
If the hash is correct, it will output:
{{#tag:pre|{{project_name_short}}-Xfce-{{VersionNew}}.ova: OK}}
{{do_not_continue_on_gpg_verification_errors}}
Digital signature verification using signify has been completed.
If you are using signify for software signature verification, please consider making a report in the [https://forums.whonix.org/t/signify-openbsd/7842 signify-openbsd forum thread]. This will help developers decide whether to continue supporting this method or deprecate it.
Forum discussion: [https://forums.whonix.org/t/signify-openbsd/7842 signify-openbsd].
{{License_Amnesia|{{FULLPAGENAME}}}}
[[Category:Documentation]]