2009-10-22 2 views
0

У меня есть незашифрованная/незашифрованная строка - "565040574". У меня также есть зашифрованная/закодированная строка для этой строки - "BSubW2AUWrSCL7dk9ucoiA==".Алгоритм шифрования/кодирования

Похоже, что эта строка была Base64ed после шифрования, но я не знаю, какой алгоритм шифрования был использован. Если я преобразую строку «BSubW2AUWrSCL7dk9ucoiA ==» в байты с использованием Convert.FromBase64String("BSubW2AUWrSCL7dk9ucoiA=="), я получаю 16 байтов.

Есть ли что-нибудь, с помощью которого я могу узнать, какое шифрование было использовано для шифрования "565040574" до "BSubW2AUWrSCL7dk9ucoiA=="?

ответ

4

Нет, вам нечего сказать, как оно было зашифровано. Если у вас нет ключа для его расшифровки, вам все равно не повезет.

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

Возможно, вы сможете сузить то, на что это не похоже, потому что у вас есть 7 байтов заполнения, но будь то IDEA или Blowfish или AES, нет никакого способа узнать.

+0

Думаю, я поеду с вами, даже если я догадался об алгоритме, у меня не будет ключа для дешифрования строки! – Kirtan

2

Глядя на него, с головы до головы я бы сказал AES и, более конкретно, Rijndael.

EDIT:

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

Помните, что если вы когда-либо можете сказать, какой алгоритм шифрует текст, никогда, никогда, никогда не используйте этот алгоритм.

+2

У вас хорошие глаза;) – pyrocumulus

+0

Это всегда было бы предположение. Не могу сказать без ключа. –

+0

Хороший комментарий к «не используйте алгоритм, который вы можете распознать, просто взглянув на зашифрованный текст». –

1

Что вы можете сказать по имеющимся у вас данным? Ну, наиболее конкретный бит информации у вас есть, что 9 байт открытого текста шифрует до 16 байтов зашифрованного текста. Поскольку маловероятно, что алгоритм сжатия данных используется на такой небольшой фрагмент данных, это означает, что мы можем сделать предположение, что:

  • Он зашифрован с блочным шифром, с размером блока < = 128 бит.

  • Режим шифрования ECB, поскольку нет места для IV.

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