Support verification of encrypted images

An image's hash cannot be verified while the image is encrypted.  To
verify the hash of such an image, the image must be decrypted first
(without clearing the encrypted flag in the header).  This complicates
the API, as the caller now needs to pass in a set of encryption keys.

The fix is to split the image.Verify() function into several pieces:
    * VerifyStructure()
    * VerifyHash()
    * VerifySigs()
    * VerifyManifest()
14 files changed
tree: 491998cf8ed01d094110ce29a45ac6f8c4752d2e
  1. errors/
  2. flash/
  3. image/
  4. manifest/
  5. mfg/
  6. sec/
  7. .gitignore
  8. .travis.yml
  9. go.mod
  10. go.sum
  11. LICENSE
  12. NOTICE
  13. README.md
README.md

Mynewt Artifact

Apache Mynewt Artifact is a Go library that parses, manipulates, validates, and outputs Mynewt artifacts. Supported artifacts are:

  • Images
  • Image manifests
  • Manufacturing images (mfgimages)
  • Manufacturing manifests