org.mozilla.jss.pkcs12
public final class SafeBag extends Object implements ASN1Value
Nested Class Summary | |
---|---|
static class | SafeBag.Template
A template for decoding SafeBags. |
Field Summary | |
---|---|
static OBJECT_IDENTIFIER | CERT_BAG
A bag containing a certificate. |
static OBJECT_IDENTIFIER | CRL_BAG
A bag containing a certificate revocation list.
|
static OBJECT_IDENTIFIER | FRIENDLY_NAME
A FriendlyName attribute. |
static OBJECT_IDENTIFIER | KEY_BAG
A bag containing a private key. |
static OBJECT_IDENTIFIER | LOCAL_KEY_ID
A LocalKeyID attribute. |
static OBJECT_IDENTIFIER | PKCS12_BAG_IDS
The OID branch for the PKCS #12 bag types. |
static OBJECT_IDENTIFIER | PKCS12_VERSION_1
The OID branch for PKCS #12, version 1.0. |
static OBJECT_IDENTIFIER | PKCS8_SHROUDED_KEY_BAG
A bag containing a private key encrypted a la PKCS #8. |
static OBJECT_IDENTIFIER | SAFE_CONTENTS_BAG
A bag containing a nested SafeContent . |
static OBJECT_IDENTIFIER | SECRET_BAG
A bag containing an arbitrary secret. |
Constructor Summary | |
---|---|
SafeBag(OBJECT_IDENTIFIER bagType, ASN1Value bagContent, SET bagAttributes)
Creates a new SafeBag from its components.
|
Method Summary | |
---|---|
static SafeBag | createCertBag(byte[] cert, String friendlyName)
Creates a SafeBag that contains an X.509 Certificate.
|
static SafeBag | createCertBag(byte[] cert, String friendlyName, byte[] localKeyID)
Creates a SafeBag that contains an X.509 Certificate.
|
static SafeBag | createEncryptedPrivateKeyBag(PrivateKeyInfo privk, String friendlyName, byte[] localKeyID, Password password)
Creates a SafeBag containing a PKCS-8ShroudedKeyBag, which is
an EncryptedPrivateKeyInfo. |
void | encode(OutputStream ostream) |
void | encode(Tag implicitTag, OutputStream ostream) |
SET | getBagAttributes()
Returns the attributes of this bag. |
ANY | getBagContent()
Returns the contents of this bag as an ANY. |
OBJECT_IDENTIFIER | getBagType() |
ASN1Value | getInterpretedBagContent()
Returns the bagContent interpreted by type. |
static byte[] | getLocalKeyIDFromCert(byte[] derCert)
Computes the LocalKeyID attribute that should be stored with a key
and certificate.
|
Tag | getTag() |
static SafeBag.Template | getTemplate() |
CertBag
.CRLBag
.SecretBag
.Parameters: bagType The type of this bag. For compatibility, it should
be one of the constants defined in this class. bagContent The contents of the bag. The type of this parameter
is defined by the bagType
parameter. bagAttributes A SET of Attributes for this SafeBag. Since
attributes are optional, this parameter may be null.
Parameters: cert A DER-encoded X.509 certificate. friendlyName Will be stored in the friendlyName attribute of the SafeBag. Should be the nickname of the cert.
Parameters: cert A DER-encoded X.509 certificate. friendlyName Will be stored in the friendlyName
attribute of the SafeBag. Should be the nickname of the cert. localKeyID The bytes to used for the localKeyID. These should
be obtained from the getLocalKeyIDFromCert
method.
Throws: InvalidBERException If the cert is not a valid DER encoding.
See Also: SafeBag
Parameters: privk The PrivateKeyInfo containing the private key. friendlyName The nickname for the key; should be the same as the nickname of the associated cert. localKeyID The localKeyID for the key; should be the same as the localKeyID of the associated cert. The password used to encrypt the private key.
org.mozilla.jss.pkix.primitive.Attribute
.Returns: If type is KeyBag, a PrivateKeyInfo.
If type is PKCS-8ShroudedKeyBag, an EncryptedPrivateKeyInfo.
If type is CertBag, a CertBag.
For any other type, returns an ANY.
Parameters: derCert A DER-encoded X.509 certificate.
Returns: The SHA-1 hash of the cert, which should be used as the localKeyID attribute for the cert's SafeBag.