Hallöchen,
vielleicht hilft dir das hier weiter:
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.PrivateKey;
import java.security.PublicKey;
import javax.crypto.Cipher;
public class Crypt {
private static final String ALGORITHM = "RSA";
private static final String TEXT = "Wenn du diesen Text lesen kannst hat das Ver- und Entschlüsseln funktioniert";
public static byte[] encrypt(PublicKey key, byte[] plain) throws Exception {
Cipher cipher = Cipher.getInstance(ALGORITHM);
cipher.init(Cipher.ENCRYPT_MODE, key);
// verschluesseln
return cipher.doFinal(plain);
}
public static byte[] decrypt(PrivateKey key, byte[] chiffr)
throws Exception {
Cipher cipher = Cipher.getInstance(ALGORITHM);
cipher.init(Cipher.DECRYPT_MODE, key);
// Entschlusseln
return cipher.doFinal(chiffr);
}
public static void main(String[] args) {
try {
// Schluessel generieren:
KeyPairGenerator keyPairGen = KeyPairGenerator.getInstance(ALGORITHM);
keyPairGen.initialize(1024); // 1024 maximale Schluesselbreite
KeyPair keyPair = keyPairGen.generateKeyPair();
PrivateKey privKey = keyPair.getPrivate();
PublicKey pubKey = keyPair.getPublic();
// Es werden die Bytes vom Text benötigt
byte[] bytes = TEXT.getBytes();
byte[] encrypt = encrypt(pubKey, bytes);
byte[] decrypt = decrypt(privKey, encrypt);
System.out.write(encrypt);
System.out.println("\n");
System.out.write(decrypt);
} catch (Exception e) {
System.out.println(e);
}
}
}
Hab ich grad mal so zusammegestrikt ... könnte buggy sein
Wenn du die daten dann in eine Datei speichern willst helfen dir die Input-und OutputStreams bzw. InputReader/OutputWriter für Plaintext weiter.
Gruß J[ava]