Package org.gudy.bouncycastle.asn1
Class DERUTCTime
java.lang.Object
org.gudy.bouncycastle.asn1.ASN1Encodable
org.gudy.bouncycastle.asn1.DERObject
org.gudy.bouncycastle.asn1.ASN1Object
org.gudy.bouncycastle.asn1.DERUTCTime
- All Implemented Interfaces:
DEREncodable
,DERTags
UTC time object.
-
Field Summary
FieldsFields inherited from class org.gudy.bouncycastle.asn1.ASN1Encodable
BER, DER
Fields inherited from interface org.gudy.bouncycastle.asn1.DERTags
APPLICATION, BIT_STRING, BMP_STRING, BOOLEAN, CONSTRUCTED, ENUMERATED, EXTERNAL, GENERAL_STRING, GENERALIZED_TIME, GRAPHIC_STRING, IA5_STRING, INTEGER, NULL, NUMERIC_STRING, OBJECT_IDENTIFIER, OCTET_STRING, PRINTABLE_STRING, SEQUENCE, SEQUENCE_OF, SET, SET_OF, T61_STRING, TAGGED, UNIVERSAL_STRING, UTC_TIME, UTF8_STRING, VIDEOTEX_STRING, VISIBLE_STRING
-
Constructor Summary
ConstructorsConstructorDescriptionDERUTCTime
(byte[] bytes) DERUTCTime
(String time) The correct format for this is YYMMDDHHMMSSZ (it used to be that seconds were never encoded.DERUTCTime
(Date time) base constructer from a java.util.date object -
Method Summary
Modifier and TypeMethodDescription(package private) boolean
(package private) void
encode
(DEROutputStream out) return the time as an adjusted date in the range of 1950 - 2049.return a time string as an adjusted date with a 4 digit year.getDate()
return the time as a date based on whatever a 2 digit year will return.static DERUTCTime
getInstance
(Object obj) return an UTC Time from the passed in object.static DERUTCTime
getInstance
(ASN1TaggedObject obj, boolean explicit) return an UTC Time from a tagged object.private byte[]
getTime()
return the time - always in the form of YYMMDDhhmmssGMT(+hh:mm|-hh:mm).int
hashCode()
toString()
Methods inherited from class org.gudy.bouncycastle.asn1.ASN1Object
equals, fromByteArray
Methods inherited from class org.gudy.bouncycastle.asn1.DERObject
toASN1Object
Methods inherited from class org.gudy.bouncycastle.asn1.ASN1Encodable
getDEREncoded, getDERObject, getEncoded, getEncoded
-
Field Details
-
time
String time
-
-
Constructor Details
-
DERUTCTime
The correct format for this is YYMMDDHHMMSSZ (it used to be that seconds were never encoded. When you're creating one of these objects from scratch, that's what you want to use, otherwise we'll try to deal with whatever gets read from the input stream... (this is why the input format is different from the getTime() method output).- Parameters:
time
- the time string.
-
DERUTCTime
base constructer from a java.util.date object -
DERUTCTime
DERUTCTime(byte[] bytes)
-
-
Method Details
-
getInstance
return an UTC Time from the passed in object.- Throws:
IllegalArgumentException
- if the object cannot be converted.
-
getInstance
return an UTC Time from a tagged object.- Parameters:
obj
- the tagged object holding the object we wantexplicit
- true if the object is meant to be explicitly tagged false otherwise.- Throws:
IllegalArgumentException
- if the tagged object cannot be converted.
-
getDate
return the time as a date based on whatever a 2 digit year will return. For standardised processing use getAdjustedDate().- Returns:
- the resulting date
- Throws:
ParseException
- if the date string cannot be parsed.
-
getAdjustedDate
return the time as an adjusted date in the range of 1950 - 2049.- Returns:
- a date in the range of 1950 to 2049.
- Throws:
ParseException
- if the date string cannot be parsed.
-
getTime
return the time - always in the form of YYMMDDhhmmssGMT(+hh:mm|-hh:mm).Normally in a certificate we would expect "Z" rather than "GMT", however adding the "GMT" means we can just use:
dateF = new SimpleDateFormat("yyMMddHHmmssz");
To read in the time and get a date which is compatible with our local time zone.Note: In some cases, due to the local date processing, this may lead to unexpected results. If you want to stick the normal convention of 1950 to 2049 use the getAdjustedTime() method.
-
getAdjustedTime
return a time string as an adjusted date with a 4 digit year. This goes in the range of 1950 - 2049. -
getOctets
private byte[] getOctets() -
encode
- Specified by:
encode
in classASN1Object
- Throws:
IOException
-
asn1Equals
- Specified by:
asn1Equals
in classASN1Object
-
hashCode
public int hashCode()- Specified by:
hashCode
in classASN1Object
-
toString
-