sekcji UWAGI strony ręcznej dość dużo podsumowuje:
Typowym zastosowaniem wezwie OpenSSL_add_all_algorithms() początkowo EVP_cleanup() przed zamknięciem.
i
Szyfr i trawić funkcje sprawdzania adresów są wykorzystywane w wielu częściach biblioteki. Jeśli tabela nie zostanie zainicjalizowana, kilka funkcji źle działa i narzeka, że nie może znaleźć algorytmów. Obejmuje to biblioteki PEM, PKCS # 12, SSL i S/MIME. Jest to typowe zapytanie na listach dyskusyjnych OpenSSL.
Więc zakładając, że piszesz typową aplikację, można dodać do swojej OpenSSL kodzie inicjującym:
OpenSSL_add_all_algorithms();
i to do kodu oczyszczania OpenSSL:
EVP_cleanup();
i są skończone. Jesteś zawsze odpowiedzialny za wywoływanie ich samodzielnie w aplikacjach korzystających z OpenSSL. Jeśli chcesz wiedzieć, w jaki sposób OpenSSL przechowuje tabelę wewnętrznie, use the source, Luke.
Aby kontrolować, które szyfry są dostępne dla określonego kontekstu SSL, należy użyć SSL_CTX_set_cipher_list.
Jeśli chodzi o lepszą dokumentację niż stronę podręcznika, mogę polecić "Network Security with OpenSSL" by John Viega, Matt Messier & Pravir Chandra. Książka jest stara i nie obejmuje nowszych wersji OpenSSL, ale większość z nich jest nadal bardzo odpowiednia.
dzięki za odpowiedź –
Dzięki za rekomendację książki. – Sabuncu