/**
* Type
*
* A few Asn-1 structures
* Copyright (c) 2007 Henri Torgemane
*
* See LICENSE.txt for full license information.
*/
package com.hurlant.util.der
{
import com.hurlant.util.Hex;
public class Type
{
public static const TLS_CERT:Array = [
{name:"signedCertificate", extract:true, value: [
{name:"versionHolder", optional:true, value: [
{name:"version"}
], defaultValue: function():Sequence{
var s:Sequence = new Sequence(0, 0);
var v:Integer = new Integer(2,1, Hex.toArray("00"));
s.push(v);
s.version = v;
return s;
}()
},
{name:"serialNumber"},
{name:"signature", value: [
{name:"algorithmId"}
]},
{name:"issuer", extract:true, value: [
{name:"type"},
{name:"value"}
]},
{name:"validity", value: [
{name:"notBefore"},
{name:"notAfter"}
]},
{name:"subject", extract:true, value: [
]},
{name:"subjectPublicKeyInfo", value: [
{name:"algorithm", value: [
{name:"algorithmId"}
]},
{name:"subjectPublicKey"}
]},
{name:"extensions", value: [
]}
]},
{name:"algorithmIdentifier",value:[
{name:"algorithmId"}
]},
{name:"encrypted", value:null}
];
public static const CERTIFICATE:Array = [
{name:"tbsCertificate", value:[
{name:"tag0", value:[
{name:"version"}
]},
{name:"serialNumber"},
{name:"signature"},
{name:"issuer", value:[
{name:"type"},
{name:"value"}
]},
{name:"validity", value:[
{name:"notBefore"},
{name:"notAfter"}
]},
{name:"subject"},
{name:"subjectPublicKeyInfo", value:[
{name:"algorithm"},
{name:"subjectPublicKey"}
]},
{name:"issuerUniqueID"},
{name:"subjectUniqueID"},
{name:"extensions"}
]},
{name:"signatureAlgorithm"},
{name:"signatureValue"}
];
public static const RSA_PUBLIC_KEY:Array = [
{name:"modulus"},
{name:"publicExponent"}
];
public static const RSA_SIGNATURE:Array = [
{name:"algorithm", value:[
{name:"algorithmId"}
]},
{name:"hash"}
];
}
}
|