Результат шифрования только в буквенно-цифровой форме - PullRequest
0 голосов
/ 27 мая 2018

Я хочу зашифровать строку в шифр, который состоит только из алфавитов (az / AZ) и цифр (0-9) .Я не хочу, чтобы в нем были какие-либо другие символы (=, &,! .. и т. Д.).

Есть ли способ добиться этого?Если так, пожалуйста, кто-нибудь может мне помочь.Код Java будет предпочтительным без каких-либо внешних библиотек.

Примечание:

  • Я уже пытался кодировать base64, но он не работает , так как он использует '=' в качестве символа заполнения.

  • Этот сгенерированный шифр будет использоваться в веб-URL для передачи значений.

  • Шифр ​​также должен быть декодирован обратно на исходную строку.

1 Ответ

0 голосов
/ 27 мая 2018

Если вам достаточно одностороннего хеширования, вы можете реализовать что-то вроде этого

public String hashToHexString(String whatever) throws NoSuchAlgorithmException{

        byte[] digest = MessageDigest.getInstance("your one way hash alghoritm")
                .digest(whatever.getBytes());
        return DatatypeConverter.printHexBinary(digest);

}
...