diff options
author | Stuart Stock <stuart@int08h.com> | 2018-10-06 22:40:12 -0500 |
---|---|---|
committer | Stuart Stock <stuart@int08h.com> | 2018-10-07 15:48:23 -0500 |
commit | 0b924cc92418f9a210a6b78cef56e427dc9c9d1d (patch) | |
tree | a7bb33d3a344d973684e6f0de3e35f956de803db /src/key/mod.rs | |
parent | b43bcb27ad303afd56cfe1d767e95c10cf3d1cb2 (diff) | |
download | roughenough-0b924cc92418f9a210a6b78cef56e427dc9c9d1d.zip |
Land KMS support, yay!
AWS KMS for now, work-in-progress
Diffstat (limited to 'src/key/mod.rs')
-rw-r--r-- | src/key/mod.rs | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/key/mod.rs b/src/key/mod.rs new file mode 100644 index 0000000..a4af975 --- /dev/null +++ b/src/key/mod.rs @@ -0,0 +1,41 @@ +// Copyright 2017-2018 int08h LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +//! +//! Representations and management of Roughtime's online and long-term Ed25519 keys +//! + +extern crate hex; +extern crate log; + +mod longterm; +mod online; + +pub use self::longterm::LongTermKey; +pub use self::online::OnlineKey; + +#[cfg(feature = "kms")] +pub mod awskms; + +#[derive(Debug, PartialEq, Eq, PartialOrd, Hash, Clone, Copy)] +pub enum KeyProtection { + /// No protection, seed is in plaintext + Plaintext, + + /// Envelope encryption of seed by AWS Key Management Service + AwsKmsEnvelope, + + /// Envelope encryption of seed by Google Cloud Key Management Service + GoogleKmsEnvelope, +} |