/// <inheritdoc />
        public IEnumerable <X509Extension> GetAcceptedExtensions()
        {
            var extensions = TimeStampResponderRepository.GetAcceptedExtensions();

            return(extensions.Select(extension =>
                                     new X509Extension(extension.Critical, new DerOctetString(extension.RawData))));
        }
 /// <inheritdoc />
 public Task SaveAuditLog(TimeStampAudit audit)
 {
     return(TimeStampResponderRepository.SaveAuditLog(audit));
 }
 /// <inheritdoc />
 public DateTime GetTimeToSign()
 {
     return(TimeStampResponderRepository.GetTimeToSign());
 }
        /// <inheritdoc />
        public BigInteger GetNextSerialNumber()
        {
            long serial = TimeStampResponderRepository.GetNextSerialNumber();

            return(BigInteger.ValueOf(serial));
        }
 /// <inheritdoc />
 public string GetPolicyOid()
 {
     return(TimeStampResponderRepository.GetPolicyOid());
 }
        /// <inheritdoc />
        public async Task <AsymmetricKeyParameter> GetPrivateKey()
        {
            var privateKey = await TimeStampResponderRepository.GetPrivateKey();

            return(DotNetUtilities.GetKeyPair(privateKey).Private);
        }
        /// <inheritdoc />
        public async Task <X509Certificate> GetCertificate()
        {
            var certificate = await TimeStampResponderRepository.GetCertificate();

            return(DotNetUtilities.FromX509Certificate(certificate));
        }