Программная реализация энигмоподобной системы в среде 1С::Журнал СА 4.2017
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

 Читать далее...

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

 Читать далее...

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

 Читать далее...

Книжная полка  

Как стать креативным и востребованным

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

 Читать далее...

Книжная полка  

От создания сайтов до разработки и реализации API

В издательстве «БХВ» недавно вышли книги, которые будут интересны системным администраторам, создателям

 Читать далее...

Разбор полетов  

Ошибок опыт трудный

Как часто мы легко повторяем, что не надо бояться совершать ошибки, мол,

 Читать далее...

Принципы проектирования  

Dependency Inversion Principle. Принцип инверсии зависимостей в разработке

Мы подошли к последнему принципу проектирования приложений из серии SOLID – Dependency

 Читать далее...

Рынок труда  

Вакансия: Администратор 1С

Администратор 1С – это специалист, который необходим любой организации, где установлены программы

 Читать далее...

Книжная полка  

Книги для профессионалов, студентов и пользователей

Книги издательства «БХВ» вышли книги для тех, кто хочет овладеть самыми востребованными

 Читать далее...

Принципы проектирования  

Interface Segregation Principle. Принцип разделения интерфейсов в проектировании приложений

Эта статья из серии «SOLID» посвящена четвертому принципу проектирования приложений – Interface

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 10800
Комментарии: 0
Потоковая обработка данных

 Читать далее...

19.03.2018г.
Просмотров: 9045
Комментарии: 0
Релевантный поиск с использованием Elasticsearch и Solr

 Читать далее...

19.03.2018г.
Просмотров: 9095
Комментарии: 0
Конкурентное программирование на SCALA

 Читать далее...

19.03.2018г.
Просмотров: 5738
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 6435
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 3738
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 2733
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3531
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3522
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6018
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

Друзья сайта  

 Программная реализация энигмоподобной системы в среде 1С

Архив номеров / 2017 / Выпуск №4 (173) / Программная реализация энигмоподобной системы в среде 1С

Рубрика: Разработка /  Изучаем «1С»

Кирилл Ткаченко КИРИЛЛ ТКАЧЕНКО, инженер 1-й кат., ФГАОУ ВО «Севастопольский государственный университет», tkachenkokirillstanislavovich@gmail.com

Программная реализация
энигмоподобной системы в среде 1С

Рассмотрим реализацию узлов инициализации, шифрования и дешифрования для энигмоподобной системы на встроенном языке 1С

Роторная шифровальная машина «Энигма» широко известна из технической литературы [1, 2], художественных произведений и кинематографа. Она и ее клоны оставили глубокий след в криптографии и криптоанализе, вызвав ихскачкообразное развитие. Кроме прочего, сведения технического, алгоритмического и конструктивного характера по ней доступны в открытой печати. Поэтому интересно рассмотреть пути ее реализации в современных условиях.

В статье рассмотрим программную реализацию на встроенном языке 1С отдельных узлов несовместимой с оригинальной энигмоподобной роторной шифровальной машины.

В полной мере воспроизвести шифровальную машину не представляется возможным. Более того, многие ее аппаратные, аппаратно-программные и полностью программные реализации [1, 2] будут отличаться друг от друга и от эталона: почислу колес, алфавиту и числу символов алфавита на колесе ротора; по способу кодирования символов алфавита; по начальному заполнению колес ротора и их начальному повороту; по способу поворота колес; наконец, для программных реализаций, по способу обратного преобразования (построение обратных таблиц для колес, прямой поиск в обратном направлении и прочее).

Прежде чем начинать работу, необходимо обратить внимание на имеющиеся русскоязычные публикации.

Достаточно известна монография [1] с объемными, подробными сведениями исторического характера. Но, к сожалению, программа на языке QBasic, приведенная в листинге этой книги, обладает существенным недостатком. Она работает не со всеми 256 однобайтовыми символами, а с их подмножеством, «срезом» кодировки – прописными русскими буквами. При этом происходит преобразование прописных русских букв в их порядковые номера в алфавите (А – 0, Б – 1 и такдалее) и наоборот способом, пригодным только для однобайтовой кодировки OEM-866. Внутренние преобразования с кодированными подобным способом буквами также в некоторой степени основаны на этом преобразующем соответствии. Этот способ хранения символов значительно сдерживает портирование этой конкретной реализации на многие другие окружения, хоть немного отличные от DOS/QBasic.

Развитые возможности встроенного языка программирования 1С позволяют обеспечить функционирование всех необходимых возможностей энигмоподобной шифровальной системы

Усовершенствованная реализация [2] достаточно сильно отличается от классических роторных машин. Например, шифрование и дешифрование выполняются не над конечным подмножеством символов алфавита, а над отдельными байтами входной информации. Добавлены существенные усложнения в узлы инициализации таблиц перестановок. Перенос в актуальные окружения затруднен использованием не только возможностей операционной системы, но и вызовов BIOS.

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

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

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

Чтобы придать происходящим процессам подобие исходных конструкций образца, в прямом виде символы алфавита фигурировать не будут. Будет использоваться их порядковый номер начиная с нуля, в алфавите, для прописных букв: 0 – А,1 – Б, 2 – В, …

Статью целиком читайте в журнале «Системный администратор», №4 за 2017 г. на страницах 72-74.

PDF-версию данного номера можно приобрести в нашем магазине.


  1. Жельников В. Криптография от папируса до компьютера / В. Жельников. – М.: ABF, 1996. – 335 с. – ISBN 5-87484-054-0.
  2. Текин В.В. Усовершенствованная версия «Энигмы» / В.В. Текин // «Мир ПК», № 6, 2007 г. – С. 64-65.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru