Как найти хэш sha1 работающий как в php? Нужно на java написать аналог функции base64_encode(sha1("test", TRUE));

21 Авг 2019 в 07:12
268 +1
0
Ответы
1

В Java можно использовать класс MessageDigest для вычисления хэша SHA-1 и класс Base64 для кодирования в base64. Ниже приведен пример кода, который реализует аналог функции base64_encodesha1("test",TRUE)sha1("test", TRUE)sha1("test",TRUE); из PHP:

import java.security.MessageDigest;
import java.util.Base64;
public class Main {
public static void mainString[]argsString[] argsString[]args {
try {
// Вычисляем хэш SHA-1
String input = "test";
MessageDigest digest = MessageDigest.getInstance"SHA−1""SHA-1""SHA1";
byte hash = digest.digestinput.getBytes("UTF−8")input.getBytes("UTF-8")input.getBytes("UTF8");
// Кодируем хэш в base64
String base64Hash = Base64.getEncoder.encodeToStringhashhashhash;
System.out.printlnbase64Hashbase64Hashbase64Hash;
} catch ExceptioneException eExceptione {
e.printStackTrace;
}
}
}

Этот код сначала вычисляет хэш SHA-1 от строки "test", а затем кодирует его в формат base64. Результат будет аналогичен результату функции base64_encodesha1("test",TRUE)sha1("test", TRUE)sha1("test",TRUE); в PHP.

Примечание: В коде из примера используется стандартная кодировка UTF-8 для строк. При необходимости вы можете изменить кодировку на другую.

20 Апр 2024 в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир