W jaki sposób certyfikaty SAN obniżają wydajność?

11

Słyszałem, że kiedy wiele nazw jest dodawanych do jednego SAN Cert (podmiot alternatywnej nazwy), wydajność zaczyna się obniżać.

Czy ktoś może wyjaśnić, w jaki sposób przetwarzane są certyfikaty SAN, aby zrozumieć, co powoduje koszt wydajności w miarę wzrostu nazw w sieci SAN?

Kyle Brandt
źródło
Może to być również przydatne w security.se ...
Peter Grace
5
Nigdy nie słyszałem o tym, że wpisy SAN obniżają wydajność (poza oczywistym niewielkim wzrostem przepustowości w celu przesłania certyfikatu i nakładem przetwarzania każdego wpisu; nie powinno to oznaczać nic wartego wzmianki, chyba że próbujesz umieścić miliony SAN w tym samym certyfikacie). Chcesz ujawnić swoje referencje?
Chris S
Podczas rozmowy z Comodo powiedzieli nam, że tak jest (zaczyna się degradować ponad sto). Domyślam się, że to może „przetwarzanie każdego wpisu”, ale nie jestem pewien przepływu przetwarzania - stąd moje pytanie.
Kyle Brandt
4
To tylko forpętla, aby sprawdzić, czy host pasuje do jednej z sieci SAN. 50 sieci SAN, nie ma problemu. 5 000 000 SAN, problem.
Michael Hampton
1
To brzmi jak sztuczka, aby klienci kupili więcej certyfikatów zamiast mnie. Czy rzeczywiście masz przypadek użycia dla tak wielu „SAN”? Naprawdę użyłem go tylko do zdolności korzystania z www / no www oraz do wymiany serwerów, na których miałem zewnętrzny adres URL, wewnętrzny adres serwera i automatyczne wykrywanie. Nie widzę, aby żaden dostawca SSL był zadowolony z dostarczenia certyfikatu obejmującego setki nazwisk. Symbol wieloznaczny byłby łatwiejszy, ale nie obejmuje nazw „więcej kropek”.
USD Matt

Odpowiedzi:

5

Niektóre powierzchowne testy wydają się sugerować, że karmiono mnie bandą złośliwych.

Wygenerowałem certyfikat tak:

openssl genrsa -out www.domain.tld.key 2048

[kbrandt@alpine: ~/sancrt] openssl req -new -key www.domain.tld.key -out www.domain.tld.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:NY
Locality Name (eg, city) []:New York
Organization Name (eg, company) [Internet Widgits Pty Ltd]:LOTA-SAN
Organizational Unit Name (eg, section) []:SANSRUS
Common Name (e.g. server FQDN or YOUR name) []:www.domain.tld
Email Address []:[email protected]
....

echo -n "subjectAltName=DNS:www.domain.tld," > www.domain.tld.cnf;for i in {1..2500}; do echo -n "DNS:www$i.domain.tld,"; done >> www.domain.tld.cnf   

#manually delete comma at the end of the .cnf

openssl x509 -req -days 365 \
>   -in www.domain.tld.csr \
>   -signkey www.domain.tld.key \
>   -text \
>   -extfile  www.domain.tld.cnf \
>   -out www.domain.tld.crt
Signature ok
subject=/C=US/ST=NY/L=New York/O=LOTA-SAN/OU=SANSRUS/CN=www.domain.tld/[email protected]
Getting Private key

cat *.key *.crt > sillysan.pem

Kiedy próbuję się zwijać i wget, nie dostrzegam żadnych zauważalnych różnic:

time curl -ssl3 --noproxy \* -D - --insecure http://www2500.domain.tld
curl -ssl3 --noproxy \* -D - --insecure http://www2500.domain.tld  0.01s user 0.00s system 69% cpu 0.012 total

Wyniki są takie same w przypadku www vs www2500. Wydaje mi się, że możliwe jest, że - niepewność całkowicie omija sprawdzanie, ale na razie dam standardowy znaczek bardzo nienaukowego testu:

wprowadź opis zdjęcia tutaj

Kyle Brandt
źródło