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

Какие знаешь алгоритмы защиты информации

В Java распространены следующие алгоритмы защиты информации:

Хеширование (для хранения паролей):

  • SHA-256, SHA-512 (из пакета java.security)
  • PBKDF2, bcrypt, scrypt (для устойчивости к брутфорсу)

Пример с PBKDF2:

java
SecretKeyFactory factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA256");
PBEKeySpec spec = new PBEKeySpec(password.toCharArray(), salt, 65536, 256);
SecretKey key = factory.generateSecret(spec);

Шифрование:

  • Симметричное: AES (рекомендуется 256-bit)
  • Асимметричное: RSA (2048-bit и более)

Пример AES:

java
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, secretKey);
byte[] encrypted = cipher.doFinal(data);

Цифровые подписи: ECDSA, RSA-PSS

Криптографические протоколы: TLS (реализован в JSSE)

Важно: никогда не используйте устаревшие алгоритмы вроде MD5, DES или SHA-1. Для генерации случайных чисел используйте SecureRandom, а не Random.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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