Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2002.01.28;
Скачать: [xml.tar.bz2];

Вниз

Кодирование информации   Найти похожие ветки 

 
Brand   (2001-11-30 23:35) [0]

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


 
msa   (2001-12-01 09:39) [1]

В цикле добавляешь к каждому символу кодируемой строки случайное число от 0 до 255 и берешь остаток от деления на 256...


 
iZEN   (2001-12-01 14:00) [2]

Этот (см. msa(01.12.01 09:39)) алгоритм называется "Алгоритм Цезаря" -- самый простой для взламывания.

Есть ещё: DES, 3DES, PGP, BlowFish, куча ещё других и их модификации.

Что можно посоветовать: если нужно для серьёзной работы -- читайте соответствующую литературу (сейчас её много), если просто -- используйте "Алгоритм Цезаря".


 
vuk   (2001-12-01 14:24) [3]

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


 
Undert   (2001-12-01 14:30) [4]

А попроще и по муднее:
For I:=1 To SizeOf(PasswordBuffer) Do
PasswordBuffer[I]:=((Not (PasswordBuffer[I] Xor I+1) Xor I-1) Xor (PasswordBuffer[I]+1));



 
Art   (2001-12-01 18:51) [5]

Вообще так нельзя говорить! Т.к. не и не будет алгоритма шифрования,который бы нельзя было бы взломать!!! Можно говорить только о стойкости алгоритма ко взлому.
Только стойкостью определяется хороший алгоритм или плохой.!!! Кстати а если шифровать ,то можно подобрать пароль не полным перебором????


 
ctapik   (2001-12-01 23:35) [6]

Не мучийся используй RSA есть компонент от TSM Software полностью рабочий, не для комерческого использования, ищи на torry.net. Кстати там уних еще много других алгоритмов шифрования.


 
ASTARD   (2001-12-01 23:41) [7]

Могу сказать одно чем больше математики тем лучше будет шифр....


 
NetBreaker666   (2001-12-01 23:51) [8]

А может просто архивирования с паролем ?


 
Merlin   (2001-12-01 23:51) [9]

Вообще-то, то что предложил "msa (01.12.01 09:39)" действительно самый лучший способ шифрования. Это именно то, что и просил Brand "Чтобы никто не мог расшифровать", даже тот кто зашифровал! :)
Неужели не заметили?
добавляешь к каждому символу кодируемой строки случайное число :))


 
vuk   (2001-12-02 00:28) [10]

to Art:
Про шифрование - вы абсолютно правы. Но хеширование - это не шифрование!
Если кто не в курсе.

Шифрование - кодирование, которое подразумевает полное восстановление исходного вида информации. Шифрование предназначено для сокрытия информации.

Хеширование предназначено несколько для другого. Обычно алгоритмы хеширования обрабатывают некий набор данных (любой длины) и выдают на выходе блок данных _фиксированной_ длины. Содержимое блока данных на выходе зависит от входных данных и может служить _идентификатором_ входного блока (то есть некоей структурой, по которой можно определить совпадют два конкретных блока данных или нет). Чем ниже возможность совпадения блоков данных на выходе алгоритма, тем лучше алгоритм.
Обратная операция для алгоритмов хешировния невозможна, поскольку, блок данных на выходе хотя и зависит от входного, но не содержит абсолютно никакой информации о нем.

Почему хеширование хорошо для хранения паролей доступа в системах, где требуется авторизация? Да потому, что при этом сами пароли хранить не надо. Вместо этого достаточно хранить результат их обработки хеш-функцией(хеш-коды). При проверке пароля нужно получить результат обработки введенной строки хеш-функцией и сравнить этот результат с хранимыми хеш-кодами. А подбор пароля превращается в перебор всех возможных вариантов (до совпадения хеш-кода), а при хорошем алгоритме этого добиться очень нелегко даже зная алгоритм и имея в руках хеш-код. Кстати, именно поэтому все программы, которые подбирают пароли к WinNT работают либо по словарю либо методом грубой силы (полного перебора).


 
MJH   (2001-12-02 13:09) [11]

NetBreaker666
^^^^^ о! у мя брат появился :)


 
Art   (2001-12-02 13:20) [12]

Да про хеширование я мало чего знал,спасибо!!!


 
vuk   (2001-12-02 16:21) [13]

Хочу поправить себя в одной фразе.

было:
>Чем ниже возможность совпадения блоков данных на выходе алгоритма, тем
>лучше алгоритм.

имелось в виду:
Чем ниже возможность совпадения блоков данных на выходе алгоритма при разных входных блоках, тем лучше алгоритм.



 
Леха   (2001-12-03 11:22) [14]

to Merlin
элементарно расшифровывается только стартовое число генератора случайных(на самом деле _псевдо_случайных) чисел запомнить и при расшифровке воспроизвести последовательность.


 
vuk   (2001-12-03 13:03) [15]

to Леха:
Ненадежно. А если программа многопоточная и пройдет вызов random в другом потоке?


 
p@s   (2001-12-03 14:48) [16]

Обычный xor при длине ключа больше длины шифруемых данных.

2 iZEN (01.12.01 14:00) Я как понял тоже написал "Алгоритм Цезаря". Не подскажите методик его взлома.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2002.01.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.005 c
1-90312
tovSuhov
2002-01-11 13:43
2002.01.28
Люди, помогите!!!


1-90323
Surprising
2002-01-06 17:36
2002.01.28
Сохранить форму как файл графики


6-90335
Layet
2001-11-07 08:13
2002.01.28
TClientSocket


3-90187
AlexOb
2001-12-22 15:56
2002.01.28
Проблема с суммированием более 12 баз данных :(


6-90340
Amit
2001-11-03 22:37
2002.01.28
Плиз помогите мне !





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский