public void testSHA1withDSA() throws Exception {
    dsaSignKP = CMSTestUtil.makeDsaKeyPair();
    dsaSignCert = CMSTestUtil.makeCertificate(dsaSignKP, _origDN, dsaSignKP, _origDN);

    dsaOrigKP = CMSTestUtil.makeDsaKeyPair();
    dsaOrigCert = CMSTestUtil.makeCertificate(dsaOrigKP, _signDN, dsaSignKP, _origDN);

    List certList = new ArrayList();

    certList.add(dsaOrigCert);
    certList.add(dsaSignCert);

    Store certs = new JcaCertStore(certList);

    SMIMESignedGenerator gen = new SMIMESignedGenerator();

    gen.addSignerInfoGenerator(
        new JcaSimpleSignerInfoGeneratorBuilder()
            .setProvider("BC")
            .build("SHA1withDSA", dsaOrigKP.getPrivate(), dsaOrigCert));
    gen.addCertificates(certs);

    MimeMultipart smm = gen.generate(msg);
    SMIMESigned s = new SMIMESigned(smm);

    verifyMessageBytes(msg, s.getContent());

    verifySigners(s.getCertificates(), s.getSignerInfos());
  }
  static {
    try {
      msg = SMIMETestUtil.makeMimeBodyPart("Hello world!\n");

      msgR = SMIMETestUtil.makeMimeBodyPart("Hello world!\r");
      msgRN = SMIMETestUtil.makeMimeBodyPart("Hello world!\r\n");

      _origDN = "O=Bouncy Castle, C=AU";
      _origKP = CMSTestUtil.makeKeyPair();
      _origCert = CMSTestUtil.makeCertificate(_origKP, _origDN, _origKP, _origDN);

      _signDN = "CN=Eric H. Echidna, [email protected], O=Bouncy Castle, C=AU";
      _signKP = CMSTestUtil.makeKeyPair();
      _signCert = CMSTestUtil.makeCertificate(_signKP, _signDN, _origKP, _origDN);

      _signGostKP = CMSTestUtil.makeGostKeyPair();
      _signGostCert = CMSTestUtil.makeCertificate(_signGostKP, _signDN, _origKP, _origDN);

      _signEcDsaKP = CMSTestUtil.makeEcDsaKeyPair();
      _signEcDsaCert = CMSTestUtil.makeCertificate(_signEcDsaKP, _signDN, _origKP, _origDN);

      _signEcGostKP = CMSTestUtil.makeEcGostKeyPair();
      _signEcGostCert = CMSTestUtil.makeCertificate(_signEcGostKP, _signDN, _origKP, _origDN);
    } catch (Exception e) {
      throw new RuntimeException("problem setting up signed test class: " + e);
    }
  }
Example #3
0
  public SMIMECompressedTest(String name) throws Exception {
    super(name);

    msg = SMIMETestUtil.makeMimeBodyPart("Hello world!");

    signDN = "O=Bouncy Castle, C=AU";
    signKP = CMSTestUtil.makeKeyPair();
    signCert = CMSTestUtil.makeCertificate(signKP, signDN, signKP, signDN);

    origDN = "CN=Eric H. Echidna, [email protected], O=Bouncy Castle, C=AU";
    origKP = CMSTestUtil.makeKeyPair();
    origCert = CMSTestUtil.makeCertificate(origKP, origDN, signKP, signDN);
  }
  private static void init() throws Exception {
    if (!_initialised) {
      _initialised = true;

      _signDN = "O=Bouncy Castle, C=AU";
      _signKP = CMSTestUtil.makeKeyPair();

      _reciDN = "CN=Doug, OU=Sales, O=Bouncy Castle, C=AU";
      _reciKP = CMSTestUtil.makeKeyPair();
      _reciCert = CMSTestUtil.makeCertificate(_reciKP, _reciDN, _signKP, _signDN);

      _reciDN2 = "CN=Fred, OU=Sales, O=Bouncy Castle, C=AU";
      _reciKP2 = CMSTestUtil.makeKeyPair();
      _reciCert2 = CMSTestUtil.makeCertificate(_reciKP2, _reciDN2, _signKP, _signDN);
    }
  }