|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Dima TЯ разве написал что я первый это придумал?А разве я упрекал вас в попытке присвоения приоритета? Глупо вообще обсуждать такой вариант атаки. Просто потому, что биты перемешивают не на пустом месте. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 09:05 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Gennadiy UsovПри рассмотрении известных подходов построения блочных шифров нужно отметить следующее: 1)Почему переход с блока 64 на 128 (или более крупный блок) представляет собой событие, если в программе это должно означать просто замену переменной – размер блока? Просто всем пользователям рассылается новая программа шифрования. Блоки наращивали свои размеры эволюционно. Тоесть в середина 20-го века хватало 32х бит. И процессоры имели встроенные регистры именно такой длины. Чуть позже количественный рост и потребности техники заставили удвоить регистры и как следствие возникла пустая ниша и потребность просто расширить алгоритм на более широкую сетку. Вам как математику эти сведененья не интересны ибо длина регистра это нечто техническое. Под капотом. Но важно отметить что эта потребность была еще и продиктована растущими угрозами криптоаналитики. Если есть железо и более мощное - то можно предположить что атакующий будет перебирать 32х разрядные ключи на 64х разрядном регистре в два раза быстрее используя возможности новых процессоров и систем команд. Тоесть это как-бы гонка вооружений. По поводу рассылки самой программы. Я думаю это технически - осуществимо вполне. Но обычно новый (принципиально новый) крипто-алгоритм проходит стадии публикации и обсуждения в криптографическом сообществе. Потом анализ на слабости (помните конкурс NIST про который я писал?) и в конечном счете стандартизацию. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 10:56 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Gennadiy Usov2)Есть понятие рассеивание информации и перемешивание информации. Причем, перемешивание информации более уязвимо, чем рассеивание информации. Хм. Это Шенноновский термин? "рассеяние". Не помню что это. Надо почитать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 10:58 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Gennadiy Usov3)Чтобы в блоках не отследить перемешивание информации, необходимо делать перемешивание надблочное, чтобы в блоках были только отдельные символа от слов текста. А если идти ещё дальше, то делать такое перемешивание, псевдослучайное, чтобы в блоке собирать определенные буквы. Вот только как передать такое, псевдослучайное число? Это я не понял. Смотрите. Один из постулатов Керхгофа (насколько я понимаю) - это перенос 100% секретности в ключ. Сам алгоритм не должен иметь секретов. Если вам нужно передать некий вектор инициализации (IV) и он увеличивает секретность переписки даже будучи опубликованным - то публикуйте. Прямо в теле сообщения. Это тоже метод. И это практикуется. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 11:04 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
maytonGennadiy UsovПри рассмотрении известных подходов построения блочных шифров нужно отметить следующее: 1)Почему переход с блока 64 на 128 (или более крупный блок) представляет собой событие, если в программе это должно означать просто замену переменной – размер блока? Просто всем пользователям рассылается новая программа шифрования. Блоки наращивали свои размеры эволюционно. Тоесть в середина 20-го века хватало 32х бит. И процессоры имели встроенные регистры именно такой длины. Чуть позже количественный рост и потребности техники заставили удвоить регистры и как следствие возникла пустая ниша и потребность просто расширить алгоритм на более широкую сетку. Вам как математику эти сведененья не интересны ибо длина регистра это нечто техническое. Под капотом. Но важно отметить что эта потребность была еще и продиктована растущими угрозами криптоаналитики. Если есть железо и более мощное - то можно предположить что атакующий будет перебирать 32х разрядные ключи на 64х разрядном регистре в два раза быстрее используя возможности новых процессоров и систем команд. Тоесть это как-бы гонка вооружений.Если всё дело в железе, то мне, как математику, не понятно различие скорости шифрования и дешифрования на 64х разрядном регистре для 32х разрядных ключей и 64х разрядных ключей. Неужели обрабатываются сразу 2 блока? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 12:43 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
maytonGennadiy Usov3)Чтобы в блоках не отследить перемешивание информации, необходимо делать перемешивание надблочное, чтобы в блоках были только отдельные символа от слов текста. А если идти ещё дальше, то делать такое перемешивание, псевдослучайное, чтобы в блоке собирать определенные буквы. Вот только как передать такое, псевдослучайное число?Это я не понял. Смотрите. Один из постулатов Керхгофа (насколько я понимаю) - это перенос 100% секретности в ключ. Сам алгоритм не должен иметь секретов. Если вам нужно передать некий вектор инициализации (IV) и он увеличивает секретность переписки даже будучи опубликованным - то публикуйте. Прямо в теле сообщения. Это тоже метод. И это практикуется.Никакой секретности в алгоритме. Все в ключе! А ключ в... (а здесь уже секретность) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 12:46 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
maytonЭта ниша действительно почти закрыта для ПК и серверного оборудования. Но есть еще мобильные устройства, bluetooth, и прочие низко-энергопотребляющие которые хотят лёгких алгоритмов но при этом имеющих какую-то идею чуть более сложную чем просто XOR. А какие процессоры там стоят? В ARM-е инструкции AES уже тоже есть: https://ru.wikipedia.org/wiki/ARM_(архитектура) В конце концов эти инструкции - просто выборка из таблицы констант и обмен битов местами. Dima TДаже не обсуждая криптостойкость - это неэффективно. Надо зашифровать 3 байта - на выходе 1000. Пользователей RSA это не особо волнует, когда они шифруют 128-битый сессионный ключ в 2048-битный пакет. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 15:16 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Gennadiy Usovмне, как математику, не понятно различие скорости шифрования и дешифрования на 64х разрядном регистре для 32х разрядных ключей и 64х разрядных ключей. Неужели обрабатываются сразу 2 блока? Это зависит от алгоритма, но таки да: RSA на 64-х битной арифметике в 2 раза быстрее, чем на 32-х битной за счёт увеличения блока и, как следствие, уменьшения количества операций, необходимых для вычисления результата. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 15:19 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovDima TДаже не обсуждая криптостойкость - это неэффективно. Надо зашифровать 3 байта - на выходе 1000. Пользователей RSA это не особо волнует, когда они шифруют 128-битый сессионный ключ в 2048-битный пакет. В данном случае речь о симметричном шифровании. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 15:24 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovGennadiy Usovмне, как математику, не понятно различие скорости шифрования и дешифрования на 64х разрядном регистре для 32х разрядных ключей и 64х разрядных ключей. Неужели обрабатываются сразу 2 блока? Это зависит от алгоритма, но таки да: RSA на 64-х битной арифметике в 2 раза быстрее, чем на 32-х битной за счёт увеличения блока и, как следствие, уменьшения количества операций, необходимых для вычисления результата.Значит, скорость шифрования (дешифрования) зависит только от разрядного регистра и не зависит от разряда ключей и размера блока? Конечно, при одинаковом количестве операций (раундов). ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 16:11 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Dima TЯ придумал как быстро узнать ключ при возможности дать на вход что угодно. Даем на вход блоки Код: sql 1. 2. 3. 4. 5.
Дальше смотрим где вышла единица после каждого шифрования. Давайте в топике будем называть этот метод - Метод Бегущего Бита (МББ). Чуть позже я попробую повоздействовать этим методом на DES и посмотреть как меняются блоки. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 16:58 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Gennadiy UsovЕсли всё дело в железе, то мне, как математику, не понятно различие скорости шифрования и дешифрования на 64х разрядном регистре для 32х разрядных ключей и 64х разрядных ключей. Неужели обрабатываются сразу 2 блока? Да. Это старая техника. Называется SIMD https://ru.wikipedia.org/wiki/SIMD Вкратце. Вместо сложения двух на два 32х разрядных регистров чтобы получить два слагаемых можно сделать одну SIMD операцию. Над 64х битным регистром просто указать что подразумевается семантика разделения одного большого 64х битного регистра на 2 по 32. Или 4 по 16. И также к целочисленному умножению и делению и булевым операциям. Обычно программисты редко прибегают к Simd напрямую. Чаще эти операции зашиты в библиотеках. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 17:17 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Gennadiy UsovDimitry Sibiryakovпропущено... Это зависит от алгоритма, но таки да: RSA на 64-х битной арифметике в 2 раза быстрее, чем на 32-х битной за счёт увеличения блока и, как следствие, уменьшения количества операций, необходимых для вычисления результата.Значит, скорость шифрования (дешифрования) зависит только от разрядного регистра и не зависит от разряда ключей и размера блока? Конечно, при одинаковом количестве операций (раундов). Вы верно рассуждаете. Значит уже читаете литературу по К. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 17:19 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Дык 10 лет уже есть отдельный набор инструкций для шифрования AES-NI оно там блоками по 512 бит шпарит независимо от архитектуры. Главное не маяться дурью и использовать библиотеки и современный компилятор. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2019, 23:05 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Давайте проведем эксперимент по влиянию бегущего бита. Я сгенерил 3 файлика. Длиной 16 байт. Заполненный нулями и с включенным ведущим битом. И еще один с соседним битом. 0000-0000-0000-0000.dat 8000-0000-0000-0000.dat 4000-0000-0000-0000.dat Случайный ключик 0d4a494028f352d6 (binhex) И три эксперимента с кодером DES(ECB), salt=off. Посмотрите что получилось. До и после. Пока не комментирую. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 00:02 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Dima TВ данном случае речь о симметричном шифровании. Без разницы. Все алгоритмы блочного шифрования оперируют блоком. У кого-то он побольше, у кого-то поменьше, но выравнивание есть у них всех. Кстати, упомянутые блютусы и прочее, насколько я знаю, работают с потоком данным и криптоалгоритмы там потоковые. Они работают по байтам. Собственно, насколько я опять же знаю, это всё тот же XOR псевдослучайной последовательностью. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 01:21 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
maytonПосмотрите что получилось. Предсказуемо получилось. У DES блок 64 бита, соответственно вторые 64 бита исходного файла, заполненные одними и теми же нулями дали один и тот же криптотекст. Откуда вылезли ещё 64 бита - неясно. Возможно контрольная сумма или ещё какой openssl-ный потрох. У AES блок 128 бит, с ним ты бы получил другую картину. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 01:29 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovmaytonПосмотрите что получилось. Предсказуемо получилось. У DES блок 64 бита, соответственно вторые 64 бита исходного файла, заполненные одними и теми же нулями дали один и тот же криптотекст. Откуда вылезли ещё 64 бита - неясно. Возможно контрольная сумма или ещё какой openssl-ный потрох. У AES блок 128 бит, с ним ты бы получил другую картину. Где вы видите контрольную сумму? Есть первые 8 байтов - это и есть шифротекст. Он определённо зависит от исходных данных. Оставшиеся 16 байтов - константа. Они не зависят от открытого текста. Кстати обратите внимание на эффект лавины. 1 бит совершенно определённо влияет на 50% данных всего DES-блока. Рекомендация Шеннона работает. И Димина атака бегущим битом даёт просто равномерный шум. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 01:37 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Поправка. Первые 16 байт шифротекст. И оставшиеся 8 - хвостик. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 01:39 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
maytonГде вы видите контрольную сумму? Оставшиеся 8 байтов - константа. Они не зависят от открытого текста. О контрольно сумме это было моё (неверное) предположение. Я не знаю что openssl добавляет к открытому тексту. Сам по себе DES вроде бы не предусматривает никаких добавок (в отличии от SHA, например). ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 02:03 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Количество литературы по криптографии (и по криптоанализу) показало, что количество методов достаточно велико. Всем разработчикам и пользователям надо изучать все эти методы. И здесь можно определить один основной момент: а что все-таки объединяет все эти методы. И что эти методы не делают. Если смотреть за действиями криптоаналитика. То он пытается понять осмысленный текст. А если ему дать текст, который не подлежит никакому осмыслению. 1) Можно сделать полный перебор текста перед входом в блоки (например, шифр ППП). Хотя есть понятие потоковые шифры, и есть ограничения по длине ключа. Ограничения длины ключа можно преодолеть. 2) Можно по ключу вообще менять все буквы между собой: например А(а) на Ш(ш). Или меняем три последних (четыре) бита в представлении символа. Или по определенным битам ключа определяем это изменение. И для криптоаналитика наступают новые сложности: есть куча вариантов представления текста и куча вариантов представления букв. Может быть, можно будет убрать часть раундов (операций) и убыстрить процесс шифрования (дешифрования) Как мне кажется, дальнейшие работы по улучшению процесса шифрования должны идти в этом направлении. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 07:35 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
И тут же вдогонку вопрос: может ли меняться ключ при проведении процесса шифрования ? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 08:40 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
А если идти дальше, то с помощью ключа можно так поменять буквы на буквы, что может получиться шифрограмма: яяяяяяя.ща или что-то похожее на эту шифрограмму. И как это для криптоаналитика? По-моему, эту шифрограмму можно ему спокойно передавать безо всяких блоков и раундов в блоках. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 09:24 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Наверное, поторопился передавать. Для каждой буквы можно найти за счет перебора битов (32 варианта) можно найти нужную букву. Всего букв 9. Значит, 32^9, не так много. А если ещё смысл в части слова, то и раньше. Поэтому, лучше пропустить через несколько раундов в блоках, но немного. С другой стороны, есть перемешивание всего текста - от предложения до нескольких страниц с потерей всякого смысла в рядом стоящих буквах, особенно на больших текстах. Надо ещё подумать. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 09:38 |
|
Криптография и алгоритмы определения решений задачи N ферзей
|
|||
---|---|---|---|
#18+
Gennadiy UsovА если идти дальше, то с помощью ключа можно так поменять буквы на буквы, что может получиться шифрограмма: яяяяяяя.ща или что-то похожее на эту шифрограмму. И как это для криптоаналитика? По-моему, эту шифрограмму можно ему спокойно передавать безо всяких блоков и раундов в блоках. Система шифрования должна быть обратимой. Симметричный шифр - биективная функция над блоками. Ваше яяяяяя - после обратного преобразования превратится во что? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2019, 09:53 |
|
|
start [/forum/topic.php?fid=16&msg=39756893&tid=1340005]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
186ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
72ms |
get tp. blocked users: |
2ms |
others: | 252ms |
total: | 557ms |
0 / 0 |