История изменений
Исправление BaBL, (текущая версия) :
Регулярно сталкиваюсь с описанным, никакого баттхё недоумения никогда не вызывало. Сертификаты ведь выдаются на доменное имя, и одна из частей их смысла - убедиться, что хост действительно тот, за кого себя выдаёт.
Это да, но можно установить защищенное соединение и просто с IP, без домена и я точно помню что был такой баттхерт, когда по разным виртхостам были разные пары ключей и в продакшне работал только один, а остальные эррорили на чужой сертификат.
Update:
Погуглил, нашел подтверждение своему баттхерту:
https://en.wikipedia.org/wiki/Virtual_hosting
The biggest issue with name-based virtual hosting is that it is difficult to host multiple secure websites running SSL/TLS. Because the SSL/TLS handshake takes place before the expected hostname is sent to the server, the server doesn't know which certificate to present in the handshake. It is possible for a single certificate to cover multiple names either through the «subjectaltname» field or through wildcards but the practical application of this approach is limited by administrative considerations and by the matching rules for wildcards. There is an extension to TLS called Server Name Indication, that presents the name at the start of the handshake to circumvent that issue, except for some older clients (in particular Internet Explorer on Windows XP or older Android versions) which do not implement SNI.
Вот как раз эта проблема (жирным пометил) и решалась одинаковым PrivateKey, так как пофигу какой из публичных прилетит - все равно расшифровываются одним.
Исходная версия BaBL, :
Регулярно сталкиваюсь с описанным, никакого баттхё недоумения никогда не вызывало. Сертификаты ведь выдаются на доменное имя, и одна из частей их смысла - убедиться, что хост действительно тот, за кого себя выдаёт.
Это да, но можно установить защищенное соединение и просто с IP, без домена и я точно помню что был такой баттхерт, когда по разным виртхостам были разные пары ключей и в продакшне работал только один, а остальные эррорили на чужой сертификат.
Update:
Погуглил, нашел подтверждение своему баттхерту:
https://en.wikipedia.org/wiki/Virtual_hosting
The biggest issue with name-based virtual hosting is that it is difficult to host multiple secure websites running SSL/TLS. Because the SSL/TLS handshake takes place before the expected hostname is sent to the server, the server doesn't know which certificate to present in the handshake. It is possible for a single certificate to cover multiple names either through the «subjectaltname» field or through wildcards but the practical application of this approach is limited by administrative considerations and by the matching rules for wildcards. There is an extension to TLS called Server Name Indication, that presents the name at the start of the handshake to circumvent that issue, except for some older clients (in particular Internet Explorer on Windows XP or older Android versions) which do not implement SNI.