An interface that allows providers to access CryptoManager without actually
knowing about CryptoManager. This is necessary to prevent cyclic
dependencies. CryptoManager knows about the providers, so the providers
can't know about CryptoManager. Instead, CryptoManager implements
this interface.