Νέα πρωτοβουλία λογισμικού: Η C++ λαμβάνει αναβάθμιση ασφαλείας μέσω ασφαλών επεκτάσεων
Η κοινότητα της C++ ανταποκρίνεται σε ανησυχίες για την ασφάλεια με τις "Ασφαλείς επεκτάσεις C++". Οι νέες τεχνολογίες προορίζονται για την αντιμετώπιση προβλημάτων ασφάλειας της μνήμης και την υποστήριξη υπαρχόντων κωδίκων. Μάθετε περισσότερα!
Νέα πρωτοβουλία λογισμικού: Η C++ λαμβάνει αναβάθμιση ασφαλείας μέσω ασφαλών επεκτάσεων
Υπάρχουν πάντα νέες εξελίξεις στον κόσμο του προγραμματισμού, ειδικά όταν πρόκειται για την ασφάλεια λογισμικού. Η κοινότητα της C++ αντιμετωπίζει αυτήν τη στιγμή την πρόκληση ολοένα και περισσότερων ειδικών να επαινούν τα πλεονεκτήματα άλλων γλωσσών προγραμματισμού που προσφέρουν μεγαλύτερη ασφάλεια μνήμης. Για να αντιμετωπιστεί αυτή η κριτική, ξεκίνησε το έργο «Ασφαλείς Επεκτάσεις C++».
Αυτή η νέα προσπάθεια στοχεύει στην αντιμετώπιση των υφιστάμενων ευπαθειών της C++, ιδιαίτερα στον τομέα της ασφάλειας της μνήμης. Ο Vinnie Falco, πρόεδρος της C++ Alliance, χαρακτήρισε την πρόταση επαναστατική. Σε μια αναφορά του Register, τόνισε τη σημασία της προσθήκης σύγχρονων χαρακτηριστικών ασφαλείας μνήμης στη C++, ειδικά σε μια εποχή που ο ασφαλής κώδικας χρειάζεται περισσότερο από ποτέ. Τα τελευταία χρόνια, υπήρξαν συχνά αιτήματα για την ανάπτυξη νέων λύσεων λογισμικού σε γλώσσες προγραμματισμού όπως οι Rust, Go και Java, οι οποίες είναι γνωστές για την ασφάλειά τους.
Κριτική της C++ και η παρόρμηση για αλλαγή
Ήδη από το 2019, ειδικοί όπως ο Alex Gaynor επεσήμαναν τα σοβαρά κενά ασφαλείας σε μεγάλες βάσεις κώδικα, τα οποία προκαλούνται κυρίως από σφάλματα ασφαλείας της μνήμης. Αυτά τα προβλήματα συζητούνται όλο και περισσότερο σε τεχνικά συνέδρια. Πέρυσι, υπήρξαν ακόμη και φωνές από τη βιομηχανία της τεχνολογίας, όπως ο Mark Russinovich της Microsoft, ο οποίος πρότεινε την πλήρη κατάργηση των C και C++ υπέρ του Rust.
Αν και ο Bjarne Stroustrup, ο δημιουργός της C++, έχει διαβεβαιώσει ότι η γλώσσα προγραμματισμού του στην τρέχουσα μορφή της μπορεί να είναι θεμελιωδώς ασφαλής στη μνήμη, αυτές οι δηλώσεις δεν έχουν απήχηση σε όλους. Οι επικριτές πιστεύουν ότι η C++ δεν σχεδιάστηκε αρχικά για να είναι ασφαλής στη μνήμη, γεγονός που καθιστά πολύ πιο δύσκολη τη δημιουργία κώδικα ασφαλούς μνήμης σε πρακτικές εφαρμογές.
Το έργο «Safe C++ Extensions» αντιμετωπίζει τώρα ακριβώς αυτήν την πρόκληση. Στοχεύει στην ικανοποίηση συστάσεων από υπηρεσίες όπως η NSA και η Υπηρεσία Κυβερνοασφάλειας των ΗΠΑ, οι οποίες ζητούν υψηλότερα επίπεδα ασφάλειας στα συστήματα λογισμικού. Παρά τους πολλούς σκεπτικιστές που αμφιβάλλουν ότι η C++ μπορεί ποτέ να είναι τόσο ασφαλής όσο γλώσσες όπως η Rust ή η Swift, οι προγραμματιστές Sean Baxter και Christian Mazakas δείχνουν εμπιστοσύνη στο σχέδιό τους. Υποστηρίζουν ότι η πλήρης μετάβαση στο Rust συχνά δεν είναι εφικτή στην πράξη επειδή υπάρχουν σημαντικές διαφορές μεταξύ των γλωσσών προγραμματισμού.
Καινοτομίες σε γλώσσες προγραμματισμού
Η Baxter υπογραμμίζει ότι το έργο Safe C++ εισάγει νέες τεχνολογίες για τη διασφάλιση της ασφάλειας της μνήμης. Μία από τις κεντρικές καινοτομίες είναι ο «έλεγχος δανείου», ο οποίος χρησιμεύει για την αποφυγή λαθών όπως «χρήση μετά τη δωρεάν». Θα υπάρξουν επίσης αναλύσεις αρχικοποίησης που αποσκοπούν στην αύξηση της ασφάλειας τύπου. Ένα βασικό πλεονέκτημα αυτής της προσπάθειας είναι ότι ο υπάρχων κώδικας C++ μπορεί να συνεχίσει να λειτουργεί, ενώ οι προγραμματιστές μπορούν σταδιακά να ενσωματώσουν πιο ασφαλείς λειτουργίες χωρίς να χρειάζεται να επανεκπαιδευτούν σε μια εντελώς νέα γλώσσα προγραμματισμού.
Συνολικά, η δημιουργία των «Ασφαλών επεκτάσεων C++» δείχνει ότι η κοινότητα της C++ είναι έτοιμη να εξελιχθεί και να ανταποκριθεί σε πιεστικά ζητήματα ασφάλειας. Αυτό ανοίγει έναν δρόμο για να συνδυαστούν τα πλεονεκτήματα της C++ με τις απαιτήσεις για υψηλότερη ασφάλεια και να γίνει το τοπίο της γλώσσας προγραμματισμού πιο ενδιαφέρον και ασφαλές. Μπορείτε να βρείτε λεπτομέρειες σχετικά με τις καινοτόμες προσεγγίσεις σε ρεπορτάζ του winfuture.de.