public static String encryptMessagePublicKey(final String plainMessage, final String hexPublicKey) throws IllegalArgumentException { checkStringArgument(plainMessage); checkStringArgument(hexPublicKey); AsymmetricCipher cipher = new AsymmetricCipher(); AsymmetricPublicKey publicKey = new AsymmetricPublicKey(hexPublicKey); return cipher.encryptWithPublicKey(plainMessage, publicKey); }
public static String decryptMessagePrivateKey( final String encryptedMessage, final String hexPrivateKey) throws IllegalArgumentException { checkStringArgument(encryptedMessage); checkStringArgument(hexPrivateKey); AsymmetricCipher cipher = new AsymmetricCipher(); AsymmetricPrivateKey privateKey = new AsymmetricPrivateKey(new BigInteger(hexPrivateKey, 16)); try { return cipher.decryptWithPrivateKey(encryptedMessage, privateKey); } catch (Exception ex) { System.out.println("ex = " + ex); throw new IllegalArgumentException(ex.getMessage()); } }