КаЦэ — Шифры | #TipicalOrg
Паззл-код
Тарабарская грамота
Тарабарская грамота, простая литорея — шифр, широко использовавшийся в древнерусских рукописях.
Представляет собой простейший шифр замены без ключа. Согласные в алфавите делят на две равные части, и первую пишут строкой в алфавитном порядке, а вторую под буквами первой в обратном порядке. Таким образом получают таблицу:
Употребляют в письме верхние буквы вместо нижних и наоборот, а гласные остаются без изменения. Так, например, словарь на тарабарской грамоте будет лсошамь, великий государь — шеситий чолуцамь и т. п. Для расшифровки используют тот же способ, что и для шифрования (шифр симметричный).
Шифр Бэкона
a AAAAA
b AAAAB
c AAABA
d AAABB
e AABAA
f AABAB
g AABBA
h AABBB
i-j ABAAA
k ABAAB
l ABABA
m ABABB
n ABBAA
o ABBAB
p ABBBA
q ABBBB
r BAAAA
s BAAAB
t BAABA
u-v BAABB
w BABAA
x BABAB
y BABBA
z BABBB
Декодер
Шифр Виженера
Шифр Виженера состоит из последовательности нескольких шифров Цезаря с различными значениями сдвига. Для зашифровывания может использоваться таблица алфавитов, называемая tabula recta или квадрат (таблица) Виженера.
Шифр Гронсфельда
Здесь, в отличие от предыдущего случая, используется числовой ключ, а сама схема очень напоминает шифр Цезаря. Пусть нам надо зашифровать слово EXALTATION. Например, берём в качестве ключа число 31415, затем составляем следующую таблицу:
Получается, что каждой букве соответствует некая цифра, это цифра будет показывать, на сколько позиций будет происходить смещение алфавита для каждой конкретной буквы. Например, покажем, как преобразуется буква E:
То есть букве E соответствует буква H. Таким образом, для всего слова получаем зашифрованный текст: HYEMYDUMPS. Обратное преобразование происходит подобным образом, только каждый раз сдвигаем алфавит в другую сторону.
Шифр из книги Кортик(Литарея)
Простой шифр
Буквы алфавита пишут в два ряда: верхние буквы употребляют вместо нижних, нижние – вместо верхних.
Более сложный шифр
Весь алфавит разбивался на три группы, по десяти букв в каждой. Первый десяток букв обозначался точками. Например, «а» – одна точка, «б» – две точки и так далее. Второй десяток обозначался черточками. Например: «л» – одна черточка, «м» – две черточки и так далее. И, наконец, третий десяток обозначался кружками. Например, «х» – один кружок, «ц» – два кружка… Значки эти писались столбиками.
Шифр масонов
Образования
Теперь, алфавит состоит из двадцати шести букв, и эти две фигуры, будучи расчленены, образуют тринадцать определенных знаков
Точка, помещенная внутри каждого из них, дает еще тринадцать знаков:
Вместе это дает двадцать шесть, равное количеству букв в английском алфавите.
Существуют, по меньшей мере, два способа сочетания и употребления этих знаков в целях тайной корреспонденции. Один способ заключается в том, чтобы назвать первый знак а; тот же знак с точкою b; и т. д. Другой способ – применить их, в обычном порядке, к первой половине алфавита а, b и т. д., до m, после чего повторить их с точкою, начиная с буквы n, o, и т. д. до z.
По первому методу алфавит выглядит так:
По второму методу это выглядит так:
Кроме этих знаков, французские масоны, по-видимому, под руководством своих достигших совершенства учителей – иезуитов, усовершенствовали этот шифр во всех подробностях. Так, например, у них есть знаки даже для запятых, дифтонгов, ударений, точек и т. д. Вот они:
Другие
Тайнопись «Державных князей Розового креста», называемых также рыцарями Св. Андрея, рыцарями Орла и Пеликана, Heredom, Rosae Crucis, Розового креста, Тройного креста, Совершенного брата, Князя Масона:
Иероглифическая система:
Шифр пляшущие человечки
В переводе Чуковских использован алфавит из 23 знаков:
Другие варианты в нашем блоге
Шифр Ришелье
Шифр, использовавшийся Ришелье представляет собой шифр перестановки, при котором открытый текст разбивается на отрезки, а внутри каждого отрезка буквы переставляются в соответствии с фиксированной перестановкой.
Ключ: (2741635) (15243) (671852493) (07) (28615)(943)(2741635)
Открытый текст: LETTER SENT TO THE EMPEROR GIVING FULL DETAIL
Шифртекст: TLRTSEE ETOTN EPOEMTHER N1 LUGIG VFR TLIE SAD
Шифр Скитала
Представляет собой прибор, используемый для осуществления перестановочного шифрования, состоит из цилиндра и узкой полоски пергамента, обматывавшейся вокруг него по спирали, на которой писалось сообщение
Ключом является диаметр цилиндра
Для расшифровки адресат использовал палочку такого же диаметра, на которую он наматывал бумагу, чтобы прочитать сообщение.
Шифр Футурама
Заменяем первую букву в записи соответствующим числом.
Берём число следующей буквы, складываем его с предыдущим. Если результат оказывается больше 25, вычитаем из итога 26 (все числа должны быть о 0 до 25). Подставляем на второе место соответствующее число.
Если в слове больше двух букв, повторяем процедуру с третьей, четвёртой и т. д. буквами.
После того, как весь текст переведён в числа, заменяем числа на соответствующие значки.
Как расшифровывать. Заменяем все значки числами согласно ключу.
Вычитаем из второго числа первое. Если результат меньше нуля, прибавляем к нему 26 (все числа должны быть между 0 и 26). Это будет второе число в записи.
Вычитаем из третьего числа второе и т.д.
Затем все числа заменяем на соответствующие буквы.
Шифр Цезаря
Шифрование с использованием ключа k = 3. Буква «С» «сдвигается» на три буквы вперед и становится буквой «Ф». Твердый знак, перемещённый на три буквы вперед, становится буквой «Э», и так далее:
Исходный алфавит: АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ
Шифрованный: ГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯАБВ
Оригинальный текст:
Съешь же ещё этих мягких французских булок, да выпей чаю.
Шифрованный текст получается путём замены каждой буквы оригинального текста соответствующей буквой шифрованного алфавита:
Фэзыя йз зьи ахлш пвёнлш чугрщцкфнлш дцосн, жг еютзм ъгб.
Дешифратор
Атбаш
Шифр простой замены, использованный для еврейского алфавита и получивший оттуда свое название. Шифрование происходит заменой первой буквы алфавита на последнюю, второй на предпоследнюю. (алеф(первая буква) заменяется на тау(последнюю), бет(вторая) заменяется на шин(предпоследняя) из этих сочетаний шифр и получил свое название).
Еще кучу не особо популярных шифров можно найти здесь
Шифр Хила. Подробный разбор / Хабр
В этой публикации я попытаюсь максимально подробно описать шифрования и дешифрование по алгоритму Хилла. Итак, без лишних слов сразу к делу.
ШифрованиеДля того, чтобы зашифровать какой-либо текст по алгоритму Хилла необходимо проделать следующие шаги:
- Создаем кодированный алфавит. Допустим мы хотим шифровать русский текст. Тогда длина алфавита будет 33 буквы. Целесообразно добавить к алфавиту еще 4 символа на выбор, я добавлю такие: «?», «.
«, «,»,» «. Это делается для того, чтобы длина алфавита была простым числом, т.е. числом, которое делится нацело только на себя и на 1. Это, конечно, не обязательно, но очень удобно, потому что для расшифровки необходимо, чтобы детерминант ключа и длина алфавита были взаимно простыми, т.е. не имели общих делителей кроме 1. Если длина алфавита – простое число, то таких ключей, для которых выполняется это условие значительно больше. Каждому символу нашего алфавита ставим в соответствие целочисленный код. Удобнее всего использовать просто номера букв. Таким образом получаем кодированный алфавит:
- Теперь берем текст, который хотим зашифровать и кодируем его с помощью нашего алфавита. Возьмем для примера слово «ШИФР», его код будет таким: 25 9 21 17.
- Теперь выбираем ключевое слово, или просто набор букв, который будем использовать в качестве ключа. Тут важно, чтобы длина этого ключевого слова была равна квадрату целого числа, т.е. 4, 9, 16, 25 и т.
д. Только тогда мы сможем сделать из него квадратную матрицу, необходимую для шифрования. Я выбрал слово «АЛЬПИНИЗМ». Кодируем его с помощью нашего алфавита. Получаем: 0 12 29 16 9 14 9 8 13. Запишем ключ в виде матрицы 3х3:
Ключ можно задавать сразу матрицей, если вам так удобней. Я же использовал ключевое слово.
- Теперь надо разбить текст на блоки по n символов в каждом, где n-размерность матрицы, в моем случае – 3. Начнем разбивать:
Первый блок: (25 9 21)
На второй блок у нас осталось всего одно число – 17. Самое простое решение в таком случае: добавить столько символов, чтобы образовать целый блок. Я решил добавить пробелы.
Тогда второй блок: (17 35 35)
- Теперь шифруем наш текст. Для шифрования текста требуется провести матричное умножение каждого блока на матрицу ключа. Тут стоит заметить, что блоки можно было бы записывать не в строки, а в столбцы. Тогда мы бы умножали ключ на столбец, это не существенное различие.
Также важным фактором для данного шифра является определитель матрицы ключа: он должен быть отличным от нуля, иначе расшифровку зашифрованного текста будет невозможно осуществить.
Итак, умножаем первый блок на ключ:
Умножаем второй блок на ключ:
Матричное умножение — это не сложная операция, поэтому расписывать его подробно я не стал.
Теперь нам нужно получившиеся матрицы разделить по модулю на 37, т.е. взять остаток от деления на 37.Делим первую матрицу:
Делим вторую матрицу:
Почему делим на 37? Потому что это длина нашего алфавита, будь у вас алфавит другой длины, вы бы делили на другое число. Например, для английского алфавита делим на 26, или 29, если вы добавили какие-то символы.
- Теперь декодируем полученные матрицы с помощью нашего алфавита.
Первая матрица: АЮН
Вторая матрица: ЧХЯСклеиваем две матрицы и получаем зашифрованный текст: АЮНЧХЯ
Дешифрование
Теперь переходим к дешифрованию.
- Обратно кодируем шифротекст в цифры и разбиваем на блоки.
- Находим определитель матрицы ключа:
Нахождение определителя тоже очень простая операция, так что я ее не расписывал.
- Теперь по расширенному алгоритму Евклида находим d, x, y.
Описание и сам алгоритм я расписывать не буду. Информацию об этом алгоритме легко можно найти в Интернете. На вход алгоритма подаем det K и длину нашего алфавита. На выходе мы получим d=1, x=-4, y=41. Нас интересует только x.
- Теперь сложная и важная вещь. Нам надо найти обратный детерминанту элемент в кольце по модулю 37. Для этого делаем следующее:
• Если детерминант отрицательный, а x – положительный, то обратный элемент детерминанта будет равен x.
• Если детерминант положительный, а x – отрицательный, то обратный элемент детерминанта будет равен
• Если детерминант положительный, и x – положительный, то обратный детерминанту элемент будет равен x.
• Если детерминант и x – отрицательные, то обратный элемент будет равен -x.Этот алгоритм поиска обратного элемента я подобрал экспериментальным путем, т.к. не мог найти ровным счетом ничего полезного по этой теме. В любом случае, даже если этот алгоритм примитивный, он работает.
Итак, наш детерминант равен 379, он положительный, а x равен -4 – отрицательный. Тогда обратный детерминанту элемент находим по формуле 37+x=37+(-4)=37-4=33.
- Теперь еще один момент, с которым я долго мучился, потому что никакой полезной информации в Интернете найти не удалось. Надо найти матрицу обратную матрице ключа по модулю 37 . Для того чтобы найти эту матрицу нам необходимо найти матрицу алгебраических дополнений ключа и обратный детерминант матрицы ключа (уже нашли в предыдущем пункте). Матрица алгебраических дополнений ищется тоже очень просто, это я расписывать не буду.
В нашем случае она выглядит так:
Теперь эту матрицу делим по модулю на 37, это я уже расписывал в шифровании. Получаем такую матрицу, тут важно не терять знаки у элементов (некоторые выполняют деление по модулю с потерей минусов, в данном алгоритме это недопустимо):
Умножаем матрицу алгебраических дополнений на обратный детерминанту элемент. Получаем такую матрицу:
Делим данну матрицу по модулю на 37:
Транспонируем ее (меняем строки и столбцы местами):
Теперь если элемент матрицы отрицательный, меняем его на другой, вычисленный по формуле
37+<элемент>:Последняя полученная матрица является обратной по модулю к матрице ключа. Если перемножить матрицу ключа и эту матрицу, а потом результат разделить по модулю на 37, мы получим единичную матрицу, т.е. матрицу вида:
- Для дешифровки шифротекста умножаем строки шифротекста на матрицу обратную ключу.
Умножаем первую строку:Умножаем вторую строку:
Делим полученные строки на 37 по модулю:
Склеиваем матрицы (25 9 21 13 35 35) и декодируем с помощью нашего алфавита: ШИФР.
В итоге мы получили исходный текст с двумя лишними пробелами в конце, которые никакой роли не играют.
Спасибо за внимание!
HCL Примечания и Domino Wiki: Domino Security: TLS Cipher Configururation
Showtable of Sopents
Hidetable of Sopent
- 1 ВВЕДЕНИЕ
- 2 Список шифров по умолчанию
- 2.1.
- 2.3 Примечания
- 3 SSLCipherSpec
- 4 Полный упорядоченный список шифров
- 4.1 TLS 1.2:
- 4.2 TLS 1.0 / SSLv3 Forward 3 Secret
7
4.10006 - 5.1 Кривые ECDHE
- 5.2 Группы DHE
- 6 Domino 9.0.1 FP4 и более ранние версии
Введение
Предоставление функциональности TLS 1.2 в качестве временного исправления (IF) после того, как функциональность была готова, вместо того, чтобы ждать следующего выпуска функций IBM Domino, не позволило нам изменить какие-либо строки или отредактировать какие-либо шаблоны.

В этой статье описывается, как администраторы могут настраивать спецификации шифрования SSL/TLS в Domino 9.0.1 FP5 и FP4 IF2 без использования неработающих настроек в общем каталоге.
Список шифров по умолчанию
При использовании TLS 1.2
- ECDHE_RSA_WITH_AES_256_GCM_SHA384 (C030)
- DHE_RSA_WITH_AES_256_GCM_SHA384 (009F)
- ECDHE_RSA_WITH_AES_128_GCM_SHA256 (C02F)
- DHE_RSA_WITH_AES_128_GCM_SHA256 (009E)
- ECDHE_RSA_WITH_AES_256_CBC_SHA384 (C028)
- DHE_RSA_WITH_AES_256_CBC_SHA256 (006B)
- ECDHE_RSA_WITH_AES_256_CBC_SHA (C014)
- DHE_RSA_WITH_AES_256_CBC_SHA (0039)
- ECDHE_RSA_WITH_AES_128_CBC_SHA256 (C027)
- DHE_RSA_WITH_AES_128_CBC_SHA256 (0067)
- ECDHE_RSA_WITH_AES_128_CBC_SHA (C013)
- RSA_WITH_AES_256_GCM_SHA384 (009D)
- RSA_WITH_AES_128_GCM_SHA256 (009C)
- RSA_WITH_AES_256_CBC_SHA256 (003D)
- RSA_WITH_AES_256_CBC_SHA (0035)
- RSA_WITH_AES_128_CBC_SHA256 (003C)
- RSA_WITH_AES_128_CBC_SHA (002F)
- RSA_WITH_3DES_EDE_CBC_SHA (000A)
При использовании TLS 1.

- ECDHE_RSA_WITH_AES_256_CBC_SHA (C014)
- DHE_RSA_WITH_AES_256_CBC_SHA (0039)
- ECDHE_RSA_WITH_AES_128_CBC_SHA (C013)
- RSA_WITH_AES_256_CBC_SHA (0035)
- RSA_WITH_AES_128_CBC_SHA (002F)
- RSA_WITH_3DES_EDE_CBC_SHA (000A)
Примечания
- Начиная с версии 9.0.1 FP3 IF2, Domino будет выбирать наиболее предпочтительный взаимно поддерживаемый шифр вместо шифра, предпочитаемого клиентом. Администраторы могут вернуться к старому поведению, установив SSL_USE_CLIENT_CIPHER_ORDER=1 в файле notes.ini сервера.
- Начиная с версии 9.0.1 FP4, RC4-SHA включается по умолчанию только в том случае, если администратор отключил поддержку TLS 1.2, и, поскольку это последний шифр в упорядоченном списке, он будет использоваться только в том случае, если альтернативой является отправка данные в открытом виде.
SSLCipherSpec
Администраторы могут использовать переменную SSLCipherSpec notes. ini для настройки нужных им шифров вместо использования шифров по умолчанию. Эта переменная notes.ini полностью переопределит список шифров по умолчанию, поэтому, чтобы удалить один из шифров по умолчанию, добавьте SSLCipherSpec, который включает все шифры по умолчанию.0047, кроме , который нужно удалить. Порядок значений шифра в этом параметре notes.ini не имеет значения. Чтобы ввести несколько шифров, введите каждое значение спецификации шифра из четырех шестнадцатеричных цифр, включая ведущие нули. Не включайте пробелы между значениями или круглыми скобками. Существующие SSLCipherSpec, которые используют только формат двух шестнадцатеричных цифр, продолжат работать. Например, чтобы включить только 256-битные шифры AES-GCM (не рекомендуемая конфигурация), используйте:
SSLCipherSpec=C030009F009D
Полный список упорядоченных шифров
TLS 1.2:
- ECDHE_RSA_WITH_AES_256_GCM_SHA384 (C030)
- DHE_RSA_WITH_AES_256_GCM_SHA384 (009F)
- ECDHE_RSA_WITH_AES_128_GCM_SHA256 (C02F)
- DHE_RSA_WITH_AES_128_GCM_SHA256 (009E)
- ECDHE_RSA_WITH_AES_256_CBC_SHA384 (C028)
- DHE_RSA_WITH_AES_256_CBC_SHA256 (006B)
- ECDHE_RSA_WITH_AES_256_CBC_SHA (C014)
- DHE_RSA_WITH_AES_256_CBC_SHA (0039)
- ECDHE_RSA_WITH_AES_128_CBC_SHA256 (C027)
- DHE_RSA_WITH_AES_128_CBC_SHA256 (0067)
- ECDHE_RSA_WITH_AES_128_CBC_SHA (C013)
- RSA_WITH_AES_256_GCM_SHA384 (009D)
- RSA_WITH_AES_128_GCM_SHA256 (009C)
- RSA_WITH_AES_256_CBC_SHA256 (003D)
- RSA_WITH_AES_256_CBC_SHA (0035)
- RSA_WITH_AES_128_CBC_SHA256 (003C)
- RSA_WITH_AES_128_CBC_SHA (002F)
- RSA_WITH_3DES_EDE_CBC_SHA (000A)
- RSA_WITH_RC4_128_SHA (0005)
TLS 1.
0 / SSLv3
- ECDHE_RSA_WITH_AES_256_CBC_SHA (C014)
- DHE_RSA_WITH_AES_256_CBC_SHA (0039)
- ECDHE_RSA_WITH_AES_128_CBC_SHA (C013)
- RSA_WITH_AES_256_CBC_SHA (0035)
- RSA_WITH_AES_128_CBC_SHA (002F)
- RSA_WITH_3DES_EDE_CBC_SHA (000A)
- RSA_WITH_RC4_128_SHA (0005)
Примечания:===
- Шифры, обеспечивающие прямую секретность, имеют приоритет над шифрами, которые не соответствуют текущим рекомендациям OWASP.
- Шифры ECDHE имеют приоритет над эквивалентными шифрами DHE для повышения производительности Шифры
- AES128-GCM предпочтительнее эквивалентных шифров AES256-CBC в соответствии с текущими рекомендациями OWASP.
- Слабые шифры намеренно не показаны в списках выше. Параметр USE_WEAK_SSL_CIPHERS=1 notes.ini необходимо использовать перед настройкой любых слабых шифров. Мы рекомендуем не включать какие-либо слабые шифры.
- Мы настоятельно не рекомендуем использовать шифры RC4 для защиты от атаки «RC4 Bar Mitzvah». Даже если RC4-SHA (0005) включен, Domino будет согласовывать этот шифр только в том случае, если все шифры с более высоким приоритетом не поддерживаются подключающимся клиентом.
- RC4-SHA будет добавлен в список слабых шифров в будущем выпуске.
Секретность пересылки
Шифры DHE и ECDHE используют конечное поле и эфемерную эллиптическую кривую Диффи-Хеллмана для обеспечения идеальной прямой секретности (PFS), которая защищает от злоумышленника, способного пассивно записывать весь сетевой трафик, поступающий на сервер, с последующим получением закрытого ключа сервера и расшифровывая весь этот записанный трафик. Эти шифры значительно повышают безопасность вашего трафика SSL/TLS за счет потенциально значительного снижения производительности.
Кривые ECDHE
Поддерживаются NIST P-256, NIST P-384 и NIST P-521.

Группы DHE
Минимальный размер для известных групп DH был увеличен до 2048 бит в Domino 9..0.1 FP4 IF2 для лучшей защиты от атаки Logjam, за исключением DHE_RSA_WITH_AES_128_CBC_SHA, который всегда будет использовать 1024-битную группу для совместимости с Java 6. Этот шифр был добавлен в список слабых шифров.
Пользовательские группы DH поддерживаются, начиная с версии 9.0.1 FP4 IF2, через файл SSL_DH_PARAMS notes.ini. Установка этого ini файла параметров DH в кодировке PEM приведет к тому, что Domino будет использовать эту пользовательскую группу вместо стандартной группы. Разрешены 1024-битные настраиваемые группы, но мы рекомендуем регулярно создавать 1024-битные настраиваемые группы.
SSL_DH_PARAMS=c:\dhparams1024.pem
Sample 1024 bit DH params:
-----BEGIN DH PARAMETERS-----
MIGHAoGBAN3Cks7CkjenR9zeF+pPSGgWZfI7hoOD5wDNi+CNttIxcU1nruMFXxD7
zsMHoRpwbohcVsrIz1kk1Avn4v7b7/UMXFq3TD2XYeHkj0I5DPEWal5kR0LH+HrC
fbsGob/ttDcmKlWYcMDMW4Y+a5cQYEN7BWE2fsJBlITgehmh42XzAgEC
-----END DH PARAMETERS-----
Вы можете создать файл DHParams с помощью такой простой команды OpenSSL, как 2dparams. Обязательно используйте openssl dh param вместо openssl dsa param; последний не выполняет определенные проверки, необходимые для DH, поэтому может создать слабую группу.
Domino 9.0.1 FP4 и более ранние версии
В этом разделе описывается, как администраторы могут настраивать спецификации шифрования SSL/TLS в Domino 9.0.1 FP4 без использования неработающих настроек в общем каталоге.
Список шифров по умолчанию для Domino 9. 0.1 FP4
При использовании TLS 1.2:
- RSA_WITH_AES_256_GCM_SHA384
- RSA_WITH_AES_128_GCM_SHA256
- RSA_WITH_AES_256_CBC_SHA256
- RSA_WITH_AES_256_CBC_SHA
- RSA_WITH_AES_128_CBC_SHA256
- RSA_WITH_AES_128_CBC_SHA
- RSA_WITH_3DES_EDE_CBC_SHA
При использовании TLS 1.0 или SSLv3:
- RSA_WITH_AES_256_CBC_SHA
- RSA_WITH_AES_128_CBC_SHA
- RSA_WITH_3DES_EDE_CBC_SHA
Примечания:
- Начиная с 9.0.1 FP3 IF2, Domino будет выбирать взаимно поддерживаемый шифр, который он предпочитает больше всего, вместо шифра, предпочитаемого клиентом. Администраторы могут вернуться к старому поведению, установив SSL_USE_CLIENT_CIPHER_ORDER=1 в файле notes.ini сервера.
- Начиная с версии 9.0.1 FP4, RC4-SHA включается по умолчанию только в том случае, если администратор отключил поддержку TLS 1.
2, и, поскольку это последний шифр в упорядоченном списке, он будет использоваться только в том случае, если альтернативой является отправка данные в открытом виде.
SSLCipherSpec
Администраторы могут использовать переменную SSLCipherSpec notes.ini для настройки желаемых шифров вместо использования шифров по умолчанию. Эта переменная notes.ini полностью переопределит список шифров по умолчанию, поэтому, чтобы удалить один из шифров по умолчанию, добавьте SSLCipherSpec, который включает все шифры по умолчанию , кроме , который нужно удалить. Порядок значений шифра в этом параметре notes.ini не имеет значения. Чтобы ввести несколько шифров, введите каждое двухзначное значение спецификации шифра, включая ведущие нули. Не включайте пробелы между значениями или круглыми скобками. Например, чтобы включить шифры по умолчанию для TLS 1.2, а также шифры PFS (кроме DHE_RSA_WITH_AES_128_CBC_SHA, обоснование см. ниже), используйте:
sslcipherspec = 9f9e6b39679d9c3d353c2f0a
Заполненный список Cipher для Domino 9. 0.1 FP4
TLS 1.2:
- DHE_RSA_SITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITH_ETITHITIT
- DHE_RSA_WITH_AES_128_GCM_SHA256 (9E)
- DHE_RSA_WITH_AES_256_CBC_SHA256 (6B)
- DHE_RSA_WITH_AES_256_CBC_SHA (39)
- DHE_RSA_WITH_AES_128_CBC_SHA256 (67)
- RSA_WITH_AES_256_GCM_SHA384 (9Г)
- RSA_WITH_AES_128_GCM_SHA256 (9C)
- RSA_WITH_AES_256_CBC_SHA256 (3D)
- RSA_WITH_AES_256_CBC_SHA (35)
- RSA_WITH_AES_128_CBC_SHA256 (3C)
- RSA_WITH_AES_128_CBC_SHA (2F)
- DHE_RSA_WITH_AES_128_CBC_SHA (33)
- RSA_WITH_3DES_EDE_CBC_SHA (0A)
- RSA_WITH_RC4_128_SHA (05)
TLS 1.0/SSLv3
- DHE_RSA_WITH_AES_256_CBC_SHA (39)
- RSA_WITH_AES_256_CBC_SHA (35)
- RSA_WITH_AES_128_CBC_SHA (2F)
- DHE_RSA_WITH_AES_128_CBC_SHA (33)
- RSA_WITH_3DES_EDE_CBC_SHA (0A)
- RSA_WITH_RC4_128_SHA (05)
Примечания:
- Все(*) шифры, обеспечивающие прямую секретность (DHE_.
..), имеют приоритет над шифрами, которые не соответствуют текущим рекомендациям OWASP.
- В соответствии с текущими рекомендациями OWASP шифры AES128-GCM предпочтительнее эквивалентных шифров AES256-CBC.
- Слабые шифры намеренно не показаны в списках выше. Параметр USE_WEAK_SSL_CIPHERS=1 notes.ini необходимо использовать перед настройкой любых слабых шифров. Мы рекомендуем не включать какие-либо слабые шифры.
- RC4-MD5 и DES-CBC-SHA добавлены в список слабых шифров.
- Мы настоятельно не рекомендуем использовать шифры RC4 для защиты от атаки «RC4 Bar Mitzvah». Даже если RC4-SHA (05) включен, Domino будет согласовывать этот шифр только в том случае, если все шифры с более высоким приоритетом не поддерживаются подключающимся клиентом.
- RC4-SHA будет добавлен в список слабых шифров в будущем выпуске.
- (*) Domino 9.0.1 FP4 понизил приоритет DHE_RSA_WITH_AES_128_CBC_SHA (33) до RSA_WITH_AES_128_CBC_SHA (2F) для улучшения совместимости с Java 6/7 и обеспечения дополнительной защиты от атаки Logjam.
Секретность пересылки в Domino 9.0.1 FP4
Шифры DHE используют эфемерный алгоритм Диффи-Хеллмана для обеспечения полной секретности пересылки (PFS), которая защищает от злоумышленника, способного пассивно записывать весь сетевой трафик, поступающий на сервер из позже получить закрытый ключ сервера и расшифровать весь записанный трафик. Эти шифры значительно повышают безопасность вашего трафика SSL/TLS за счет потенциально значительного снижения производительности. Мы рекомендуем провести нагрузочное тестирование в вашей среде, прежде чем настраивать эти шифры в производственных системах.
- По умолчанию эти шифры будут использовать ключ DH с размером, эквивалентным размеру ключа RSA, поэтому сервер, работающий с 2048-битным SSL-сертификатом, будет использовать 2048-битную группу DH.
- Мы полностью согласны с NIST SP 800-131a, что асимметричные (RSA и DH) ключи длиной менее 2048 бит больше не должны использоваться.
- Заметки SSL_DH_KEYSIZE.ini можно использовать для выбора группы DH другого размера; допустимые значения для Domino 9.0.1 FP4: 1024, 2048, 3072 и 409.6.
- Работа с большим размером ключа DH может привести к нарушению совместимости с некоторыми старыми клиентами, такими как Java 6 и Java 7, которые поддерживают только 1024-битный DH.
- Поскольку единственным шифром DHE, поддерживаемым Java 6 и Java 7, является DHE_RSA_WITH_AES_128_CBC_SHA (33), Domino 9.0.1 FP4 всегда будет использовать 1024-битную группу DH с этим шифром, чтобы избежать проблем совместимости с Java 6 и Java 7.
- Domino 9.0.1 FP4 также понизил приоритет DHE_RSA_WITH_AES_128_CBC_SHA (33) до RSA_WITH_AES_128_CBC_SHA (2F), чтобы обеспечить дополнительную защиту от атаки Logjam, избегая использования слабых групп DH, где это возможно.
- При использовании Domino 9.0.1 FP3 IF2 можно и нужно отключить DHE_RSA_WITH_AES_128_CBC_SHA (33), что должно заставить эти старые клиенты вернуться к использованию вместо этого RSA_WITH_AES_128_CBC_SHA (2F).
- Параметр DEBUG_SSL_DHE notes.ini можно использовать для вывода дополнительных сведений на консоль сервера, что помогает отслеживать несовместимости, и многие ошибки SSL/TLS теперь записываются в log.nsf.
- 2048-, 3072- и 4096-битные группы DH в 9.0.1 FP4 взяты из draft-ietf-tls-negotiated-ff-dhe-10. 1024-битная группа DH взята из RFC 2412, «Протокол определения ключа OAKLEY», раздел E.2.
Бета-версия Domino 10 и шифры SSL — Блог Мартейна
Опубликовано от martdj
Обновление: HCL заверила меня, что в выпуске Domino 10 Gold указанная ниже проблема будет исправлена. Если в файле notes.ini нет строки SSLCipherSpec, Domino автоматически выберет надежные шифры. Так же, как в Domino 9.0.1 с более поздними пакетами исправлений.
HCL запускает бета-версию Domino V10. Если вы еще ничего не слышали о Domino V10 и проявляли какой-либо интерес к Lotus/IBM Domino в прошлом, возможно, пришло время сообщить вам, что впервые за 5 лет мы фактически получили новую версию Domino и он будет содержать некоторые функции, которыми легко заинтересоваться. Для получения дополнительной информации о Domino V10 просто загуглите, хотя эта статья в блоге Хогна Бо Петтерсона может быть хорошим началом. Поскольку я участвую в программе бета-тестирования Domino V10, я буду время от времени писать об этом в блоге, поскольку по пути сталкиваюсь с вещами, о которых стоит упомянуть.
Сегодня вечером я решил, что пришло время обновить мои серверы Domino с помощью Domino 10. Оба уже работали на CentOS 7.5 (которая теперь действительно поддерживается!), так что это спасло меня от обновления ОС (RedHat/CentOS 6 больше не поддерживается). ). Обновление прошло гладко. Там нет ничего, что стоило бы упомянуть. Однако после обновления я увидел в журналах несколько тревожных сообщений:
04-09-2018 22:52:14.62 SSLDisableExportCiphers> Отключение слабого шифрования RSA_WITH_3DES_EDE_CBC_SHA. Установите в файле notes.ini "USE_WEAK_SSL_CIPHERS=1" для повторного включения. 04-09-2018 22:52:14.62 SSLDisableExportCiphers> Отключение слабого шифра RSA_WITH_RC4_128_SHA.Установите в файле notes.ini "USE_WEAK_SSL_CIPHERS=1" для повторного включения. 09-04-2018 22:52:14.62 SSLDisableExportCiphers> Отключение слабого шифра RSA_WITH_RC4_128_MD5. Установите в файле notes.ini "USE_WEAK_SSL_CIPHERS=1" для повторного включения. 09-04-2018 22:52:14.62 SSLDisableExportCiphers> Отключение слабого шифрования RSA_WITH_DES_CBC_SHA. Установите в файле notes.ini "USE_WEAK_SSL_CIPHERS=1" для повторного включения. 09.04.2018 22:52:14.62 SSLDisableExportCiphers> Ключ сервера (2048 бит) слишком надежен для шифров EXPORT1024. Отключение шифра RSA_EXPORT1024_WITH_DES_CBC_SHA 04-09-2018 22:52:14.62 SSLDisableExportCiphers> Ключ сервера (2048 бит) слишком надежен для шифров EXPORT. Отключение шифра RSA_EXPORT_WITH_RC4_40_MD5
и
09-04-2018 22:36:36 Соединение TLS/SSL 192.168.7.150(51526) -> 192.168.7.100(443) не удалось без поддерживаемых шифров 09-04-2018 22:44:48 Соединение TLS/SSL 192.168.7.100(20638) -> 192.168.7.100(465) завершилось неудачно без поддерживаемых шифров 09-04-2018 22:52:14 Соединение TLS/SSL 192.168.7.173(42978) -> 192.168.7.100(636) не удалось без поддерживаемых шифров
Так почему же Domino вообще начинает говорить о тех слабых шифрах, которые мы не использовали целую вечность, и о том, что происходит с моими веб-подключениями, LDAP-подключениями и безопасными SMTP-подключениями к моему серверу Domino?!? Быстрый тест показал, что ни один из них больше не работает, поскольку у них нет возможности безопасно подключиться к моему серверу Domino. Пора начать читать документацию…
Документация, к счастью, дала мне подсказку, что произошло. Помните строчку SSLCipherSpec= в notes.ini с кучей шифров? Если вы внимательно следили за последними пакетами исправлений для Domino, то знаете, что начиная с Domino 9.0.1 FP4IF2 совет состоял в том, чтобы удалить эту строку из вашего notes.ini, так как Domino будет автоматически использовать безопасный список шифров. Очевидно, разработчики не ожидали, что вы будете следовать документации этих пакетов исправлений, как они сейчас написали:
.
- Конфигурация шифра с помощью параметра notes.ini сервера SSLCipherSpec, который имеет значение
и требуется для пакетов функций Domino 9.0.1, больше не требуется, начиная с Domino 10.
Выбрано значение, ранее заданное с помощью параметра notes.ini
автоматически в документе Server сервера Domino 10 после обновления
с Domino 9.0.1. После обновления значение параметра notes.ini на сервере
игнорируется.- Если вы используете документы Интернет-сайта, выбор шифра в документах предыдущего сайта
учитывается. Это изменение поведения по сравнению с Domino 9.0.x, когда параметры шифрования
контролировались для каждого сервера с помощью параметра SSLCipherSpec
notes.ini, а параметры шифрования в документах Интернет-сайта игнорировались.
Поскольку документы Интернет-сайта могут иметь более старые параметры шифрования, оцените их
после обновления до Domino 10.
Итак, да, помните те действительно старые шифры в документах вашего интернет-сайта? Внезапно они снова используются, поэтому я получил сообщения о тех действительно старых шифрах (и они в итоге не использовались, поскольку USE_WEAK_SSL_CIPHERS=1 не было в моем файле notes.