RU2784684C1 - Устройство для генерации псевдослучайных чисел - Google Patents
Устройство для генерации псевдослучайных чисел Download PDFInfo
- Publication number
- RU2784684C1 RU2784684C1 RU2022117821A RU2022117821A RU2784684C1 RU 2784684 C1 RU2784684 C1 RU 2784684C1 RU 2022117821 A RU2022117821 A RU 2022117821A RU 2022117821 A RU2022117821 A RU 2022117821A RU 2784684 C1 RU2784684 C1 RU 2784684C1
- Authority
- RU
- Russia
- Prior art keywords
- length
- inputs
- input
- outputs
- mode
- Prior art date
Links
- 238000005516 engineering process Methods 0.000 abstract description 5
- 239000000126 substance Substances 0.000 abstract 1
- 125000004122 cyclic group Chemical group 0.000 description 8
- 241001442055 Vipera berus Species 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000000875 corresponding Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009114 investigational therapy Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
Images
Abstract
Настоящее техническое решение относится к области вычислительной техники для защиты информации. Технический результат заключается в повышении степени защиты от реверс-инжиниринга при генерации псевдослучайных чисел. Технический результат достигается за счёт устройства для генерации псевдослучайных чисел, состоящего из генератора последовательности длиной 2 N , где N – число используемых элементов памяти, причем тактовый вход устройства подключен к тактовому входу генератора последовательности длиной 2 N , N выходов которого являются выходами устройства, дополнительно содержащего элемент И, а также группу из N элементов И, первые входы N элементов И группы являются управляющими входами устройства, а вторые входы подключены к выходу элемента И, первый и второй входы которого подключены соответственно к N-му выходу и выходу изменения режима генератора последовательности длиной 2 N , а третий вход элемента И является входом режима устройства, N выходов элементов И группы подключены к управляющим входам генератора последовательности длиной 2 N . 4 ил.
Description
Изобретение относится к вычислительной технике и электросвязи, предназначено для решения задач защиты компьютерной информации. Наиболее предпочтительной областью использования изобретения является реализация стохастических методов защиты информации.
В совокупности признаков заявленного изобретения используются следующие термины:
Design Obfuscation - технология, затрудняющая реверс-инжиниринг цифровых устройств (ЦУ) за счет реализации механизма скрытых, особо защищенных функций целевого ЦУ, разрешить выполнение которых может только авторизованный пользователь. См., например, Physical Design Obfuscation of Hardware: A Comprehensive Investigation of Device and Logic-Level Techniques, https://arxiv.org/pdf/1910.00981.pdf
Регистр сдвига с линейной обратной связью (LFSR, Linear Feedback Shift Register) - наиболее распространенный класс устройств для генерации псевдослучайных чисел. Достоинством генераторов на основе LFSR являются эффективная программная и аппаратная реализация; хорошие статистические свойства; регулярная структура, удобная для интегрального исполнения. См., например, Стохастические методы и средства защиты информации в компьютерных системах и сетях. Иванов М.А., Чугунков И.В., Ковалев А.В. и др. М.: КУДИЦ-ПРЕСС, 2009. http://www.aha.ru/~msa/stochastic.pdf
Генераторы псевдослучайных чисел (ГПСЧ) - основа стохастических методов защиты информации, применение ГПСЧ обеспечивает непредсказуемое поведение объекта и средств защиты, позволяя тем самым защититься от активного противника.
Известно устройство для генерации псевдослучайных чисел, состоящее из N элементов памяти (D-триггеров), образующих N-разрядный регистр сдвига, и сумматора по модулю два, причем выходы разрядов регистра сдвига, номера которых определяются ненулевыми коэффициентами образующего двоичного полинома Ф(х) степени N, подключены ко входам сумматора по модулю два, выход которого соединен с информационным входом регистра сдвига. Тактовый вход устройства подключен к тактовому входу регистра сдвига, выходы разрядов которого являются выходами устройства. (Secured Pseudo-Random Number Generator, US Patent 10 007 488, Fig. 4a).
Подобная схема LFSR называется конструкцией Фибоначчи и при выборе в качестве Ф(х) примитивного полинома формирует псевдослучайную последовательность (ПСП) длиной М=2N - 1. ПСП можно снимать с выхода любого разряда регистра сдвига, при этом на остальных выходах регистра сдвига присутствуют сдвинутые копии той же ПСП. Диаграмма переключений устройства состоит из двух циклов длиной Ми 1. Недостатком известного устройства является невозможность генерации ПСП длиной 2N, т.е. максимально возможной длины при заданном числе элементов памяти.
Для генерации последовательности длиной 2N требуется регистр сдвига с нелинейной обратной связью (NLFSR - Non-Linear Feedback Shift Register). Последовательности длиной 2N иногда называют (М+1)-последовательностями.
Таким образом, наиболее близким по своей технической сущности к заявленному устройству является устройство для генерации псевдослучайных чисел, состоящее из N элементов памяти (D-триггеров), образующих N-разрядный регистр сдвига, сумматора по модулю два и (N-1)-входового элемента ИЛИ-НЕ, причем выходы разрядов регистра сдвига, номера которых определяются ненулевыми коэффициентами образующего двоичного полинома Ф(х) степени N, подключены к (n - 1) входам сумматора по модулю два, где n - число ненулевых коэффициентов Ф(х), выход сумматора по модулю два соединен с информационным входом регистра сдвига, выходы первых (N - 1) разрядов регистра сдвига соединены со входами элемента ИЛИ-НЕ, выход которого соединен к n-му входу сумматора по модулю два. (Стохастические методы и средства защиты информации в компьютерных системах и сетях. Иванов М.А., Чугунков И.В., Ковалев А.В. и др. М.: КУДИЦ-ПРЕСС, 2009, рис. 2.16. http://www.aha.ru/~msa/stochastic.pdf)
Техническим результатом изобретения является расширение функциональных возможностей устройства, ориентированного на применение технологии Design Obfuscation, позволяющей реализовать механизм скрытых, особо защищенных функций, целевого цифрового устройства, разрешить выполнение которых может только авторизованный пользователь. Иначе говоря, повышение эффективности использования псевдослучайных последовательностей при реализации технологии Design Obfuscation
Указанный технический результат обеспечивается за счет того, что устройство для генерации псевдослучайных чисел, состоящее из генератора последовательности длиной 2N, где N - число используемых элементов памяти, причем тактовый вход устройства подключен к тактовому входу генератора последовательности длиной 2N, N выходов которого являются выходами устройства, дополнительно содержит элемент И, а также группу из N элементов И, первые входы N элементов И группы являются управляющими входами устройства, а вторые входы подключены к выходу элемента И, первый и второй входы которого подключены соответственно к N-му выходу и выходу изменения режима генератора последовательности длиной 2N, а третий вход элемента И является входом режима устройства, N выходов элементов И группы подключены к управляющим входам генератора последовательности длиной 2N.
На фиг. 1 показана схема заявленного устройства. На фиг. 1 показаны тактовый вход 1 устройства, генератор 2 последовательности длиной 2N, где N - число элементов памяти генератора, элемент 3 И, группа из N элементов 4.1, 4.2, …, 4.N И, выходы 5.1, 5.2, …, 5.N устройства, управляющие входы 6.1, 6.2, …, 6.N устройства, выход 7 изменения режима генератора 2 последовательности длиной 2N, вход 8 режима (Mode) устройства.
Тактовый вход 1 устройства подключен к тактовому входу генератора последовательности длиной 2N, N выходов которого являются выходами устройства. Первые входы N элементов 4.1, 4.2, …, 4.N И группы являются управляющими входами устройства, а вторые входы подключены к выходу элемента 3 И, первый и второй входы которого подключены соответственно к N-му выходу 5.N и выходу 7 изменения режима генератора 2 последовательности длиной 2N, а третий вход элемента 3 И является входом 8 режима устройства, N выходов элементов 4.1, 4.2, …, 4.N И группы подключены к управляющим входам генератора 2 последовательности длиной 2N.
На фиг. 2 показан пример построения устройства для случая N=4, Ф(х)=х4+х+1 - примитивный. Генератор 2 последовательности в данном случае состоит из четырех сумматоров 9.1, 9.2, 9.3, 9.4 по модулю два, четырех D-триггеров 10.1, 10.2, 10.3, 10.4, элемента 11 ИЛИ-НЕ, обеспечивающего переключение генератора 2 из состояния 0001 в состояние 0000, а затем из состояния 0000 - в состояние 1000.
На фиг. 3 показана диаграмма переключений устройства при значении сигнала на входе 8 режима, равном 1, и значениях управляющих сигналов на входах 6.1, 6.2, 6.3, 6.4 соответственно с1=1, c2=0, c3=1, c4=0.
Видно, что диаграмма переключений устройства состоит из предпериода (Tail) и циклического участка (Cycle). Длиной предпериода и цикла можно управлять, подавая соответствующие сигналы на управляющие входы 6 устройства. Суммарная длина предпериода и циклического участка диаграммы равна 2N. На фиг. 3 рассматривается случай, когда N=4, а длина предпериода равна длине цикла, т.е. | Tail |=| Cycle |=8.
На фиг. 4 показан принцип работы механизма скрытых функций целевого устройства.
Устройство работает следующим образом.
Сигнал на входе 8 режима устанавливается равным «1».
Каждой функции целевого ЦУ ставится в соответствие определенное состояние устройства для генерации псевдослучайных чисел. Выполнить конкретную функцию можно лишь при нахождении устройства в соответствующем состоянии. Все функции целевого ЦУ делятся на две группы: Common Functions - обычные функции, Secure Functions - скрытые функции. Состояния устройства, входящие в предпериод, соответствуют функциям второй группы; состояния устройства, входящие в цикл, соответствуют функциям первой группы. Таким образом, для случая рассмотренного на фиг. 2 можно реализовать до 8 Secure Functions и до 8 Common Functions.
Исходным состоянием устройства может быть любое состояние генератора 2, входящее в цикл. Цепи установки в исходное состояние на фиг. 1 и 2 не показаны. До тех пор, пока значение сигнала на входе 8 режима равно «1», устройство работает в циклическом режиме, в котором разрешено только выполнение Common Functions.
Как только у авторизованного пользователя возникает необходимость выполнить одну из скрытых функций целевого устройства, он должен осуществить скрытый переход (Hidden Jump на фиг. 4) из циклического режима на начало предпериода. Для этого значение сигнала на входе 8 режима переключается в «0» и как только генератор 2 оказывается в состоянии 0001, осуществляется переход на начало предпериода (состояние 0000). Сигнал на входе 8 режима переключается в «1». Выполняется необходимое число тактов предпериода. Как только генератор 2 оказывается в состоянии, разрешающим выполнение требуемой функции, она выполняется, после чего устройство возвращается обратно в циклический режим.
Переключение сигнала на входе 8 режима из «1» в «0» разрешается только после аутентификации пользователя по принципу «случайный запрос - правильный ответ», переключение сигнала на входе 8 режима обратно из «0» в «1» осуществляется автоматически.
В случае, рассмотренном на фиг. 2, уравнения работы устройства имеют вид
где qj-(t) и qj(t+1) - состояния j-го регистра генератора соответственно в моменты времени t и (t+1), cj - управляющее воздействие в момент времени t, поступающее на соответствующий вход 6.j, а все операции сложения выполняются по модулю два.
В общем случае уравнения принимают вид:
где аk - коэффициенты двоичного многочлена Ф(х), k=1,2, 3, …, (N - 1).
Возможность достижения заявленного технического результата изобретения обуславливаются следующими факторами:
1) Диаграмма переключений ГПСЧ в основном режиме функционирования имеет вид t-c, где t - длина предпериода, с - длина циклического режима, причем t+с=2N;
2) При нахождении ГПСЧ в циклическом режиме выполнить ни одну из скрытых функций целевого устройства невозможно;
3) За счет изменения значений сигналов на управляющих входах 6 ГПСЧ можно изменять значения t и с, меняя тем самым соотношение между обычными и скрытыми функциями;
4) Авторизованный пользователь, изменив значение сигнала на входе 8 режима, может инициировать скрытый переход из состояния 000…01 циклического режима в начало предпериода, после чего дождавшись перехода ГПСЧ в соответствующее состояние, выполнить требуемую скрытую функцию целевого устройства.
Таким образом, технический результат от использования изобретения заключается в повышении эффективности использования устройства для генерации псевдослучайных чисел при реализации технологии Design Obfuscation (Hardware Protection through Obfuscation. D. Forte, S. Bhunia, M.M. Tehranipoor editors. Springer International Publishing AG, 2017), ориентированной на защиту от реверс-инжиниринга за счет обфускации и рандомизации логической схемы защищаемого целевого устройства.
Claims (1)
- Устройство для генерации псевдослучайных чисел, состоящее из генератора последовательности длиной 2 N , где N – число используемых элементов памяти, причем тактовый вход устройства подключен к тактовому входу генератора последовательности длиной 2 N , N выходов которого являются выходами устройства, отличающееся тем, что оно дополнительно содержит элемент И, а также группу из N элементов И, первые входы N элементов И группы являются управляющими входами устройства, а вторые входы подключены к выходу элемента И, первый и второй входы которого подключены соответственно к N-му выходу и выходу изменения режима генератора последовательности длиной 2 N , а третий вход элемента И является входом режима устройства, N выходов элементов И группы подключены к управляющим входам генератора последовательности длиной 2 N .
Publications (1)
Publication Number | Publication Date |
---|---|
RU2784684C1 true RU2784684C1 (ru) | 2022-11-29 |
Family
ID=
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006139756A (ja) * | 2004-09-28 | 2006-06-01 | Micronas Gmbh | 乱数発生器および乱数を発生する方法 |
JP2017107195A (ja) * | 2015-12-07 | 2017-06-15 | ザ・ボーイング・カンパニーThe Boeing Company | ハードウェア支援型の擬似乱数の高速生成 |
US10402169B2 (en) * | 2017-07-12 | 2019-09-03 | Dell Products L.P. | Method and system of secure random seed generation for a cryptographically secure pseudo-random number generator |
US20190305927A1 (en) * | 2016-03-18 | 2019-10-03 | University Of Florida Research Foundation Incorporated | Bitstream security based on node locking |
RU2761766C1 (ru) * | 2020-12-29 | 2021-12-13 | федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский ядерный университет МИФИ" (НИЯУ МИФИ) | Устройство для генерации псевдослучайных чисел |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006139756A (ja) * | 2004-09-28 | 2006-06-01 | Micronas Gmbh | 乱数発生器および乱数を発生する方法 |
JP2017107195A (ja) * | 2015-12-07 | 2017-06-15 | ザ・ボーイング・カンパニーThe Boeing Company | ハードウェア支援型の擬似乱数の高速生成 |
US20190305927A1 (en) * | 2016-03-18 | 2019-10-03 | University Of Florida Research Foundation Incorporated | Bitstream security based on node locking |
US10402169B2 (en) * | 2017-07-12 | 2019-09-03 | Dell Products L.P. | Method and system of secure random seed generation for a cryptographically secure pseudo-random number generator |
RU2761766C1 (ru) * | 2020-12-29 | 2021-12-13 | федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский ядерный университет МИФИ" (НИЯУ МИФИ) | Устройство для генерации псевдослучайных чисел |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6621533B2 (ja) | 暗号攻撃に対する防御のためのクロック周期ランダム化 | |
EP1782181B1 (en) | Method and apparatus for generating random data | |
US10007488B2 (en) | Secured pseudo-random number generator | |
TWI374649B (en) | Digital random number generator based on digitally-controlled oscillators | |
Masoodi et al. | An analysis of linear feedback shift registers in stream ciphers | |
RU2784684C1 (ru) | Устройство для генерации псевдослучайных чисел | |
Gupta et al. | Coupled variable‐input LCG and clock divider‐based large period pseudo‐random bit generator on FPGA | |
RU2756833C1 (ru) | Генератор псевдослучайных чисел | |
Tasheva et al. | Generalization of the self-shrinking generator in the galois field GF (pn) | |
RU2740339C1 (ru) | Генератор псевдослучайных чисел | |
Choi et al. | Fast compact true random number generator based on multiple sampling | |
RU2446444C1 (ru) | Генератор псевдослучайных последовательностей | |
Chugunkov et al. | New class of pseudorandom number generators for logic encryption realization | |
RU2761766C1 (ru) | Устройство для генерации псевдослучайных чисел | |
Hsiao et al. | Generating stochastic bitstreams | |
RU2776346C1 (ru) | Генератор псевдослучайных чисел | |
RU2427885C1 (ru) | Быстродействующий генератор случайных перестановок и сочетаний | |
Mihaljev'c | Security examination of a cellular automata based pseudorandom bit generator using an algebraic replica approach | |
RU2472286C1 (ru) | Цифровой генератор хаотического сигнала | |
PV et al. | Design and implementation of efficient stochastic number generator | |
Hussain et al. | Enhancing security in iot devices by using pseudo random number generator based on two different lfsr and a comparator | |
RU2815485C1 (ru) | Генератор псевдослучайных чисел | |
Vivelid | Nonlinear feedback shift registers and generating of binary de Bruijn sequences | |
Sekhar et al. | An Efficient Pseudo Random Number Generator for Cryptographic Applications | |
RU2081450C1 (ru) | Генератор n-значной псевдослучайной последовательности |