Project

General

Profile

Task #2892

Updated by Junxiao Shi almost 9 years ago

As KeyChain is used to inherit from Pib and Tpm, many KeyChain methods are there simply because they are the methods of Pib & Tpm.  
 These methods are not semantically methods of KeyChain, and increase the complexity of KeyChain interface, and should be removed from KeyChain interfaces. 

 Current KeyChain interfaces provide four categories of methods: 

 1. * add/delete create identity, key, and certificate 
 2. * packet signing  
 3. * lookup identity, key, and certificate 
 4. * some Pib or Tpm specific methods  

 The first two categories have KeyChain semantic and require both Pib and Tpm, and should be kept.  
 The third category only requires Pib, and can be done easily through the existing method `KeyChain::getPib()`, KeyChain::getPib(), and should be removed. 
 The last category is only meaningful to Pib and Tpm, and should not be exposed as KeyChain methods.  

 The plan is to first deprecate the last two category methods in v0.4, and remove them in v0.5. 

Back