Ранцевая криптосистема Наккаша – Штерна - Naccache–Stern knapsack cryptosystem
В Криптосистема Naccache – Stern Knapsack нетипичный криптосистема с открытым ключом разработан Дэвид Наккаш и Жак Стерн в 1997 году. Эта криптосистема детерминированный, и, следовательно, не семантически безопасный. Несмотря на то, что эта система не сломана на сегодняшний день, ей также не хватает доказуемая безопасность.
Системный Обзор
Эта система основана на типе проблема с рюкзаком. В частности, основная проблема заключается в следующем: заданные целые числа c,п,п и v0,...,vпнайти вектор такой, что
Идея здесь в том, что когда vя находятся относительно простой и намного меньше модуля п эту проблему легко решить. Именно это наблюдение позволяет дешифровать.
Генерация ключей
Чтобы создать пару открытого / закрытого ключей
- Выберите большой основной модуль п.
- Выберите положительное целое число п и для я от 0 до п, набор пя быть яое простое число, начиная с п0 = 2 и такой, что .
- Выберите секретное целое число s < п-1, такой что gcd (п-1,s) = 1.
- Набор .
Тогда открытый ключ п,п и v0,...,vп. Закрытый ключ s.
Шифрование
Чтобы зашифровать п-битное длинное сообщение мрассчитать
куда мя это яй бит сообщения м.
Расшифровка
Расшифровать сообщение cрассчитать
Это работает, потому что дробь
равно 0 или 1 в зависимости от того, пя разделяет cs мод п.