Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.07.2010, 12:53   #11
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Зависит и сильно. Все алгоритмы разделяются на две категории - стойкие и не стойкие. Стойкие те, с помощью которых так зашифрованы данные, что расшифровать их без ключа будет проблемно, даже если знать сам алгоритм шифрования. Не стойкие - те, с помощью которых зашифрованные данные легко расшифровать не имея ключа, как раз основываясь на понимании работы алгоритма.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 20.07.2010, 13:05   #12
BookWorm
Пользователь
 
Аватар для BookWorm
 
Регистрация: 19.07.2010
Сообщений: 10
По умолчанию

Интересно - возможен ли такой вариант?
У нас есть ключ - допустим цифры: 234352432423
У нас есть файл - дата создания которого 23:11:59 10.12.1998
Мы берем цифры 0,1,2,3,5,8,9 из даты,и случайным образом оперируем с прибавлениями к элементам ключа и прочими хитростями...
Думаю при таком методе восстановить исходных ключ сторонним способом, кроме алгоритма заложенного в программе будет сложновато...
Далее при получении и сравнении ключей используется дата создания файла...
Наверное такой способ не слишком удобный, но это позволяет его использовать только на тестируемом компьютере, вне его использование практически не возможно, кроме перевода времени...

Последний раз редактировалось BookWorm; 20.07.2010 в 13:07.
BookWorm вне форума Ответить с цитированием
Старый 20.07.2010, 13:29   #13
Card1nal
Пользователь
 
Регистрация: 31.10.2009
Сообщений: 44
По умолчанию

BookWorm[, ерунда какая-то, уж извини. во-первых, здесь, насколько я понимаю рассматривается симметричное шифрования

Т.е. допустим у нас дата 23:11:59 10.12.1998
пусть для первого блока ключ 23115910121998
Если я правильно тебя понял, для следующего блока он будет уже другой, допустим 9832159210219119
И как ты собираешься его расшифровывать? Случайная генерация будет постоянно разные ключи, то есть единственный способ - это хранить ключ. Почему тогда не воспользоваться другим способом, не зависящим от обстоятельств вроде той же даты?
Card1nal вне форума Ответить с цитированием
Старый 20.07.2010, 13:39   #14
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

mutabor, Вы хотите сделать "невскрываемую" систему? Или защититься от умных пользователей (они же - доморощенные хакеры).

В первом случае - смотрите в сторону аппаратной защиты (например, HASP ключи), тогда программа не будет работать без ключа. Хотя, не уверен, что даже в этом случае нельзя будет взломать работу системы, если иметь доступ к ключу + инструмент + опыт + задаться целью.

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


p.s. можно посмотреть в сторону ассиметричных ключей шифрования. Использовать для шифрования один ключ, для расшифровки - другой. Это не позволит (даже в теории) изменить текст и зашифровать его так, чтобы программа с ним работала. Кстати, я не рекомендую так поступать. Максимум - задействовать эл.подпись...

p.p.s. Если Вас эта проблема так сильно занимает - можете взять готовую библиотеку шифрования, есть куча бесплатных библиотек/компонентов, реализующих сильную криптографию...


BookWorm, это всё ломается, как только алгоритм становится известным... А это вполне можно получить посидев n-ое время в отладчике. и, кстати, не такое уж и большое. Да и неудобно в использовании. Время создания файла меняется, если файл скопировать с диска на диск даже в пределах одного диска....

___________________________________ ______________________________

Цитата:
Сообщение от Utkin
с помощью которых зашифрованные данные легко расшифровать не имея ключа, как раз основываясь на понимании работы алгоритма.
Utkin? ну, коллега, Вы сильно преувеличиваете!!!!
1) Шифр, который невозможно взломать (даже в теории)
Шифр Вернама (википедия)
Цитата:
Шифр Вернама (другое название: англ. One-time pad — схема одноразовых блокнотов) — в криптографии система симметричного шифрования, изобретённая в 1917 году сотрудниками AT&T Мейджором Джозефом Моборном и Гильбертом Вернамом. Шифр Вернама является системой шифрования, для которой доказана абсолютная криптографическая стойкость.

Для произведения шифротекста открытый текст объединяется операцией «исключающее ИЛИ» с ключом (называемым одноразовым блокнотом или шифроблокнотом). ....
2)хотите опровергнуть? Вы говорите "легко расшифровать не имея ключа"
Давайте я Вам кину текстик (на русском языке) зашифрованный через XOR ?
Расшифруете?! (легко же...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 20.07.2010, 13:47   #15
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
В первом случае - смотрите в сторону аппаратной защиты (например, HASP ключи), тогда программа не будет работать без ключа. Хотя, не уверен, что даже в этом случае нельзя будет взломать работу системы, если иметь доступ к ключу + инструмент + опыт + задаться целью.
У меня этот ключ на столе валяется и никогда не вставлялся в системник. Так что аппаратная защита это просто миф.

Цитата:
Utkin? ну, коллега, Вы сильно преувеличиваете!!!!
1) Шифр, который невозможно взломать (даже в теории)
Шифр Вернама (википедия)
Таких единицы.

Цитата:
2)хотите опровергнуть? Вы говорите "легко расшифровать не имея ключа"
Давайте я Вам кину текстик (на русском языке) зашифрованный через XOR ?
Расшифруете?! (легко же...
Ну моим числогрызом может и тяжело будет, но я ведь и не профессиональный взломщик, те могут и распределенные сети задействовать. Уж тогда от Вашего текста только биты во все стороны лететь будут, уж тем более, если знать частотные таблицы русского языка...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 20.07.2010, 14:16   #16
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Serge_Bliznykov, мне не нужен аппаратный ключ, а нужна программная защита. Про готовые реализации я понял, спасибо. Но хочется подробнее узнать принципы и существующие алгоритмы, так что тема эта для меня очень полезная, много нового узнал из обсуждения. Мнения расходятся, и это хорошо, ближе к истине
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 20.07.2010, 14:22   #17
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Добавлю еще, что один раз запороли одну дискету с электронным ключом (а для отправки требуется минимум два), так такой был гемморой с перегенерацией, что я взял и откопировал их все на комп и сделал своим дамам дубликаты. Теперь при желании я могу сделать столько дискет с ЭЦП, сколько требуется. Вот и скажите мне - какой во всем этом заключен тайный смысл? Если я могу получить эти ЭЦП в неограниченном количестве? Для снятия образа с дискеты уходит менее 5-ти минут... Все что требуется это только поддержать ее в ноутбуке . Уверен, ни одна экспертиза не докажет, что подпись проводилась не с "той" дискеты...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 20.07.2010, 15:27   #18
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Цитата:
mutabor, Вы хотите сделать "невскрываемую" систему? Или защититься от умных пользователей (они же - доморощенные хакеры).
Если уж делать - то с запасом. Когда мне понадобилось вытащить скрипт, зашитый в исполняемый файл утилитой perl2exe, на взлом использовавшегося там xor'а ушло 15 минут, большое количество табуляций/пробелов в исходном тексте этому очень поспособствовали (это потом я уже понял, что проще было найти утилиту, которой программу сделали, и скормить ей текст с одними нулями )

Цитата:
Нужно шифровать файлы с вопросами теста, желательно чтобы не взломали.
Т.е. эти же вопросы и/или варианты ответов будут выводиться на экран уже в расшифрованном виде? Тогда xor не подходит, т.к., длину ключа можно узнать, ксоря шифротекст с самим собой, побайтово сдвигая и считая совпадающие байты. Дальше, зная кусок исходного текста, получить аналогичный кусок ключа не составит труда (шифр = ключ xor текст -> ключ = шифр xor текст)
пыщь

Последний раз редактировалось JTG; 20.07.2010 в 15:47.
JTG вне форума Ответить с цитированием
Старый 20.07.2010, 15:32   #19
Vikenty
Заслуженный флудер
Участник клуба
 
Аватар для Vikenty
 
Регистрация: 31.03.2010
Сообщений: 1,473
По умолчанию

есть много готовых алгоритмов шифрования RC4,RC5,RC6,IDEA,DES,SHA-1,MD5, если нужно могу выложить

XOR вот самое легкое шифрование:
Код:
function XorEncrypt(Text: string; Password: string): string;
var
s: string;
i: integer;
begin
s:=Text;
for i:=0 to Length(s) do
begin
s[i]:=chr(ord(s[i]) xor ord(Password[(i mod Length(Password))+1]));
end;
Result:=s;
end;
Vikenty вне форума Ответить с цитированием
Старый 20.07.2010, 17:26   #20
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Так как насчет лицензии на RC4? Если его назвать ARC4 или ARCFOUR, означает ли это что его можно использовать без лицензии?

Цитата:
Т.е. эти же вопросы и/или варианты ответов будут выводиться на экран уже в расшифрованном виде? Тогда xor не подходит, т.к., длину ключа можно узнать, ксоря шифротекст с самим собой, побайтово сдвигая и считая совпадающие байты. Дальше, зная кусок исходного текста, получить аналогичный кусок ключа не составит труда (шифр = ключ xor текст -> ключ = шифр xor текст)
Во блин, тогда моя xor-подобная шифровка была бы как орешки, и в принципе любой кто поставил себе такую цель, имея необходимые навыки, взломал бы. Xor точно отпадает.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог

Последний раз редактировалось mutabor; 20.07.2010 в 17:34.
mutabor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Самый простой способ сравнения. Mixasik Общие вопросы Delphi 6 21.04.2010 12:04
Классический флешечник. Способ защиты? Alex Cones Безопасность, Шифрование 17 21.01.2010 12:29
навигационный способ azl-8 БД в Delphi 1 23.03.2009 18:06
Посоветуйте способ решения задачи alexmilko Помощь студентам 3 20.12.2008 20:39
Определить способ запуска Altera Общие вопросы Delphi 6 08.11.2008 20:26