2015-10-17 2 views
-1

У меня есть settings.ini файл, который содержит следующую text-Какая библиотека шифрования используется здесь

[Settings] 
IP=LF5ITzfFWttFqp1JwS3yig== 
DATABASE=3Oulto+YrEerz3//yLacbEYGlcue8+kv41dAyqHxxKI= 
USER=mEjikdSuE2+78JsA7atxhw== 
PASSWORD=kXnsw31pVdtj+LU9vZ7qPQ== 

Я знаю, что приложение JAVA читает эту конфигурацию и обработать его с помощью расшифровки. Пожалуйста, помогите мне узнать, что библиотека из JAVA может использоваться для расшифровки такого текста или какой библиотеки используется для такого типа шифрования.

+0

комментарий должен быть оценен в случае понижения голосов – Sujit

+2

Я голосую, чтобы закрыть этот вопрос как не относящийся к теме, потому что невозможно определить, какой алгоритм или библиотека произвел этот вывод, поскольку зашифрованные тексты и хэш-выходы должны быть неотличимы от случайный шум, и есть * бесконечно много из них. Мы не здесь, чтобы играть в [угадающую игру] (https://blog.stackexchange.com/2012/02/lets-play-the-guessing-game/). –

ответ

3

Здесь не так много информации.

  • Данные в кодировке base64 (распознаваемый алфавита, используемого и == заполнения в конце), но это, как представляется, быть зашифрованы под потому что он декодирует к тому, что, как представляется, случайные двоичные данные.
  • Поля «IP», «USER» и «PASSWORD» имеют длину 16 байт, что говорит о том, что мы смотрим на симметричный шифр с 128-битным размером блока и что он использует фиксированное IV и нет сообщения проверка целостности. (64-разрядный шифр с блоком IV или блоком MAC также возможен, но менее вероятно, потому что для этого требуется, чтобы открытый текст был не более 8 байтов, хотя для пользователей и паролей не должно быть 8 байтов или меньше, как часто кто-то использует целочисленную нотацию для IP-адреса вместо десятичного десятичного?)
  • Поле «DATABASE» длиной 32 байта, что согласуется с гипотезой 128-битного блочного шифра с фиксированным IV и без целостности проверить.

128-битный блочный шифр, скорее всего, AES. Фиксированный IV без проверки целостности (который является небезопасной криптографической практикой) предлагает режим ECB. (Технически говоря, режим ECB вообще не использует IV.) Но единственный способ получить ключ - изучить программное обеспечение, использующее эти данные. Если вы разобрали его, вы сможете получить оба ключа и подтвердить, как было выполнено шифрование.

Что касается программного обеспечения для использования, существуют различные криптографические библиотеки для Java, которые могут расшифровать AES-ECB. Попробуйте посмотреть классы javax.crypto. Или библиотеку Bouncycastle.

Смежные вопросы