Hallo Leute,
vielleicht kann mir jemand von euch helfen. Ich hatte vor mithilfe von Bouncy Castle einen Text zu verschlüsseln und entschlüssel unter Einsatz von elliptischen Kurven. Gesagt getan.
Jedoch erhalte ich nun eine Fehlermeldung und zwar "Illegal key size" an der nachfolgenden Stelle im Quellcode.
Ich muss auch sagen, dass ich wenig ahnung habe, was die Parameter bei 1. &, 2. machen währe nett wenn es mir jemand kurz erklären kann. Aber wichtiger ist es mir, dass der Fehler weggeht und ich verschlüssel und endschlüsseln kann. Selbst das Beispiel aus "ECIESTest.java" (die Datei mit 7KB) welche bei dem Packate dabei war konnte mir nicht helfen, da ich dort genau den selben fehler erhalte, auch ohne etwas am Quellcode zu ändern.
Vielleicht weis einer von euch, woran das liegen könnte. Bin fast am verzweifeln.
[JAVA=42]import java.security.KeyPair;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.SecureRandom;
import java.security.Security;
import javax.crypto.Cipher;
import org.bouncycastle.jce.provider.asymmetric.ec.KeyPairGenerator;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
import org.bouncycastle.jce.spec.IEKeySpec;
import org.bouncycastle.jce.spec.IESParameterSpec;
public class Test{
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
Security.addProvider(new BouncyCastleProvider());
KeyPairGenerator kpg = (KeyPairGenerator) KeyPairGenerator.getInstance("ECIES", "BC");
kpg.initialize(192, new SecureRandom());
KeyPair keyPair = kpg.generateKeyPair();
PublicKey pubKey = keyPair.getPublic();
PrivateKey privKey = keyPair.getPrivate();
byte[] d = new byte[] { 1, 2, 3, 4, 5, 6, 7, 8 }; // 1. was machen die Parameter? :/
byte[] e = new byte[] { 8, 7, 6, 5, 4, 3, 2, 1 };
IESParameterSpec param = new IESParameterSpec(d, e, 128); // 2. und diese?
IEKeySpec c1Key = new IEKeySpec(privKey, pubKey);
Cipher cipher = Cipher.getInstance("ECIES", "BC");
cipher.init(Cipher.ENCRYPT_MODE, c1Key, param);//<--------- Da kommt der fehler
}
}[/code]
vielleicht kann mir jemand von euch helfen. Ich hatte vor mithilfe von Bouncy Castle einen Text zu verschlüsseln und entschlüssel unter Einsatz von elliptischen Kurven. Gesagt getan.
Jedoch erhalte ich nun eine Fehlermeldung und zwar "Illegal key size" an der nachfolgenden Stelle im Quellcode.
Ich muss auch sagen, dass ich wenig ahnung habe, was die Parameter bei 1. &, 2. machen währe nett wenn es mir jemand kurz erklären kann. Aber wichtiger ist es mir, dass der Fehler weggeht und ich verschlüssel und endschlüsseln kann. Selbst das Beispiel aus "ECIESTest.java" (die Datei mit 7KB) welche bei dem Packate dabei war konnte mir nicht helfen, da ich dort genau den selben fehler erhalte, auch ohne etwas am Quellcode zu ändern.
Vielleicht weis einer von euch, woran das liegen könnte. Bin fast am verzweifeln.
[JAVA=42]import java.security.KeyPair;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.SecureRandom;
import java.security.Security;
import javax.crypto.Cipher;
import org.bouncycastle.jce.provider.asymmetric.ec.KeyPairGenerator;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
import org.bouncycastle.jce.spec.IEKeySpec;
import org.bouncycastle.jce.spec.IESParameterSpec;
public class Test{
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
Security.addProvider(new BouncyCastleProvider());
KeyPairGenerator kpg = (KeyPairGenerator) KeyPairGenerator.getInstance("ECIES", "BC");
kpg.initialize(192, new SecureRandom());
KeyPair keyPair = kpg.generateKeyPair();
PublicKey pubKey = keyPair.getPublic();
PrivateKey privKey = keyPair.getPrivate();
byte[] d = new byte[] { 1, 2, 3, 4, 5, 6, 7, 8 }; // 1. was machen die Parameter? :/
byte[] e = new byte[] { 8, 7, 6, 5, 4, 3, 2, 1 };
IESParameterSpec param = new IESParameterSpec(d, e, 128); // 2. und diese?
IEKeySpec c1Key = new IEKeySpec(privKey, pubKey);
Cipher cipher = Cipher.getInstance("ECIES", "BC");
cipher.init(Cipher.ENCRYPT_MODE, c1Key, param);//<--------- Da kommt der fehler
}
}[/code]
Zuletzt bearbeitet: