Привет, я пытаюсь декодировать две строки, затем использовать возвращаемый результат (byte []), затем поместить его в конструктор Biginteger. Вот так:
BigInteger bigInteger1 = new BigInteger(1, Base64.decode(myString1,0));
BigInteger bigInteger2 = new BigInteger(1, Base64.decode(myString2,0));
, затем поместить этот BigIntegers в java.security.KeyFactory
класс для создания RSAPublicKey , например:
KeyFactory.getInstance(ALG).generatePublic(new RSAPublicKeySpec(bigInteger1,bigInteger2));
, затем используйте мой открытый ключ для кодирования строки, например:
public static String encrypt(PublicKey publicKey, String str) {
Cipher instance = Cipher.getInstance(ALG);
instance.init(1, publicKey);
Base64.encodeToString(instance.doFinal(str.getBytes()), 2);
}
на PHP .Я достигаю этой цели с помощью Android, но когда я хочу сделать это с PHP , у меня возникает много проблем даже на старте, когда я хочу декодировать свою строку в PHP с помощью этого кода:
$encoded = base64_decode($base,true);
$decoded = utf8_decode(base64_decode($encoded));
Я получу эту строку: ?? 2?] ???? 5N? [?? S
но в Android, декодированная строкаабсолютно разные и всегда остаются неизменными
Я пытался выполнить эту работу на JSP , но действительно трудно выучить новый язык, и у меня нетвремя.
Могу ли я сделать этот проект при весенней загрузке?У меня есть коды для Java
, пожалуйста, кто-нибудь, помогите мне.