createIntermediateCertificate static method
X509Certificate
createIntermediateCertificate({
- required AsymmetricKeyPair<
PublicKey, PrivateKey> keyPair, - required AsymmetricKeyPair<
PublicKey, PrivateKey> issuerKeyPair, - required String subjectDn,
- required String issuerDn,
- required int serialNumber,
- BigInt? serialNumberBigInt,
- List<
String> ? crlUrls, - List<
String> ? ocspUrls, - List<
String> ? extendedKeyUsageOids, - int validityYears = 5,
Generates an Intermediate CA Certificate signed by issuerKeyPair.
Implementation
static X509Certificate createIntermediateCertificate({
required AsymmetricKeyPair<PublicKey, PrivateKey> keyPair,
required AsymmetricKeyPair<PublicKey, PrivateKey> issuerKeyPair,
required String subjectDn,
required String issuerDn,
required int serialNumber,
BigInt? serialNumberBigInt,
List<String>? crlUrls,
List<String>? ocspUrls,
List<String>? extendedKeyUsageOids,
int validityYears = 5,
}) {
final now = DateTime.now();
return createCertificate(
keyPair: keyPair,
issuerKeyPair: issuerKeyPair,
subjectDn: subjectDn,
issuerDn: issuerDn,
serialNumber: serialNumber,
serialNumberBigInt: serialNumberBigInt,
notBefore: now,
notAfter: now.add(Duration(days: 365 * validityYears)),
isCa: true, // It is a CA
crlUrls: crlUrls,
ocspUrls: ocspUrls,
extendedKeyUsageOids: extendedKeyUsageOids,
);
}