From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8825 invoked by alias); 20 Apr 2006 20:53:08 -0000 Received: (qmail 8810 invoked by uid 48); 20 Apr 2006 20:53:07 -0000 Date: Thu, 20 Apr 2006 20:53:00 -0000 Subject: [Bug libgcj/27228] New: java.security.InvalidAlgorithmParameterException X-Bugzilla-Reason: CC Message-ID: Reply-To: gcc-bugzilla@gcc.gnu.org To: java-prs@gcc.gnu.org From: "r_ovidius at eml dot cc" Mailing-List: contact java-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-prs-owner@gcc.gnu.org X-SW-Source: 2006-q2/txt/msg00132.txt.bz2 List-Id: Originally from jsch (jcraft.com) com/jcraft/jsch/jce/DH.java getE() This function works in Sun's java, but on libgcj it fails. Here is a standalone sample that works in Sun's java: (I believe this used to work with gnu.crypto) gcj (GCC) 4.2.0 20060419 (experimental) gcj --main=Sec -o Sec Sec.java ./Sec java.security.InvalidAlgorithmParameterException: params at gnu.javax.crypto.jce.sig.DHKeyPairGeneratorSpi.initialize (libgcj.so.7) at java.security.KeyPairGenerator.initialize (libgcj.so.7) at Sec.main (Sec) ===== public class Sec { private static KeyPairGenerator myKpairGen; private static KeyAgreement myKeyAgree; private static BigInteger p; private static BigInteger g; private static BigInteger e; // my public key private static byte[] e_array; public static void main(String[] args) { try { myKpairGen = KeyPairGenerator.getInstance("DH"); myKeyAgree = KeyAgreement.getInstance("DH"); p = new BigInteger("1797693134862315907708391567937874531978602960487560117064444236841971802161585193689478337958649255415021805654 859805036464405481992391000507928770033558166392295531362390765087357599148225748625750074253020774477125895509579377784244424266173347276 29299387668709205606050270810842907692932019128194467627007"); g = new BigInteger("2"); DHParameterSpec dhSkipParamSpec = new DHParameterSpec(p, g); myKpairGen.initialize(dhSkipParamSpec); KeyPair myKpair = myKpairGen.generateKeyPair(); myKeyAgree.init(myKpair.getPrivate()); // BigInteger x=((javax.crypto.interfaces.DHPrivateKey)(myKpair.getPrivate())).getX(); byte[] myPubKeyEnc = myKpair.getPublic().getEncoded(); System.err.println(myPubKeyEnc); e = ((javax.crypto.interfaces.DHPublicKey) (myKpair.getPublic())).getY(); e_array = e.toByteArray(); } catch (Exception e) { e.printStackTrace(); } } } -- Summary: java.security.InvalidAlgorithmParameterException Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: r_ovidius at eml dot cc http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27228