Nuova iniziativa software: C++ riceve un aggiornamento della sicurezza tramite Safe Extensions
La comunità C++ risponde ai problemi di sicurezza con le "Safe C++ Extensions". Le nuove tecnologie hanno lo scopo di risolvere i problemi di sicurezza della memoria e supportare i codici esistenti. Saperne di più!
Nuova iniziativa software: C++ riceve un aggiornamento della sicurezza tramite Safe Extensions
Ci sono sempre nuovi sviluppi nel mondo della programmazione, soprattutto quando si tratta di sicurezza del software. La comunità C++ si trova attualmente ad affrontare la sfida di un numero sempre maggiore di esperti che lodano i vantaggi di altri linguaggi di programmazione che offrono una maggiore sicurezza della memoria. Per contrastare queste critiche è stato lanciato il progetto “Safe C++ Extensions”.
Questo nuovo sforzo mira ad affrontare le vulnerabilità esistenti del C++, in particolare nell'area della sicurezza della memoria. Vinnie Falco, presidente della C++ Alliance, ha definito la proposta rivoluzionaria. In un rapporto di Register, ha sottolineato l'importanza di aggiungere moderne funzionalità di sicurezza della memoria al C++, soprattutto in un momento in cui il codice sicuro è più che mai necessario. Negli ultimi anni sono state frequenti le richieste di sviluppare nuove soluzioni software in linguaggi di programmazione come Rust, Go e Java, noti per la loro sicurezza.
Critica del C++ e voglia di cambiamento
Già nel 2019 esperti come Alex Gaynor hanno sottolineato le gravi lacune di sicurezza nei codebase di grandi dimensioni, causate principalmente da errori di sicurezza della memoria. Questi problemi vengono sempre più discussi nelle conferenze tecniche. L'anno scorso c'erano anche voci dal settore tecnologico, come Mark Russinovich di Microsoft, che suggerivano di abbandonare del tutto C e C++ a favore di Rust.
Anche se Bjarne Stroustrup, il creatore del C++, ha assicurato che il suo linguaggio di programmazione nella sua forma attuale può essere fondamentalmente sicuro per la memoria, queste affermazioni non trovano il consenso di tutti. I critici ritengono che il C++ non sia stato originariamente progettato per essere sicuro per la memoria, il che rende molto più difficile creare codice sicuro per la memoria nelle applicazioni pratiche.
Il progetto “Safe C++ Extensions” affronta ora proprio questa sfida. Mira a soddisfare le raccomandazioni di agenzie come la NSA e la US Cybersecurity Agency, che richiedono livelli più elevati di sicurezza nei sistemi software. Nonostante i molti scettici che dubitano che il C++ possa mai essere sicuro quanto linguaggi come Rust o Swift, gli sviluppatori Sean Baxter e Christian Mazakas si mostrano fiduciosi nel loro piano. Sostengono che il passaggio completo a Rust spesso non è fattibile nella pratica perché ci sono differenze significative tra i linguaggi di programmazione.
Innovazioni nei linguaggi di programmazione
Baxter sottolinea che il progetto Safe C++ introduce nuove tecnologie per garantire la sicurezza della memoria. Una delle innovazioni centrali è il “controllo del prestito”, che serve ad evitare errori come “use-after-free”. Verranno inoltre effettuate analisi di inizializzazione destinate ad aumentare la sicurezza dei tipi. Un vantaggio chiave di questo impegno è che il codice C++ esistente può continuare a funzionare mentre gli sviluppatori possono incorporare gradualmente funzionalità più sicure senza dover riqualificarsi su un linguaggio di programmazione completamente nuovo.
Nel complesso, la creazione delle “Safe C++ Extensions” dimostra che la comunità C++ è pronta ad evolversi e a rispondere alle pressanti preoccupazioni in materia di sicurezza. Ciò apre la strada per combinare i vantaggi del C++ con le richieste di maggiore sicurezza e per rendere il panorama dei linguaggi di programmazione più interessante e sicuro. È possibile trovare dettagli sugli approcci innovativi in un rapporto di winfuture.de.