Top Description Interfaces Classes
module bcutil

Package org.bouncycastle.asn1.dvcs


Support classes useful for encoding and processing Data Validation and Certification Server (DVCS) protocols as described in RFC 3029.

Interface Summary

Modifier and TypeInterface and Description
public interface
DVCSObjectIdentifiers

OIDs for RFC 3029 Data Validation and Certification Server Protocols

Class Summary

Modifier and TypeClass and Description
public class
CertEtcToken

CertEtcToken ::= CHOICE {
        certificate                  [0] IMPLICIT Certificate ,
        esscertid                    [1] ESSCertId ,
        pkistatus                    [2] IMPLICIT PKIStatusInfo ,
        assertion                    [3] ContentInfo ,
        crl                          [4] IMPLICIT CertificateList,
        ocspcertstatus               [5] CertStatus,
        oscpcertid                   [6] IMPLICIT CertId ,
        oscpresponse                 [7] IMPLICIT OCSPResponse,
        capabilities                 [8] SMIMECapabilities,
        extension                    Extension
}
public class
Data

Data ::= CHOICE {
  message           OCTET STRING ,
  messageImprint    DigestInfo,
  certs             [0] SEQUENCE SIZE (1..MAX) OF
                        TargetEtcChain
}
public class
DVCSCertInfo

    DVCSCertInfo::= SEQUENCE  {
        version             Integer DEFAULT 1 ,
        dvReqInfo           DVCSRequestInformation,
        messageImprint      DigestInfo,
        serialNumber        Integer,
        responseTime        DVCSTime,
        dvStatus            [0] PKIStatusInfo OPTIONAL,
        policy              [1] PolicyInformation OPTIONAL,
        reqSignature        [2] SignerInfos  OPTIONAL,
        certs               [3] SEQUENCE SIZE (1..MAX) OF
                                TargetEtcChain OPTIONAL,
        extensions          Extensions OPTIONAL
    }
public class
DVCSCertInfoBuilder

    DVCSCertInfo::= SEQUENCE  {
        version             Integer DEFAULT 1 ,
        dvReqInfo           DVCSRequestInformation,
        messageImprint      DigestInfo,
        serialNumber        Integer,
        responseTime        DVCSTime,
        dvStatus            [0] PKIStatusInfo OPTIONAL,
        policy              [1] PolicyInformation OPTIONAL,
        reqSignature        [2] SignerInfos  OPTIONAL,
        certs               [3] SEQUENCE SIZE (1..MAX) OF
                                TargetEtcChain OPTIONAL,
        extensions          Extensions OPTIONAL
    }
public class
DVCSErrorNotice

    DVCSErrorNotice ::= SEQUENCE {
        transactionStatus           PKIStatusInfo ,
        transactionIdentifier       GeneralName OPTIONAL
    }
public class
DVCSRequest

    DVCSRequest ::= SEQUENCE  {
        requestInformation         DVCSRequestInformation,
        data                       Data,
        transactionIdentifier      GeneralName OPTIONAL
    }
public class
DVCSRequestInformation

    DVCSRequestInformation ::= SEQUENCE  {
        version                      INTEGER DEFAULT 1 ,
        service                      ServiceType,
        nonce                        Nonce OPTIONAL,
        requestTime                  DVCSTime OPTIONAL,
        requester                    [0] GeneralNames OPTIONAL,
        requestPolicy                [1] PolicyInformation OPTIONAL,
        dvcs                         [2] GeneralNames OPTIONAL,
        dataLocations                [3] GeneralNames OPTIONAL,
        extensions                   [4] IMPLICIT Extensions OPTIONAL
    }
public class
DVCSRequestInformationBuilder

    DVCSRequestInformation ::= SEQUENCE  {
        version                      INTEGER DEFAULT 1 ,
        service                      ServiceType,
        nonce                        Nonce OPTIONAL,
        requestTime                  DVCSTime OPTIONAL,
        requester                    [0] GeneralNames OPTIONAL,
        requestPolicy                [1] PolicyInformation OPTIONAL,
        dvcs                         [2] GeneralNames OPTIONAL,
        dataLocations                [3] GeneralNames OPTIONAL,
        extensions                   [4] IMPLICIT Extensions OPTIONAL
    }
public class
DVCSResponse

    DVCSResponse ::= CHOICE
    {
        dvCertInfo         DVCSCertInfo ,
        dvErrorNote        [0] DVCSErrorNotice
    }
public class
DVCSTime

    DVCSTime ::= CHOICE  {
        genTime                      GeneralizedTime,
        timeStampToken               ContentInfo
    }
public class
PathProcInput

    PathProcInput ::= SEQUENCE {
        acceptablePolicySet          SEQUENCE SIZE (1..MAX) OF
                                        PolicyInformation,
        inhibitPolicyMapping         BOOLEAN DEFAULT FALSE,
        explicitPolicyReqd           [0] BOOLEAN DEFAULT FALSE ,
        inhibitAnyPolicy             [1] BOOLEAN DEFAULT FALSE
    }
public class
ServiceType

ServiceType ::= ENUMERATED { cpd(1), vsd(2), cpkc(3), ccpd(4) }

public class
TargetEtcChain

    TargetEtcChain ::= SEQUENCE {
        target                       CertEtcToken,
        chain                        SEQUENCE SIZE (1..MAX) OF
                                        CertEtcToken OPTIONAL,
        pathProcInput                [0] PathProcInput OPTIONAL
    }