php实现java的RSA加密
/* * RSA签名 * */ protected function rsaSign($data) { $str = $this->getSignContent($data); $encryptData = ''; $privateKey = file_get_contents(ROOT_PATH.'/helpers/key/private_key.pem'); $pi_key = openssl_pkey_get_private($privateKey); $priKeyRes = openssl_pkey_get_private($privateKey); openssl_sign($str, $encryptData, $priKeyRes, 'md5'); openssl_free_key($priKeyRes); $encryptData = urlencode(base64_encode($encryptData)); return $encryptData; }
JAVA代码
public static String sign(String text, String privateKey, String charset) throws Exception { byte[] keyBytes = Base64.decodeBase64(privateKey); PKCS8EncodedKeySpec pkcs8KeySpec = new PKCS8EncodedKeySpec(keyBytes); KeyFactory keyFactory = KeyFactory.getInstance(KEY_ALGORITHM); PrivateKey privateK = keyFactory.generatePrivate(pkcs8KeySpec); Signature signature = Signature.getInstance(SIGNATURE_ALGORITHM); signature.initSign(privateK); signature.update(getContentBytes(text, charset)); byte[] result = signature.sign(); return Base64.encodeBase64String(result); }

浙公网安备 33010602011771号