diff --git a/crates/cdk/src/mint/mod.rs b/crates/cdk/src/mint/mod.rs index 5e66ecb2..3edce084 100644 --- a/crates/cdk/src/mint/mod.rs +++ b/crates/cdk/src/mint/mod.rs @@ -499,13 +499,21 @@ impl Mint { /// clients #[instrument(skip_all)] pub async fn pubkeys(&self) -> Result { - let keyset_infos = self.localstore.get_keyset_infos().await?; - for keyset_info in keyset_infos { - self.ensure_keyset_loaded(&keyset_info.id).await?; + let active_keysets = self.localstore.get_active_keysets().await?; + + let active_keysets: HashSet<&Id> = active_keysets.values().collect(); + + for id in active_keysets.iter() { + self.ensure_keyset_loaded(id).await?; } + let keysets = self.keysets.read().await; Ok(KeysResponse { - keysets: keysets.values().map(|k| k.clone().into()).collect(), + keysets: keysets + .values() + .filter(|k| active_keysets.contains(&k.id)) + .map(|k| k.clone().into()) + .collect(), }) }