Подтвердить что ты не робот

Разница между SSL и аутентификацией Kerberos?

Я пытаюсь понять, какова фактическая разница между аутентификацией SSL и Kerberos, и почему иногда у меня есть как трафик SSL, так и Kerberos. Или Kerberos использует SSL в любом случае?

Кто-нибудь может помочь? Спасибо!

4b9b3361

Ответ 1

В то время как Kerberos и SSL - оба протокола, Kerberos - протокол аутентификации, но протокол SSL - это протокол шифрования. Kerberos использует UDP, SSL использует (большую часть времени) TCP. Проверка подлинности SSL обычно выполняется путем проверки сервера и клиента RSA или ECDSA, встроенные в нечто, называемое сертификаты X.509. Вы подтверждаете свой сертификат и соответствующий ключ. С помощью Kerberos вы можете пройти аутентификацию по паролю или каким-либо другим способом. Windows использует Kerberos, например, при использовании в домене.

Примечание: Последние версии SSL называются TLS для безопасности транспортного уровня.

Ответ 2

SSL использует криптографию с открытым ключом:

  • У вас (или вашего браузера) есть открытая/закрытая ключевая пара
  • Сервер также имеет открытый/закрытый ключ
  • Вы генерируете симметричный ключ сеанса
  • Вы шифруете с открытым ключом сервера и отправляете этот зашифрованный ключ сеанса на сервер.
  • Сервер расшифровывает зашифрованный ключ сеанса своим личным ключом.
  • Вы и сервер начнете общаться с помощью симметричного ключа сеанса (в основном потому, что симметричные клавиши быстрее).

Kerberos не использует криптографию с открытым ключом. Он использует доверенную стороннюю сторону. Здесь эскиз:

  • Вы оба (сервер и клиент) подтверждаете свою личность доверенным третьим лицам (через секрет).
  • Если вы хотите использовать сервер, вы проверяете и убедитесь, что сервер заслуживает доверия. Тем временем сервер проверяет, что вы заслуживаете доверия. Теперь, взаимно уверенный в личности друг друга. Вы можете общаться с сервером. 2

Ответ 3

Проще говоря, Kerberos является протоколом для установления взаимного доверия идентичности или аутентификации для клиента и сервера через доверенную стороннюю сторону, тогда как SSL обеспечивает аутентификацию только сервера и только если его открытый ключ имеет уже был создан как заслуживающий доверия через другой канал. Оба обеспечивают безопасную связь между сервером и клиентом.

Более формально (но не попадая в математические доказательства), учитывая клиент C, сервер S и сторонний T, которым доверяют C и S:

После аутентификации Kerbeos установлено, что:

  • C полагает, что S является тем, с кем он собирался связаться
  • S считает, что C - это тот, кто утверждает, что он
  • C считает, что он имеет безопасное соединение с S
  • C полагает, что S считает, что он имеет безопасное соединение с C
  • S считает, что он имеет безопасное соединение с C
  • S полагает, что C считает, что он имеет безопасное соединение с S

SSL, с другой стороны, только устанавливает, что:

  • C полагает, что S является тем, с кем он собирался связаться
  • C считает, что он имеет безопасное соединение с S
  • S полагает, что имеет безопасное соединение с C

Ясно, что Kerberos устанавливает более сильные, более полные отношения доверия.

Кроме того, чтобы установить идентификатор S по SSL, C требует предварительного знания о S или внешнего способа подтверждения этого доверия. Для повседневного использования большинства людей это происходит в форме корневых сертификатов и кеширования сертификата S для перекрестных ссылок в будущем.

Без этих предварительных знаний SSL уязвим для атаки "человек-в-середине", когда сторонняя сторона может притворяться S-C, передавая связь между ними, используя два отдельных защищенных канала для C и S. Чтобы скомпрометировать аутентификацию Kerberos, подслушиватель должен маскироваться под T как на S, так и на C. Обратите внимание, однако, что набор трестов по-прежнему не разбит в соответствии с целью Kerberos, поскольку конечное состояние по-прежнему правильное в соответствии с предварительным условием "C и S доверяет T".

Наконец, как было отмечено в комментарии, Kerberos может быть и был расширен, чтобы использовать SSL-подобный механизм для установления начального безопасного соединения между C и T.

Ответ 4

Короткий ответ: SSL и Kerberos используют шифрование, но SSL использует ключ, который не изменяется во время сеанса, в то время как Kerberos использует несколько ключей для шифрования связи между клиентом и клиентом.

В SSL шифрование обрабатывается непосредственно двумя концами связи, в то время как в Kerberos ключ шифрования предоставляется третьей стороной - некоторым промежуточным - между клиентом и сервером.

Ответ 5

От http://web.mit.edu/kerberos/: Kerberos был создан MIT как решение этих проблем безопасности сети. Протокол Kerberos использует сильную криптографию, чтобы клиент мог подтвердить свою идентичность с сервером (и наоборот) через небезопасное сетевое соединение. После того, как клиент и сервер использовали Kerberos для подтверждения своей идентичности, они также могут шифровать все свои сообщения, чтобы обеспечить конфиденциальность и целостность данных, когда они занимаются своим бизнесом.

В то же время: SSL используется для установления аутентификации сервера и сервера через шифрование с открытым ключом.

Ответ 6

От https://www.eldos.com/security/articles/7240.php?page=all,

Kerberos и TLS - это не то, что нужно сравнивать. У них разные цели и разные методы. В начале нашей статьи мы упоминали часто задаваемые вопросы, такие как "что лучше" и "что выбрать". Первый вопрос не является вопросом: ничего лучше, и все хорошо, если вы используете его правильно. Последний вопрос заслуживает серьезного рассмотрения: что выбрать, зависит от того, что у вас есть и чего вы хотите.

Если вы хотите защитить свои сообщения в том смысле, что никто не может их прочитать или изменить, возможно, правильным выбором является использование TLS или некоторых других протоколов на его основе. Хорошим примером использования TLS для обеспечения трафика World Wide Web, используемого HTTP, является использование HTTPS. Для безопасной передачи файлов вы можете использовать FTPS и учитывать, что SMTP (хотя он означает "простой" протокол передачи почты, а не "безопасный" ) также может быть защищен TLS.

С другой стороны, если вам нужно управлять доступом пользователей к службам, вы можете использовать Kerberos. Представьте себе, например, что у вас есть несколько серверов, таких как серверы веб-серверов, FTP, SMTP и SQL, а также, возможно, что-то еще, все на одном хосте. Некоторым клиентам разрешено использовать SMTP и HTTP, но не разрешено использовать FTP, другие могут использовать FTP, но не имеют доступа к вашим базам данных. Именно в такой ситуации, когда Kerberos подходит к использованию, вам просто нужно описать права пользователя и вашу административную политику на сервере аутентификации.

Ответ 7

Короче:

Kerberos обычно не шифрует передачу данных, но SSL и TLS делают.

"нет стандартных API-интерфейсов для доступа к этим сообщениям. Windows Vista, Microsoft не предоставляет механизм для пользователя приложения для создания сообщений KRB_PRIV или KRB_SAFE." - от http://www.kerberos.org/software/appskerberos.pdf

В противоположность этому, SSL и TLS обычно не переносят и не подтверждают ваше имя входа домена Windows на сервер, но Kerberos делает.