Сколько циклов преобразования используется в алгоритме des. Стандарт шифрования данных (DES). Построение статистических аналогов для нескольких раундов DES

В сети доступно много интересных направлений для заработка денег. Пользователи сами решают, чем им заниматься. Некоторые варианты настолько просты, что ими можно пользоваться параллельно с ежедневными делами.

Сейчас мы рассмотрим один из таких методов, он уже проверенный и не теряет актуальности.

Наверняка вам приходилось делиться адресом на какую-нибудь страничку, например, с друзьями в социальных сетях. А ведь за это можно получать деньги, независимо от сайта, на который ведет ссылка.

Зачем сокращают ссылки?

Длинный адрес, его неудобно передавать другим пользователям, прописывать в комментариях, на форумах и так далее. С помощью бесплатного проекта мы сократили ссылку и вот что получилось:

Согласитесь, такой адрес гораздо проще кому-то отправить или где-нибудь разместить. Также ссылки укорачивают, чтобы скрыть реферальные ссылки, чтобы они лучше вписывались в текст или даже для заработка денег, о чем мы и расскажем в данной статье.

Кто платит за переходы по сокращенным ссылкам?

Как правило, на ней установлен таймер просмотра. Иногда после таймера появляется кнопка для перехода, иногда переход выполняется автоматически:

Схема заработка предельно проста, сокращаешь любые ссылки, получаешь укороченный адрес и размещаешь его где угодно. Люди начинают делать переходы, тем самым просматривая рекламу и принося доход. Самое главное – это научиться добывать уникальные переходы.

Заработок за просмотр сокращённых ссылок другими пользователями

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

1. Выбор сервиса для сокращения ссылки

Не во всех сервисах для укарачивания ссылок предусмотрены вознаграждения. В некоторых случаях они слишком занижены или реклама распугивает народ. Чуть ниже мы представим ТОП сайтов, где выгодно сокращать ссылки и зарабатывать.

2. На что сократить ссылку?

Очевидно, что лучше подбирать что-то интересное и полезное. Доход зависит от количества переходов, а заставить человека перейти по ссылке не так просто. Вот несоклько вариантов, на что вы можете ссылаться:

  • на собственный сайт;
  • странички в социальных сетях;
  • актуальные новости;
  • новинки музыки и фильмов;
  • интернет-магазины;
  • бесплатные полезные сервисы;
  • партнерские программы.

Лучше выбирать не коммерческие площадки. Тогда люди сочтут, что вы просто делитесь полезным адресом, а не рекламируете его.

3. Где распространять сокращенные ссылки

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

  • создание тем на форумах;
  • посты в социальных сетях;
  • ссылки на досках объявлений;
  • комментарии на любых сайтах;
  • расссылки на Email ящики.

По данным статистики, сегодня пользователям интернета предлагается около 100 различных способов онлайн-заработка в сети. Среди них есть и такой вид работы, как переход по ссылкам рекламодателей на их сайты. Этот вид заработка был невероятно популярен лет десять назад, когда индустрия фриланса только-только начинала формироваться.

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

Суть заработка на переходах

Основная идея заработка на переходах сводится к тому, что пользователь получает от сервиса, в котором нужно будет предварительно зарегистрироваться, сообщения со ссылкой внутри. Кликнув по ним, исполнитель оказывается на сайте, где ему нужно пробыть определенное время – как правило, не более 30 секунд.

После этого посещение будет засчитано и на счет аккаунта начислят положенное вознаграждение. Для российских проектов за каждый просмотренный сайт платят несколько копеек – стандартная сумма колеблется от 5 до 10 копеек. На иностранных сайтах, оплата начисляется, естественно, в долларах или евро, но там счет идет даже не на центы, а на их сотые. Например, самые популярные проекты за просмотр одного сайта платят 0,02 цента.

Таким образом, за день упорной и нудной работы можно собрать всего несколько рублей. Замечу, что при попытках освоить данный вид заработка в интернете я выдумывал самые разные схемы, которые должны были оптимизировать работу с рекламными проектами, открывал одновременно несколько окон, пробовал другие варианты, но заработать за сутки больше, чем 17,12 копеек мне так и не удалось.

Так что на собственном опыте могу с уверенностью утверждать, что на переходе по ссылкам можно реально заработать 200-300 рублей в месяц, не более того. Это при том условии, что вы будете вкалывать почти круглые сутки и все проекты, в которых вы зарегистрируетесь, окажутся честными и выплатят вам все заработанные суммы. Устраивает вас такая перспектива? Тогда для вас список самых проверенных и надежных ресурсов для заработка в интернете с помощью перехода на сайт рекламодателя.

Название Миним. Ссылок Клик Валюта Примечание
SeoSprint.net 2.00 + 150 от 0.02 WMR AP LP Авторефбек 50%
Vip-Prom.net 0.05 + 100 0.0009 WMZ AP LP Авторефбек 50%
WmRub.com 2.00 + 25 0.02 WMR Авторефбек 50%
ProfitCentr.com 0.02 + 130 0.02 WMR
Perfect-Bux.com 0.25 + 20 0.003 PM Ya
ClickSponsor.ru 0.50 + 20 0.02 WMR Ежедневный бонус 0.20

Переход по ссылкам – варианты обмана

Сразу скажу, что среди проектов подобного рода встречаются, конечно же, честные. Но, во-первых, процент их, особенно, сегодня, очень невелик. Во-вторых, заработать на них достойную сумму все равно не удастся. Заметьте, говоря о приличной сумме, я не имею в виду, что полученных денег хватит хотя бы на оплату интернета, которого при такой деятельности «съедается» очень много.

Алгоритм DES

Основные достоинства алгоритма DES:

· используется только один ключ длиной 56 битов;

· зашифровав сообщение с помощью одного пакета, для расшифровки вы можете использовать любой другой;

· относительная простота алгоритма обеспечивает высокую скорость обработки информации;

· достаточно высокая стойкость алгоритма.

DES осуществляет шифрование 64-битовых блоков данных с помощью 56-битового ключа. Расшифрование в DES является операцией обратной шифрованию и выполняется путем повторения операций шифрования в обратной последовательности (несмотря на кажущуюся очевидность, так делается далеко не всегда. Позже мы рассмотрим шифры, в которых шифрование и расшифрование осуществляются по разным алгоритмам).

Процесс шифрования заключается в начальной перестановке битов 64-битового блока, шестнадцати циклах шифрования и, наконец, обратной перестановки битов (рис.1).

Необходимо сразу же отметить, что ВСЕ таблицы, приведенные в данной статье, являются СТАНДАРТНЫМИ, а следовательно должны включаться в вашу реализацию алгоритма в неизменном виде. Все перестановки и коды в таблицах подобраны разработчиками таким образом, чтобы максимально затруднить процесс расшифровки путем подбора ключа. Структура алгоритма DES приведена на рис.2.

Рис.2. Структура алгоритма шифрования DES

Пусть из файла считан очередной 8-байтовый блок T, который преобразуется с помощью матрицы начальной перестановки IP (табл.1) следующим образом: бит 58 блока T становится битом 1, бит 50 - битом 2 и т.д., что даст в результате: T(0) = IP(T).

Полученная последовательность битов T(0) разделяется на две последовательности по 32 бита каждая: L(0) - левые или старшие биты, R(0) - правые или младшие биты.

Таблица 1: Матрица начальной перестановки IP

58 50 42 34 26 18 10 02

60 52 44 36 28 20 12 04

62 54 46 38 30 22 14 06

64 56 48 40 32 24 16 08

57 49 41 33 25 17 09 01

59 51 43 35 27 19 11 03

61 53 45 37 29 21 13 05

63 55 47 39 31 23 15 07

Затем выполняется шифрование, состоящее из 16 итераций. Результат i-й итерации описывается следующими формулами:

R(i) = L(i-1) xor f(R(i-1), K(i)) ,

где xor - операция ИСКЛЮЧАЮЩЕЕ ИЛИ.

Функция f называется функцией шифрования. Ее аргументы - это 32-битовая последовательность R(i-1), полученная на (i-1)-ой итерации, и 48-битовый ключ K(i), который является результатом преобразования 64-битового ключа K. Подробно функция шифрования и алгоритм получения ключей К(i) описаны ниже.

На 16-й итерации получают последовательности R(16) и L(16) (без перестановки), которые конкатенируют в 64-битовую последовательность R(16)L(16).

Затем позиции битов этой последовательности переставляют в соответствии с матрицей IP -1 (табл.2).

Таблица 2: Матрица обратной перестановки IP -1

40 08 48 16 56 24 64 32

39 07 47 15 55 23 63 31

38 06 46 14 54 22 62 30

37 05 45 13 53 21 61 29

36 04 44 12 52 20 60 28

35 03 43 11 51 19 59 27

34 02 42 10 50 18 58 26

33 01 41 09 49 17 57 25

Матрицы IP -1 и IP соотносятся следующим образом: значение 1-го элемента матрицы IP -1 равно 40, а значение 40-го элемента матрицы IP равно 1, значение 2-го элемента матрицы IP -1 равно 8, а значение 8-го элемента матрицы IP равно 2 и т.д.

Процесс расшифрования данных является инверсным по отношению к процессу шифрования. Все действия должны быть выполнены в обратном порядке. Это означает, что расшифровываемые данные сначала переставляются в соответствии с матрицей IP-1, а затем над последовательностью бит R(16)L(16) выполняются те же действия, что и в процессе шифрования, но в обратном порядке.

Итеративный процесс расшифрования может быть описан следующими формулами:

R(i-1) = L(i), i = 1, 2, ..., 16;

L(i-1) = R(i) xor f(L(i), K(i)), i = 1, 2, ..., 16 .

На 16-й итерации получают последовательности L(0) и R(0), которые конкатенируют в 64-битовую последовательность L(0)R(0).

Затем позиции битов этой последовательности переставляют в соответствии с матрицей IP. Результат такой перестановки - исходная 64-битовая последовательность.

Теперь рассмотрим функцию шифрования f(R(i-1),K(i)). Схематически она показана на рис. 3.


Рис.3. Вычисление функции f(R(i-1), K(i))

Для вычисления значения функции f используются следующие функции-матрицы:

Е - расширение 32-битовой последовательности до 48-битовой,

S1, S2, ... , S8 - преобразование 6-битового блока в 4-битовый,

Р - перестановка бит в 32-битовой последовательности.

Функция расширения Е определяется табл.3. В соответствии с этой таблицей первые 3 бита Е(R(i-1)) - это биты 32, 1 и 2, а последние - 31, 32 и 1.

Таблица 3:Функция расширения E

32 01 02 03 04 05

04 05 06 07 08 09

08 09 10 11 12 13

12 13 14 15 16 17

16 17 18 19 20 21

20 21 22 23 24 25

24 25 26 27 28 29

28 29 30 31 32 01

Результат функции Е(R(i-1)) есть 48-битовая последовательность, которая складывается по модулю 2 (операция xor) с 48-битовым ключом К(i). Получается 48-битовая последовательность, которая разбивается на восемь 6-битовых блоков B(1)B(2)B(3)B(4)B(5)B(6)B(7)B(8). То есть:

E(R(i-1)) xor K(i) = B(1)B(2)...B(8) .

Функции S1, S2, ... , S8 определяются табл.4.

Таблица 4

К табл.4. требуются дополнительные пояснения. Пусть на вход функции-матрицы Sj поступает 6-битовый блок B(j) = b1b2b3b4b5b6, тогда двухбитовое число b1b6 указывает номер строки матрицы, а b2b3b4b5 - номер столбца. Результатом Sj(B(j)) будет 4-битовый элемент, расположенный на пересечении указанных строки и столбца.

Например, В(1)=011011. Тогда S1(В(1)) расположен на пересечении строки 1 и столбца 13. В столбце 13 строки 1 задано значение 5. Значит, S1(011011)=0101.

Применив операцию выбора к каждому из 6-битовых блоков B(1), B(2), ..., B(8), получаем 32-битовую последовательность S1(B(1))S2(B(2))S3(B(3))...S8(B(8)).

Наконец, для получения результата функции шифрования надо переставить биты этой последовательности. Для этого применяется функция перестановки P (табл.5). Во входной последовательности биты перестанавливаются так, чтобы бит 16 стал битом 1, а бит 7 - битом 2 и т.д.

Таблица 5:Функция перестановки P

Такимобразом,

f(R(i-1), K(i)) = P(S1(B(1)),...S8(B(8)))

Чтобы завершить описание алгоритма шифрования данных, осталось привести алгоритм получения 48-битовых ключей К(i), i=1...16. На каждой итерации используется новое значение ключа K(i), которое вычисляется из начального ключа K. K представляет собой 64-битовый блок с восемью битами контроля по четности, расположенными в позициях 8,16,24,32,40,48,56,64.

Для удаления контрольных битов и перестановки остальных используется функция G первоначальной подготовки ключа (табл.6).

Таблица 6

Матрица G первоначальной подготовки ключа

57 49 41 33 25 17 09

01 58 50 42 34 26 18

10 02 59 51 43 35 27

19 11 03 60 52 44 36

63 55 47 39 31 23 15

07 62 54 46 38 30 22

14 06 61 53 45 37 29

21 13 05 28 20 12 04

Результат преобразования G(K) разбивается на два 28-битовых блока C(0) и D(0), причем C(0) будет состоять из битов 57, 49, ..., 44, 36 ключа K, а D(0) будет состоять из битов 63, 55, ..., 12, 4 ключа K. После определения C(0) и D(0) рекурсивно определяются C(i) и D(i), i=1...16. Для этого применяют циклический сдвиг влево на один или два бита в зависимости от номера итерации, как показано в табл.7.

Таблица 7

Таблица сдвигов для вычисления ключа

Номер итерации Сдвиг (бит)
01 1
02 1
03 2
04 2
05 2
06 2
07 2
08 2
09 1
10 2
11 2
12 2
13 2
14 2
15 2
16 1

Полученное значение вновь "перемешивается" в соответствии с матрицей H (табл.8).

Таблица 8:Матрица H завершающей обработки ключа

14 17 11 24 01 05

03 28 15 06 21 10

23 19 12 04 26 08

16 07 27 20 13 02

41 52 31 37 47 55

30 40 51 45 33 48

44 49 39 56 34 53

46 42 50 36 29 32

Ключ K(i) будет состоять из битов 14, 17, ..., 29, 32 последовательности C(i)D(i). Таким образом:

K(i) = H(C(i)D(i))

Блок-схема алгоритма вычисления ключа приведена на рис.4.

Рис.4. Блок-схема алгоритма вычисления ключа K(i)

Восстановление исходного текста осуществляется по этому алгоритму, но вначале вы используете ключ

K(15), затем - K(14) и так далее. Теперь вам должно быть понятно, почему автор настойчиво рекомендует использовать приведенные матрицы. Если вы начнете самовольничать, вы, должно быть, получите очень секретный шифр, но вы сами не сможете его потом раскрыть!

Режимы работы алгоритма DES

Для наиболее полного удовлетворения всем требованиям, предъявляемым к коммерческим системам шифрования, реализованы несколько режимов работы алгоритма DES. Наиболее широкое распространение получили режимы:

· электронный шифроблокнот (Electronic Codebook) - ECB;

· цепочкацифровыхблоков (Cipher Block Chaining) - CBC;

· цифровая обратная связь (Cipher Feedback) - CFB;

· внешняя обратная связь (Output Feedback) - OFB.

В этом режиме исходный файл M разбивается на 64-битовые блоки (по 8 байтов): M = M(1)M(2)...M(n). Каждый из этих блоков кодируется независимо с использованием одного и того же ключа шифрования (рис.5). Основное достоинство этого алгоритма - простота реализации. Недостаток - относительно слабая устойчивость против квалифицированных криптоаналитиков.




Top