5_Kriptosistema_Mak-Elis
.pdf
Валгоритмах CRYSTALS-Kyber, CRYSTALS-Dilithium и FALCON
используются методы криптографии, основанные на задачах теории решёток, время решения которых не отличается на обычных и квантовых компьютерах.
Алгоритм SPHINCS+ применяет методы криптографии на основе хеш-функций.
ВBIKE и HQC McEliece используются элементы теории алгебраического кодирования и линейные коды, также применяемые в схемах коррекции ошибок.
SIKE базируется на использовании суперсингулярной изогении и рассматривается в качестве кандидата на стандартизацию, так как отличается наименьшим размером ключа
Дорожная карта России по развитию квантовых технологий
Основные направления и уровни развития.
1.Квантовые компьютеры и вычисления. (Использование квантовых явлений для решения задач)
Мировой уровень QTRL 4-5. В России 3-4.
2. Квантовые телекоммуникации
Использование свойств квантовых систем для передачи ключей. Уровень QTRL 6-9. В России 8 для систем «точка-точка».
3. Квантовые сенсоры и метрология.(Высокоточные измерительные приборы на квантовых эффектах). QTRL 6-9. В России 1-5.
Задачи дорожной карты
1.Поддержка прорывных научно-технологических проектов, направленных на развитие КТ.
2.Создание инновационной экосистемы и условий для перехода квантовых разработок в промышленный сектор.
3.Организация сотрудничества между научно-техническими подразделениями и потенциальными потребителями квантовых технологий.
4.Развитие кадрового потенциала в области квантовых технологий путем внедрения новых образовательных программ.
•Бюджет по релизации дорожной карты в 2019-2024 годах составит 51.1 млрд руб. включая внебюджетное финансирование в размере 8,7 млрд руб.
Стандартизация в России
Проект методических рекомендаций для стандартизации
постквантовой электронной подписи на основе кодов, исправляющих ошибки
В. В. Высоцкая, И. В. Чижов
2. Криптосистемы на основе алгебраического кодирования
В отличие от предыдущих КС ОК данная КС использует сложность решения задачи по исправлению ошибок линейными кодами для обеспечения ее стойкости. Поэтому потребуется освежить знания по корректирующим кодам, которые изучались ранее в курсах «Теория электрической связи» и «Передача данных».
Краткие сведения о линейных кодах [4]
Линейный двоичный (n, k) код V (ЛК) – это
состоящее из |
2 |
k |
двоичных последовательностей |
|
каждая, для которых справедливо условие:
множество, длиной n
если
y |
|
V , |
||
1 |
|
|
||
y |
|
V , |
||
2 |
|
|||
|
|
|||
то y1 y2 V,
где означает поэлементное суммирование по mod 2.
Каждый ЛК может быть однозначно задан своей порождающей матрицей G, состоящей из двоичных элементов 0 и 1 (рис. 3.6).
Рис. 3.6. Порождающая матрица линейного кода
Если G – порождающая матрица кода V, а x – двоичная информационная последовательность длины k, то кодирование
(т. е. преобразование ее в кодовую последовательность |
y |
) |
производится по правилу |
|
|
y
x G
,
(3.14)
где операции умножения вектора на матрицу выполняются в
поле
GF (2)
.
Линейный код может быть представлен в систематической форме, когда каждое его слово состоит из k информационных
символов |
x |
k |
и следующих за ними |
n k |
проверочных |
|||
|
|
|
|
|
|
|
||
символов |
c |
n k |
, которые формируются по информационным |
|||||
|
|
|
|
|
|
|
||
при помощи линейных операций над полем |
GF (2) |
. Эти |
||||||
линейные соотношения являются нетривиальной частью так называемой проверочной матрицы кода, которая однозначно определяется по его порождающей матрице [4].
|
|
|
|
|
|
|
|
|
|
|
k |
|
n-k |
|
|
|
|||
|
|
|
Пример линейного кода
Код Хемминга (7,4)
1 0 0 0 |
1 1 1 |
|
|
|
|
|
|
0 1 0 0 |
0 1 1 |
|
|
|
|
G |
I |
|
, P |
|||
|
|
k |
||||
0 0 1 0 |
1 0 1 |
|
|
|
||
|
|
|
|
|
|
|
0 0 0 1 |
1 1 0 |
|
|
|
||
y xG (x, c ), |
где c xP |
y 1100100
x 1100
|
1 1 1 |
|
|||
|
|
0 1 1 |
|
|
|
c xP 1100 |
|
|
100 |
||
|
|||||
1 0 1 |
|||||
|
|
||||
|
|
|
|
|
|
|
1 1 0 |
|
|||
yH |
T |
(x, c )H |
T |
000 s |
|
||
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
10 1 1 1 0 0 |
|
|
S - сирдром |
||
|
|
H 11 0 1 0 1 0 |
|
||||
|
|
PT , I |
|
||||
|
|
|
|
|
|
|
n k |
|
|
11 1 0 0 0 1 |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
e |
|
|
|
|
|
Если в кодовом слове |
y возникает ошибка |
(при его |
|||||
|
|
|
|
|
|
|
|
|
передаче по каналу связи или при хранении), т. е. y |
y |
e |
(где |
|||||
e |
имеет единицы в позициях с ошибками и нули в остальных |
|||||||
|
||||||||
позициях, а означает поэлементное суммирование по mod 2), то, используя свойства кода, некоторые ошибки можно
исправить (восстановить информационную последовательность |
||||
x |
|
~ |
|
|
по искаженному кодовому слову |
y |
). |
||
|
||||
Исправляющие свойства кода задаются его так называемым
минимальным кодовым расстоянием |
dmin |
, которое опреде- |
ляется как минимальное число позиций, в которых отличаются любые несовпадающие между собой кодовые комбинации.
y
e y
x
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y 1100100 |
T |
(x, c )H |
T |
101 |
s |
e 0010000 |
y H |
|
|||
|
|
|
|
|
|
y 1110100 |
|
|
|
|
|
x 1100 |
|
|
|
|
|
