Встречается на собеседованиях • сегодня

Можно ли имея хэш получить данные по которым он был сделан

Нет, получить исходные данные по хэшу невозможно, если только не перебирать все возможные варианты (brute-force). Хэш-функции (например, MD5, SHA-1, SHA-256) проектируются как односторонние — они преобразуют данные в фиксированную строку, но обратное преобразование невозможно математически.

Пример:

java
import java.security.MessageDigest;

public class HashExample {
    public static void main(String[] args) throws Exception {
        String input = "password";
        MessageDigest md = MessageDigest.getInstance("SHA-256");
        byte[] hash = md.digest(input.getBytes());
        System.out.println(bytesToHex(hash)); // Выведет хэш, но по нему нельзя восстановить "password"
    }

    private static String bytesToHex(byte[] bytes) {
        StringBuilder sb = new StringBuilder();
        for (byte b : bytes) {
            sb.append(String.format("%02x", b));
        }
        return sb.toString();
    }
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы