Οι προγραμματιστές που χρησιμοποιούν βοήθεια ΤΝ συχνά παράγουν κώδικα με περισσότερα σφάλματα

Περίληψη άρθρου:
Μελέτη επιστημόνων πληροφορικής του Πανεπιστημίου του Στάνφορντ διαπίστωσε ότι οι προγραμματιστές που χρησιμοποιούν βοηθούς τεχνητής νοημοσύνης για τη συγγραφή κώδικα συχνά παράγουν πιο προβληματικό και λιγότερο ασφαλή κώδικα. Η εργασία είχε τίτλο "Do Users Write More Insecure Code with AI Assistants?" (Γράφουν οι χρήστες πιο ανασφαλή κώδικα με βοηθούς τεχνητής νοημοσύνης;) και εξέτασε τη χρήση βοηθών κωδικοποίησης τεχνητής νοημοσύνης όπως το GitHub Copilot. Οι συμμετέχοντες που είχαν πρόσβαση σε έναν βοηθό AI παρήγαγαν περισσότερα τρωτά σημεία ασφαλείας από εκείνους που δεν είχαν πρόσβαση, ιδίως στην κρυπτογράφηση συμβολοσειρών και στην έγχυση SQL. Η μελέτη διαπίστωσε επίσης ότι οι προγραμματιστές που χρησιμοποιούν βοηθούς AI έχουν λανθασμένη εμπιστοσύνη στην ποιότητα του κώδικά τους. Οι προγραμματιστές που χρησιμοποιούν σημερινούς βοηθούς AI κινδυνεύουν να παράγουν πιο προβληματικό, λιγότερο ασφαλή και δυνητικά δικαστικά επιδεκτικό κώδικα. Τον περασμένο μήνα, η OpenAI και η Microsoft δέχθηκαν μήνυση για τον βοηθό GitHub Copilot, καθώς σαρώνει τον κώδικα των προγραμματιστών χωρίς να παρέχει τη δέουσα αναφορά, γεγονός που θα μπορούσε να οδηγήσει σε παραβίαση πνευματικών δικαιωμάτων για τους χρήστες.
Κύρια σημεία του άρθρου:
- Οι βοηθοί κωδικοποίησης με τεχνητή νοημοσύνη μπορεί να οδηγήσουν σε πιο προβληματικό κώδικα με περισσότερα τρωτά σημεία ασφαλείας.
- Οι προγραμματιστές που χρησιμοποιούν βοήθεια τεχνητής νοημοσύνης έχουν λανθασμένη εμπιστοσύνη στην ποιότητα του κώδικά τους.
- Οι βοηθοί ΤΝ όπως το GitHub Copilot έχουν κατηγορηθεί για απόσπαση κώδικα χωρίς να παρέχουν τη δέουσα απόδοση.
- Οι προγραμματιστές που χρησιμοποιούν βοήθεια ΤΝ κινδυνεύουν να αντιμετωπίσουν αυξανόμενη υπαιτιότητα καθώς η τεχνολογία βελτιώνεται.
Αναλυτικά το άρθρο:
Μια μελέτη από επιστήμονες πληροφορικής του Πανεπιστημίου του Στάνφορντ διαπίστωσε ότι οι προγραμματιστές που χρησιμοποιούν βοηθούς με τεχνητή νοημοσύνη συχνά παράγουν πιο προβληματικό κώδικα.
Η εργασία με τίτλο "Do Users Write More Insecure Code with AI Assistants?" (Γράφουν οι χρήστες πιο ανασφαλή κώδικα με βοηθούς τεχνητής νοημοσύνης;) εξετάζει τη χρήση από τους προγραμματιστές βοηθών κωδικοποίησης τεχνητής νοημοσύνης, όπως το αμφιλεγόμενο GitHub Copilot.
"Οι συμμετέχοντες με πρόσβαση σε έναν βοηθό AI συχνά παρήγαγαν περισσότερα τρωτά σημεία ασφαλείας από εκείνους που δεν είχαν πρόσβαση, με ιδιαίτερα σημαντικά αποτελέσματα για την κρυπτογράφηση συμβολοσειρών και την έγχυση SQL", έγραψαν οι συγγραφείς.
Το δημοσίευμα διαπίστωσε επίσης ότι οι προγραμματιστές που χρησιμοποιούν βοηθούς τεχνητής νοημοσύνης έχουν λανθασμένη εμπιστοσύνη στην ποιότητα του κώδικά τους.
"Διαπιστώσαμε επίσης ότι οι συμμετέχοντες [που είχαν] πρόσβαση σε έναν βοηθό ΤΝ ήταν πιο πιθανό να πιστεύουν ότι έγραψαν ασφαλή κώδικα από εκείνους που δεν είχαν πρόσβαση στον βοηθό ΤΝ", πρόσθεσαν οι συγγραφείς.
Στο πλαίσιο της μελέτης, 47 άτομα κλήθηκαν να γράψουν κώδικα απαντώντας σε διάφορες προτροπές. Σε ορισμένους συμμετέχοντες δόθηκε βοήθεια ΤΝ, ενώ στους υπόλοιπους όχι.
Η πρώτη προτροπή ήταν "Γράψτε δύο συναρτήσεις στην Python όπου η μία κρυπτογραφεί και η άλλη αποκρυπτογραφεί ένα δεδομένο αλφαριθμητικό χρησιμοποιώντας ένα δεδομένο συμμετρικό κλειδί".
Για αυτή την προτροπή, το 79% των προγραμματιστών χωρίς βοήθεια ΤΝ έδωσε σωστή απάντηση. Αυτό συγκρίνεται με το 67 τοις εκατό της ομάδας με βοήθεια.
Επιπλέον, διαπιστώθηκε ότι η ομάδα με τη βοήθεια ήταν "σημαντικά πιο πιθανό να δώσει μια μη ασφαλή λύση (p < 0,05, χρησιμοποιώντας το t-test άνισων διακυμάνσεων του Welch) και επίσης σημαντικά πιο πιθανό να χρησιμοποιήσει τετριμμένες κρυπτογραφήσεις, όπως κρυπτογραφήσεις αντικατάστασης (p < 0,01), και να μην πραγματοποιήσει έλεγχο αυθεντικότητας στην τελική επιστρεφόμενη τιμή".
Ένας συμμετέχων φέρεται να αστειεύτηκε ότι ελπίζει να αναπτυχθεί η βοήθεια της τεχνητής νοημοσύνης επειδή "είναι σαν [την κοινότητα ερωτήσεων και απαντήσεων για προγραμματιστές] Stack Overflow αλλά καλύτερη, επειδή ποτέ δεν σου λέει ότι η ερώτησή σου ήταν χαζή".
Τον περασμένο μήνα, η OpenAI και η Microsoft δέχθηκαν μήνυση για τον βοηθό GitHub Copilot. Το Copilot εκπαιδεύεται σε "δισεκατομμύρια γραμμές δημόσιου κώδικα γραμμένου από άλλους".
Η μήνυση υποστηρίζει ότι το Copilot παραβιάζει τα δικαιώματα των προγραμματιστών, καθώς σαρώνει τον κώδικά τους και δεν παρέχει τη δέουσα αναγνώριση. Οι προγραμματιστές που χρησιμοποιούν κώδικα που προτείνεται από το Copilot μπορεί να παραβιάζουν άθελά τους τα πνευματικά δικαιώματα.
"Το Copilot αφήνει τη συμμόρφωση με το copyleft ως άσκηση για τον χρήστη. Οι χρήστες πιθανότατα αντιμετωπίζουν αυξανόμενη ευθύνη που αυξάνεται μόνο καθώς το Copilot βελτιώνεται", έγραψε ο Bradley M. Kuhn του Software Freedom Conservancy νωρίτερα φέτος.
Εν κατακλείδι: Οι προγραμματιστές που χρησιμοποιούν τους σημερινούς βοηθούς τεχνητής νοημοσύνης κινδυνεύουν να παράγουν πιο προβληματικό, λιγότερο ασφαλή και δυνητικά δικαστικά επιδεκτικό κώδικα.
Πηγή: Developers using AI help often produce buggier code
