Создание открытого ключа из закрытого
Рассмотрим работу алгоритма, не углубляясь в теорию чисел: чтобы получить нормальную последовательность рюкзака, возьмем сверхвозрастающую последовательность рюкзака, например, {2,3,6,13,27,52}, и умножим по модулю т все значения на число п. Значение модуля должно быть больше суммы всех чисел последовательности, например, 105. Множитель должен быть взаимно простым числом с модулем, например, 31. Нормальной последовательностью рюкзака будет
2*31 mod 105 = 62
3*31 mod 105 = 93
6*31 mod 105 = 81
13*31 mod 105 = 88
27*31 mod 105 = 102
52*31 mod 105 = 37
Итого- {62,93,81,88,102,37}.
Сверхвозрастающая последовательность рюкзака является закрытым ключом, а нормальная последовательность рюкзака - открытым.