Η ISRG (Internet Security Research Group), η οποία είναι ο ιδρυτής του έργου Let's Encrypt και προωθεί την ανάπτυξη τεχνολογιών για τη βελτίωση της ασφάλειας του Διαδικτύου, ανακοίνωσε τη δημοσίευση του στρώματος rustls-openssl-compat, το οποίο επιτρέπει τη χρήση του Η βιβλιοθήκη Rustls ως διαφανής αντικατάσταση του OpenSSL. Το έργο παρέχει επί του παρόντος μια υλοποίηση του rustls-libssl που παρέχει συμβατότητα με το libssl και μια εφαρμογή libcrypto βρίσκεται σε εξέλιξη.
Η λειτουργικότητα που υπάρχει στο επίπεδο είναι αρκετή για να εξασφαλίσει τη λειτουργία του nginx που βασίζεται στο Rustls. Για να κάνετε μετεγκατάσταση του nginx στο Rustls, χρειάζεται απλώς να αντικαταστήσετε τις βιβλιοθήκες, χωρίς να χρειάζεται να αναδημιουργήσετε ή να αλλάξετε το nginx. Τα άμεσα σχέδια ανάπτυξης της Rustls περιλαμβάνουν βελτιστοποιήσεις απόδοσης σε περιοχές όπου το Rustls εξακολουθεί να υστερεί σε σχέση με το OpenSSL και υποστήριξη για το RFC 8879 για συμπίεση πιστοποιητικών. Επιπλέον, η ανακοίνωση αναφέρει ένα σχέδιο μεταφοράς στοιχείων της υποδομής του κέντρου πιστοποίησης Let's Encrypt από το OpenSSL στο Rustls.
Το έργο Rustls αναπτύσσει εφαρμογές πελάτη και διακομιστή των πρωτοκόλλων TLS1.2 και TLS1.3 για χρήση σε εφαρμογές Rust. Το Rustls δεν παρέχει τη δική του εφαρμογή κρυπτογραφικών πρωτόγονων, αλλά χρησιμοποιεί παρόχους κρυπτογραφικών συναρτήσεων με δυνατότητα σύνδεσης (υποστηρίζονται αλγόριθμοι ECDSA, Ed25519, RSA, ChaCha20-Poly1305, AES128-GCM και AES256-GCM). Από προεπιλογή, το Rustls χρησιμοποιεί έναν πάροχο κρυπτογράφησης που βασίζεται στη βιβλιοθήκη aws-lc-rs, η οποία έχει αναπτυχθεί από την Amazon και βασίζεται στον κώδικα C++ του BoringSSL, ακολουθούμενο από το Google fork του OpenSSL. Η βιβλιοθήκη δακτυλίων, που βασίζεται εν μέρει στο BoringSSL και συνδυάζει τον κώδικα συναρμολόγησης, C++ και Rust, μπορεί επίσης να χρησιμοποιηθεί ως πάροχος κρυπτογράφησης.
Αξίζει να σημειωθεί ότι το nginx διαθέτει ενσωματωμένη υποστήριξη για δημιουργία με BoringSSL, η οποία σας επιτρέπει να χρησιμοποιείτε αυτήν τη βιβλιοθήκη απευθείας χωρίς περιττά επίπεδα. Επιπλέον, εκτός από την ενσωματωμένη υποστήριξη Rustls για τις βιβλιοθήκες aws-lc-rs και ring, με βάση τον κώδικα BoringSSL, αναπτύσσονται επίσης αρκετοί τρίτοι πάροχοι κρυπτογράφησης για Rustls, επιτρέποντας τη χρήση των mbedtls (κώδικας C ), βιβλιοθήκες BoringSSL (C++) και RustCrypto (Rust).
Πηγή: opennet.ru
