Jump to: navigation, search

Difference between revisions of "Barbican/Blueprints/dogtag-plugin"

(Proposed Changes)
Line 21: Line 21:
 
* Crypto Plugin interface
 
* Crypto Plugin interface
 
# modify create() method to return the encrypted datum (vs the current raw data).  It should have the same return contract as the encrypt() method (i.e. the secret generation and the secret encryption operations will be combined).
 
# modify create() method to return the encrypted datum (vs the current raw data).  It should have the same return contract as the encrypt() method (i.e. the secret generation and the secret encryption operations will be combined).
 +
# new method() to return a transport key
  
 
* python-barbicanclient
 
* python-barbicanclient
# Modify to support a transport key with the Barbican  
+
# Modify to support retrieving a transport key for encryption and decryption between Barbican client and Barbican
  
 
* Barbican  
 
* Barbican  

Revision as of 23:28, 16 January 2014

Abstract

This blueprint is for creating a Barbican crypto plugin so that Barbican deployments can use the RedHat DogTag Data Recovery Manager (DRM) as a key management back-end.

Description

To support a RedHat DRM as a key management back-end, changes will be needed relative to 2 main workflows:

  1. Creating a secret
Create Secret using DogTag Plugin
NOTE: Between Barbican and DRM will be the DogTag plugin to integrate with DRM.
  1. Retrieving a secret
Retrieving a Secret using DogTag Plugin

Proposed Changes

  • Crypto Plugin interface
  1. modify create() method to return the encrypted datum (vs the current raw data). It should have the same return contract as the encrypt() method (i.e. the secret generation and the secret encryption operations will be combined).
  2. new method() to return a transport key
  • python-barbicanclient
  1. Modify to support retrieving a transport key for encryption and decryption between Barbican client and Barbican
  • Barbican
  1. New resource to retrieve a transport key

References

[1] Blueprint [2] [3]