added CertificateGenerator class