Czym dokładnie jest para BIO w OpenSSL iw jaki sposób ma być używana? Sprawdziłem już dokumentację OpenSSL, ale wszelkie szczegóły są bardzo nieliczne. Dzięki!Co to jest i jak używać par BIO OpenSSL?
Odpowiedz
BIO w OpenSSL jest podobny do uchwytu pliku. Używasz ich dwóch, aby komunikować się ze sobą bezpiecznie tak jak z dwoma gniazdami. Najlepszym wyjaśnieniem, które znalazłem, jest here.
Kilka miesięcy temu otrzymałem wiele pożytku z Herong Yang's site, kiedy musiałem napisać aplikację za pomocą OpenSSL. Sekcje dotyczące tworzenia i podpisywania certyfikatów za pomocą OpenSSL i keytool stanowiły dużą pomoc przy testowaniu aplikacji.
znalazłem najlepszym sposobem, aby dowiedzieć się o OpenSSL było przeczytać "Network Security z OpenSSL" przez John Viega, Matt Messiera i Pravir Chandra, ISBN 059600270X. Mają całą sekcję jak tworzyć i używać pary BIO z przykładowym kodem.
Para BIO to dwa BIO źródła/zlew, które są ze sobą powiązane. Wszystko, co jest napisane, można odczytać od drugiego. Jeśli masz już dwa BIOS-y, możesz połączyć je za pomocą BIO_make_bio_pair. Lub możesz stworzyć nową parę BIO z BIO_new_bio_pair.
Jednym z zastosowań wspomnianych w książce Network Security with OpenSSL (patrz strona 111) jest to, że można powiązać tę parę z silnikiem SSL. Wszystko napisane na parę BIO zostanie odczytane przez silnik SSL. Wszystko, co napisano do pary BIO, można odczytać. OpenSSL ma próbkę tego (zobacz ssl/ssltest.c)
W wysiłku dokumentacyjnym fundacja openssl utrzymuje wiki społeczności, które można oczywiście poprawić. BIO jest objęte tutaj: http://wiki.openssl.org/index.php/BIO.
- 1. Co to jest el/element? Jak tego używać? I dlaczego?
- 2. Co to jest pyximport i jak mam go używać?
- 3. Co to jest indeks pełnotekstowy i kiedy powinienem go używać?
- 4. Co to jest NHibernate i dlaczego powinienem go używać?
- 5. co to jest MVVM i czy powinniśmy go używać?
- 6. Co to jest funkcja "zewnętrzna inline" i kiedy używać?
- 7. Co to jest VertiPaq i jak działa
- 8. Co to jest i jak zrobić WBS?
- 9. Co to jest Thread.CurrentPrincipal i co robi?
- 10. Co to jest S_ISREG() i co robi?
- 11. Co to jest "usuń to"?
- 12. C# - Co to jest komponent i jak jest zwykle używany?
- 13. Co to jest CHAR_BIT?
- 14. Co to jest? rodzaj?
- 15. Co to jest POI i co to znaczy?
- 16. co to jest [cmdletbinding()] i jak to działa?
- 17. Co to jest mangling nazw i jak to działa?
- 18. Co to jest niezaznaczone i jak to sprawdzić?
- 19. Co to jest plik IOR, co robi i jak działa?
- 20. Co to jest "scipy.i"?
- 21. Co to jest Serializable? Co to znaczy?
- 22. Co to jest WebIDL i (dlaczego) jest to ważne?
- 23. TCHAR * envp []: Co to jest?
- 24. Co to jest plik .pem i jak z niego korzystać?
- 25. Co to jest plik Flash .SWC i jak jest używany?
- 26. Co to jest NaNi, i jak jest inny fron NaN?
- 27. W Flask, Co to jest request.args i jak jest używany?
- 28. Co to jest premain() i jak jest wywoływana?
- 29. Co to jest []
- 30. Co to jest nowa phpMyID?
Stwierdziłem, że "bezpieczeństwo sieci z OpenSSL" jest naprawdę "brakującą instrukcją". Jeśli próbujesz korzystać z interfejsu API i nie masz kopii tej książki obok ciebie, okaże się ona wykładniczo trudniejsza. Szkoda, że dokumentacja OpenSSL jest tak niekompletna z punktu widzenia poradnika, ale przynajmniej ta książka jest dostępna, aby pomóc. –