Область техники. Изобретение относится к области радиотехники, средствам вычислительной техники, устройствам хранения и помехоустойчивой скрытной передачи подвергнутых шифрованию данных при наличии шумов с использованием конечного множества шумоподобных сигналов (ШПС).
Уровень техники. Известно устройство хранения данных [1], содержащее блок управления, блок памяти, блок коммутации и блок защиты ключевых цепей и обеспечивающее надежность и безопасность хранения данных при наличии опасного внешнего воздействия (статического электричества). Недостатком аналога является отсутствие системы шифрования и возможности скрытной передачи сохраненных данных пользователю по линии связи (ЛС) оптимальным образом при наличии (на фоне) шумов.
Известна когерентная система передачи информации [2]. В качестве ШПС используется конечное множество хаотических сигналов. Система содержит передающую и приемную части. В передающей части формируются хаотические сигналы, которые перемножаются на информационные последовательности так, что каждый бит однократно передается своим отрезком хаотического сигнала, при этом требуется вхождение в синхронизм передающей и приемной части. На приемной стороне формируются копии хаотических сигналов для выделения информационной последовательности. Недостатком аналога является необходимость обеспечения синхронизма хаотических сигналов в приемной и передающих частях, что требует использования сигналов достаточного уровня, а это приводит к отсутствию энергетической скрытности работы системы (имеется скрытность структуры сигналов). Обеспечение синхронизма требует затрат времени, что снижает быстродействие системы (чем шире спектр ШПС, тем большее время затрачивается). Так же отсутствует система шифрования, запоминающее устройство (ЗУ) для хранения данных. Здесь когерентность системы означает наличие синхронности сигналов в передающей и приемной частях и не обеспечивает оптимальность передачи и обработки сигналов (обнаружение и различение) при наличии шумов.
В качестве аналога рассмотрено устройство шифрования [3, с. 51, рис. 2.5], в котором входные последовательности символов преобразуются в выходные последовательности в соответствии с ключом преобразования. Недостатком устройства является отсутствие ЗУ и возможности передачи данных.
Аналогом выбрано устройство [4], содержащее ЗУ (указано энергонезависимое ЗУ), линию связи (указана проводная или беспроводная секция приема/передачи данных), генератор случайных чисел, являющихся ключами шифрования/восстановления переданных данных, выполненный в виде одной/нескольких интегральных схем либо "смарт-карты", главный блок управления, представляющий собой программируемую интегральную схему, основанную на программном обеспечении, загружаемом специальным образом. Недостатком является отсутствие возможности скрытной передачи зашифрованных данных из ЗУ пользователю по ЛС оптимальным образом при наличии (на фоне) шумов.
Прототипом выбрано устройство [5], содержащее ЗУ, линию связи, генератор ключей шифрования, шифрователь, дешифрователь, устройство управления, генератор кодов ансамбля, приемное устройство, формирователь данных, генератор ключей дешифрования. Входные данные шифруются по ключам шифрования и записываются в ЗУ. По сигналам управления данные считываются и передаются по линии связи на вход приемного устройства. Далее формируются (восстанавливаются) зашифрованные данные, которые дешифруются по ключам дешифрования. Недостатком является отсутствие возможности оперативного, поинтервального варьирования ключей шифрования/дешифрования с целью повышения защищенности операции передачи данных пользователю.
Краткое изложение сущности и состава предлагаемого устройства. На вход заявляемого устройства хранения и передачи данных с системой синхронизируемого шифрования (УХПДСШ) подаются входные данные Хвх, состоящие их множества байтов, каждый из которых является совокупностью бит (комбинации логических единиц " 1" и нулей "0"). Задача устройства состоит в сохранении входных данных в защищенном от несанкционированной корректировки виде и восстановлении данных в необходимом для пользователя месте в требуемый момент времени, так чтобы в результате Хвых=Хвх. Каждому байту соответствует числовое значение и некоторый символ выбранной системы кодирования данных. Перед запоминанием чисел, соответствующих входным байтам, осуществляется изменение их числовых значений (шифрование) на новые величины в соответствии с выбранным пользователем правилом (ключом шифрования). В работе [3] упоминаются методы перенумерования символов. Шифрование путем перенумерования осуществляется благодаря управляющим сигналам, являющимся результатом сравнения байтов выбранной (эталонной) системы кодирования с ключами шифрования. Байты с новыми, перенумерованными значениями сохраняются в ЗУ. Задача передачи данных по ЛС для их воспроизведения в первоначальном виде в нужном для пользователя месте реализуется с использованием ансамбля кодированных сигналов, относящихся к классу ШПС, с использование оптимальных устройств обработки. При передаче данных из ЗУ каждый зашифрованный байт передается одним из g3 сигналов ансамбля, которых не меньше, чем символов g1≤g3 в выбранной системе кодирования (ее также можно изменять). Задача восстановления данных проводится путем обратной замены числовых значений байтов, сохраненных в ЗУ, на первоначальные номера (дешифрование) по правилу преобразования номеров байтов (ключу дешифрования), задаваемому пользователем.
Двухоперационное дешифрование совмещено, так что шифрование и дешифрование осуществляются двумя шифрователями и одним дешифрователем.
Ключи шифрования и дешифрования синхронно изменяются (варьируются) по величине на разных интервалах времени, задаваемых пользователем посредством программатора. Шифрование, хранение, передача и восстановление данных реализуется в пределах одного временного интервала, в котором указанные ключи неизменны. Другие циклы шифрования, хранения, передачи и восстановления могут реализовываться в пределах иного временного интервала, с измененными ключами. Интервалы постоянства ключей (слоты) выбираются достаточно короткими, возможный доступ к данным на одном из слотов не означает наличие доступа на других слотах, длительности которых непостоянны и фактически также кодируются.
Отличие от прототипа [5] заключается в конкретизации начала и окончания интервалов хранения и передачи данных, в многократном проведении требуемых операций при задании пользователем разных ключей в пределах этих временных интервалов (слотов).
Таким образом входные данные могут быть сохранены, защищены, скрытно переданы по ЛС при наличии (на фоне) шумов посредством ШПС и обработаны оптимальным образом, после чего восстановлены в первоначальном виде. Используются R-коды [6, 7] и сигналы на их основе, например, фазоманипулированные сигналы (ФМС).
Скрытность передачи сигналов означает [8, с. 8, 9], что требуется использовать специальные методы и устройства для обнаружения факта передачи сигналов при наличии шумов, а также нужно измерять основные параметры сигналов. Чем больше база сигнала, тем выше энергетическая и параметрическая скрытность. Оптимальность обработки сигналов при наличии шумов остается справедливой и в условиях наличия широкого круга помех (узкополосных, импульсных, структурных) [8, с. 7].
Некоторые сведения о R-кодах и ансамблях. В системах управления, связи и радиолокации широко используются ШПС [8], которые обладают известными достоинствами. Разновидностью ШПС являются ФМС. Они состоят из последовательности N радиоимпульсов с одинаковой частотой и амплитудой (считаем ее равной единице). Очередность следования радиоимпульсов с различными начальными фазами характеризуется бинарной кодовой последовательностью или просто кодом G. При этом ФМС на основе этих кодов [6], у которых автокорреляционная функция (АКФ) в области боковых пиков меняется в пределах ±R (0≤R≤N -1, R - целое), называют сигналами R-го рода (ФМС-R). Вместе с тем, множество из g кодов G=GxR,N, (х=1,…, g), соответствующее таким сигналам, названо R-кодами (это бинарные коды, у которых АКФ в области боковых пиков изменяется в пределах ±R, то есть R - наибольшее допустимое значение боковых пиков модуля АКФ).
Для немногочисленных кодов Баркера R=1. Наибольшее значение, пик модуля АКФ таких N-элементных кодов обозначен um=N, относительный уровень боковых пиков (УБП) АКФ равен B1=R/N. База ФМС равна B=N. Признаком шумоподобности сигнала является верность условия, что база велика (В>>1) [8]. Пары кодов характеризуются наибольшим значением модуля взаимной корреляционной функции (ВКФ) W.
ФМС-R на основе бинарных R - кодов являются импульсными сигналами. Для оптимального обнаружения и различения между собой этих кодов и сигналов при наличии шумов используются известные способы и схемы (согласованные фильтры и корреляторы) [8].
Некоторые совокупности ШПС обладают определенными свойствами, которые позволяют рассматривать их совместно, как ансамбли для построения алфавитов. В работах [9-11] рассмотрены вопросы нахождения R-кодов.
Символом Т обозначена длительность каждого из N радиоимпульсов ФМС-R. Начальные фазы могут быть равны 0 или π (180°), а коды принято представлять последовательностью коэффициентов соответственно (+1,-1), например, (1,-1,-1,-1,-1,1) для N=6; R=2. В общем случае начальные фазы радиоимпульсов могут быть равны ϕ0+0, когда коэффициент кода равен (+1), или ϕ0+ π, в случае, когда коэффициент кода равен (-1), где ϕ0 - фиксированная составляющая указанной начальной фазы (главное, что разность фаз равна 0 или π).
Далее сигналами на основе бинарных кодов считаются ШПС, состоящие из радиоимпульсов, начальных фазы которых равны (ϕ0+0) либо (ϕ0+π), причем на изменения амплитуд и частот радиоимпульсов ограничения не накладываются, введены требования к УБП АКФ и ВКФ.
Представлено множество бинарных импульсных кодов, у которых УБП АКФ и ВКФ удовлетворяют определенным требованиям, в виде
где GxR,N - бинарный код;
Pxj, j=1, …, N - коэффициенты х-го кода ансамбля;
х - индекс нумерации кодов, х=1,…, g;
g - количество кодов в множестве или сигналов на их основе;
R - наибольшее допустимое значение боковых пиков модуля АКФ, 0≤R≤N -1, R - целое;
N - количество коэффициентов в кодах или в сигналах на их основе.
Ансамблем названо множество кодов с введенными ограничениями на УБП АКФ и ВКФ. Например, для кодов с Pxj=±1, R=3, N=30, W≤29, g=256: G13,30=(1,1,-1,-1,-1,1…1), G23,30=(1,-1,-1,-1,-1,1…1),…, G2563,30=(1,-1,-1,-1,1,1…1).
Ограничения на УБП АКФ и ВКФ сформулированы аналитически [6,7]. В моменты tk=k⋅T, где k=1,…, N -1, отсчитываемые от начала АКФ (k=0), величины модуля АКФ принимают экстремальные или нулевые значения и при k=N равны N.
Значения модуля ВКФ пар кодов ансамбля с индексами "х" и "у" рассмотрены в моменты tk=k⋅T, отсчитываемые от начала ВКФ. Коды ансамбля с ограничениями на УБП АКФ и ВКФ согласно [6, 7, 9-11] представимы в виде неравенств относительно коэффициентов кодов:
где Pij, PiN+j-k, j=1, …, N - коэффициенты z-ro кода ансамбля;
N - количество коэффициентов в кодах ансамбля или в сигналах на их основе;
k - индекс нумерации отсчетов моментов времени автокорреляционной функции;
R - допустимый УБП АКФ, задаваемый пользователем, 0≤R≤N -1, R - целое;
g - количество кодов в ансамбле или сигналов на их основе;
где Pxj, PyN+j-k, j=1, …, N - коэффициенты х-го и у-го кодов ансамбля;
х, у (х≠у) - индексы различных кодов в ансамбле, принимающие значения от 1 до g;
g - количество кодов в ансамбле или сигналов на их основе;
N - количество коэффициентов в кодах ансамбля или в сигналах на их основе;
k - индекс нумерации отсчетов моментов времени взаимной корреляционной функции;
W - допустимый уровень боковых пиков взаимной корреляционной функции задаваемый пользователем, N>W≥1,
g=g1 - количество символов в системе кодирования данных.
Условие (3) устанавливает отношение каждого из g кодов в ансамбле и сигналов на их основе со всеми другими (g-1) кодами и сигналами. Коды ансамбля вырабатываются генератором кодов ансамбля. Параметры N, R, W и g взаимозависимы.
При передаче данных в информатике и компьютерной технике каждый байт соответствует определенному символу системы кодирования. Если каждому символу и соответственно байту поставить в соответствие код из ансамбля, то получится алфавит. При использовании известной системы кодирования ASCII (American Standard Code for Information Interchange-стандартный код информационного обмена), состоящей из g1=256 символов, требуется ансамбль кодов такой же численности g=g1 [9, 10]. Символам соответствуют числовые значения, изменяющиеся от 0 до 255, которые, как известно, представляются набором из восьми бит, составляющих байт.
В общем случае для системы кодирования из g1 символов требуется использовать g2=log2 g1 элементов (бит), поэтому наборы из g2 бит (не обязательно равные восьми) названы блоками. Для системы кодирования из двух символов (g1=2) блок состоит из единственного бита (g2=1), принимающего два значения, нужен ансамбль из двух кодов.
Система кодирования может определять соответствие уровней аналогового сигнала в определенные моменты времени и их кодовые значения в виде блоков (байтов). Далее для определенности в описании упоминается система ASCII.
Некоторые термины, использованные для упрощения описания.
Алфавит - взаимно-однозначное соответствие между элементами системы кодирования и кодами или сигналами, составляющими ансамбль.
Ансамбль - множество бинарных кодов или импульсных сигналов на их основе, для которых введены ограничения на УБП АКФ (R) и ВКФ (W).
Сигналы на основе бинарных кодов - это импульсные сигналы, состоящие из радиоимпульсов, начальные фазы которых равны (ϕ0+0) либо (ϕ0+π), где ϕ0 - фиксированная составляющая указанной начальной фазы, причем на изменения амплитуды и частоты радиоимпульсов требования не накладываются, для этих сигналов введены ограничения (2), (3) на УБП АКФ и ВКФ. Если амплитуды и частоты постоянны, то имеются ансамбли ФМС-R.
Блок - совокупность g2=log2 g1 бит, где g1 - количество символов в системе кодирования, в которой каждому символу взаимно-однозначно соответствует определенный набор бит.
В системах передачи дискретных сообщений элементами блоков сообщений являются логические "1" и "0", а в вычислительных системах данные представляются в виде байтов, для чего применяют импульсы разной полярности "±1". Далее описание изложено главным образом на примере байтов.
L - данные - блоки (байты) входных данных, перенумерованные в шифрователе в соответствии с ключами шифрования, обозначенными символом L.
Запись данных - занесение в ячейки ЗУ бит зашифрованных блоков (L - данных).
Восстановление данных - преобразование переданных по ЛС кодов ансамбля в L - данные и их последующее дешифрование.
Линганум - установленная пользователем функция (правило, формула, таблица), определяющая взаимно-однозначное соответствие между множествами чисел (0; 1; …; g1-1) и множеством символов выбранной системы кодирования. ASCII - частный случай линганума.
Перенумерование блоков (байтов) - изменение порядка следования элементов (бит), например, логических единиц и нулей, либо положительных и отрицательных логических единиц, входящих в блок (байт) так, чтобы числовое значение, определяемое элементами блока (байта), стало равным назначенному числу (ключу).
Числовые значения блоков определяются последовательностью элементов, которые рассматриваются в качестве цифр двоичной системы исчисления, причем, если элементами выбраны положительные и отрицательные логические единицы, то при подсчете числовых значений блока отрицательные логические единицы заменяются на нули.
Формуляр - это такой набор кодов, для которого задано взаимно-однозначное соответствие целых чисел по порядку от 1 до g и кодов ансамбля (1), например, (G13,30; …; G2563,30) при g=256.
Функциональная группа - множество однотипных по назначению элементов, например, группа линий (линий групповой связи), проводников входов/выходов, устройств, выполняющих одинаковые операции (функции).
Слот - временной интервал, в пределах которого ключи шифрования, дешифрования и другие ключи неизменны.
Сортировка - операция преобразования одной конечной последовательности числовых значений в другую так, что индексы порядковых номеров элементов исходной последовательности уменьшаются на единицу и меняются местами с значениями элементов этой последовательности, порядковые номера новой числовой последовательности увеличиваются на единицу и элементы полученной последовательности со своими измененными порядковыми номерами расставляются в порядке возрастания этих номеров.
Сортировка используется для определения линганума восстановления данных и ключей дешифрования, исходя из вида линганума записи и ключей шифрования, что позволяет при дешифровании использовать те же операции и схемы, что и при шифровании.
Порядок сортировки определяется тем, что величины первоначальной последовательности надо поменять на новые, а также учесть, что эти величины и их индексы различаются на единицу (например, в ASCII индексы варьируются как 1, 2, 3, …, а числовые значения символов изменяются по возрастанию 0, 1, 2, …). Для этого величины индексов первоначальной последовательности перед указанной заменой уменьшаются на единицу, а индексы новой последовательности должны быть увеличены на единицу.
Пример проведения сортировки: задана первоначальная последовательность записанная с учетом порядкового номера и значения элементов, с использованием знака соответствия "→". То есть (порядковый номер (первоначальное значение → новое значение)): 1(0→5); 2(1→0); 3(2→3); 4(3→2); 5(4→1); 6(5→4). Возможна иная запись:
=(51; 02; 33; 24; 15; 46). Сортировка для определения искомой последовательности
уменьшение индекса порядкового номера на единицу - (50; 01; 32; 23; 14; 45); замена местами индексов и значений - (05; 10; 23; 32; 41; 54); увеличение индексов новой последовательности на единицу - (06; 11; 24; 33; 42; 55); расстановка элементов в порядке возрастания индексов -
Можно переписать это через знак соответствия для проведения проверки: 1(0→1); 2(1→4); 3(2→3); 4(3→2); 5(4→5); 6(5→0). Видна однозначная взаимосвязь полученного результата с первоначальной последовательностью, представленной выше через знак соответствия, перенумерования ("→"). Первоначальная последовательность
определяет операцию установления взаимно-однозначного соответствия конечного множества числовых значений (элементов последовательности) и набора индексов, использованных для нумерации. Представленный пример иллюстрирует проведение однооперационной (однократной) сортировки.
Для второго примера считаем, что есть g3=10 чисел от 0 до g3-1 (то есть 0,…, 9), из которых выбирается лишь g1=6 различных значений и создается, к примеру, последовательность (индексы изменяются от 1 до g1=6). Через знак соответствия Т2 представимо в виде: 1(0→2); 2(1→4); 3(2→5); 4(3→1); 5(4→7); 6(5→9). Операции сортировки: (20; 41; 52; 13; 74; 95); (02; 14; 25; 31; 47; 59); (03; 15; 26; 32; 48; 510), то есть
Сверка элементов подтверждает верность результата операции сортировки. Видно, что значения индексов последовательности, полученной после сортировки, изменяется в более широких пределах, от 1 до g3=10, некоторые значения элементов вводить не требуется, их общее количество (g1=6) неизменно. Это можно записать так, что индексы g1 элементов
изменяются в интервале 1≤j≤g3.
Действия по установлению взаимно-однозначного соответствия, проведенные дважды подряд, задают двухоперационное преобразование числовых значений и индексов. Тогда для имеем: 1(0→5→9); 2(1→0→2); 3(2→3→1); 4(3→2→5); 5(4→1→4); 6(5→4→7). Эти замены можно рассматривать в виде: 1(0→9); 2(1→2); 3(2→1); 4(3→5); 5(4→4); 6(5→7). Двухоперационное соответствие (преобразование) можно по аналогии с
ввести общей последовательностью
Операции сортировки (09; 12; 21; 35; 44; 57); (010; 13; 22; 36; 45; 58). После сортировки
по указанным правилам можно получить
Видно, что полученная последовательность двухоперационного преобразования
соответствует преобразованиям, записанным выше через знак соответствия "→" (согласно
) и значения индексов последовательности, полученной после сортировки, изменяются в более широких пределах, от 1 до g3-10, некоторые значения элементов вводить не требуется, причем общее количество элементов во всех случаях (g1=6) неизменно. Индексы g1 элементов
изменяются в интервале 1≤j≤g3.
Словесное описание процедуры: k-й элемент равен значению такого элемента
у которого значение индекса равно увеличенной на единицу величине k-го элемента в
Расширенное словесное описание. Берется первый элемент в первой последовательности (в данном случае "5" (51)) и его значение увеличивается на единицу, получаем число 6. Во второй последовательности
находится элемент с порядковым номером, равным значению первого элемента в
, увеличенного на единицу. То есть находится элемент с индексом порядкового номера шесть, это есть (96). Его значение девять является первым элементом в последовательности
, то есть (91), определяющим двухоперационное соответствие. Далее в
берем второй элемент (это 02), который увеличивается на единицу, получаем "1". Элемент в
с индексом единица равен 21, поэтому в
второй элемент есть 22. И так далее до последнего шестого элемента:
Это позволяет получить все элементы последовательности двухоперационного преобразования
Другой вариант словесного описания процедуры: k-й элемент равен значению такого элемента
у которого значение уменьшенного на единицу индекса равно величине k-го элемента в
Представление операции шифрования путем перенумерования блоков. Представлен вариант описания для случая, когда блок соответствует байту. Также в общем случае g3≥g=g1 (в формуляре имеется больше кодов, чем символов в системе кодирования, можно варьировать их выбор). Шифрование сигналов (первая операция шифрования из двух реализуемых в устройстве) проводится путем замены числовых значений байтов (способом перенумерования) на варьируемых временных интервалах (слотах). На разных слотах могут применяться системы кодирования, различающиеся по виду и количеству символов, то есть g1d - количество символов в системе кодирования, g2d=log2 g1d - количество бит в блоке, d - индекс слота. Введены следующие величины:
последовательность варьируемых значений линганума записи данных в двоичном и десятичном представлении (выписаны первые два и последний байты) для любого из d=1, 2, …, D слот, каждое значение в скобках является одним из целых положительных чисел от 0 до (g1d-1), используемых при составлении этой последовательности лишь однажды (g1d-количество символов в системе кодирования данных на d-м слоте, пример для четырех слот: g11=32; g12=128; g13=256; g14=2);
G1=(g1d, d=1,2,…, D) - последовательность ключей шифрования систем кодирования для различных слот;
td=td-1+Λd-окончание d-го слота длительностью Λd≥0;
Ψ=(Λd, d=1,2,…, D) - последовательность ключей шифрования длительностей слот;
tD - сумма Λd длительностей всех D слот;
g2d - количество элементов в блоке на d-м слоте;
t0, tD - начальное и конечное значения первого и последнего слота.
Обозначено g1m наибольшее значение всех элементов g1d (в данном выше примере g1m=g13=256). Если на всех слотах используется одна система кодирования, то g1=g1d, d=1,2,…, D. Для двоичной системы представления Li,j,d принимают значения логических "1" или "0" и задает i-й бит j-го байта для d-го слота. Значения Ld в формуле (4) устанавливают ключи шифрования. На фиг. 1(а, б) представлены слоты различной длительности.
Введены обозначения входных и зашифрованных данных для каждого d-го слота:
входные данные в двоичной и десятичной системе (записаны первые два байта);
данные после шифрования на d-м слоте в двоичной и десятичной системах (записаны только первые два байта);
i, j, d - индексы нумерации бит, байтов (блоков), слот.
При табличной записи значений Xi,j,d и (фиг. 4, 6) индекс j не вводится (его роль выполняют номера строк), индекс слота в примерах таблиц для их упрощения не конкретизируется. Перенумерование байтов (5) в выражении (6) осуществляется в шифрователе и в дешифрователе (при восстановлении данных) путем реализации проверки выполнимости определенных условий и осуществлении операции присвоения:
операция шифрования путем замены числовых значений,
где j=1, 2,…, d=1, 2,…, D - индексы нумерации байтов (блоков) и слот;
Xвх j,d - значение j-го байта (блока) входных данных на d-м слоте;
- значение j-го байта (блока) после шифрования на d-м слоте;
L1,d; L2,d; …, Lg1d,d - последовательность значений ключей шифрования на d-м слоте;
g1d - количество символов в системе кодирования данных на d-м слоте.
Заметим, что если j>(g1-1), например, j=1000, то "Если" Хвх 1000=0 "TO" или "Если" Хвх 1000=1 "ТО"
или … "Если" Хвх 1000=(g1-1) "TO"
следовательно выражение (7) применимо (важно значение, а не индекс). Индекс слота для простоты не записан.
Для любого слота выходные данные после восстановления обозначены:
выходные данные в двоичной и десятичной системах (приведены первые два байта).
При двухоперационном шифровании кроме первой операции шифрования сигналов осуществляется вторая операция, связанная с изменением нумерации кодов ШПС, используемых для передачи данных. Такое шифрование заключается в том, что по некоторому известному пользователю правилу на любом d-м слоте выбирается лишь часть g1d=g≤g3 кодов (g3 - количество кодов или сигналов на их основе в формуляре, который одинаков для всех слот; d=1, 2,…, D). В результате этого этапа устанавливается взаимно-однозначное соответствие между частью выбранных из формуляра кодов (они далее передаются по линии связи) и ранее зашифрованными байтами. В результате задается порядок соответствия значений байтов и номеров кодов из формуляра. Правило выбора обуславливается ключами шифрования номеров кодов:
последовательность варьируемых значений линганума записи данных в двоичном и десятичном представлении (выписаны первые два и последний байты) для любого из d=1, 2, …, D слотов, каждое значение в скобках является одним из целых положительных чисел от 0 до (g3-1), используемым при составлении этой последовательности лишь однажды (g1d - количество символов в системе кодирования, например, g1d=256 на d-м слоте);
g2d - количество бит в блоке на d-м слоте;
g3 - количество кодов или сигналов на их основе в формуляре;
td=td-1+Λd - окончание d-го слота длительностью Λd≥0;
Ψ=(Λd, d=1,2,…, D) - последовательность ключей шифрования длительностей слот;
tD - сумма Λd длительностей всех D слот;
t0, tD - начальное и конечное значения первого и последнего слота. Для двоичной системы представления Mi,j,d принимают значения логических "1" или "0" и задают в (9) i-й бит j-го байта ключей шифрования кодов на d-м слоте. На фиг. 1(а-в) графически представлены слоты различной длительности для ключей шифрования сообщений и номеров кодов.
Часть чисел, определяющих номера кодов, остаются неиспользованными (из возможных g3 значений номеров кодов из формуляра применяется лишь g1 = g≤g3 величин по количеству символов в системе кодирования). Для двоичной системы счета Mi,j,d задает i-й бит j-го байта на d-м слоте. По аналогии с приведенным примером для индексы элементов в формулах (9) изменяются от 1 до g1; максимальное числовое значение может быть равным (g3-1). Значения последовательности M(t) произвольно задаются пользователем, они определяют величины ключей шифрования номеров кодов, для получения которых применен одноименный генератор.
Зашифрованным байтам данных (6) в соответствии с ключами шифрования M(t) формулы (9) сопоставлены коды ШПС (1), которые передаются на вход линии связи.
Реализовано шифрование сигналов ключами L(t) выражения (4) (первая операция шифрования на каждом слоте), а также шифрование номеров кодов из формуляра ключами M(t) соотношения (9) (вторая операция шифрования на любом слоте) (фиг. 1). Такое двухоперационное шифрование можно рассматривать как шифрование обобщенными ключами, обозначенными Г:
последовательность значений в двоичном и десятичном представлении (выписаны первые два и последний байты), каждое значение которых в скобках является одним из целых положительных чисел от 0 до (g3-1), эти числа используются при составлении последовательности ключей лишь однажды (g1d - количество кодов в системе кодирования на d-м слоте, g3 - количество кодов или сигналов на их основе в формуляре);
для двоичной системы величины Гi,j,d задают i-й бит j-го байта на d-м слоте;
t0, tD - начальное и конечное значения первого и последнего слота;
g2d - количество элементов в блоке на d-м слоте.
Элементы последовательности (10) задаются по определенному правилу значениями элементов последовательностей (4) и (9), используются далее в операции сортировки. Часть чисел 0… g3-1 остаются неиспользованными (из возможных g3 значений номеров кодов из формуляра применяется лишь g1d=g≤g3 величин по количеству символов в системе кодирования). Максимальное числовое значение Г может быть равным (g3-1), а наибольшее значение индекса равно g1d.
Результат двухоперационного шифрования данных на d-м слоте удобно представить в виде последовательности , как в выражениях (5), (6), (8):
данные после шифрования посредством элементов последовательности L(t) из формулы (4), записанные в двоичной и десятичной системах и в результате варьирования нумерации кодов ШПС посредством ключей шифрования M(t) из выражения (9); i, j, d - индексы нумерации бит, блоков (байтов), слот.
Значения последовательности байтов двухоперационного шифрования:
операция шифрования путем применения ключей шифрования кодов,
где j=1, 2,… - индекс нумерации байтов;
- значение j-го байта после двухоперационного шифрования;
- значение j-го байта после первого шифрования данных;
М1,d; М2,d; …, Mg,d - последовательность значений ключей шифрования кодов, которые могут принимать значения от 0 до (g3-1);
d-постоянное значение индекса для фиксированного слота, d=1, 2,…, D;
g=g1d - количество используемых кодов и символов в системе кодирования на d-м слоте.
Способ построения последовательностей ранее представлен на примерах последовательностей
соответственно. Элементы последовательности
в выражении (11) есть результирующие значения, полученные на выходе блока коммутаторов (следствия осуществления перекоммутации), они также использованы для описания операции дешифрования на восстанавливающей, приемной стороне.
Величины последовательности Г в формуле (10) взаимно-однозначно определяются набором значений последовательностей L(t) из выражения (4) и M(t) из формулы (9) (показано на примере двухоперационного соответствия последовательностей ).
Словесное описание применительно к этим обозначениям, в частности, можно изложить следующим образом: произвольный k-й элемент Г в формуле (10) в десятичном представлении на выбранном d-м слоте равен значению такого элемента M(t) в выражении (9) в десятичном представлении (он существует, так как значения всех элементов и индексов последовательностей изменяются в пределах 0,…, g1d), у которого значение уменьшенного на единицу индекса равно величине k-го элемента L(t) в формуле (4) в десятичном представлении. Иной вариант: для выбранного d-го слота взять произвольный k-й элемента в последовательности L(t) и найти в последовательности M(t) такой элемент, у которого уменьшенное значение индекса j (при неизменном индексе d) равно k-му элементу в L(t), тогда значение этого элемента из L(t) с уменьшенным индексом равно k-му элементу в последовательности T(t) в (10). Оба варианта относятся к любому d-му слоту. Десятичные значения можно заменить на двоичные нужными битами и байтами.
При восстановлении данных на d-м слоте используются ключи дешифрования Г':
последовательность значений в двоичном и десятичном представлении (выписаны первые два и последний байты), каждое значение которых в скобках является одним из целых положительных чисел от 0 до (g3-1), эти числа используются при составлении последовательности ключей лишь однажды (g1d - количество кодов в системе кодирования на d-м слоте, g3 - количество кодов или сигналов на их основе в формуляре); для двоичной системы величины Г'i,j,d задают i-й бит j-го блока ключей на d-м слоте;
g1d ≤ g3 - количество кодов или сигналов на их основе в используемом ансамбле;
g2d - количество элементов в блоке на d-м слоте;
t'0, t'D - начальное и конечное значения первого и последнего слота;
t'D - сумма Λd длительностей всех D слот;
t'd=t'd-1+Λd - окончание d-го слота длительностью Λd≥0;
Ψ'=(Λd, d=1,2,…, D) - последовательность ключей шифрования длительностей слот;
i, j - индексы бит и блоков ключей Г'i,j,d на d-м, причем
элементы ключей дешифрования Г'd=Г'j,d, 1≤j≤g3, d=1, 2,…, D получены так, что порядковые номера j элементов последовательности ключей шифрования Гj,d, j=1,2, … на d-м слоте уменьшаются на единицу и меняются местами с значениями элементов этой последовательности, порядковые номера новой числовой последовательности увеличиваются на единицу и элементы полученной последовательности со своими измененными порядковыми номерами расставляются в порядке возрастания этих номеров, вместе с тем элементы последовательности Гj,d, j=1,2,… на d-м слоте получены так, что произвольный k-й элемент, k=1, 2,… последовательности Гd в десятичном представлении равен значению такого элемента последовательности Md в десятичном представлении на выбранном слоте, у которого значение индекса j равно увеличенной на единицу величине этого k-го элемента в последовательности Ld в десятичном представлении, либо определены так, что любой k-й элемент последовательности Гd равен значению такого элемента из последовательности Md, у которого значение уменьшенного на единицу индекса j равно величине выбранного k-го элемента в последовательности Ld,
Часть значений индексов j остаются неиспользованными, так как из возможных g3 значений номеров кодов из формуляра применяется на d-м слоте лишь g1d=g≤g3 величин по количеству символов в системе кодирования. В общем случае для любого слота последовательность ключей дешифрования Г', получаемая после сортировки, по аналогии с представленным ранее примером, связанным с имеет g1 элементов, индексы определяются конкретными значениями ключей шифрования, величины индексов j принимают значения из интервала от единицы до g3. То есть, для каждого слота запись последовательности в общем десятичном виде имеет вид: Г'=Г'j,d, 1≤j≤g3, d=1, 2,…, D.
Генератор ключей шифрования формирует сигналы, соответствующие числовым значениям последовательности (4). При восстановлении данных используется сортировка последовательности (10). Генератор ключей дешифрования формирует сигналы, соответствующие значениям последовательности (12).
Регенерация данных после реализации двухоперационного шифрования для любого слота осуществляется единовременно посредством ключей дешифрования из последовательности Г'. Двухоперационно зашифрованные значения в формуле (11) преобразуются в Хвых выражения (8) для любого слота:
операции дешифрования путем замены числовых значений,
где j=1, 2,…, d=1, 2,…, D - индексы нумерации блоков (байтов) и слот;
- значение j-го блока (байта) на d-м слоте до дешифрования;
Xвых j,d - значение j-го блока (байта) выходных данных, соответствующее d-му слоту;
Г'1,d; Г'2,d; …; Г'g3,d - последовательность ключей дешифрования данных на d-м слоте.
Значения ключей в формулах (4) и (12) используются для установки сигналов управления работой ключей инверторов, применяемых для получения логических функций (ЛФ), которые обеспечивают перенумерование данных при шифровании (7), (11) и дешифровании (13). Такие ЛФ реализуются, например, на логических элементах [12,13]. Шифрование проводится в соответствии с ЛФ, строящейся на основании таблицы истинности. Для реализации требуемых инверсий аргументов ЛФ применяются инверторы. После выработки сигналов управления инверторами УХПДСШ готово к работе.
Для реализации операций с данными в заявленном УХПДСШ используются устройства, имеющие несколько входов либо выходов, для которых с целью удобства изложения введена следующая нумерация. Шифрователь - первых вход есть вход УХПДСШ; второй вход тот, что соединен с выходом генератора ключей шифрования; Запоминающее устройство - первый вход тот, что соединен с выходом шифрователя; второй вход тот, что соединен с выходом устройства управления; Блок коммутаторов - первые входы соединены с выходами формирователя импульсов запуска; вторая группа входов соединена с функциональными группами выходов устройства управления коммутаторами; Дешифрователь - первый вход тот, что соединен с выходом генератора ключей дешифрования; второй вход тот, что соединен с выходом формирователя данных; Логическое устройство шифрования - первый вход тот, что соединен с выходом сопрягающего устройства шифрователя; второй вход тот, что соединен с выходом преобразователя ключей шифрования; Логическое устройство дешифрования - первый вход тот, что соединен с выходом преобразователя ключей дешифрования; второй вход тот, что соединен с вторым входом дешифрователя; Коммутаторы блока коммутаторов - первые входы электронных ключей соединены параллельно и подключены к соответствующему входу блока коммутаторов (соединенного с выходом формирователя импульсов запуска); вторые входы коммутатора являются вторыми входами блока коммутаторов и электронных ключей и соединены с соответствующими выходами блока управления коммутаторами; Программатор слот - первый выход тот, что подключен к линии связи шифратора, второй- тот, что соединен с линией связи блока коммутаторов, третий выход тот, что подключен к линии связи дешифратора; Синхронизатор-первый выход связан с входом генератора слот, второй выход подключен к третьим выходам генератор слот и программатора слот, третий выход синхронизатора соединен с вторыми выходами генератора слот и программатора слот, четвертый выход синхронизатора подключен к первым выходам генератора слот и программатора слот.
Сущность изобретения. Задачей, на решение которой направлено заявляемое изобретение, является обеспечение дополнительной защищенности данных от внешних воздействий при их хранении и передаче.
Поставленная задача решается за счет того, что в устройство хранения и передачи данных с системой шифрования, содержащее
запоминающее устройство, линию связи, генератор ключей шифрования, шифрователь, дешифрователь, устройство управления, генератор кодов ансамбля, приемное устройство, формирователь данных, генератор ключей дешифрования, вместе с этим
первый вход шифрователя соединен с входом всего устройства, второй вход шифрователя подключен к выходу генератора ключей шифрования, выход шифрователя соединен с первым входом запоминающего устройства, выход генератора кодов ансамбля подключен к входу линии связи, а выход линии связи соединен с входом приемного устройства, выход приемного устройства подключен к входу формирователя данных, выход которого соединен с вторым входом дешифрователя, выход дешифрователя является выходом всего устройства, первый вход дешифрователя соединен с выходом генератора ключей дешифрования, кроме того
генератор кодов ансамбля формирует множество g3 кодов (1) или сигналов на их основе, коэффициенты также удовлетворяют соотношениям (2), коды ансамбля удовлетворяют ограничениям (3), как новые признаки введены
формирователь импульсов запуска, блок коммутаторов, генератор ключей шифрования кодов, блок управления коммутаторами, программатор слот, линия связи шифрователя, линия связи дешифрователя, линия связи блока коммутаторов, причем
вход линии связи шифрователя соединен с первым выходом программатора слот, выход линии связи шифрователя подключен к входу генератора ключей шифрования,
вход линии связи коммутатора соединен с вторым выходом программатора слот, выход линии связи блока коммутаторов подключен к входу генератора ключей шифрования кодов,
вход линии связи дешифрователя соединен с третьим выходом программатора слотов, выход линии связи дешифрователя подключен к входу генератора ключей дешифрования, второй вход запоминающего устройства подключен к выходу устройства управления, выход запоминающего устройства соединен с входом формирователя импульсов запуска, выходы формирователя импульсов запуска соединены с первой функциональной группой входов блока коммутаторов, вторая функциональная группа входов блока коммутаторов подключена к соответствующим функциональным группами выходов блока управления коммутаторами, входы блока управления коммутаторами подключены к выходу генератора ключей шифрования кодов, выходы блока коммутаторов представляют собой функциональные группы, соединенные с соответствующими группами входов генератор кодов ансамбля, выход генератора кодов ансамбля соединен с входом линии связи, выход линии связи соединен с входом приемного устройства, выход приемного устройства подключен к входу формирователя данных, выход которого соединен с вторым входом дешифрователя, выход дешифрователя является выходом всего устройства, первый вход дешифрователя соединен с выходом генератора ключей дешифрования, при этом генератор ключей шифрования формирует сигналы, соответствующие элементам последовательностей L(t) выражения (4),
шифрователь формирует сигналы исходя из условий (7),
генератор ключей шифрования кодов формирует сигналы, соответствующие элементам последовательности в формуле (9),
формирователь данных вырабатывает сигналы согласно формуле (11),
дешифрователь формирует сигналы Xвых j,d, j=1,2,…, d=1, 2, …, D исходя из условий (13), генератор ключей дешифрования на d-м слоте формирует сигналы, соответствующие элементам последовательности (12) Г'=Г'j,d, 1≤j≤g3, d=1, 2,…, D, где g3 - количество кодов в формуляре, полученной так, что
порядковые номера j элементов последовательности Гj,d, j=1,2, … на d-м слоте уменьшаются на единицу и меняются местами с значениями элементов этой последовательности, порядковые номера новой числовой последовательности увеличиваются на единицу и элементы полученной последовательности со своими измененными порядковыми номерами расставляются в порядке возрастания этих номеров,
элементы последовательности Гj,d, j=1,2, … на d-м слоте получены так, что любой k-й элемент (k=1,2,…) последовательности Г в формуле (10) в десятичном представлении равен значению такого элемента последовательности М в выражении (9) в десятичном представлении, у которого значение индекса j равно увеличенной на единицу величине этого k-го элемента последовательности L в выражении (4) в десятичном представлении, либо определены так, что k-й элемент Г равен значению такого элемента из М, у которого значение уменьшенного на единицу индекса равно величине k-го элемента в L;
программатор слот содержит генератор слот и синхронизатор, первый выход программатора слот соединен с первым выходом генератора слот и четвертым выходом синхронизатора, второй выход программатора слот подключен к второму выходу генератора слот и третьему выходу синхронизатора, третий выход программатора слот соединен с вторым выходом синхронизатора и третьим выходом генератора слот, первый выход синхронизатора подключен к входу генератора слот;
шифрователь содержит преобразователь ключей шифрования, логическое устройство шифрования и сопрягающее устройство шифрователя,
вход преобразователя ключей шифрования является вторым входом шифрователя, выход преобразователя ключей шифрования подключен к второму входу логического устройства шифрования, первый вход логического устройства шифрования подключен к выходу сопрягающего устройства шифрователя, вход сопрягающего устройства шифрователя является первым входом шифрователя и всего устройства, выход логического устройства шифрования является выходом шифрователя;
дешифрователь содержит преобразователь ключей дешифрования, логическое устройство дешифрования и сопрягающее устройство дешифрователя,
вход преобразователя ключей дешифрования является первым входом дешифрователя, выход преобразователя ключей дешифрования соединен с первым входом логического устройства дешифрования, второй вход логического устройства дешифрования является вторым входом дешифрователя, выход логического устройства дешифрования соединен с входом сопрягающего устройства дешифрователя, выход которого является выходом дешифрователя и всего устройства;
блок коммутаторов содержит функциональную группу из не менее g1m коммутаторов, первые входы которых соединены с соответствующими входами первой функциональной группы входов блока коммутаторов, вторые входы этих коммутаторов представляют фукциональные группы в количестве g3 входов каждая и подключены к соответствующим входам вторых функциональных групп входов блока коммутаторов, g3 выходов каждого из коммутаторов составляют функциональные группы и подключены к выходам блока коммутаторов, g3 - количество кодов в формуляре, g1m - наибольшее количество символов в системах кодирования, используемых на разных слотах, g1m≤g3;
блок управления коммутаторами содержит функциональную группу из не менее g1m формирователей управления, входы которых соединены с входами блока управления коммутаторами, выходы каждого формирователя управления образуют функциональную группу из g3 выходов, соединенных с соответствующими выходами блока управления коммутаторами;
коммутаторы блока коммутаторов содержат функциональную группу электронных ключей, первые входы которых соединены параллельно и подключены к соответствующим входам каждого коммутатора блока, вторые входы группы электронных ключей соединены с входами соответствующих групп вторых входов блока коммутаторов, выходы электронных ключей составляют функциональную группу и подключены к выходам каждого коммутатора;
устройство управления содержит формирователи адресов и режимов для управления операциями записи и чтения данных из запоминающего устройства, задание режима передачи данных на линию связи.
Представленная совокупность существенных признаков позволяет получить технический результат и достичь цели изобретения, которые заключаются в дополнительном повышении защищенности хранения данных за счет синхронного временного изменения ключей шифрования данных, кодов, ключей дешифрования, интервалов, систем кодирования и в обеспечении энергетически скрытной передачи зашифрованных данных пользователю по линии связи, в том числе при наличии шумов оптимальным образом. Предложенное устройство иллюстрируется структурной схемой на фиг. 2.
Перечень фигур графического изображения.
Фиг. 1 - различные слоты ключей шифрования и дешифрования данных и кодов.
Фиг. 2 - структурная схема устройства хранения и передачи данных с системой синхронизируемого шифрования. Расшифровка числовых обозначений:
1. Запоминающее устройство. 2. Линия связи. 3. Генератор ключей шифрования. 4. Шифрователь. 5. Устройство управления. 6. Формирователь импульсов запуска. 7. Блок коммутаторов. 8. Генератор ключей шифрования кодов. 9. Блок управления коммутаторами. 10. Генератор кодов ансамбля. 11. Приемное устройство. 12. Формирователь данных. 13. Дешифрователь. 14. Генератор ключей дешифрования. 15. Линия связи шифрователя. 16. Линия связи блока коммутаторов. 17. Программатор слот.18. Линия связи дешифрователя. 19. Сопрягающее устройство шифрователя. 20. Логическое устройство шифрования. 21. Преобразователь ключей шифрования. 22. Первый коммутатор. 23. k-й коммутатор, k=2, g1m -1. 24. g1m - й коммутатор. 25. Первый формирователь управления. 26. k-й формирователь управления, k=2, …, g1m -1. 27. g1m - й формирователь управления. 28. Преобразователь ключей дешифрования. 29. Логическое устройство дешифрования. 30. Сопрягающее устройство дешифрователя. 31.Синхронизатор. 32. Генератор слот.
Фиг. 3 - таблица двоичных значений аргументов ЛФ шифрования.
Фиг. 4 - таблица двоичных значений зашифрованных данных и ЛФ шифрования.
Фиг. 5 - таблица десятичных значений линганума записи и шифрования данных.
Фиг. 6 - таблица значений ЛФ управления генератором кодов ансамбля.
Сведения, подтверждающие возможность осуществления изобретения.
1. Использованные логические функции, операция сортировки для проведения дешифрования. Рассмотрены ЛФ, на которых базируется работа УХПДСШ, изложена реализация операции сортировки.
1.1 ЛФ для логического устройства (ЛУ) шифрования.
Для записи ЛФ (как и в прототипе [5]) составлена таблица истинности, в которой указаны номера символов и байтов до шифрования и после проведения этой операции на основе линганума записи. Если в таблицу истинности ввести неявно заданные значения линганума записи (4), то ЛФ в явном виде выразить невозможно. Поэтому в качестве примера дан один из возможных вариантов линганума, что позволяет записать ЛФ в явной форме. Этот пример рассмотрен для случая, когда блоки соответствуют байтам, верен для любого слота, поэтому индекс слота не записывается, принято g1=g1m=256.
Аргументами искомой ЛФ шифрования являются входные байты (5), а значениями функции являются зашифрованные байты (6). Размещение входных и выходных байтов в одной таблице затруднительно, поэтому использованы две таблицы. На фиг. 3 приведены значения таблицы аргументов ЛФ шифрования для выбранного в качестве примера лингамума записи. В ней отсутствуют символы системы кодирования, но даны их порядковые номера, указаны значения двоичных разрядов и десятичные значения этих двоичных чисел (нумерация по порядку следует с единицы, а величины начинаются с нуля). Например, символу "Е" соответствуют двоичное и десятичное числа 10001012=6910, порядковый номер в таблице равен 70. В первой колонке записаны номера по порядку следования, далее восемь колонок со значениями бит для всех вариантов байтов (двоичное представление числа) и в последней колонке заданы десятичные значения Х10 (от 0 до 255 для g1=256).
На фиг. 4 представлена таблица значений аргументов и таблица истинности для ЛФ шифрования, которая позволяет посредством знака соответствия "→" записать операцию перевода числовых значений аргументов (фиг. 3) в определенные значения функции. Тогда на примере линганума (4) при L=(Lj, j=1,2,…, 256)=(01, 12,…, 16970, …, 18485, …, 11122, …, 255256) получим: 1(0→0); 2(1→1);…; 70(69→169);…; 85(84→184);…; 122(121→11);…; 256(255→255).
Первая колонка таблицы на фиг. 4 - номера байтов по порядку; вторая - новые десятичные значения в соответствии с заданным линганумом; 3…10 колонки - зашифрованные двоичные значения; 11…18 колонки - новые двоичные значения в соответствии с линганумом (они совпадают со значениями колонок 3…10, но выделены для удобства построения ЛФ по правилам [12, с. 31; 13, с. 18]).
Пояснение к обозначению. ЛФ шифрования есть совокупность компонент, обозначенных i=1,…,8; j=1,…, 256, которые совместно с Xi,j индексируются построчно и по колонкам. Варьирование по индексу i осуществлено путем введения колонок для компонент ЛФ, а варьирование по j в обозначении компонент в указанной таблице фиг. 4 не показано, так как оно проводится в соответствии с известными правилами построения ЛФ. То есть зашифрованные значения данных в двоичной форме j-ой строки равны значениям компонент
(индекс строк j опущен). Операция инверсии обозначена символом (…)*. На частном примере таблиц фиг. 4 приведены старшие компоненты ЛФ шифрования
которые равны:
Многоточие в суммах означает возможное наличие других слагаемых (на фиг. 4 представлена часть строк полной таблицы для всех возможных байтов). Также составляются и другие компоненты ЛФ. Примеры выражений определяют ЛФ записи с шифрованием для любого набора аргументов - числовых величин всевозможных байтов до шифрования. Выражение (14) характеризует ЛФ однооперационного шифрования. Представленные операции построения ЛФ справедливы для любого слота.
1.2 Операция сортировки.
При восстановлении данных применяется ключи дешифрования (12), числовые значения которых являются результатом проведения сортировки, которая реализуется по указанному правилу из последовательностей (4) и (9).
Как и в прототипе [5] вариант такой операции рассмотрен на примере величин таблицы фиг. 5 (дана расширенная таблица по сравнению с таблицей на фиг. 4).
Обозначения в таблице: j - индекс нумерации по порядку следования числовых значений символов системы кодирования; Х10 - десятичные числовое значения байтов системы кодирования; Lj - десятичные числа линганума перенумерования (новое числовое значение байтов, которые требуется получить после шифрования). Справедливо соотношение: j=1+X10. Для краткости изложения примера в указанной таблице дана лишь часть числовых значений системы кодирования для g1=256. Например, j=111-й символ системы кодирования описывается байтом, соответствующим десятичному числу 11010, а в соответствии с линганумом записи символ перенумеруется и ему соответствует десятичное число 14910 и так далее.
На основании данных таблицы фиг. 4 линганум записи имеет вид:
Например, элемент j=55 из (15) равен десятичному числу L55=54 и перенумеруется в число 250.
Для определенности изложения последовательность (9) представим в виде:
С учетом изложенной процедуры определения последовательности Г, на основании выражения (16) получим для двухоперационного шифрования:
Восстановление путем дешифрования происходит в обратном порядке. Требуется первые и вторые числа поменять местами (либо изменить направление стрелок знака соответствия "→"), провести сортировку (перестановку, изменение порядка записи) этих пар чисел так, чтобы ставшими после перестановки первыми числа (левые) возрастали.
На основании формулы (17) и ранее изложенной процедуры сортировки получим пошаговые результаты выполнения операций определения последовательности Г':
(00, 11, 22,…,25054,…16969,…,17878,…,17979,…, 18383, …, 18484,…,149110,…,11121,…, 160188,…, 254254, 258255) - уменьшение индексов;
(00, 11, 22,…,54250,…,69169, …,78178,…,79179,…,83183, …, 84184,…,110149,…,12111,…, 188160,…, 254254, 255258) - замена индексов и значений;
(01, 12,23,…, 12112,…, 110150,…, 188161,…, 69170, …,78179,…,79180,…,83184, …, 84185,…, 54251,…, 254255, 258256) - увеличение индексов в новой последовательности на единицу и расстановка элементов по возрастанию индексов.
Следовательно, линганум восстановления, определяющий ключи дешифрования:
Продемонстрированная процедура сортировки справедливая для любого слота.
1.3 ЛФ управления генератором кодов ансамбля.
Для определенности выбрана система ASCII (g1=256). Рассмотрен вид логических функций n=1,…, g1, которые надо использовать для получения импульсов запуска генератора кодов ансамбля. Так как в ЗУ сохраняются зашифрованные байты входных данных
i=1,…,8; j=1,2,…,256, то каждому из них соответствует десятичное число, которое обозначено
Требуется получить импульс (значение ЛФ отмечены в виде "1") только на выходе из всех имеющихся g1=256 выходов, а на остальных выходах должно формироваться значение "0". Полученный сигнал позволяет далее с помощью формирователя кодов ансамбля генерировать только
код ансамбля из всех возможных g1=256 вариантов. То есть, если из ЗУ извлекается байт данных, который соответствует, например, десятичному числу 184, то рассматриваемая схема формирователя команд создает импульс "1" лишь на своем
выходе. Это дает возможность запустить устройство, формирующее исключительно лишь 185-й код из формуляра кодов ансамбля.
Обозначено: - аргументы,
- ЛФ от этих аргументов, причем, значение ЛФ равно " 1" (фиг. 6) только для
набора аргументов
а для остальных вариантов величина равна "0". Составлена таблица истинности (фиг. 6), для простоты указано лишь несколько числовых значений. В первой колонке - номера по порядку, в колонках со второй по десятую - десятичные и двоичные числовые значения бит, соответствующие символам системы ASCII. В остальных колонках - требуемые значения ЛФ.
Если сигнал есть на первом выходе устройства, реализующего ЛФ, то на всех других выходах функция равна нулю, если сигнал есть на втором выходе, то на всех других равен нулю и так далее Применяя известные правила [12, с. 31; 13, с. 18], получим требуемые ЛФ. Например:
где n=g1=256, j=1, 2, … - индекс нумерации байтов.
Если подставить двоичные значения чисел, последовательно, например, для j=1, 185, 256 из таблицы фиг. 6 в формулы (19), то получим соответственно
(другие компоненты равны нулю),
(прочие компоненты равны нулю),
(остальные компоненты равны нулю). Эти величины определяют ЛФ управления формирователями ШПС. В общем случае применения блоков на произвольном слоте ЛФ содержит g=g1 компонент, наибольшее значение равно g1m. Эти величины определяют ЛФ управления формирователями кодов ансамбля применительно к любому слоту.
2. Пример формуляра кодов ансамбля GxR,N=30; R=3; W=29; х=1,…, g3; g3=259).
Представлена часть ансамбля из прототипа [5] и добавлены дополнительные коды.
Наибольшее значение ВКФ всегда меньше наибольшего значения (пика) АКФ, поэтому для любого множества кодов W<N. Следовательно, коды представленного формуляра составляют ансамбль с параметрами N, R, W и условия (2), (3) выполняются. Это позволяет путем анализа УБП АКФ и ВКФ различить друг от друга коды и сигналы на их основе и восстановить переданные по ЛС зашифрованные блоки данных и исходные входные данные после их хранения в ЗУ. Необходимо использовать ансамбли кодов и сигналов на их основе с максимально низкими значениями УБП АКФ и ВКФ [6, 7].
3. Описание предлагаемого устройства.
Устройство хранения и передачи данных с системой синхронизируемого двухоперационного шифрования представлено на структурной схеме фиг. 2, дана расшифровки числовых обозначений элементов схемы, при этом
первый вход шифрователя 4 соединен с входом всего устройства, второй вход шифрователя 4 подключен к выходу генератора ключей шифрования 3, выход шифрователя 4 соединен с первым входом запоминающего устройства 1, выход генератора кодов ансамбля 10 подключен к входу линии связи 2, выход линии связи 2 соединен с входом приемного устройства 11, выход приемного устройства 11 подключен к входу формирователя данных 12, выход которого соединен с вторым входом дешифрователя 13, выход дешифрователя 13 является выходом всего устройства, первый вход дешифрователя 13 соединен с выходом генератора ключей дешифрования 14, кроме того
вход линии связи шифрователя 15 соединен с первым выходом программатора слот 17, выход линии связи шифрователя подключен к входу генератора ключей шифрования 3, вход линии связи блока коммутаторов 16 соединен с вторым выходом программатора слот 17, выход линии связи блока коммутаторов подключен к входу генератора ключей шифрования кодов 8, вход линии связи дешифрователя 18 соединен с третьим выходом программатора слот, выход линии связи дешифрователя 18 подключен к входу генератора ключей дешифрования 14,
второй вход запоминающего устройства 1 подключен к выходу устройства управления 5, выход запоминающего устройства 1 соединен с входом формирователя импульсов запуска 6, выходы формирователя импульсов запуска 6 соединены с первой функциональной группой входов блока коммутаторов 7, вторая функциональная группа входов блока коммутаторов подключена к соответствующим функциональным группами выходов блока управления коммутаторами 9, входы блока управления коммутаторами подключены к выходу генератора ключей шифрования кодов 8, выходы блока коммутаторов представляют собой функциональные группы, соединенные с соответствующими группами входов генератор кодов ансамбля 10, выход генератора кодов ансамбля 10 соединен с входом линии связи 2, выход линии связи 2 соединен с входом приемного устройства 11, выход приемного устройства 11 подключен к входу формирователя данных 12, выход которого соединен с вторым входом дешифрователя 13, выход дешифрователя 12 является выходом всего устройства, первый вход дешифрователя 13 соединен с выходом генератора ключей дешифрования 14, при этом
шифрователь 4 содержит преобразователь ключей шифрования 21, логическое устройство шифрования 20, сопрягающее устройство шифрователя 19,
вход преобразователя ключей шифрования 21 является вторым входом шифрователя 4, выход преобразователя ключей шифрования 21 подключен к второму входу логического устройства шифрования 20, первый вход логического устройства шифрования 20 соединен с выходом сопрягающего устройства шифрователя 19, вход которого является первым входом шифрователя 4 и всего устройства, выход логического устройства шифрования 20 является выходом шифрователя 4;
блок коммутаторов 7 содержит функциональную группу из g1m однотипных коммутаторов (g1m≤g3 - максимальное количество символов в установленных для применения системах кодирования), таких например, как первый коммутатор 22, k-й коммутатор (k=2, …, g1m-1) 23, g1m-й коммутатор 24,
первые входы каждого из коммутаторов соединены с соответствующими входами блока коммутаторов 7, вторые входы коммутаторов подключены к функциональным группам вторых входов блока коммутаторов 7, выходы коммутаторов представляют собой функциональные группы, соединенные с должными группами выходов блока коммутаторов 7; блок управления коммутаторами 9 содержит функциональную группу из g1m однотипных формирователей управления (g1m≤g3 - максимальное количество символов в установленных для применения системах кодирования), таких как первый формирователь управления 25, k-й формирователь управления (k=2, …, g1m-1) 26, g1m - й формирователь управления 27,
первые входы каждого из формирователей управления подключены к соответствующим входам блока управления 9, выходы каждого формирователя управления представляют собой функциональные группы, соединенные с соответствующими группами выходов блока управления коммутаторами 9,
дешифрователь 13 содержит преобразователь ключей дешифрования 28, логическое устройство дешифрования 29 и сопрягающее устройства дешифрователя 30,
вход преобразователя ключей дешифрования 28 является первым входом дешифрователя 13, выход преобразователя ключей дешифрования 28 соединен с первым входом логического устройства дешифрования 29, второй вход логического устройства дешифрования 29 является вторым входом дешифрователя 13, выход логического устройства дешифрования 29 соединен с входом сопрягающего устройства дешифрователя 30, выход которого является выходом дешифрователя 13 и всего устройства;
программатор слот 17 включает синхронизатор 31 и генератор слот 32, первый выход программатора слот 17 соединен с первым выходом генератора слот 32 и четвертым выходом синхронизатора 31, второй выход программатора слот 17 подключен к второму выходу генератора слот 32 и третьему выходу синхронизатора 31, третий выход программатора слот 17 соединен с третьим выходом генератора слот 32 и вторым выходом синхронизатора 31, первый выход синхронизатора 31 подключен к входу генератора слот 32.
4. Состав и работа устройств, входящих в структурную схему.
Устройства 1, 3-10, 15, 16 из схемы на фиг. 2 отнесены для удобства изложения к запоминающей части, а устройства 11-14,18 причислены к восстанавливающей части, обе части соединены ЛС 2 и программатором слот, составляют УХПДСШ. Представлено описание устройств применительно к блокам в виде байтов.
4.1 Запоминающее устройство. ЗУ 1 предназначено для записи, хранения и воспроизведения на своем выходе сохраненных L - данных. ЗУ 1 является энергонезависимым и многократно перепрограммируемым. Этим требованиям, в частности, удовлетворяют твердотельные интегральные перепрограммируемые ЗУ с электрическим стиранием (без снятия микросхемы от контактных площадок) или EEPROM [14, с. 231, 233] и жесткие диски (с большим объемом памяти при стационарном режиме использования УХПДШС или малогабаритные при мобильном варианте применения).
Имеется матрица, состоящая из запоминающих ячеек (ЗЯ), дешифраторов выбора строк и столбцов, адресных шин для записи и считывания сигналов из ячеек [14, с. 237, 239]. Сигналы выбора ячеек подаются из устройства управления 5 (фиг. 2). Режимы работы: чтение, запись, стирание.
В рабочем режиме байты данных заносятся в ЗЯ. Последовательность записи и считывания регулируется сигналами управления адресами ЗЯ и режимом работы. Сигналы поступают на второй вход ЗУ 1 с второго выхода устройства 5. После окончания записи генератор ключей шифрования 3 может быть выключен (или отсоединен от всего устройства). При отключении питания от всего устройства ЗУ 1 переходит в режим хранения. Схожим образом реализуется считывание данных из ЗУ 1. Удаление данных из ЗУ 1 возможно путем подачи с генератор ключей шифрования одинаковых по значению сигналов (4). Все варианты позволяют получить один и тот же технический результат.
4.2 Линии связи. ЛС 2 предназначена для осуществления передачи кодов ансамбля или сигналов на их основе в ту часть заявляемого устройства, где данные восстанавливаются (от входа к выходу, фиг. 2). ЛС 15, 16, 18 используются для передачи сигналов от программатора слот 17 (п.4. 15). Все линии связи представляют собой совокупность технических средств и физическую среду, обеспечивающих распространение сигналов данных [15, с. 189]. Технические средства могут включать модулятор (например, смеситель с усилителем), передатчик (например, усилители и антенны), приемник (например, преобразователь частоты с усилителем), демодулятор. Физические среды: твердая, жидкая, газообразная, вакуум. Различают линии электрической связи (проводной и радиосвязи), звуковой (акустической) и световой (оптической) связи.
Данные могут передаваться при использовании электромагнитных волн, распространяющихся через провода, кабели, волноводы, световоды, а также в воздушном и безвоздушном пространстве. В частности посредством витой пары, волоконно-оптического кабеля (ВОК), коаксиального кабеля, радиоканала наземной либо спутниковой связи [16].
Примером твердой физической среды являются звукопроводы поверхностных и объемных акустических волн из, например, пьезокварца и ниобата лития. Длина звукопроводов невелика, но они практически нечувствительны к внешним воздействиям, исключая прямое физическое разрушение. Устройства на объемных и поверхностных акустический волнах для звуковых (акустических) линий связи представлены в [17].
Звуковые, акустические линии связи в жидкой среде рассмотрены в [18], указаны черты звукоподводной связи. Линии световой, оптической связи представлены в [19].
При непосредственном соединении контактов (вход/выход, фиг. 2) линия связи 2 состоит из проводников элементов схем соответствующих устройств. Вспомогательное оборудование (преобразователи, усилители, антенны и так далее) здесь не рассмотрено. Изложенное относится также к ЛС шифрователя 15, ЛС блока коммутаторов 16 и ЛС дешифрователя 18, которые предназначены для передачи сигналов от программатора слот 17 (п. 4. 15). Все варианты линий связи обеспечивают одинаковый технический результат.
4.3 Генератор ключей шифрования. Генератор 3 предназначен для формирования сигналов, соответствующих лингануму шифрования (4) для каждого слота. Эти сигналы представляют набор блоков (байтов) для каждого слота, числовые значения каждого из которых соответствуют величинам Lj,d, j=1,2, …, g1d, d=1, 2, …, D в выражении (4) и показаны в общем виде на фиг. 1 (а), наборы байтов, состоит из совокупности бит. Устройство может быть выполнено на элементах дискретной схемотехники, например, на регистрах сдвига с отводами [8], так что к соответствующим отводам подключены инверторы, что позволяет получить на сумматоре сигналы от всех отводов требуемую числовую комбинацию бит, то есть необходимые байты ключей шифрования.
Возможен вариант выполнения в виде запоминающего устройства, в которое записаны все требуемые сигналы последовательности слот и из которого они могут быть извлечены по сигналам управления, которые могут быть переданы непосредственно и дистанционно. Эти сигналы являются выходными для генератора ключей шифрования 3.
Генератор ключей шифрования 3 может быть выполнен в виде программируемой логической интегральной схемы (ПЛИС) [13, 14, с. 494, 534] или ее разновидности либо варианта ПЛИС, который может быть создан в будущем. Сигналы управления, подаваемые на ПЛИС, позволяют реализовать должные ЛФ, получить требуемые последовательности байтов. В любом случае обеспечивается один и тот же технический результат.
4.4 Шифрователь. Устройство 4 предназначено для шифрования входных данных путем перенумерования байтов в соответствии с линганумом записи (на основании выражения (4)) для любого слота, задаваемым генератором ключей шифрования 3.
Для этого используются ЛФ, схожие с выражением (11), построение дано в представленном примере. ЛФ могут быть реализованы, например, на логических элементах "И", "ИЛИ", "НЕ" [12, 13]. В состав шифрователя входит преобразователь ключей шифрования 21, ЛУ шифрования 20 и сопрягающее устройство шифрователя 19.
Краткое изложение сущности операций шифрования для произвольного слота (индекс слота опущен). Для реализации ЛФ шифрования требуется выполнить операции инверсии посредством инверторов, регулируемых управляющими сигналами. Операции осуществляются в ЛУ шифрования 20, указанные управляющие сигналы вырабатываются преобразователем ключей шифрования 21. Управляющие сигналы зависят от результатов сравнения (по определенному правилу) байтов, формируемых генератором ключей шифрования 3 (они задаются пользователем для каждого слота), с байтами выбранной системы кодирования (они выполняют роль эталонов) на каждом слоте.
Назначение инверторов - осуществление операции инвертирования (отрицания) двоичной переменной (обозначим ее "А") при воздействии внешнего сигнала управления U. Например, переменная А преобразуется в А*, если U равно логической "1" и не преобразуется, если U равно логическому "0".
Например, инвертор может быть построен из двух электронных ключей (Кл. 1,2) и схемы, выполняющей функцию инверсии "НЕ". Общая схема состоит из двух параллельных ветвей (краткое описание дано в прототипе [5]). Изменяя значение U, можно получить аргументы ЛФ в требуемом инвертируемом или нет виде. ЛФ для управления инверторами задается следующим образом: устройство управления инверторами имеет два входа, на которые подаются логические величины "В" и "С", на выходе формируются значения сигналов управления в виде соотношения U=С⋅В*. Эта ЛФ принимает ненулевое значение лишь для набора аргументов (В;С)=(0;1). Устройства управления инверторами посредством сигналов U могут быть реализованы на элементах "И", "НЕ" [12, 13].
Исходя из установленных значений U (величина принимает единичное значение лишь для пары аргументов (0;1)) для проведения операции инверсии требуется сформировать следующий набор значений: переменная "С" (значение функции преобразования) равна "1", а аргумент "В" (входной сигнал) равен "0".
Обозначено: компоненты ЛФ шифрования, каждая из которых равна произведению бит, часть из которых может быть инвертирована. Эти значения должны быть сформированы схемотехнически, они соответствуют лингануму записи. Для любого слота ЛФ шифрования - это набор величин
являющихся суммами компонент ЛФ всех значений j=1, …, g1 (например, g1=256).
В соотношении U=C⋅B* считаем, что переменная "С" аналогична значениям компонент ЛФ шифрования и одновременно значениям линганума записи (таблица фиг. 4), а "В" является аргументом этой функции (таблица фиг. 3). Тогда для проведения операции инвертирования сигнал управления U в виде логической "+1" будет создаваться, когда "С" равно "+1" и "В" равно "0". Для всех других наборов переменных (В;С) на выходе схемы формирования сигнала управления U будет формироваться "0". Сигнал U определяется по указанному правилу для каждого i-го бита любого j-го байта применительно к каждой функции k=1,…, 8 (фиг. 4). Следовательно, сигналы управления инверторами на любом слоте в общем виде зависят от трех указанных индексов (i, j, k) и обозначены Ui,j,k. То есть величина "С" (компоненты ЛФ и значения линганума записи) является разрешающим сигналом проведения инвертирования величины "В" (аргументов ЛФ).
Преобразователь ключей шифрования 21, входящий в шифрователь 4, формирует управляющие сигналы Ui,j,k для инверторов на основе выбранного пользователем линганума, который реализуется в виде сигналов генератора ключей шифрования 3, а ЛУ шифрования 20 позволяет получить компоненты и построить требуемую ЛФ шифрования.
Схема реализации преобразователя ключей шифрования 21 для любого слота. В возможной схеме для формирования Ui,j,k имеется вход для значений линганума L(t), передаваемых на второй вход шифрователя 4 от генератора ключей шифрования 3, а также имеется генератор байтов системы кодирования. Байты системы известны и неизменны для выбранной системы кодирования на каждом слоте. Например, для любого слота при g1=256 по аналогии с (5) эти байты обозначены (Х'i,j, i=1,…,8; j=1, 2,…, 256)=[(X'1,1;X'2,1;…; X'8,1); (X'1,2; X2,2;…; X'8,2);…;(X'1,256; Х'2,256;…; X'8,256)] (индекс слот для простоты не указан). Величины принимают значения целых десятичных чисел от 0 до 255, а в двоичной системе исчисления они совпадают с числами в строках таблицы на фиг. 3, 4 от набора (0,…,0) до (1,…,1)), играют роль эталонов. Генератор байтов X'i,j системы кодирования может быть выполнен на регистрах с весовыми отводами и сумматорами [8] или в виде запоминающего устройства. Этот генератор байтов управляется сигналами от программатора слот 17 (п. 4.15) и запускается при подключении напряжения питания, в начале любого слота. Величины X'i,j есть значения номеров байтов (эталонов), используемые в подготовительном режиме для получения сигналов установки инверторов в любом слоте. Сигналы установки далее применяются в ЛУ шифрования 20 для формирования ЛФ шифрования в рабочем режиме.
Если на каждом слоте используется индивидуальная система кодирования, то генератор байтов системы кодирования может быть выполнен в виде запоминающего устройства, в которое записаны и синхронно извлекаются блоки (байты) требуемой для данного слота системы кодирования X'i,j,d, i=1, 2,…; j=1, 2,…; d=1, 2, …, D. По значениям этих индивидуальных эталонов и ключей шифрования для каждого блока (байта) вырабатываются соответствующие этим слотам сигналы управления инверторами.
Схемы для реализации ЛФ U=С⋅В* и генератор байтов системы кодирования входят в состав преобразователя ключей шифрования 21 и могут быть построены на логических элементах "НЕ", "И" для всех бит (i=1,…, 8) j-го байта в любом слоте. Аналогичные схемы нужны для всех значений j=1,…, g1d с целью создания напряжений управления всеми инверторами, что позволяет получить требуемые ЛФ шифрования.
Для демонстрации примера зафиксируем номер слота путем удаления индекса d, тогда, например, L1,j последовательно умножается на инверсии значений X'1,j, X'2,j,…, X'8,j и получаются сигналы U1,j,1, U2,j,1,…, U8,j,1. Если же L8,j умножается на X'1,j, X'2,j,…, X'8,j, в результате формируются величины U1,j,8, U2,j,8,…, U8,j,8 и так для всех байтов j=1,…, g1. Для ASCII индексы величин Ui,j,k характеризуют: i=1,…,8 - зависимость от номера бит в байте; j=1,…,256 - подчиненность номеру байта; k=1,…,8 - связанность с номером компонент ЛФ шифрования. Такими же по назначению индексами нумеруются инверторы, то есть Ii,j,k. Во все величины в общем виде надо ввести индекс слота, который не влияет на результаты и порядок изложенных действий.
Работа преобразователя ключей шифрования 21. После подключения электропитания запускается генератор ключей шифрования 3 и генератор байтов системы кодирования. В соответствии с указанными правилами создаются напряжения управления инверторами U. В результате преобразователь ключей шифрования 21 трансформирует ключи шифрования конкретного слота в управляющие напряжения для инверторов ЛУ шифрования 20 для этого слота.
ЛУ шифрования 20 предназначено для выполнения операции шифрования входных байтов путем их перенумерования в соответствии с линганумом записи, с использованием напряжений управления инверторами. Для воплощения этой задачи можно использовать схемы для реализации ЛФ, сходных с выражением (11), применяя логические элементы "И", "ИЛИ", "НЕ" [12, 13].
В структуре ЛФ выражения (11) отметим особенности, верные для любого слота (индекс слотов не записан). Ранее аргументы обозначались Xi,j, i=1,…, 8; j=1, 2,…, в приведенном примере выражений для используется одноиндексная нумерация Xi, i=1,…,8. Это связано с тем, что каждое слагаемое в ЛФ соответствует определенному значению индекса j, то есть вариация этого индекса при построении ЛФ учтена, поэтому для упрощения записей введена одноиндексная нумерация. При построении схемы ЛУ шифрования 12 это обстоятельство учтено в том, что в схеме имеются две части: одна формирует компоненты сумм различных ЛФ, а другая осуществляет их объединение, образуя в результате требуемую функцию целиком.
Каждая из указанных ЛФ представляется суммой произведений аргументов (Xi,j, i=1,…,8; j=1,2,…), как в формуле (11), некоторые из них инвертированы. Количество слагаемых для, например, g1=256 равно количеству строк в таблицах фиг. 3, 4. В зависимости от вида линганума записи часть слагаемых указанной суммы произведений равна нулю, поэтому они отсутствуют в (11). В общем случае для каждой из восьми компонент ЛФ (рассматривается блок из восьми бит) требуется при их схемотехнической реализации формировать все g1 слагаемых.
По правилам [12, с. 31; 13, с. 18] формирования любой ЛФ выделяются наборы аргументов, при которых функция равна единице (отмечены на фиг. 4 знаком (*)). Для инвертирования нулевых значений из этого набора аргументов используются инверторы. Инверторы в каждом слоте Ii,j,k управляются сигналами Ui,j,k, вырабатываемыми преобразователями ключей шифрования 21. В подготовительном режиме формируются напряжения управления работой инверторов, в рабочем режиме на входы устройств подаются байты данных для дальнейшего шифрования, сохранения и восстановления.
То есть ЛУ шифрования 20 состоит из формирователей компонент
каждого j-го байта (это произведение бит, часть которых может быть инвертирована) и слота, а также сумматоров для получения набора ЛФ шифрования слота
Состав схем одного из возможных вариантов реализации формирователей компонент для любого слота может включать инверторы Ii,j,k, i=1,…, 8; j=1,…, g1 (например, g1=256); k=1,…,8 и перемножители двоичных сигналов (8-ми входовые элементы "И). В режиме записи на входы формирователей компонент подаются значения входных данных (аргументы ЛФ) (Х1,j, X2,j,…, Х8,j). На выходе имеются значения компонент ЛФ для каждого значения j=1,…, g1, причем эти компоненты являются произведениями значений входных данных (аргументов ЛФ) и некоторые из них инвертированы. В результате формируются слагаемые для компонент каждой из ЛФ, соответствующие всем j=1,…, g1. Далее проводится суммирование по всем значениям индекса j.
В схеме реализации формирователя компонент ЛФ так же имеется вход для сигналов управления инверторами Ui,j,k (i - индекс для изменения бит входных байтов; j - индекс вариации входных байтов; k - индекс нумерации компонент ЛФ
Например, на инверторы I1,j,k; I2,j,1; … I8,j,1, позволяющие получить инвертированные или нет входные биты, подаются 1, 2,…, 8-й биты j-го байта входных данных X1,j, Х2,j,…, X8,j, а также сигналы управления записью U1,j,1;U2,j,1;…; U8,j,1. В результате перемножения сигналов на выходах инверторов получается компонента ЛФ Таким же образом применяются другие инверторы, в частности, если на инверторы I1,j,8; I2,j,8;…; I8,j,8, подать сигналы управления записью Ui,j,8;U2,j,8;…;U8,j,8, то будет найдена компонента ЛФ
Такие операции проводятся для всех значений индекса j=1,…, g1. Применяются схемы для каждого указанного значения j в отдельности, которые отличаются состоянием инверторов (подаются различающиеся управляющие сигналы, зависящие от линганума).
Имеются схемы суммирования слагаемых, составляющих компоненты ЛФ для различных j и схемы для формирования набора ЛФ. Пусть примером является выражение (11) для одной из функций набора, допустим На каждую схему суммирования компонент (элементы "ИЛИ") поступают сигналы от формирователей этих компонент для различных j. Компоненты, относящиеся к одной и той же ЛФ, но для разных значений], суммируются на g1 - входовых элементах "ИЛИ" (например, g1=256), что позволяет получить требуемые ЛФ.
На выходе схемы суммирования компонент имеются значения набора ЛФ шифрования которые соответствуют разрядам зашифрованных посредством перенумерования байтов (6). То есть шифрователь 4 позволяет реализовать операции преобразования входных данных в зашифрованные байты, которые сохраняются в ЗУ 1.
Все операции реализуются в любом слоте, различия состоят в величинах задаваемых ключей шифрования.
Сопрягающее устройство шифрователя 19 предназначено для согласования ЛУ шифрования 20 с линией передачи, по которой на УХПДСШ подаются входные данные, или для согласования формы представления данных или для применения известных правил, которые требуется реализовать для работоспособности ЛУ шифрования 20.
Согласование в сопрягающем устройстве шифрователя 19 позволяет энергетически эффективно и без искажений передать на ЛУ шифрования 20 входные данные. Функция согласования формы данных может заключаться, например, в преобразовании последовательной передачи байтов в параллельное следование байтов или в использовании некоторых протоколов, стандартов передачи/приема данных.
В несогласованных линиях связи возможны искажения данных [14, с. 29-32]. Они могут быть снижены путем применения устройства согласования [14, с. 32-40] или стандартов ввода/вывода данных [14, с. 43-53], что также относится к функции сопрягающего устройства. Оно может быть выполнено на пассивных или активных элементах (транзисторах, микросхемах) или в виде универсальной последовательной шины USB. Все варианты обеспечивают одинаковый технический результат.
Работа шифрователя 4 на любом слоте (индекс слота не указан, так как он произволен) начинается с подачи байтов входных данных (X1,j, Х2,j,…, X8,j - это разряды двоичных чисел j-й строки таблицы фиг. 3). Инверторы установлены сигналами управления в подготовительном режиме, поэтому требуемые ЛФ шифрования имеются. Это позволяет задать новый номер каждому из входных символов (входных байтов) согласно этой ЛФ шифрования, что и нужно получить.
Схемы шифрователя 4 могут быть осуществлены на логических элементах или в виде ПЛИС [13, 14, с. 494, 534] или на ее разновидности либо на таком варианте ПЛИС, который может быть создан в будущем. Все варианты выполнения обеспечивают один и тот же технический результат.
4.5 Устройство управления. Это устройство 5 является генератором сигналов управления операциями записи/чтения зашифрованных данных в ячейки ЗУ 1 или из них. Один из возможных вариантов реализации устройства 5 предполагает генерирование следующих сигналов: 1) импульсов адресов строк и колонок ЗЯ - сигналы управления перебором номеров соответственно строк и колонок матрицы ЗЯ, в которые побайтно заносятся L-данные для хранения в ЗУ 1 и дальнейшего их чтения); 2) сигналов задания режима записи/чтения данных в/из ЗУ 1
Он управляет операцией записи зашифрованных данных в ЗУ 1 и чтением этих данных для дальнейшей их передачи на восстанавливающую часть УХПДСШ (это происходит после начала работы преобразователя ключей дешифрования 28 на каждом слоте). Генератор адресов и режимов 5 является стандартным. Запись, чтение и управление этими режимами осуществляется с помощью разрядных шин, подключенных ко всем ЗЯ. Формирование указанных сигналов возможно известными методами и устройствами [11-13].
Работа устройства 5. В зависимости от режима работы УХПДСШ генератором адресов и режимов 5 формируются импульсы записи, чтения, стирания байтов в ЗУ 1.
Формирование сигналов возможно известными методами и устройствами [12-14]. Устройство может работать в автоколебательном режиме, формируя сигналы такой длительности, которая определяет временные интервалы для записи и восстановления данных. Сигнал
может запускаться, например, вручную переключателем, подключающим генератор 14 к источнику питания. В результате начинается процесс восстановления данных, относящихся к текущему слоту. Генератор 5 может быть выполнен в виде запоминающего устройства, содержащего сигналы запуска интервалов записи и чтения байт из ЗЯ на всех слотах, может запускаться одновременно со всеми ключами шифрования и дешифрования. Все варианты обеспечивают одинаковый результат.
4.6 Формирователь импульсов запуска. Это устройство 6 реализует ЛФ типа (19). Назначение формирователя сигналов запуска 6 состоит в том, что комбинация зашифрованных сигналов (элементов блоков) преобразуется в другую совокупность сигналов, требуемую для проведения операции формирования необходимого кода ШПС. То есть принцип работы формирователя подобен тому, что использован в шифрователе 4 (одна комбинация входных сигналов преобразовать в другую совокупность выходных значений посредством использования ЛФ). Компоненты ЛФ являются произведением аргументов, которые входят в него с инверсией либо без нее.
Вход формирователя импульсов запуска 6 соединен с выходом ЗУ 1. Выход этого формирователя 6 есть совокупность g1m выходов. При поступлении из ЗУ 1 одного из возможных байтов L-данных, лишь на одном из всех этих выходов появляется сигнал реакции (импульс запуска), который передается на соответствующие входы первой функциональной группы входов блока коммутаторов 7.
В примере формулы (19) ЛФ являются произведением аргументов, которые входят в это произведение с инверсией либо без нее. Поэтому схема формирователя импульсов запуска 6 на d-м слоте состоит из не менее g1m (по числу ЛФ) восьми входовых (по числу бит в байтах входных сигналов этого формирователя) перемножителей (ветвей), на которые передаются входные сигналы напрямую или после инвертирования, в зависимости от величины индекса ЛФ Подключение инверторов к перемножителям выполняется при изготовлении и неизменно (сигналы управления не требуются, так как таблица фиг. 6 стабильна, в отличие от таблиц шифрования и дешифрования). Инвертор может быть построен на элементах "НЕ". Результаты перемножения подаются на g1m выходов формирователя сигналов запуска 6 и обеспечивают достижение результата воздействия ЛФ на выходные сигналы шифрователя 4. То есть в результате каждая ветвь схемы позволяет получить одну из компонент ЛФ
n=1,…,g1d≤g1m формулы (19).
Формирователь сигналов запуска 6 может быть построен, например, на логических элементах "И", "ИЛИ", "НЕ" [12, 13], выполнен в виде ПЛИС [13, 14, с. 494, 534] или ее разновидности либо варианта, который может быть создан в будущем. Сигналы управления ПЛИС позволяют реализовать должные ЛФ, получить нужные выходные сигналы. Все варианты выполнения обеспечивают одинаковый технический результат.
4.7 Блок коммутаторов. Данное устройство 7 предназначено для подачи сигналов формирователя импульсов 6 на входы формирователей кодов в генераторе 10 в соответствии с ключами шифрования кодов, создаваемыми генератором 8.
Блок коммутаторов 7 содержит не менее g1m коммутаторов, вход каждого из которых соединен с одним из соответствующих входов блока. Выход каждого коммутатора (условно показана часть из них, обозначены 22, 23, 24) представляет собой функциональную группу из g3 выходов, соединенных с группами выходов блока коммутаторов 7 и последовательно со всеми входами генератора кодов 10. Какой из выходов каждого из коммутаторов блока 7 является активным, зависит от сигналов управления, поступающих на вторую группу входов каждого коммутатора блока. Вторые группы входов коммутаторов соединены с вторыми группами входов блока коммутаторов 7 (фиг. 2).
Каждый коммутатор, например, может состоять из функциональной группы g3 электронных ключей (по количеству выходов коммутатора), первые входы которых соединены параллельно и составляют вход коммутатора. Вторые (управляющие) функциональные группы входов электронных ключей соединены с вторыми входами каждого коммутатора, при этом g3 выходов электронных ключей составляют функциональную группу и соединены с выходами каждого из коммутаторов (фиг. 2).
В рабочем режиме в зависимости от сигналов управления, поступающих на коммутаторы блока коммутации 7, каждый выходной сигнал формирователя импульсов запуска 6 подключается к одному из входов генератора кодов 10. В результате на выходе генератора кодов 10 создаются кодированные сигналы, поставленные во взаимное однозначное соответствие с запускающими, тактовыми импульсами формирователя импульсов запуска 6, которые, в свою очередь, взаимно-однозначно соответствуют зашифрованным блокам (байтам) данных, хранящимся в ЗУ 1. Например, сигнал с первого выхода формирователя импульсов запуска 6 (фиг. 2) может быть подключен к любому, но единственному входу генератора кодов 10 в соответствии с ключами шифрования кодов. Тоже относится к сигналам от других выходов формирователя импульсов запуска 6. Эти операции справедливы и выполняются на любом слоте.
При анализе можно считать, что элементы последовательности, полученные по правилам (11), вырабатываются на выходе блока коммутаторов 7, при этом коммутаторы блока могут быть выполнены на элементах аналоговой и цифровой схемотехники [12,13] или на ПЛИС [13, 14, с. 494, 534] или ее вариантах. Все варианты выполнения обеспечивают один и тот же технический результат.
4.8 Генератор ключей шифрования кодов. Этот генератор 8 предназначен для формирования сигналов, соответствующих лингануму шифрования кодов M(t) формулы (9) для всех слот и подобен представленному ранее генератору ключей шифрования 3. Устройство может быть выполнено на элементах дискретной схемотехники, например, на регистрах сдвига с отводами [8], так что к соответствующим отводам подключены инверторы, что позволяет получить на сумматоре сигналы от всех отводов требуемую числовую комбинацию элементов (бит), то есть нужные байты ключей шифрования.
Возможен вариант выполнения в виде запоминающего устройства, в которое записаны все требуемые сигналы и из которого они могут быть извлечены. Эти сигналы являются выходными для генератора ключей шифрования кодов 8, который также может быть выполнен в виде ПЛИС [13, 14, с. 494, 534] или ее разновидности либо варианта ПЛИС, который может быть создан в будущем. Сигналы управления, подаваемые на ПЛИС, позволяют реализовать должные ЛФ, получить требуемые последовательности байтов. В любом случае обеспечивается один и тот же технический результат.
4.9 Блок управления коммутаторами. Указанный блок 9 предназначен для создания сигналов управления режимами работы блока коммутаторов 7. Работа самого блока управления коммутаторами 9 регламентируется генератором ключей шифрования кодов 8. Блок управления коммутаторами 9 состоит из не менее g1m формирователей управления (фиг. 2) (условно представлена часть из них 25, 26, 27), входы которых подключены к соответствующим входам блока управления коммутаторами 9, а их выходы соединены с соответствующими выходами блока управления коммутаторами 9. При этом любой формирователь управления имеет g3 выходов, составляющих функциональную группу.
Каждый формирователь управления реализует ЛФ, структурно похожие на выражение (19). В результате только на одном из выводов выходных функциональных групп каждого формирователя управления 25, 26, 27 и всех других (фиг. 2) формируется выходной сигнал, а на всех иных выводах указанных выходных функциональных групп он отсутствует. Это обеспечивает замыкание электронных ключей блока коммутаторов 7 таким образом, чтобы обеспечить требуемое, задаваемое ключами шифрования кодов взаимное однозначное соответствие зашифрованных блоков (байтов) из ЗУ 1 и кодов, формируемых генератором кодов 10.
Назначение и работа формирователей управления блока управления коммутаторами 9 подобны изложенным ранее в п. 4.6, подобны работе формирователя импульсов запуска 6. Поэтому они могут быть построены, например, на логических элементах "И", "ИЛИ", "НЕ" [12, 13], выполнены в виде ПЛИС [13, 14, с. 494, 534] или ее разновидности либо варианта ПЛИС, который может быть создан в будущем. Сигналы управления для ПЛИС позволяют реализовать должные ЛФ, получить требуемые выходные сигналы. Все варианты выполнения обеспечивают один и тот же технический результат.
4.10 Генератор кодов ансамбля. Это устройство 10 предназначено для формирования кодов ансамбля или сигналов на их основе с теми же порядковыми номерами из формуляра, что задаются ключами шифрования кодов, определяемыми генератором 8.
Генератор 10 является в общем случае совокупностью g формирователей кодов ансамбля, которые могут быть построены на микросхемах [8, рис. 3.11, с. 47 пример для КБ, с. 357] или в виде устройств на поверхностных акустических волнах (ПАВ) [15, 17]. Последовательность чередования символов в кодах (1) определяет геометрическое расположение электродов преобразователей ПАВ в указанных устройствах. Устройства на ПАВ позволяют обеспечить энергетическую эффективность и микроминиатюрность.
Для формирователей кодов ансамбля имеются индивидуальные входы, которые совокупно подключены к функциональным группам выходов блока коммутаторов 7 (количество таких групп выходов/входов равно количеству формирователей кодов g=g3 - количество кодов в формуляре). Выходы формирователей кодов генератора кодов 10 подключены к сумматору, объединяющему коды ансамбля или сигналы на их основе, далее они передаются на выход генератора кодов ансамбля 10.
В рабочем режиме на одном из входов формирователей генератора кодов 10 имеется запускающий, тактовый импульс, переданный с одного из выходов блока коммутаторов 7, а на всех других входах такой импульс отсутствует. Поэтому один из формирователей откликается соответствующим кодом (1), появляющимся на выходе сумматора и всего генератора 10. В итоге каждому байту данных ставится в соответствие требуемый код ансамбля или сигнала на основе этого кода, представленного в формуляре, заданного ключами шифрования кодов. Выходные коды генератора 10 передаются по ЛС 2 для дальнейшего преобразования и проведения операции восстановления данных.
Устройства на ПАВ позволяют сразу получить сигналы на основе выбранных кодов ансамбля. Генератор кодов 10 может быть выполнены в виде формирователей кодов и сигналов на их основе и в виде модулятора несущих колебаний для передачи по ЛС связи, причем модулирующими сигналами являются эти коды и сигналы. Этот генератор может быть выполнен в виде запоминающего устройства, в которое записаны и из которого могут быть извлечены все требуемые сигналы. Генератор кодов 10 может быть выполнен в виде ПЛИС [13, 14, с. 494, 534] или ее разновидности или варианта, который может быть создан в будущем. Тогда выходной сигнал определяется сигналами управления. Все варианты реализации обеспечивают один и тот же технический результат.
4.11 Приемное устройство. Приемное устройство (ПУ) 11 предназначено для оптимального (при наличии шумов) приема кодов ансамбля или сигналов на их основе, переданных по ЛС 2. Оптимальным приемником является совокупность согласованных фильтров (СФ) или корреляторов [8, с. 26, 159]. Оба варианта обеспечивают один и тот же технический результат. Рассмотрен вариант с применением СФ. Каждый из них согласован с одним из кодов или сигналов, формируемым генератором кодов ансамбля 10.
Возможный вариант схемы ПУ 11 может состоять из ветвей с параллельно соединенными входами. Любая ветвь включает СФ для одного из кодов ансамбля (1,2,…, g3, например g3=259) из формуляра и пороговое устройство. СФ в ветвях нумеруются так же, как сами коды. Пороговое устройство вырабатывает сигнал в случае, когда выходной сигнал СФ превосходит установленное пороговое значение, что означает поступление на вход ПУ 11 кода с определенным номером по формуляру, согласованного с СФ данной ветви. Эти сигналы распознавания кодов и выходы ПУ 11 обозначены Выход каждой ветви является одним из выходов ПУ 11 (на фиг. 2 выходы показаны для простоты одиночной линией, всего g3 выходов, например, g3=259, но лишь на одном есть сигнал). Для каждого байта принятых данных один из сигналов распознавания равен, например, "1", а все другие равны "0".
СФ могут быть реализованы на микросхемах [8, с. 48, рис. 3.13, с. 366, рис. 22.5] либо на ПАВ-устройствах [8, с. 357, рис. 21], [15, 17]. Структура встречно-штыревых преобразователей ПАВ СФ связана с чередованием "1" и "-1" в кодах ансамбля (1).
Вход ПУ 11 соединен с ЛС 2 (фиг. 2), а выходы связаны с входами формирователя данных 12. При работе на все параллельные ветви подается входной сигнал, поступивший с ЛС 2 (один из возможных кодов (1) из формуляра либо сигналов на их основе). На выходе СФ соответствующей ветви будет формироваться сигнал АКФ того кода, который был использован для передачи соответствующего байта. АКФ представляет собой две области боковых пиков, между которыми имеется главный пик с высоким уровнем сигнала. На всех выходах прочих СФ имеется сигнал ВКФ, который может иметь несколько пиков, но наибольший из них всегда ниже главного пика АКФ. Необходимо использовать ансамбли кодов с низким уровнем пиков ВКФ, что повышает качество различения одного кода от другого, то есть разных символов системы кодирования. Далее в пороговом устройстве сравнивается полученный от СФ сигнал и уровень порога. Если он превышен, то формирует импульс распознавания (например, g=g3=259 - количество элементов в формуляре) на соответствующем выходе ПУ 11, означающий принятие конкретного кода формуляра (то есть поступление на вход вполне определенного символа данных в силу взаимно-однозначного соответствия кодов и байтов). Так же принимаются и различаются все байты.
В качестве устройства сравнения может быть использована схема дифференциального каскада или цифровой компаратор [13]. Порог должен быть установлен выше уровня боковых пиков АКФ и наибольшего значения W всех ВКФ кодов, но ниже уровня главного пика АКФ всех кодов ансамбля. Должна быть реакция лишь на пик АКФ, без отклика на сигналы ВКФ. В результате в рабочем режиме ПУ 11 различает коды формуляра и далее полученные сигналы передаются на формирователь данных.
Замечание. Коды на входе ПУ 11 могут перекоммутироваться после каждого СФ и далее дешифроваться, либо на выходах ПУ 11 допустимо формирование откликов СФ на входные воздействия, которые затем посредством дешифрователя 13 регенерируются в выходные данные (этом вариант изложен в представленном устройстве).
4.12 Формирователь данных. Устройство 12 предназначено для преобразования принятых по ЛС 2 кодов в байты. Восстановленные формирователем данных 12 байты и биты обозначены при корректной работе они равны зашифрованным данным
в формуле (11).
Состав возможного варианта схемы может включать параллельные ветви, каждая из которых состоит из формирователя байтов выбранной системы кодирования. Например, h-я ветвь предназначена для формирования h-го байта, соответствующего числу h-1, где h=1,…, g3. Числовые значения представлены в двоичной системе исчисления. Каждая ветвь активизируется только соответствующим этой ветви сигналом распознавания. Выходы этих ветвей могут быть соединены параллельно, но лишь одна из ветвей активна.
Вход формирователя данных 12 - это раздельные входы всех ветвей, обозначенные на фиг. 2 для простоты одиночной линией. Этот вход подключен к выходу ПУ 11, с которого поступают импульсы распознавания кодов. Выход формирователя данных 12 соединен со вторым входом дешифрователя 13, на который передаются восстановленные байты данных Для простоты изображения схемы на фиг. 2 выход формирователя данных 12 изображен одиночной линией, по которой передаются все биты
…;j=1,2… каждого j-го восстановленного байта в пределах одного из слот (соотношение индекса j и набора бит представлено в таблицах фиг. 3, 4).
Генераторы байтов формирователя 12 могут быть выполнены на элементах дискретной схемотехники, например, на регистрах сдвига с отводами [8]. К соответствующим отводам подключены инверторы, что позволяет получить на сумматоре сигналов от всех отводов требуемую комбинацию сигналов. Формирователем данных 12 может быть постоянное запоминающее устройство, содержащее значения всех байтов, каждый из которых извлекается при появлении импульсов распознавания кодов n=1,…, g3.
В рабочем режиме из ПУ 11 на один из входов формирователя данных 12, например h-й, поступает сигнал распознавания кодов Он запускает формирователь импульсов этой ветви, который формирует один набор бит, соответствующих h-му байту восстановленных данных. Байты следуют в том же порядке, в каком они были записаны в ЗУ 1. Каждый из них подается на выход формирователя данных 12. Восстановленные данные имеют вид
i=1,…,8; j=1, 2… (11) и передаются на дешифрователь 13.
Формирователь данных 12 может быть выполнен в виде запоминающего устройства, содержащего все требуемые сигналы и из которого они могут быть извлечены по соответствующим входным сигналам управления. Формирователь данных 12 может быть выполнен в виде ПЛИС [13, 14, с. 494, 534] или ее разновидности либо варианта ПЛИС, который может быть создан в будущем. Сигналы управления позволяют реализовать должные ЛФ, получить требуемые последовательности байтов. Все варианты выполнения обеспечивают один и тот же технический результат.
4.13 Дешифрователь. Устройство 13 предназначено для дешифрования полученных из ЗУ 1 зашифрованных путем двухоперационного шифрования данных в соответствии с ключами дешифрования (12) по правилам (13), то есть в соответствии с величинами, формируемыми генератором ключей дешифрования 14 для каждого слота. Используются схемы и формируются ЛФ, сходные с теми, которые предназначены для проведения шифрования и записи (примером является выражение (14)), с тем отличием, что линга-нум восстановления имеет другой вид. Указанные схемы могут быть реализованы, например, на логических элементах "И", "ИЛИ", "НЕ" [12, 13] либо на ПЛИС. Операция дешифрования реализуется с помощью преобразователя ключей дешифрования 28, ЛУ дешифрования 29 и сопрягающего устройства дешифрователя 30.
Преобразователь ключей дешифрования 28 сходен с преобразователем ключей шифрования 21, разница связана с отличиями линганумов. Величины Г', формируемые генератором ключей дешифрования 14 для любого слота, получаются в результате сортировки по изложенным ранее правилам, с применением значений сигналов генераторов ключей шифрования 3 и шифрования кодов 8, что рассмотрено на примере и получены выражения (15) - (18).
Сортировка позволяет добиться унификации путем использования одинаковых операций и схем при дешифровании и при шифровании (различия заключаются в сигналах управления инверторами). Составление ЛФ восстановления байтов путем дешифрования осуществляется таким же образом, как и при реализации операции шифрования.
Приведены операции, выполняемые для любого слота, индексы слот не указаны, они просто добавляются к другим индексам. Введено обозначение V=Vi,j,k - сигналы управления инверторами дешифрователя, используемые в ЛУ дешифрования 20, где i - индекс для нумерации бит; j - индекс вариации байтов; k - индекс компонент ЛФ.
Схема реализации преобразователя ключей дешифрования 28. В этой схеме для формирования V=Vi,j,k имеется вход для значений линганума конкретного слота Г'(t), передаваемых на первый вход дешифрователя 13 от генератора ключей дешифрования 14, а также используется генератор байтов системы кодирования.
Эти заранее известные байты по аналогии с формулой (5) обозначены (Х'i,j, i=1,…,8; j=1, 2,…, g3)=[(X'1,1;X'2,1,…; X'8,1); (X'1,2; X'2,2;…;X'8,2);…;(X'1,256; X'2,256; …; X'8,g3);…]. Величины этих байтов, выполняющие роль эталонов, принимают значения целых десятичных чисел от 0 до (g3-1) либо требуемых величин в двоичной системе исчисления.
Генератор байтов Х'i,j системы кодирования может быть выполнен на регистрах с весовыми отводами и сумматорами [8] или в виде запоминающего устройства. Последовательность изменения сигналов систем кодирования (как в формуле (4)) задается программатором слот 17 (п. 4.15). Генератор байтов запускается после изменения ключей дешифрования слота. Величины Х'i,j - эталонные числовые значения байтов, используемые в коротком подготовительном режиме в начале любого слота для получения сигналов Vi,j,k установки инверторов, применяются в рабочем режиме в ЛУ дешифрования 29.
Далее на логических элементах "НЕ" и "И" многократно реализуется операция V=С⋅В* для всех бит (i=1,…, 8) каждого j-го байта. Аналогичные схемы для разных значений j=1,…, g1 позволяют получить требуемые ЛФ для сигналов управления всеми инверторами ЛУ дешифрования 29.
Сопрягающее устройство дешифрователя 30 предназначено для согласования сопротивлений ЛУ дешифрователя 29 с линией передачи, по которой из УХПДСШ подаются выходные данные или для согласования формы представления данных.
Согласование, обеспечивающееся сопрягающим устройством 30, позволяет энергетически эффективно и без искажений передать данные на выход УХПДСШ. Согласование формы данных может заключаться, например, в преобразовании последовательной передачи байтов в параллельное следование байтов или в использовании известных протоколов либо стандартов передачи/приема данных.
В несогласованных линиях связи возможны искажения данных [14, с. 29-32]. Они могут быть снижены путем применения устройств согласования [14, с. 32-40] или стандартов ввода/вывода данных [14, с. 43-53], что также обеспечивается сопрягающим устройством 30. Оно может быть выполнено на пассивных или на активных элементах (транзисторах, микросхемах) или в виде универсальной последовательной шины USB. Для любого варианта обеспечивается одинаковый технический результат.
Работа преобразователя ключей дешифрования 28. После подключения электропитания в начале работы и при смене слота запускается генератор ключей дешифрования 14 и генератор байтов системы кодирования, заранее избранной пользователем для данного d-го слота. Далее устанавливаются сигналы управления инверторами. В итоге преобразователь ключей дешифрования 28 трансформирует ключи дешифрования слота в управляющие сигналы инверторов, расположенных в ЛУ дешифрования 29.
ЛУ дешифрования 29 предназначено для выполнения операции дешифрования принятых из ЗУ 1 зашифрованных байтов путем их перенумерования в соответствии с линганумом восстановления данных для этого слота, с использованием напряжений управления инверторами в данном слоте. Для воплощения этой задачи требуется использовать схемы, реализующие ЛФ, ранее рассмотренные на примере выражения (14). Схемотехнически ЛУ дешифрования 29 может быть реализовано на логических элементах "И", "ИЛИ", "НЕ" или на ПЛИС.
Инверторы I'i,j,k, посредством которых осуществляется инвертирование требуемых аргументов ЛФ по правилам [12, 13], управляются сигналами Vi,j,k, вырабатываемыми преобразователями ключей дешифрования 28 в подготовительном режиме на любом слоте. В результате предварительной установки инвертируются лишь необходимые для проведения дешифрования данных биты. В рабочем режиме на входы инверторов поступают байты зашифрованных данных.
ЛУ дешифрования 29 состоит из формирователей компонент F'1,j; F'2,j; …; F'8,j каждого j-го байта (это произведение бит, часть которых может быть инвертирована) и сумматоров указанных компонент для получения набора ЛФ дешифрования (F'1; F'2; …; F'8) для всех значений j=1,…, g1m (например, g1m=256), что справедливо для всех слот.
Сущность операций ЛУ дешифрования 29. Схема одного из возможных вариантов реализации формирователя компонент ЛФ состоит из инверторов I'i,j,k, i=1,…, 8,…; j=1,…, g1m; k=1,…, 8,… и перемножителей двоичных сигналов (8-ми входовых элементов "И" для получения произведения восьми значений бит каждого из байтов, некоторые из которых инвертированы). В режиме восстановления данных на любом слоте на вход формирователей компонент ЛФ подаются значения принятых из ЗУ 1 зашифрованных данных, которые являются в этом случае входными сигналами и аргументами ЛФ. У инверторов, как и при шифровании, имеется вход для сигналов управления Vi,j,k (i - индекс для изменения бит входных байтов; j - индекс вариации входных байтов; k - индекс компонент ЛФ). В результате на выходе этих схем имеются значения компонент ЛФ дешифрования (F'1,j;F'2,j; …;F'8,j).
Для получения набора ЛФ дешифрования для любого слота проводится суммирование этих слагаемых по всем возможным значениям индекса j, что реализуется сумматорами компонент (схемами "ИЛИ"). На каждую из таких схем поступают сигналы от формирователей этих компонент, то есть слагаемые ЛФ для различных значений индекса j. В результате компоненты, относящиеся к одной и той же ЛФ, но для разных значений j, суммируются на g1 - входовых элементах "ИЛИ" (например, g1=256). После суммирования компонент вырабатывается набор ЛФ дешифрования F'=(F'1; F'2;…; F'8), которые в рабочем режиме соответствуют разрядам восстановленных при дешифровании байтов (8).
В рабочем режиме на любом слоте на вход ЛУ дешифрования 29 подаются сигналы управления инверторами Vi,j,k и зашифрованные данные. В результате согласно ЛФ дешифрования F' реализуются операции перенумерования принятых из ЗУ 1 зашифрованных байтов, что приводит к восстановлению данных, то есть Хвых=Хвх. Схемы дешифрователя 13 могут быть выполнены на логических элементах или в виде ПЛИС [13, 14, с. 494, 534]. Все варианты обеспечивают одинаковый технический результат.
4.14 Генератор ключей дешифрования. Этот генератор 14 предназначен для формирования сигналов, соответствующих лингануму (ключам) дешифрования на каждом слоте. Его сигналы представляют набор байтов (блоков), числовые значения каждого из которых соответствуют j-му элементу в выражении (12), представленному в двоичной системе.
Генератор 14 может быть выполнен на элементах дискретной схемотехники, например, на регистрах сдвига с отводами [8]. К соответствующим отводам подключены инверторы, что позволяет получить на сумматоре сигналы от всех отводов, соответствующие требуемой числовой комбинации бит (необходимые байты линганума дешифрования). Генератор 14 может быть выполнен в виде запоминающего устройства, в которое записаны все требуемые сигналы и из которого они могут быть извлечены.
Генератор ключей дешифрования 14 может быть выполнен в виде ПЛИС [13, 14, с. 494, 534] или ее разновидности либо варианта, который может быть создан в будущем. Сигналы управления позволяют реализовать должные ЛФ, получить требуемые байты. Все варианты выполнения обеспечивают один и тот же технический результат.
4.15 Программатор слот. Это устройство 17 генерирует импульсные сигналы, которые предназначены для определения порядка выполнения требуемых для управления работой заявленного устройства действий и режимов работы. Программатор 17 содержит генератор слот 32 и синхронизатор 31.
Режим блокировки (до окончания интервала времени приема/передачи данных) может быть реализован сдвигом слот шифрования и дешифрования, чтобы они не пересекались. Это возможно подачей через одну из ЛС 15, 18 импульса приостановки на некоторое время формирования одного из видов ключей. При ином варианте блокировки подаются ключи, состоящие из одинаковых значений.
В режиме работы, когда генераторы ключей 3, 8, 14 выполнены в виде запоминающих устройств с записанными в них ключами шифрования и дешифрования, синхронизатор 31 на выходах 1 -3 программатора слот 17 формирует одновременно импульсы запуска, то есть t0=t'0, как на фиг. 1. Они передаются через выходы программатора слот 17 на ЛС 15, 16, 18 и поступают на генераторы 3, 8, 14, в результате одновременно начинаются вырабатываться ключи для соответствующих слот и реализуются изложенные ранее операции. В качестве управляющих импульсов могут быть применены разные ФМС не входящие в формуляр. Сигналы могут формироваться синхронизатором 31. Проводится установка генераторов сигналов, определяющих систему кодирования на слотах в шифраторе и дешифраторе. Генератор слот 32 формирует ключи шифрования и дешифрования, которые могут быть переданы на соответствующие генераторы ключей шифрования, дешифрования, установки систем кодирования, длительностей слот, запуска считывания.
Рабочим является также режим, когда осуществляется приостановка варьирования ключей шифрования и дешифрования, то есть происходит фиксация ключей на некоторый срок. Это может быть связано с необходимостью передачи данных большего объема, для чего требуется слот большой длительности. При этом приостанавливается работа генераторов 3,14 путем подачей соответствующих сигналов, но при этом напряжения управления и состояния инверторов в шифрователе 4 и дешифрователе 13 не меняются.
Аналогично периодически может реализовываться режим синхронизации начала воспроизведения слот, так чтобы слоты шифрования и дешифрования совпадали по времени. При движении объекта, на котором установлена приемная часть УХПДСШ, тоже при необходимости реализуется требуемый режим синхронизации слотов.
Возможен вариант работы, в котором генераторы ключей 3, 8,14 выполнены в виде, например, регистров с отводами и инверторами (п. 4.3, 4.8,4.10, [8]). Тогда генератор слот 32 формирует последовательность знаков кодов (±1), которые передаются с выходов 1-3 программатора слот 17 на указанные генераторы, которые формируют сами ключи.
Ключи шифрования и дешифрования могут быть в виде повторяющихся совокупностей ключей множества слот.
Программатор 17 может быть выполнен на элементах дискретной схемотехники, ПЛИС, в виде запоминающего устройства (в зависимости от назначения и режимов работы). Все варианты выполнения обеспечивают один и тот же технический результат.
5. Работа заявленного устройства. На подготовительном этапе для каждого слота выставляются напряжения управления инверторами логических устройств шифрователей и дешифрователей на основе систем кодирования, действующих на слоте, устанавливаются сигналы управления блоками коммутаторов и переключателей. В режиме работы входные блоки перенумеруются в соответствии с ключами шифрования и передаются по ЛС 2 на приемную сторону заявленного устройства, где реализуется дешифрование и восстановление выходных сигналов, тождественных входным данным.
На примере одного слота фиксированной длительности и системы ASCII рассмотрены операции записи, хранения и восстановления данных в виде текста, применен вариант линганума (4) (однооперационное шифрование) из таблицы фиг. 5 (текст из слова yES). В полной таблице системы кодирования символ "у" соответствует числу 121 (в источнике [20] используется термин код) с номером по порядку j=122. Пусть указанный символ перенумеруется в число 11, также для других символов: "Е" - 69→169; "S" - 83→183.
Для иллюстрации двухоперационного шифрования выбраны ключи шифрования кодов, заданные последовательностью (16), совместной с ключами шифрования данных таблицы фиг. 5, что определяет ключи двухоперационного шифрования (17). Операции перенумерования выполняются шифрователем 4, данные сохраняются в ЗУ 1.
Зашифрованные данные через ЛС 2 передаются на восстанавливающую, приемную сторону, фильтруются в ПУ 11. Дешифрователь 13 воспроизводит исходные сигналы по ключам дешифрования, которые соответствуют последовательности (17).
При восстановлении данных с помощью случайно выбранного из всех возможных вариантов линганума восстановления данных (кодов дешифрования), применим, например, тот, в котором значения следуют в порядке возрастания (фиг. 5), без требуемой для верного шифрования сортировки. Тогда зашифрованные символы со значениями 121, 69, 83 будут расшифрованы как знаки со значениями 11,169,183 (по порядку номеров это символы 12,170, 184). Отмечалось, что число и индекс в таблицах различаются на единицу. В результате вместо текста "yES" будут получены символы [20]. Использование ложного линганума приводит к искаженному восстановлению данных. В случае применения верного линганума восстановления (выражение (18)), как было показано ранее, данные воспроизводятся без искажений. Линганум должен держаться в секрете.
Работа заявленного устройства на любом слоте начинается с подготовительного этапа и задания пользователем в генераторе ключей шифрования 3 (п. 4.3) значений линганума (4), эталонной системы кодирования на d-м слоте. Это позволяет в преобразователе ключей шифрования 21 определить величины сигналов управления инверторами Ui,j,k (i - индекс нумерации бит входных байтов; j - индекс вариации входных байтов; k - индекс нумерации компонентов ЛФ шифрования), по которым устанавливаются режимы работы инверторов Ii,j,k (всех бит каждого байтов и для всех ЛФ) ЛУ шифрования 20 (п. 4.4). В рабочем режиме записи и сохранения на вход шифрователя 4 подаются данные (5), которые шифруются (6), (7) и записываются в ЗУ 1 (п. 4.1), далее реализуется шифрование кодов путем установления взаимного соответствия записанных в ЗУ 1 байтов и кодов генератора 10.
Восстановление данных на каждом слоте также начинается с задания пользователем в генераторе ключей дешифрования 14 значений линганума (ключей) восстановления (12), полученных заранее в результате проведения операции сортировки, эталонной системы кодирования на d-м слоте. На подготовительном этапе в преобразователе ключей дешифрования 28 дешифрователя 13 (п. 4.13), определяются величины сигналов управления инверторами дешифрователя Vi,j,k (i - индекс бит каждого байта; j - индекс вариации байтов; k - индекс нумерации компонент ЛФ), по которым устанавливаются режимы работы инверторов I'i,j,k (всех бит любого байта, для каждой ЛФ дешифрования).
Далее устройство управления 5 формирует сигналы для начала считывания данных из ЗУ 1 (п.4.5), запускается генератор импульсов адресов, управляющий считыванием байтов из ЗЯ (п.4.1) и передачей байтов на ЛС 2. После окончания считывания процесс завершается до прихода следующего сигнала
который предназначается для начала процедуры передачи и дальнейшего восстановления данных на выходе УХПДСШ и может создаваться различным образом. Например, нужный сигнал может запускаться вручную пользователем, получающим выходные данные (путем сдвига переключателя), вручную администратором УХПДСШ либо путем использования генератора, работающего в автоколебательном режиме и устанавливающего периодичность восстановления данных любого слота, например, через каждую минуту, час, сутки и так далее.
После считывания данных из ЗУ 1 формирователь импульсов запуска 6 (п. 4.6) формирует импульсы запуска генератора кодов 10 (п. 4.10), которые позволяют сформировать коды ансамбля с такими порядковыми номерами из формуляра, которые создаются генератором ключей шифрования кодов 8. По сигналам этого генератора происходит шифрование номеров кодов из формуляра. В блоке управления коммутаторами 9 вырабатываются сигналы установки режимов коммутаторов блока коммутаторов 7, в результате чего вводится взаимное однозначное соответствие байтов, считанных из ЗУ 1 и кодов, посредством которых происходит передача данных по ЛС 2 из запоминающей, передающей части на восстанавливающую, приемную (от входа к выходу, фиг.2). Принятые коды направляются в ПУ 11 (п. 4.11), которое формирует сигналы распознавания кодов, подаваемые далее на вход формирователя данных 12 (п. 4.12). Формирователь регенерирует структуру байтов, полученных на передающей стороне в виде результата двухоперационного шифрования и перенаправляет байты на вход дешифрователя 13 (п. 4.13). Зашифрованные данные воссоздаются (13) в дешифрователе 13 в исходном виде и поступают на выход (фиг. 2). Операция восстановления данных на каждом слоте завершается.
Важно заметить, что после формирования необходимых сигналов управления генераторы ключей 3, 8 и 14 могут быть отключены. При отключенном питании всего УХПДСШ сигналы установки инверторов не сохраняются и без ввода ключей шифрования и дешифрования использовать заявляемое устройство в рабочем режиме невозможно (сохраняются лишь данные в энергонезависимом ЗУ 1), несанкционированный доступ исключен. Сбросить настройки инверторов можно путем задания ключей шифрования (дешифрования), которые равны одной и той же величине.
Сопрягающие устройства 19, 30 могут работать по стандарту USB ли любому другому более быстродействующему стандарту, который может быть создан позже.
Элементами системы кодирования могут быть медиа-файлы. Тогда после приема блока данных запускается выходной терминал воспроизведения соответствующего медиа-файла, воссоздающий его до конца. При этом следующие медиа-файлы должны отображаться на других выходных терминалах либо в других окнах этого терминала, если воспроизведение ранее запущенных медиа-файлов не завершено.
6. Обоснование достижения технического результата. Технический результат, заключающийся в обеспечении энергетически скрытной передачи зашифрованных данных пользователю по линии связи, обеспечивается передачей кодов ансамбля на уровне ниже уровня шумов (ρ2<<1, где ρ2 - отношение мощностей ШПС и помех) [8]. Отношения сигнал/шум на выходе СФ или коррелятора при оптимальном приеме в 2⋅В раз больше, чем на входе [8, с. 6]. Необходимо использовать коды ансамбля с базой B>>1 (представлены коды с В=N=30), чем больше база, тем больше превышение над шумами и выше скрытность [8, с. 9]. При несанкционированном доступе потребуется использование специальных методов и устройств для решения вопроса передаются ли какие-то сигналы, либо имеется только шум [8, с. 6]. Применение приемного устройства, состоящего из совокупности СФ для каждого кода ансамбля на любом слоте, позволяет осуществить оптимальное обнаружение и различение сигналов при наличии шумов [8].
7. Защищенность заявляемого устройства от несанкционированного доступа.
Несанкционированный доступ может осуществляться лишь путем перебора всех возможных вариантов преобразования номеров байтов (их количество равно факториалу (g1m)!) и версий ШПС, определяемых числом сочетаний Cg3g1m, а также анализа получаемых при этом результатов. Для каждого варианта при g1=g1m=256, g3=259 требуется затрачивать существенный интервал времени. Чтобы установить наличие информативной значимости в полученных данных (определить имеется ли в них смысл), требуется быстродействующая интеллектуальная система, что увеличивает затраты времени.
Статистические методы нахождения ключей дешифрования в данном случае не применимы. Для любого набора ключей дешифрования будут получены выходные данные, они верны лишь для единственного набора ключей дешифрования. Количество вариантов перебора ключей шифрования при двухоперационном шифровании на каждом слоте равно (g1m - наибольшее количество элементов в системе кодирования для каждого слота, g3 - количество кодов из числа которых может быть сделан выбор кодов ансамбля, этот параметр может быть равен тысячам, десяткам тысяч и более [8, 9]), то есть увеличение численности вариаций нелинейно больше, чем при любом однооперационном, во столько же раз выше защищенность от несанкционированного доступа.
Вклад ключей шифрования (по D элементов последовательностей Ψ и G1) длительностей слот и ключей шифрования систем кодирования для каждого слота можно оценить максимальной величиной произведения (D!)2. С учетом этого оценка количества вариантов перебора ключей шифрования равна то есть имеется нелинейный рост.
Длительности слот должны быть меньше оценочного интервала времени, требуемого для перебора всех вариантов и несанкционированного дешифрования с учетом имеющихся вычислительных возможностей. Следовательно, для достижения требуемой защищенности данных всегда возможно выбрать необходимо малую длительность слот. Доказано, что в случае, когда для каждого символа сообщения (в нашем случае блока) используется одноразовый ключ, то система является нераскрываемой (идеальной) [3, с. 66]. Однако надо учитывать также длительности требуемого времени в конкретных случаях при решении всей задачи хранения и передачи данных.
Предотвращение возможности несанкционированного доступа повышает безопасности передачи информации от источника к пользователю. Ключи шифрования необходимо держать в секрете, часто обновлять.
8. Некоторые варианты применения заявляемого устройства.
Для сбора и передачи данных об области пространства, из которого невозможно либо нежелательно (чтобы не осуществить демаскировку местонахождения) передать данные пользователю. Например, шахта, область под водой, аномальная часть суши. Тогда данные накапливаются в ЗУ, а потом из области пространства, откуда по ЛС может быть осуществлена передача данных (на поверхности земли, над водой, в безопасном пространстве), осуществляется скрытная передача зашифрованных данных оптимальным образом непосредственно пользователю или через ретранслятор. Для сокрытия координат места передачи возможно размещение одно- или многоразовых передатчиков хаотических сигналов на некотором отдалении от места передачи данных, что дополнительно маскирует отправку полезных сигналов. Ключи могут быть записаны для всего периода эксплуатации (например, на несколько лет или до появления обновленной версии устройства).
При наличии опасности перехвата заявленного устройства целесообразно некоторые устройства, входящих в приемную часть, расположить непосредственно у пользователя данных. Без знания ключей дешифрования, длительностей слотов, систем кодирования данных, времени начального запуска затруднительно несанкционированно воспроизвести данные из ЗУ. Вместе с тем законный пользователь это реализует благодаря соответствующим сигналам программатора слот. Указана возможность блокировки заявленного устройства при потере контроля над ним (п. 4.15). Объектами могут быть, например, робототехнические системы, летательные и плавательные аппараты.
Входными сигналами заявленного устройства могут быть данные, полученные в результате работы некоторой интеллектуальной системы (ИС), то в качестве одного из вариантов системы кодирования может быть выбрана система, элементами которой являются медиа-файлы (например, фото, видео, текст, план, схема, карта), являющиеся возможными результатами деятельности этой ИС. Тогда пользователь получит не исходные данные, а результаты анализа ИС (досье, тип объекта, порядок выполнения операций).
При проектировании размер слот удобно измерять в количестве блоков (с учетом переходных процессов), которые могут быть записаны (считаны) на каждом слоте.
Контакты ЛС 2 (фиг.2) могут быть соединены напрямую (непосредственное соединение запоминающей и восстанавливающей частей для передачи данных после хранения). Тогда линией связи 2 являются соединительные проводники выхода конечного элемента схемы генератора кодов ансамбля 10 и входные проводники схемы ПУ 11.
9. Электропитание, разъемы. Энергообеспечение может обеспечиваться от стационарных источников и от малогабаритных аккумуляторов. Типы разъемов зависят от соединителей источников входных и выходных данных, типа линий связи (соединители типа USB, штекеры, высокочастотные разъемы с экранированием и заземлением).
Библиографический список
1. Патент RU №2506633, "Устройство хранения данных"; МПК G06F 12/14, G11C 16/22, G06F 21/60; опубликовано 10.02.2014, Бюл. №4.
2. Патент RU №2326500, "Когерентная система передачи информации хаотическими сигналами"; МПК H04L 9/00; опубликовано 10.06.2008, Бюл. №16.
3. Романец Ю.В., Тимофеев П.А., Шаньгин В.Ф. Защита информации в компьютерных системах и сетях. - М.: Радио и связь, 2001. - 376 с.
4. Патент RU №2342697, "Портативное устройство хранения данных с системой шифрования"; МПК G06F 12/14; опубликовано 27.12.2008, Бюл. №36.
5. Патент RU №2791560, "Устройство хранения и передачи данных с системой шифрования"; СПК H04L 9/00 (2022.08); H04L 9/12 (2022.08); опубликовано 10.03.2023, Бюл. №7.
6. Чепруков Ю.В., Соколов М.А Синтез фазоманипулированных сигналов с требуемым уровнем боковых пиков АКФ// Радиотехника. 1991. №5. С.68-70.
7. Чепруков Ю.В., Соколов М.А. Бинарные R2-коды, их характеристики и применение// Информационно-управляющие системы. 2014. №1. С. 76-82.
8. Варакин Л.Е. Системы связи с шумоподобными сигналами. - М.: Радио и связь, 1985. - 384 с.
9. Чепруков Ю.В., Соколов М.А. Корреляционные характеристики и применение некоторых бинарных R3-кодов // Информационно-управляющие системы. 2014. №3. С. 93-102.
10. Чепруков Ю.В., Соколов М.А. Корреляционные характеристики некоторых бинарных R4-кодов и ансамблей сигналов на их основе // Информационно-управляющие системы. 2014. №5. С. 87-96.
11. Чепруков Ю.В. Синтез бинарных R-кодов // Информационно-управляющие системы. 2015. №1.С.59-67.
12. Бойко В.И. и др. Схемотехника электронных систем. Цифровые устройства. - СПб: БХВ-Петербург, 2004.-512 с.
13. Лехин С.Н. Схемотехника ЭВМ. - СПб: БХВ-Петербург, 2010. - 672 с.
14. Угрюмов Е.П. Цифровая схемотехника.- СПб.: БХВ-Петербург, 2004. - 800 с.
15. Электроника. Энциклопедический словарь. Гл. ред. Колесников В.Г., - М. Сов. энциклопедия, 1991, - 688 с.
16. Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы.-СПб.: Питер, 2002. - 672 с.
17. Бугаев А.С., Дмитриев В.Ф., Кулаков С.В. Устройства на поверхностных акустических волнах: учеб. пособие / А.С. Бугаев, В.Ф. Дмитриев, С.В. Кулаков. - СПб.: ГУАП, 2009. - 188 с.
18. https://www.booksite.ru/fulltext/1/001/008/045/201.htm, 28.03.2023 г.
19. https://www.booksite.ru/fulltext/1/001/008/084/692.htm. 28.03.2023 г.
20. https://www.industrialnets.ru/files/misc/ascii.pdf, 31.03.2023 г.
Изобретение относится к области радиотехники и к средствам вычислительной техники, устройствам хранения и помехоустойчивой скрытной передачи подвергнутых шифрованию данных при наличии шумов с использованием конечного множества шумоподобных сигналов. Технический результат заключается в обеспечении энергетически скрытной передачи зашифрованных данных пользователю по линии связи. Устройство содержит запоминающее устройство, линии связи, устройство управления, формирователь импульсов запуска, генераторы ключей (шифрования и дешифрования данных и кодов), шифрователь данных, дешифрователь, блок коммутаторов, блок управления коммутаторами, приемное устройство, формирователь данных, программатор слот. 12 з.п. ф-лы, 6 ил.
1. Система хранения и передачи данных с синхронизируемым шифрованием, содержащая запоминающее устройство, линию связи, генератор ключей шифрования, шифрователь, дешифрователь, устройство управления, генератор кодов ансамбля, приемное устройство, формирователь данных, генератор ключей дешифрования, вместе с этим
первый вход шифрователя соединен с входом всего устройства, второй вход шифрователя подключен к выходу генератора ключей шифрования, выход шифрователя соединен с первым входом запоминающего устройства, второй вход запоминающего устройства соединен с выходом устройства управления, выход генератора кодов ансамбля подключен к входу линии связи, выход линии связи соединен с входом приемного устройства, выход приемного устройства подключен к входу формирователя данных, выход которого соединен с вторым входом дешифрователя, выход дешифрователя является выходом всего устройства, первый вход дешифрователя соединен с выходом генератора ключей дешифрования, также
генератор кодов ансамбля формирует множество импульсных кодов, удовлетворяющих таким условиям, что уровень боковых пиков автокорреляционной функции каждого из них не превышает положительного числа R, где R<um - наибольшее значение модуля автокорреляционных функций этих кодов, а уровень боковых пиков взаимной корреляционной функции каждого кода не превосходит положительного числа W, где W<um,
отличающаяся тем, что дополнительно введены
формирователь импульсов запуска, блок коммутаторов, генератор ключей шифрования кодов, блок управления коммутаторами, программатор слот, линия связи шифрователя, линия связи дешифрователя, линия связи блока коммутаторов, кроме этого вход линии связи шифрователя соединен с первым выходом программатора слот, выход линии связи шифрователя подключен к входу генератора ключей шифрования, вход линии связи блока коммутаторов соединен с вторым выходом программатора слот, выход линии связи блока коммутаторов подключен к входу генератора ключей шифрования кодов,
вход линии связи дешифрователя соединен с третьим выходом программатора слот, выход линии связи дешифрователя подключен к входу генератора ключей дешифрования, выход запоминающего устройства соединен с входом формирователя импульсов запуска, выходы формирователя импульсов запуска соединены с первой функциональной группой входов блока коммутаторов, вторая функциональная группа входов блока коммутаторов подключена к соответствующим функциональным группам выходов блока управления коммутаторами, входы блока управления коммутаторами подключены к выходу генератора ключей шифрования кодов, выходы блока коммутаторов представляют собой функциональные группы, соединенные с соответствующими группами входов генератора кодов ансамбля,
генератор ключей шифрования формирует сигналы, соответствующие ключам шифрования данных L(t), определяемым соотношением:
где Ψ=(, d=1, 2, …, D) - последовательность ключей шифрования длительностей слот;
G1=(g1d, d=1, 2, …, D) - последовательность ключей шифрования систем кодирования для различных слот;
i, j - индексы бит и блоков;
td=td-1+ - окончание d-го слота длительностью
≥0;
g1d - количество символов в системе кодирования данных, выбранной на d-м слоте;
g2d - количество элементов в блоке на d-м слоте;
Ld - последовательность варьируемых значений в двоичном и десятичном представлении для любого из d=1, 2, …, D слот, каждое значение в скобках является одним из целых положительных чисел от 0 до (g1d-1), используемым при составлении этой последовательности лишь однажды,
шифрователь формирует сигналы , j=1, 2, …, d=1, 2, D, исходя из условий:
"Если" Хвхj,d=0, "ТО" =L1,d, или
"Если" Хвхj,d=1, "ТО" =L2,d, или
"Если" Хвхj,d=2, "ТО" =L3,d, или …
"Если" Хвхj,d=(g1d-1), "ТО" =Lg1d,d,
где j=1, 2, …, d=1, 2, …, D - индексы нумерации блоков и слот;
Хвхj,d - значение j-го блока входных данных на d-м слоте;
- значение j-го блока после шифрования на d-м слоте;
L1,d; L2,d; …, Lg1d,d - последовательность значений ключей шифрования на d-м слоте;
g1d - количество символов в системе кодирования данных на d-м слоте;
g1d≤g3 - количество кодов или сигналов на их основе в формуляре;
генератор ключей шифрования кодов формирует сигналы, соответствующие ключам шифрования номеров кодов M(t) в виде:
где G1=(g1d, d=1, 2, …, D) - последовательность ключей шифрования систем кодирования для различных слот;
g1d - количество символов в системе кодирования, избранной на d-м слоте, g1d≤g3;
g3 - количество кодов или сигналов на их основе в формуляре;
g2d - количество элементов в блоке на d-м слоте;
td=td-1+ - окончание d-го слота длительностью
≥0;
Ψ=(, d=1, 2, …, D) - последовательность ключей шифрования длительностей слот;
Md - последовательность варьируемых значений в двоичном и десятичном представлении для любого d=1, 2, …, D слота, каждое значение скобках является одним из целых положительных чисел от 0 до (g3-1), используемым при составлении этой последовательности лишь однажды,
формирователь данных вырабатывает сигналы согласно правилам:
"Если" =0, "ТО"
=M1,d, или
"Если" =1, "ТО"
=М2,d, или
"Если" =2, "ТО"
=М3,d, или …
"Если" =(g1d-1), "ТО"
=Mg,d,
где j=1, 2, … - индекс нумерации блоков, d=1, 2, …, D - индекс вариации слот;
- значение j-го блока после двухоперационного шифрования;
- значение j-го блока после первого шифрования сигналов данных;
М1,d; М2,d; …, Mg,d - последовательность значений ключей шифрования кодов;
g=g1d - количество используемых кодов и символов в системе кодирования на d-м слоте, генератор ключей дешифрования для d-го слота формирует сигналы, соответствующие следующим элементам:
где g1d - количество кодов в системе кодирования на d-м слоте;
g1d≤g3 - количество кодов или сигналов на их основе в используемом ансамбле;
g2d - количество элементов в блоке на d-м слоте;
Г'd - последовательность значений в двоичном и десятичном представлении для любого из d=1, 2, …, D слот, каждое значение в скобках является одним из целых положительных чисел от 0 до (g3-1), используемым при составлении этой последовательности лишь однажды;
t'd=t'd-1+ - окончание d-го слота длительностью
≥0;
Ψ'=(, d=1, 2, …, D) - последовательность ключей шифрования длительностей слот;
i, j - индексы бит и блоков ключей Г'i j,d на d-м слоте, причем
элементы ключей дешифрования Г'd=Г'j,d, 1≤j≤g3, d=1, 2, …, D, получены так, что порядковые номера j элементов последовательности ключей шифрования Гj,d, j=1, 2, …, на d-м слоте уменьшаются на единицу и меняются местами с значениями элементов этой последовательности, порядковые номера новой числовой последовательности увеличиваются на единицу и элементы полученной последовательности со своими измененными порядковыми номерами расставляются в порядке возрастания этих номеров, вместе с тем элементы последовательности Гj,d, j=1, 2, …, на d-м слоте получены так, что произвольный k-й элемент, k=1, 2, …, последовательности Гd в десятичном представлении равен значению такого элемента последовательности Md в десятичном представлении на выбранном слоте, у которого значение индекса j равно увеличенной на единицу величине этого k-го элемента в последовательности Ld в десятичном представлении, либо определены так, что любой k-й элемент последовательности Гd равен значению такого элемента из последовательности Md, у которого значение уменьшенного на единицу индекса j равно величине выбранного k-го элемента в последовательности Ld,
программатор слот осуществляет синхронизацию операций формирования ключей шифрования и ключей дешифрования на каждом d-м слоте, d=1, 2, …, D,
дешифрователь преобразует двухоперационно зашифрованные на любом слоте значения в выходные данные Хвых этого слота по правилам перенумерования:
"Если" =0, "ТО" Хвыхj,d=Г'1,d, или
"Если" =1, "ТО" Хвыхj,d=Г'2,d, или
"Если" =2, "ТО" Хвыхj,d=Г'3,d, или …
"Если" =(g3-1), "ТО" Хвыхj,d=Г'g3,d,
где j=1, 2, …, d=1, 2, …, D - индексы нумерации блоков и слот;
- значение j-го блока на d-м слоте до дешифрования;
Xвыхj,d - значение j-го блока выходных данных, соответствующих d-му слоту;
g3 - количество кодов или сигналов на их основе в формуляре;
Г'1,d; Г'2,d; …; Г'g3,d - последовательность ключей дешифрования данных на d-м слоте.
2. Система по п. 1, отличающаяся тем, что шифрователь содержит преобразователь ключей шифрования, логическое устройство шифрования и сопрягающее устройство шифрователя, вход преобразователя ключей шифрования соединен с вторым входом шифрователя, выход преобразователя ключей шифрования подключен к второму входу логического устройства шифрования, первый вход логического устройства шифрования соединен с выходом сопрягающего устройства шифрователя, вход сопрягающего устройства шифрователя соединен с первым входом шифрователя и всего устройства, выход логического устройства шифрования подключен к выходу шифрователя; шифрователь выполнен на логических элементах или программируемых логических матрицах; сопрягающее устройство шифрователя выполнено на пассивных элементах, или на транзисторах, или на микросхемах, или в виде универсальной последовательной шины USB.
3. Система по п. 1, отличающаяся тем, что дешифрователь содержит сопрягающее устройство дешифрователя, преобразователь ключей дешифрования и логическое устройство дешифрования, вход преобразователя ключей дешифрования является первым входом дешифрователя, выход преобразователя ключей дешифрования соединен с первым входом логического устройства дешифрования, второй вход логического устройства дешифрования является вторым входом дешифрователя, выход логического устройства дешифрования соединен с входом сопрягающего устройства дешифрователя, выход которого подключен к выходу дешифрователя и всего устройства; дешифрователь выполнен на логических элементах или программируемых логических матрицах; сопрягающее устройство дешифрователя выполнено на пассивных элементах, или на транзисторах, или на микросхемах, или как универсальная последовательная шина USB.
4. Система по п. 1, отличающаяся тем, что линии связи представляют собой совокупность технических средств, таких как модулятор, передатчик, приемник, демодулятор, и физическую среду, такую как газ, или жидкость, или твердое тело, или вакуум; линия связи является линией проводной электрической связи, или радиосвязи, или линией звуковой акустической связи, или линией световой оптической связи; линии связи выполнены в виде проводников элементов схем, или волоконно-оптического кабеля, или коаксиального кабеля, или волновода, или звукопровода, или витой пары, или радиоканала наземной либо спутниковой связи.
5. Система по п. 1, отличающаяся тем, что формирователь импульсов запуска выполнен на логических элементах или программируемых логических матрицах.
6. Система по п. 1, отличающаяся тем, что генератор ключей шифрования выполнен на элементах дискретной схемотехники, или в виде запоминающего устройства, или на программируемых логических матрицах.
7. Система по п. 1, отличающаяся тем, что генератор кодов ансамбля формирует g3 импульсных кодов или сигналов на их основе и выполнен в виде устройств на поверхностных акустических волнах или элементах дискретной схемотехники или в виде запоминающего устройства или на программируемых логических матрицах для непосредственной передачи по каналу связи, g3 - количество кодов или сигналов на их основе в формуляре; генератор кодов ансамбля выполнен в виде устройств для формирования кодов и сигналов на их основе и в виде модулятора несущих колебаний для передачи по каналу связи, причем модулирующими сигналами являются эти коды и сигналы.
8. Система по п. 1, отличающаяся тем, что блок коммутаторов содержит функциональную группу из не менее g1m коммутаторов, первые входы которых соединены с соответствующими входами первой функциональной группы входов блока коммутаторов, вторые входы этих коммутаторов представляют функциональные группы из g3 входов и подключены к соответствующим входам вторых функциональных групп входов блока коммутаторов, g3 выходов каждого коммутатора составляют функциональные группы и подключены к выходам блока коммутаторов, где g1m - наибольшее количество символов среди систем кодирования, используемых на разных слотах, g1m≤g3 - количество кодов или сигналов на их основе, формируемых генератором кодов ансамбля; блок коммутаторов выполнен на элементах аналоговой или цифровой схемотехники или программируемых логических матрицах.
9. Система по п. 1, отличающаяся тем, что генератор ключей шифрования кодов выполнен на элементах дискретной схемотехники или в виде запоминающего устройства или на программируемых логических матрицах.
10. Система по п. 1, отличающаяся тем, что блок управления коммутаторами содержит не менее g1m формирователей управления, входы которых подключены к соответствующим входам блока управления коммутаторами, выходы каждого из формирователей управления составляют функциональные группы из g3 выходов, соединенных с соответствующими выходами блока управления коммутаторами, где g1m - наибольшее количество символов в системах кодирования, используемых на разных слотах, g1m≤g3 - количество кодов или сигналов на их основе, формируемых генератором кодов ансамбля; блок управления коммутаторами выполнен на элементах аналоговой или цифровой схемотехники или программируемых логических матрицах.
11. Система по п. 1, отличающаяся тем, что формирователь данных выполнен на элементах дискретной схемотехники, или в виде запоминающего устройства, или на программируемых логических матрицах.
12. Система по п. 1, отличающаяся тем, что генератор ключей дешифрования выполнен на элементах дискретной схемотехники, или в виде запоминающего устройства, или на программируемых логических матрицах.
13. Система по п. 1, отличающаяся тем, что программатор слот содержит генератор слот и синхронизатор, первый выход программатора слот соединен с первым выходом генератора слот и четвертым выходом синхронизатора, второй выход программатора слот подключен к второму выходу генератора слот и третьему выходу синхронизатора, третий выход программатора слот соединен с вторым выходом синхронизатора и третьим выходом генератора слот, первый выход синхронизатора подключен к входу генератора слот; программатор слот выполнен на элементах аналоговой или дискретной схемотехники, или на программируемых логических матрицах, или в виде запоминающего устройства.
Устройство хранения и передачи данных с системой шифрования | 2022 |
|
RU2791560C1 |
Устройство хранения данных с системой шифрования | 2022 |
|
RU2787933C1 |
Топчак-трактор для канатной вспашки | 1923 |
|
SU2002A1 |
СПОСОБ ПЕРЕДАЧИ ИНФОРМАЦИИ ПО КАНАЛАМ СВЯЗИ В РЕАЛЬНОМ ВРЕМЕНИ И СИСТЕМА ДЛЯ ЕГО ОСУЩЕСТВЛЕНИЯ | 2009 |
|
RU2423004C2 |
Способ передачи дискретных сообщений и система для его осуществления | 2022 |
|
RU2794517C1 |
Авторы
Даты
2024-12-18—Публикация
2024-01-10—Подача