import iaik.asn1.structures.AlgorithmID;
import iaik.pkcs.pkcs1.MGF1ParameterSpec;
import iaik.pkcs.pkcs1.MaskGenerationAlgorithm;
import iaik.pkcs.pkcs1.RSAPssParameterSpec;
import iaik.security.rsa.RSAPssKeyPairGenerator;
import iaik.security.rsa.RSAPssPrivateKey;
import iaik.security.rsa.RSAPssPublicKey;
import iaik.security.rsa.RSAPssSignature;
import java.security.AlgorithmParameters;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.MessageDigest;
import java.security.Signature;
import java.security.SignatureException;
import java.io.*;
public class pssGenKey {
public static void main(String arg[]) {
try {
KeyPairGenerator keyGen =
KeyPairGenerator.getInstance("RSASSA-PSS", "IAIK");
keyGen.initialize(2048);
KeyPair keyPair = keyGen.generateKeyPair();
RSAPssPrivateKey privateKey = (RSAPssPrivateKey)keyPair.getPrivate();
RSAPssPublicKey publicKey = (RSAPssPublicKey)keyPair.getPublic();
FileOutputStream o = new FileOutputStream("privKey.der");
privateKey.writeTo(o);
o.close();
FileOutputStream m = new FileOutputStream("pubKey.der");
publicKey.writeTo(m);
m.close();
} catch (Exception ex) {
System.err.println("Error: " + ex.getMessage());
}
System.exit(0);
}
}