This page has been robot translated, sorry for typos if any. Original content here.

Кодінг і декодинг MD5 / SHA-1 / CRC32, Брут форс, Генерація ворд листа онлайн

Кодинг и Декодинг MD5/SHA-1, CRC32 суммы, Брут форс, Генерация ворд листа

Кодування інформації - процес перетворення сигналу з форми, зручної для безпосереднього використання інформації, в форму, зручну для передачі, зберігання або автоматичної переробки. Це написання програмного коду, скриптів, для виведення певного алгоритму на певному мовою програмування.

Декодування - зворотне перетворення (відновлення змісту закодованої інформації).




Хешування методом MD5 / SHA-1 і сума за алгоритмом CRC32

Кодинг и Декодинг MD5/SHA-1, CRC32 суммы, Брут форс, Генерация ворд листа

MD5 (англ. Message Digest 5) - 128-бітний алгоритм хешування, розроблений професором Рональдом Л. Ривестом з Массачусетського технологічного інституту (Massachusetts Institute of Technology, MIT) в 1991 році. Цей алгоритм розроблений для заміни менш надійного попередника - MD4. Призначений для створення «відбитків» або дайджестів повідомлення довільної довжини і подальшої перевірки їх достовірності. Хеш містить 128 біт (16 байт) і зазвичай представляється як послідовність з 32 шістнадцяткових цифр. Широко застосовувався для перевірки цілісності інформації та зберігання паролів в закритому вигляді. Після цього MD5 став використовуватися для вирішення самих різних завдань, від хеширования паролів в CMS до створення електронно-цифрових підписів та SSL-сертифікатів. Алгоритм був вперше опублікований в квітні 1992 року в RFC 1321. Алгоритм MD5 вразливий до деяких атакам, наприклад можливе створення двох повідомлень з однаковою хеш-сумою, тому його використання не рекомендується. Альтернативою є алгоритми сімейства SHA-2.

Secure Hash Algorithm 1 - алгоритм криптографічного хешування. Описано в RFC 3174. Для вхідного повідомлення довільної довжини (максимум {\ displaystyle 2 ^ {64} -1} 2 ^ {64} -1 біт, що приблизно дорівнює 2 ексабайта) алгоритм генерує 160-бітове хеш-значення, зване також дайджестом повідомлення. Використовується в багатьох криптографічних додатках і протоколах. Також рекомендований як основного для державних установ в США. Принципи, покладені в основу SHA-1, аналогічні тим, які використовувалися Рональдом Ривестом при проектуванні MD4.

Контрольна сума (CRC8, CRC16, CRC32) - деяке значення, розраховане по набору даних шляхом застосування певного алгоритму і використовується для перевірки цілісності даних при їх передачі або зберіганні. Також контрольні суми можуть використовуватися для швидкого порівняння двох наборів даних на нееквівалентність. Це може бути використано, наприклад, для виявлення комп'ютерних вірусів. З точки зору математики контрольна сума є результатом хеш-функції, використовуваної для обчислення контрольного коду - невеликої кількості біт всередині великого блоку даних, наприклад, мережевого пакету або блоку комп'ютерного файлу, що застосовується для виявлення помилок при передачі або зберіганні інформації. Циклічний надлишковий код (зокрема, CRC8, CRC16, CRC32) застосовується для перевірки цілісності передачі даних. Програми-архіватори включають CRC вихідних даних в створений архів для того, щоб одержує міг упевнитися в коректності отриманих даних.

текст:

скидання

Інструмент дозволяє отримати MD5 і SHA-1 хеш і обчислити контрольну суму за алгоритмом CRC32 будь-якого рядка. Вписуєте в рядок "Текст" слово яке потрібно закодувати. Натиснувши на хешуванні отримаєте результат кодування на екран.




Декодування хешів MD5 методом вибірки пароля (брут форс)

Повний перебір (або метод «грубої сили», англ. Brute force) - метод вирішення математичних задач. Відноситься до класу методів пошуку рішення вичерпання всіляких варіантів. Складність повного перебору залежить від кількості всіх можливих рішень задачі. Якщо простір рішень дуже велике, то повний перебір може не дати результатів протягом декількох років або навіть століть.

Будь-яке завдання з класу NP може бути вирішена повним перебором. При цьому, навіть якщо обчислення цільової функції від кожного конкретного можливого рішення задачі може бути здійснено за поліноміальний час, в залежності від кількості всіх можливих рішень повний перебір може зажадати експоненціального часу роботи.

У криптографії на обчислювальної складності повного перебору ґрунтується оцінка криптостойкости шифрів. Зокрема, шифр вважається крипостійкість, якщо не існує методу «злому» істотно більш швидкого ніж повний перебір всіх ключів. Криптографічні атаки, засновані на методі повного перебору, є найбільш універсальними, але і найдовшими.

Хеш MD5:
символи:

Длііна слова: 1 2 3 4 5 6 7 8 9 ? (Невідомо)

скидання

Інструмент дозволяє отримати результат декодування хешу MD5 будь-якої складності. У рядок "Хеш MD5" вписуєте хеш який потрібно декодувати. У рядок "Символи" вписуєте ті символи, з яких складається закодоване слово або використовуєте поточні. У рядку "Довжина слова" слід вибрати можливу довжину шуканого слова. Натиснувши на ДЕКОДУВАННЯ отримаєте результат у вигляді файлу.




Генерація ворд листа

символи:

Довжина слова: 1 2 3 4 5 6 7 8 9

скидання

У рядок "Символи" вписуєте символи, з яких потрібно скласти ворд лист або використовуєте поточні. У рядку "Довжина слова", вказуєте довжину складаються слів. Натиснувши на ГЕНЕРАЦІЯ отримаєте результат у вигляді файлу.

! Увага: Генерація листа з великого набору букв займає більше 15 хвилин. Якщо ви вирішили це зробити, не оновлюйте сторінку після натискання на кнопку! А краще такого не робити, ми вас забанили назавжди :(




Хеши найбільш часто використовуваних паролів

пароль MD5 Хеш
0 cfcd208495d565ef66e7dff9f98764da
000 c6f057b86584942e415435ffb1fa93d4
007 9e94b15ed312fa42232fd87a55db0d39
1 c4ca4238a0b923820dcc509a6f75849b
111 698d51a19d8a121ce581499d7b701668
123 202cb962ac59075b964b07152d234b70
123456 e10adc3949ba59abbe56e057f20f883e
123123 4297f44b13955235245b2497399d7a93
12345 827ccb0eea8a706c4c34a16891f84e7b
qwe 76d80224611fc919a5d54f0ff9fba446
qweqwe efe6398127928f1b2e9ef3207fb82663
asd 7815696ecbf1c96e6894b779456d330e
asdasd a8f5f167f44f4964e6c998dee827110c
asdf 912ec803b2ce49e4a541068d495ab570
zxc 5fa72358f0b4fb4f2c5d7de8c9a41846
zxczxc ecb97ffafc1798cd2f67fcbc37226761
zxcvb eb89f40da6a539dd1b1776e522459763
zxcvbn b427ebd39c845eb5417b7f7aaf1f9724
zxcv fd2cc6c54239c40495a0d3a93b6380eb
admin 21232f297a57a5a743894a0e4a801fc3
administrator 200ceb26807d6bf99fd6f4f0d1ca54d4
Admin e3afed0047b08059d0fada10f400c1e5
Administrator 7b7bc2512ee1fedcd76bdc68926d4f7b
gfhjkm d9d1b168eac8f197e0576b56cfc23ece
flvby 3a28525729392f0746380a44b200bb21
flvbybcnhfnjh 8b7d272b7b9177fcac0d38aa06f4ab99
gfhjkm d9d1b168eac8f197e0576b56cfc23ece
ghbdtn 2a3dfa66c2d8e8c67b77f2a25886e3cf
qwerty d8578edf8458ce06fbc5bb76a58c5ca4
test 098f6bcd4621d373cade4e832627b4f6
pass 1a1dc91c907325c69271ddf0c944bc72
vfif f86eb133aea0114a01595cac67dbcb17
lbvf 40f1b6d9156fb4c5c93c60b79667c0b7
ybrbnf 79f0c81692f7d073c7d5f713b78124eb
dfcz d9d53ccc12ebe52f20aca9077a992b09
gfif cb7347eb95885a2f1ef3036057bfe2b5
google c822c1b63853ed273b89687ac505f9fa
ueukm fee2125a43bcb6e04814160d4ea0dccd
vjcrdf 4ada42a5a7ca1ffff1632a6f812f0599
Vjcrdf 77af9af7ebfba6070e0b29d34d4d5327
, fhfrelf 464f677bc2a846d08cb5c64bc63c1dee
frekf 94b1c676abcd33c1af912cdc0bd84958
zyltrc f2e1189d0d738b2d692a76685b949e5a
gbljhfcs 1b281e2f8ae07815a00de53192d618aa
ehjls 10cab130d6d53689e0c7f60c094431f6
, kzlm 985a1978be91d7abfb7065bb15c91a61
, kby ff7087f014ceb8d7a48b5f9dff09e876
rfr ltkf 2e4dc7d9e7e84a08507443fc046adf30
lehfr b35217036f336fe4c686b52685c2d2c6
lehf 4233c3889e28db97475d062682e91f53
cbcntvf 21881c7e863d8db5770ed0904b15e624
; jgf d3f47852e1445cba95855825b789ce02
gfhjkmxbr 987cadce9ef28e63f7cdba0b66eb1371


Підбір пароля по md5 [php] скриптом

<?php
// Устанавливаем неограниченное время выполнения скрипта
set_time_limit ( 0 );

// Читаем пароли из файла password
$pass = file ( "password.txt" );
foreach(
$pass as $password )
{
// Замеряем время, затраченное на подбор пароля
$begin = time ();
echo
decrypt_md5 ( trim ( $password ), "" );
$end = time ();
echo
" (На подбор затрачено " .( $end - $begin ). " секунд) <br>" ;
}

// Функция посимвольного перебора пароля
// $pass - расшифровываемый пароль
// $answer - текущий ответ, при первом вызове - пустая строка
function decrypt_md5 ( $pass , $answer )
{
$arr = array( 'a' , 'b' , 'c' , 'd' , 'e' , 'f' ,
'g' , 'h' , 'i' , 'j' , 'k' , 'l' ,
'm' , 'n' , 'o' , 'p' , 'q' , 'r' , 's' ,
't' , 'u' , 'v' , 'w' , 'x' , 'y' , 'z' );
// Будем считать, что пароль не превышает
// 4 символов
$max_number = 3 ;
if(
strlen ( $answer ) > $max_number ) return;

for(
$j = 0 ; $j < count ( $arr ); $j ++)
{
$temp = $answer . $arr [ $j ];
if(
md5 ( $temp ) == $pass ) return $temp ;
// Рекурсивно вызываем фукнцию для увеличения
// длины подбираемого пароля
$result = decrypt_md5 ( $pass , $temp );
// Если функция возвращает непустую строку,
// следовательно, найден ответ и дальше искать
// не следует
if( strlen ( $result ) > 0 ) return $result ;
}
}
?>

Якщо пароль досить простий, то за допомогою цього скрипта можна досить швидко його підібрати по md5 хешу. Наприклад пароль довжиною 5 символів, що складається з цифр і латинських букв нижнього регістру, підбирався 10 хвилин.

ad0234829205b9033196ba818f7a872b cracked test2 (На підбір витрачено 755 секунд)

В цілому масив я вже оформив, можна хіба що додати латинські символи великого регістра, що походу збільшить роботу скрипта приблизно в 2 рази, зате шанси підібрати пароль будуть куди вище. При необхідності в скрипті можна налаштовувати максимальну довжину подбираемого пароля, а також редагувати масив символів, що використовуються для підбору.

Код не претендує на супер складність. Скрипт швидше для навчальних цілей, ніж для практичних.

До речі: Hash зберігається в корінь директорії в файл password.txt