Created a KeyProvider interface