This document contains a step by step procedure describing how to verify that a customer delivery is from Kratos and has not been modified in transit. The verification process is based on md5sum and gpg.
- Copy the gpg public key, md5sum log file, and gpg detached signature file to a Linux machine in a temporary directory.
- Mount the contents of the CD/DVD or copy the contents of the delivery to a local directory on the Linux machine. If the deliverable is a *.iso or *.udf file, make sure that the contents of the iso or udf are listed. Usually mounting a CD or DVD with an iso or udf will automatically show the contents, but if not a loopback mount can be used to show the contents of an iso or udf:
Example (as root):
# mkdir /mnt/temp_iso_extract
# mount -o loop /tmp/my_deliverable_file.iso /mnt/temp_iso_extract
- Import and trust the gpg public key into your gpg keyring.
Example (as your uid):
$ gpg --import ./public.gpg-key
$ gpg --edit-key publickeys@rtlogic.com
Command > trust
Your decision? 5
(I trust ultimately)
y
q
- Compare the delivered files with the md5sum log file using the “
md5sum -c
“ command. This command must be run from the top level where the delivered files are staged on the Linux machine. Every file detected should return “OK” from the md5sum output.
Commands:
$ chdir <top_directory_deliverables>
$ md5sum -c <log_dir>/sn<serial_number>_md5sum.txt
Example (as your uid):
$ cd /mnt/Vbox_temp
$ md5sum -c /tmp/sn116394_md5sum.txt
./32Bit/Readme.txt: OK
./64Bit/Readme.txt: OK
./AUTORUN.INF: OK
./autorun.sh: OK
./cert/oracle-vbox.cer: OK
./cert/VBoxCertUtil.exe: OK
./OS2/gengradd.dll: OK
./OS2/libc06.dll: OK
./OS2/libc061.dll: OK
./OS2/libc062.dll: OK
./OS2/libc063.dll: OK
./OS2/libc064.dll: OK
./OS2/libc065.dll: OK
./OS2/readme.txt: OK
./OS2/VBoxControl.exe: OK
./OS2/VBoxGuest.sys: OK
./OS2/vboxmouse.sys: OK
./OS2/VBoxReplaceDll.exe: OK
./OS2/VBoxService.exe: OK
./runasroot.sh: OK
./VBoxLinuxAdditions.run: OK
./VBoxSolarisAdditions.pkg: OK
./VBoxWindowsAdditions.exe: OK
./VBoxWindowsAdditions-amd64.exe: OK
./VBoxWindowsAdditions-x86.exe: OK
- Verify that the detached gpg signature file matches the md5sum log. The command should return:
gpg: Good signature from "RT Logic (Real-Time Logic, Inc.) <publickeys@rtlogic.com>"
Command:
$ gpg --verify sn<serial_number>_md5sum.sig sn<serial_number>_md5sum.txt
Example:
$ gpg --verify sn116394_md5sum.sig sn116394_md5sum.txt
gpg: Signature made Fri 30 Jun 2017 11:06:05 AM MDT using RSA key ID 89D8163C
gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: next trustdb check due at 2020-06-26
gpg: Good signature from "RT Logic (Real-Time Logic, Inc.) <publickeys@rtlogic.com>"