/// <summary> /// Return a disposable collection of security tokens for all known signing keys. /// <para>Caller must dispose</para> /// </summary> public static DisposingContainer <X509SecurityToken> AllAvailableKeys() { var collection = new DisposingContainer <X509SecurityToken>(); lock (KeyLock) { foreach (var key in KeyCache.Keys) { collection.Add(new X509SecurityToken(PublicKeyForKid(key))); } } return(collection); }