Class CryptoProviders
java.lang.Object
ghidra.formats.gfilesystem.crypto.CryptoProviders
Registry of
crypto providers and session creator.-
Method Summary
Modifier and TypeMethodDescriptionReturns theCachedPasswordProvider.<T extends CryptoProvider>
TgetCryptoProviderInstance(Class<T> providerClass) Returns the previously registered matchingCryptoProviderinstance.static CryptoProvidersFetch the globalCryptoProviderssingleton instance.Creates a newCryptoSession.voidregisterCryptoProvider(CryptoProvider provider) Adds aCryptoProviderto this registry.voidunregisterCryptoProvider(CryptoProvider provider) Removes aCryptoProviderfrom this registry.
-
Method Details
-
getInstance
Fetch the globalCryptoProviderssingleton instance.- Returns:
- shared
CryptoProviderssingleton instance
-
registerCryptoProvider
Adds aCryptoProviderto this registry.TODO: do we need provider priority ordering?
- Parameters:
provider-CryptoProvider
-
unregisterCryptoProvider
Removes aCryptoProviderfrom this registry.- Parameters:
provider-CryptoProviderto remove
-
getCachedCryptoProvider
Returns theCachedPasswordProvider.(Used by GUI actions to manage the cache)
- Returns:
- cached crypto provider instance
-
getCryptoProviderInstance
Returns the previously registered matchingCryptoProviderinstance.- Type Parameters:
T- CryptoProvider type- Parameters:
providerClass-CryptoProviderclass- Returns:
- previously registered CryptoProvider instance, or null if not found
-
newSession
Creates a newCryptoSession.TODO: to truly be effective when multiple files are being opened (ie. batch import), nested sessions need to be implemented.
- Returns:
- new
CryptoSessioninstance
-