Blame | Last modification | View Log | RSS feed
Notes on Signature GenerationThe process is to generate a signature for every file in the manifest and the manifest itself.The signature is held in a .sig file.The format of the .sig file is Vix's.The format is:Line-1: The name of the certificate to verify the signatureLine-2: Base64 signature of the fileSecurity features involve:* The device is provided with the certificate used to verify the siganutureIt will be in the manifest* The device MUST verify the certificate* The Root CA MUST be placed onthe device during Day-0* The signature MUST be generated on a specail machine.Its special because it has the privite key for the certificateThere are for files involved in the process:VixPulseManifestRootCA.keySuper super secret key used to generate the Root CAOnly every used to create VixPulseManifestRootCA.key.crtOnly every used to create VixPulseManifest.crt and other certificates of the same classHeld in 1PasswordVixPulseManifestRootCA.crtSuper super secret certificate used to generate the Root CAUsed to create VixPulseManifest.crt and other certificates of the same classUsed to verify VixPulseManifest.crt and other certificates of the same classInstalled on devices as a part of Day-0Held in the package - manifest-certificatesHeld in 1PasswordVixPulseManifest.keySecret key used to generate signatures over all files in the manifest and the manifest itselfHeld in 1PasswordInstalled (manually) on a controlled build machineVixPulseManifest.crtPulic certificate used to verify signatures created with VixPulseManifest.keyInstalled on the devices as a part of the manifest.The security involves verifying the certificate against a RootCA that was installed on the deviceduring commisioning.Held in 1PasswordHeld in the package - manifest-certificates-------------------------------------------------------------------------------Generation of the RootCA and other key/certificate key pairsThe RootCA should only be generated once.Other key/certificate paisrs can be generated as needed.The process for generating the RootCa is scripted - see genCerts/genRoot.shThe process for generating one key/cert is scriped - see genCerts/genCert.shThese scripts are provided for future referenceProcess for creating another manifest certificate:* Get VixPulseManifestRootCA.key / VixPulseManifestRootCA.crt from one password* Place in the same directory as the genCert.sh script* Edit the genCert.sh and change the value for CLIENT_FQDNIt must be different to all others generated from the same CA* Place the generated .crt file in the directory 'src/etc/manifest'Place the file under version control