[attestation] Validate DICE chain signatures and CSR signature

With subject public keys in the DICE certificates.

A wrapper has been added around ED25519_verify to support
ED25519 signature verification. The existing EVP_PKEY is not
used because the verification with EVP_PKEY requires converting
the ED25519 public key to EVP_PKEY. This conversion with
EVP_PKEY_new_raw_public_key increases the rialto image size
by an extra 90KB.

Bug: 314266221
Bug: 310931749
Test: atest rialto_test
Change-Id: I82cc58441b4f4730e46e9de7a0efa03959d8d137
5 files changed
tree: 1c101c6a17343eb731c02445ab27d2a0426927a3
  1. apex/
  2. apkdmverity/
  3. authfs/
  4. compos/
  5. demo/
  6. demo_native/
  7. docs/
  8. encryptedstore/
  9. javalib/
  10. launcher/
  11. libs/
  12. microdroid/
  13. microdroid_manager/
  14. pvmfw/
  15. rialto/
  16. service_vm/
  17. tests/
  18. virtualizationmanager/
  19. virtualizationservice/
  20. vm/
  21. vm_payload/
  22. vmbase/
  23. vmclient/
  24. zipfuse/
  25. .clang-format
  26. .gitignore
  27. Android.bp
  28. OWNERS
  29. PREUPLOAD.cfg
  30. README.md
  31. rustfmt.toml
  32. TEST_MAPPING
README.md

Android Virtualization Framework (AVF)

Android Virtualization Framework (AVF) provides secure and private execution environments for executing code. AVF is ideal for security-oriented use cases that require stronger isolation assurances over those offered by Android’s app sandbox.

Visit our public doc site to learn more about what AVF is, what it is for, and how it is structured. This repository contains source code for userspace components of AVF.

If you want a quick start, see the getting started guideline and follow the steps there.

For in-depth explanations about individual topics and components, visit the following links.

AVF components:

AVF APIs:

How-Tos: