Saturday, June 16, 2012

Още за суперкомпютъра на NSA в Юта

Има още информация за суперкомпютъра, на NSA в щата Юта.Оказва се че въпросният суперкомпютър в Юта, не само ще се занимава с декриптиране а и с хешове. Суперкомпютърът ще изгражда Rainbow таблици на най-честите хеш алгоритми като MD5, SHA - 1, SHA - 256 bit, SHA -  384, SHA - 512 bit, което означава, че веднъж щом изградят тези Rainbow таблици, ще могат да откриват хеширани пароли много бързо, защото ще трябва само да намерят съвпадащият хеш в таблицата и да видят кой низ отговаря на този хеш. Звучи ужасно, нали, и наистина е ужасно. Хубавото е че технологията е нож с две остриета а само с малко изобретателност, може да направите така че тези Rainbow таблици, да са напълно безполезни. Решения на проблема има, и се казват:
1. Salted re-hash.
2. Salted crypto-rehash

Например, нека вземем една типична парола:

pepi23041978

Не е най-силната парола на света, а и е лесно да се досетиш за тази парола, ако познаваш лично човека.

Паролата хеширана с най-честите хешове изглежда така:

MD5:
5fdd1011902a80fd4b10414aae69ec78

SHA1:
1403149ed12682020744b2f16d045e50f0ccad7f

SHA - 256 bit:
b584c47ff967b102ea0c74f2ea981915a996635ad4988674913aaf2b66f57a3d

SHA - 384 bit:
b318ea1f6430fedc510d57be2215381a0e1b5e3eac16cdda14827214c9d829cf5096b8969fd049be88bcd5be0c5fefc4

SHA - 512 bit:
4f5f3197621ffa96c5ca5e8bf5ce1ce188f0b30d95ca237dca2809c99c578180b00c0ba53b66aeb105aa460f152f233ef230a6fa68fce7c09bd899f2952f773c

Това значи че паролата защитена само с този хеш, може да бъде съставена от суперкомпютъра в Юта, и нейните хешове да бъдат записани за максимално лесно откриване и сравнение по таблица.

Ако например, подсилим паролата, използвайки Salted Re-hash като password strengthening метод - метод за подсилване на паролата, можете ефективно да хвърлите суперкомпютъра в Юта в математическо приключение с неизвестен край.

Тук трябва да спомена понятието Password salting и понятието hash salting. Нека ги обасним по отделно. Password Saltingе когато към паролата се добави низ със символи, за да се удължи и усложни паролата, например, нашата парола, ще бъде salted за да се удължи и усложни.

Оригинална парола:
pepi23041978

Salted парола:
pepi23041978L:Fjroiu?@t698479
Която е значително по-дълга и значително по-сложна

Salt на паролата е:
L:Fjroiu?@t698479

Сега, да обясним Salted hash  понятието Salted Hash

Общо взето щъщото като Salted парола, само че низа от символи се добавя към хеша, например:

Оригинален MD5 хеш:
5fdd1011902a80fd4b10414aae69ec78


Salted MD5 хеш:
5fdd1011902a80fd4b10414aae69ec78:rj39pPO8yt#$%wih4yi7

Salt на хеша е:
:rj39pPO8yt#$%wih4yi7

Метода за Salted hash е еднакво добре приложим върху всички хешове, но колкото по-сложен хеш използвате, толкова по-добре за вас.

Метода за защита на паролата, е приложим от почти всеки сървър автоматично, и може да го прави натълно автоматично и напълно автономно, при създаване на акаунт или логване, стига някой да си поиграе да го направи да работи като хората.

1. избираме парола и я подаваме на сървъра
2. сървъра риема паролата и я salt-ва с един низ
3. сървъра прави хеш на Salted паролата
4. сървъра salt-ва хеша на salted парола с твори низ, различен от първия
5. сървъра прави втори хеш, на първия Salted хеш

И от тук на сетне винаги да се използва, само вторият хеш. Достатъчно надеждна форма на защита на паролата, която ще бъде доста трудна и сложна за Brute force, Dictionary attack и Rainbow table look-up, защото така полученият хеш, не отговаря на нищо, което може да бъде определено по тези начини, съответно те стават безполезни.

Съществува и по-силен метод, който изисква, повече работа по реализирането в сървърите, и повече изчислителна мощ, за да може процеса да мине бързо и ефективно, но пак може да се направи напълно автономен, и да се изпълнява напълно автоматично. Методът се казва, Salted crypto-rehash, и представлява същият процес като описаният по-горе, но преди целият процес паролата първо се криптира, със силен алгоритъм, например AES - 256 bit, BlowFish - 256 bit, Blowfish - 384 bit, Blowfish - 448 bit, и след това се Salt-ва, хешира, хеша се salt-ва и хешира наново, и полученият хеш е още по-силен, от предният метод и защитава паролата ви още по-добре.

Ето ви два добри метода за защита на паролата от работата на NSA и суперкомпютъра им в Юта.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.