1 // Copyright 2024 Google LLC 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); you may not 4 // use this file except in compliance with the License. You may obtain a copy of 5 // the License at 6 // 7 // https://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12 // License for the specific language governing permissions and limitations under 13 // the License. 14 15 #![no_std] 16 #![deny(unsafe_code)] 17 #![deny(missing_docs)] 18 #![deny(trivial_casts)] 19 #![deny(trivial_numeric_casts)] 20 #![deny(unused_extern_crates)] 21 #![deny(unused_import_braces)] 22 #![deny(unused_results)] 23 #![deny(clippy::indexing_slicing)] 24 #![deny(clippy::unwrap_used)] 25 #![deny(clippy::panic)] 26 #![deny(clippy::expect_used)] 27 28 //! # DICE Protection Environment 29 //! 30 //! `dpe_rs` implements a DICE Protection Environment (DPE) for a family of DPE 31 //! profiles which align with the 32 //! [Open Profile for DICE](<https://pigweed.googlesource.com/open-dice/+/HEAD/docs/specification.md>) 33 //! specification. 34 //! 35 //! # no_std 36 //! 37 //! This crate uses `#![no_std]` for portability to embedded environments. 38 //! 39 //! # Panics 40 //! 41 //! Functions and methods in this crate, aside from tests, do not panic. A panic 42 //! means there is a bug that should be fixed. 43 //! 44 //! # Safety 45 //! 46 //! This crate does not use unsafe code. 47 //! 48 //! # Notes 49 //! 50 //! This crate is in development and not ready for production use. 51 pub mod args; 52 pub mod cbor; 53 pub mod constants; 54 pub mod crypto; 55 pub mod error; 56 pub mod memory; 57 pub mod noise; 58