List of usage examples for java.math BigInteger probablePrime
public static BigInteger probablePrime(int bitLength, Random rnd)
From source file:com.og.elliptic.sdk.main.java
private static void elGamalString(WeierStrassCurve curve) { // Droulement de El Gamal // Cryptage//from ww w . ja v a 2 s . c o m PointGMP generateur = new PointGMP(curve.getGx(), curve.getGy(), curve);// le point gnrateur qui servira calculer notre clef // secrte Random rnd = new Random(); BigInteger clefSecrete = BigInteger.probablePrime(7, rnd); PointGMP publicKey = generateur.mult(clefSecrete);// on calcule notre clef secrte, qui nous servira crypter les messages (h) BigInteger m = new BigInteger(Base64.decodeBase64("bonjour lesil")); BigInteger k = BigInteger.probablePrime(7, rnd);// on choisit un k random PointGMP C1 = generateur.mult(k);// on multiplie le gnrateur par k PointGMP tmp = publicKey.mult(k); BigInteger C2 = m.add(tmp.getX());// on multiplie notre clef secrte par k // Dcryptage PointGMP temp = C1.mult(clefSecrete);// on multiplie C1 par notre clef secrte BigInteger messageTraduit = C2.subtract(temp.getX());// et on obtient le message en ajoutant m2 avec l'oppos de temp messageTraduit = messageTraduit.mod(curve.getP()); if (m == messageTraduit) System.out.println("El Gamal fonctionnel"); else System.out.println("El Gamal non fonctionnel"); System.out.println("Message a retrouver " + m + " " + Base64.encodeBase64String(m.toByteArray()) + "\n"); System.out.println("Resultat El gamal " + messageTraduit + " " + Base64.encodeBase64String(messageTraduit.toByteArray()) + "\n"); }
From source file:ThreadTester.java
public BigInteger call() { return BigInteger.probablePrime(bitSize, prng); }
From source file:com.magnet.android.mms.controller.RequestPrimitiveTest.java
@SmallTest public void testSingleListBigIntegerPostParam() throws JSONException { ControllerHandler handler = new ControllerHandler(); String methodName = "postBigDecimals"; JMethod method = new JMethod(); JMeta metaInfo = new JMeta(methodName, API_METHOD_POST + methodName, POST); method.setMetaInfo(metaInfo);// w w w .j a v a 2 s. co m // int method.addParam("param0", PLAIN, List.class, BigInteger.class, "", false); List<BigInteger> values = new ArrayList<BigInteger>(); values.add(BigInteger.TEN); values.add(BigInteger.probablePrime(5, new Random())); String uriString = handler.buildUri(method, new Object[] { values }); String bodyString = handler.buildRequestBodyString(method, new Object[] { values }); String expected = API_METHOD_POST + methodName; logger.log(Level.INFO, "uriString=" + uriString); logger.log(Level.INFO, "bodyString=" + bodyString); assertEquals(expected, uriString); JSONArray jarray = new JSONArray(bodyString); int idx = 0; for (BigInteger value : values) { assertEquals(jarray.getString(idx), value.toString()); idx++; } }