protected String encryptMessage(String secureRequest, SecretKey sessionKey) throws EncryptionException, InterruptedException, IOException { PublicKey publicKey = getPublicKeyFromConfigFile(); String encodedMessage = Base64.encodeBase64String(CipherUtils.encrypt(secureRequest.getBytes(), sessionKey)); String encodedKey = Base64.encodeBase64String(CipherUtils.encrypt(sessionKey.getEncoded(), publicKey)); String encryptedMessage = "" + "{" + " \"encryptedContent\":\"" + encodedMessage + "\"," + " \"encryptedKey\":\"" + encodedKey + "\"" + "}"; return encryptedMessage; }