Алгоритм шифрования AES

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

Если кому интересно. Отличное объяснение того, как оно работает находится тут (в виде комиксов).

Ну, что могу сказать. Результаты следующие
а) Я могу написать сейчас AES по памяти. Алгоритм оказался удивительно простой.
б) Хотя я понял всю математику которой он пользуется, понимания почему он был так задизайнен увеличилось очень слабо.
в) По ходу, у меня пришла идея как потенциально его можно было бы взломать. Повозился с этим (ясен пень ничего от этого не ожидал и ничего не вышло), но оказывается, что то что я придумал — это вполне стандартная идея описанная в линейном криптоанализе. (Увы, ничего нового не придумано, но все равно приятно самому было дойти до этой идеи).
г) Пришлось вспомнить алгоритм Эвклида (для вычисления наибольшего общего кратного). Так сказать не прошло и 20 лет (где-то с 3-4 класса), как мне понадобились знания, которые почему-то в школе никто не объяснил куда нужно применять.

В общем, приятно покопался и размял мозг математикой.

7 комментариев to “Алгоритм шифрования AES”

  1. Pecha:

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

    • Victor Ronin:

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

      • Что меня бесит в Британии, это их политкоректность и мягкость.

        Тут ВСЁ сделано «через игру». Даже для курсы взрослых дядек. В результате — всё красиво, но бесполезно (имхо).

        Так же тут нельзя детей ругать, и ставить плохие оценки. Да что там детей — даже взрослые подчинёные тут «все хорошие, все замечательные, нужно только найти подход, ругать низя».

        В результате — всё сделано через игру, всё весело и замечательно, никто никого не ругает. Только в результате дети — тупые а у взрослых работа детаеться спустя рукава.

        Математика должна быть математикой, а не цирком с клоунами.

        • Victor Ronin:

          С чем согласен:

          — Безусловно подача информации для взрослых должна отличаться от детей. Взрослым можно не подслащивать вливание информации. Они знают четко зачем это им нужно. Так что для взрослых элементов игры должно быть меньша (а может и не быть вообще)

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

          С чем я НЕ (именно с большой буквы) согласен:

          — Именно из-за того, что «литература должна быть Литературой», «музыка — Музыкой», «биология — Биологией» и т.п., меня тошнило 70% времени прибывания в школе. Итого, я не вынес оттуда фактически никаких знаний (по вышеперечислинным и некоторым другим предметам) и стойкое ощущение тошноты и ненависти к учителям.

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

          А можно, конечно с высока кинуть детям — вырастите поймете, какое мы благо вам делаем и вперед — по скучному учебнику.

        • Pecha:

          Странно, но видимо их образование приносит кое-какие плоды:

          http://www.google.com/publicdata?ds=wb-wdi&met=ny_gdp_mktp_cd&idim=country:USA&dl=en&hl=en&q=gdp#met=ny_gdp_mktp_cd&idim=country:GBR:UKR:DEU (Виктор как-то приводил ссылку на этот сайт в одном из своих блогов) — и обратите внимание на Германию, которая проиграла в войне. просто искренне уважаю эти страны. не был там, не знаю как они там учатся, но факты на лицо.

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

  2. centur:

    а) Я могу написать сейчас AES по памяти. Алгоритм оказался удивительно простой.

    А как же подписанное в комиксе Foot-Shooting Prevention Agreement 😉 ?

    • Victor Ronin:

      Я рад, что кто-то таки заглянул в коммикс 🙂

      В Foot-Shooting Agreement написано о том, что нельзя писать только production код 😛