private async Task <string> BuildRevocationRegistriesAsync(
            IAgentContext agentContext,
            IEnumerable <ProofIdentifier> proofIdentifiers)
        {
            var result = new Dictionary <string, Dictionary <string, JObject> >();

            foreach (var identifier in proofIdentifiers)
            {
                if (identifier.Timestamp == null)
                {
                    continue;
                }

                var revocationRegistry = await LedgerService.LookupRevocationRegistryAsync(
                    agentContext,
                    identifier.RevocationRegistryId,
                    long.Parse(identifier.Timestamp));

                result.Add(identifier.RevocationRegistryId,
                           new Dictionary <string, JObject>
                {
                    { identifier.Timestamp, JObject.Parse(revocationRegistry.ObjectJson) }
                });
            }

            return(result.ToJson());
        }