Light-industry-up.ru

Экосистема промышленности

Psec-kem history of creating

15-05-2024

Перейти к: навигация, поиск

PSEC-KEM (PSEC Key Encapsulation Method) — механизм шифрования ключа. Механизм основан на протоколе Диффи-Хеллмана иэллиптических кривых. PSEC-KEM разработан японской компанией Nippon Telegraph and Telephone(NTT). В Сентябре 2001 года включен в проект NESSIE вместо PSEC-2 и PSEC-3 и в стандарт ISO/IEC 18033-2.

Содержание

Описание

Краткое описание

В отличие от PSEC-2 PSEC-KEM предоставляет полную схему получения симметричного ключа 'K'. Схема работает на трех функциях: ECKGP-PSEC — метод генерации открытого и закрытого ключа PSEC-KEM.Encrypt — метод получения симметричного ключа К и зашифрованного текста c0 на основе открытого ключа PSEC-KEM.Decrypt — метод получения симметричного ключа К на основе закрытого ключа и зашифрованного текста c0

Методы преобразования данных

  • I2OSP (Integer-to-OctetString) — Раскладываем x(исходное целое число) как x:= Mn-128(n-1) + … + M128 + M0. Каждое Mi — элемент выходной строки.
  • OS2IP (OctetString-to-Integer) — x := , где x — целое число и Mi — элемент строки.
  • ECP2OSP (EllipticCurvePoint-to-OctetString) — преобразует точку эллиптической кривой в байтовую строку.
  • OS2ECPP (OctetString-to-EllipticCurvePoint) — преобразует байтовую строку в точку эллиптической кривой.

Генерация ключей

Входные параметры:

Выходные значения:

  • Открытый ключ pk
  • Закрытый ключ sk
  1. Выбирается случайное число p порядка P.
  2. Генерируется целое число s в диапазоне [2, p — 1] с помощью строки r.
  3. W := sP.
  4. pk := (W).
  5. sk := (s).
  6. Возвращаем pk и sk.

Кодирование ключа

Входные параметры:

  • Открытый ключ pk
  • Случайная строка фиксированной длины r
  • Длина строки r — rLen
  • Эллиптическая кривая E
  • Точка P эллиптической кривой E

Выходные значения:

  • Симметричный ключ K длины KeyLen
  • Ключ сокрытия C
  1. H := KDF(I2OSP(0, 4)||r,KeyLen + l(k) + 16).
  2. Раскладываем H как t||K где t байтовая строка длины l(k) + 16 и K байтовая строка длины KeyLen
  3.  := OS2IP(t) mod p.
  4. Q := *pk.
  5. C1 := ECP2OSP(P).
  6. C2 := KDF(I2OSP(1, 4)||C1||ECP2OSP(Q), rLen) r.
  7. C := (C1,C2).
  8. Возвращаем K и C.

Декодирование ключа

Входные параметры:

Выходные значения:

  • Симметричный ключ K длины KeyLen
  1. Разделяем C на (C1,C2).
  2. X := OS2ECPP(C1).
  3. Устанавливаем длину rLen в значение длины C2.
  4. Q := sk*X.
  5. r := C2 KDF(I2OSP(1, 4)||C1||ECP2OSP(Q), rLen)
  6. H := KDF(I2OSP(0, 4)||r,KeyLen + l(k) + 16).
  7. Раскладываем H как t||K где t байтовая строка длины l(k) + 16 и K байтовая строка длины KeyLen
  8. Set  := OS2IP(t) mod p.
  9. Возвращаем K.

Параметры системы

MGF(Mask Generation Function) — принимает на вход строку байт произвольной длины и желаемую длину выходной строки в битах. Выдает строку байт желаемой длины. Алгоритм работы основан на хеш-функции

Рекомендуемые параметры

  • pLen = 160
  • KDF = MGF(SHA-1, hashLen = 160)
  • hLen = 160
  • r = При генерации строки использовать сжатие.
  • keyLen = 256

Безопасность

Безопасность PSEC-KEM основана на вычислительной задаче Деффи-Хеллмана (CDH — Computational Diffie-Hellman), которая состоит в следующем:

Даны (P, xP, yP), где P — точка эллиптической кривой E и x, y случайно выбранные числа из {0, … , p-1}. Вычисляется точка xyP. CDH утверждает что эта задача является неразрешимой. 4 — CDH (page 24)

Ссылки

  1. PSEC-KEM Specification, NTT Corporation
  2. PSEC-KEM, University of London
  3. NESSIE
  4. A Proposal for an ISO Standard for Public Key Encryption(version 2.1), December 20, 2001


Psec-kem history of creating.

Харидж, Октор, Жорж, Мария Тереза Фелицита д’Эсте, Файл:Forest-1.JPG.

© 2014–2023 light-industry-up.ru, Россия, Краснодар, ул. Листопадная 53, +7 (861) 501-67-06