Джованни Батиста делла Порто

From CryptoWiki
Jump to: navigation, search

1563 год

В XVI веке Джованни Баттиста делла Порта использовал систему ключевых слов для реализации шифра, который может рассматриваться как изменение шифра Альберти. Одно ключевое слово используется для формирования перестановки алфавита, другое ключевое слово используется, чтобы определить последовательность для нескольких алфавитов. Это техника, которая была названа «двойной шифр» была более точно описана как многоалфавитная.

Техника перестановки Порта была основана на 2-мерной таблице, для примера вот вариант таблицы Порта на основе 26-символьного алфавита:


                     Эквивалент внешнего диска:
                                  a b c d e f g h i j k l m n o p q r s t u v w x y z
                                0 A L B E R T I C P H D F G H J K M N O S U V W X Y Z
                                1 Z A L B E R T I C P H D F G H J K M N O S U V W X Y
                             N  2 Y Z A L B E R T I C P H D F G H J K M N O S U V W X
                             u  3 X Y Z A L B E R T I C P H D F G H J K M N O S U V W
                             m  4 W X Y Z A L B E R T I C P H D F G H J K M N O S U V
                             b  5 V W X Y Z A L B E R T I C P H D F G H J K M N O S U
                             e  6 U V W X Y Z A L B E R T I C P H D F G H J K M N O S
                             r  7 S U V W X Y Z A L B E R T I C P H D F G H J K M N O
                                8 O S U V W X Y Z A L B E R T I C P H D F G H J K M N
                             o  9 N O S U V W X Y Z A L B E R T I C P H D F G H J K M
                             f 10 M N O S U V W X Y Z A L B E R T I C P H D F G H J K
                               11 K M N O S U V W X Y Z A L B E R T I C P H D F G H J
                             S 12 J K M N O S U V W X Y Z A L B E R T I C P H D F G H
                             h 13 H J K M N O S U V W X Y Z A L B E R T I C P H D F G
                             i 14 G H J K M N O S U V W X Y Z A L B E R T I C P H D F
                             f 15 F G H J K M N O S U V W X Y Z A L B E R T I C P H D
                             t 16 D F G H J K M N O S U V W X Y Z A L B E R T I C P H
                             s 17 H D F G H J K M N O S U V W X Y Z A L B E R T I C P
                               18 P H D F G H J K M N O S U V W X Y Z A L B E R T I C
                               19 C P H D F G H J K M N O S U V W X Y Z A L B E R T I
                               20 I C P H D F G H J K M N O S U V W X Y Z A L B E R T
                               21 T I C P H D F G H J K M N O S U V W X Y Z A L B E R
                               22 R T I C P H D F G H J K M N O S U V W X Y Z A L B E
                               23 E R T I C P H D F G H J K M N O S U V W X Y Z A L B
                               24 B E R T I C P H D F G H J K M N O S U V W X Y Z A L
                               25 L B E R T I C P H D F G H J K M N O S U V W X Y Z A

В этом случае верхний регистр букв соответствует рандомизированному внутреннему алфавиту дисков, мы используем ALBERTICIPHER как ключевое слово, чтобы формировать алфавит. Заглавные буквы соответствуют внешнему диску, а цифры на углу представляют индексы нескольких алфавитов, второе ключевое слово используется для обозначения последовательности индексов, использующихся для выбора строк в таблице. Для шифра типа Порта, ключ шифрования будет состоять из перестановки, приведённой в первой строке таблицы плюс сдвиг, который следует после каждой буквы текста. Каждое новое значение сдвига в методе Порта, или каждое новое «слово» во втором ключевом слове, означает новый алфавит шифротекста.