Εισαγωγή στο θέμα «Κρυπτογραφικός πολυμορφισμός» **Ο πολυμορφισμός** (από τα ελληνικά polý - «πολλά» και morphe - «μορφή») στον προγραμματισμό είναι μια ιδιότητα μιας συνάρτησης που της επιτρέπει να χρησιμοποιείται σε διαφορετικά περιβάλλοντα χωρίς να αλλάζει η συμπεριφορά της . Έτσι, μια συνάρτηση ενός τύπου μπορεί να χρησιμοποιηθεί για να κληθεί σε έναν άλλο τύπο, διατηρώντας παράλληλα την αρχική της σημασιολογική σημασία. Απαραίτητη προϋπόθεση για να χρησιμοποιηθεί μια συνάρτηση ως μη αναφορά (εξωτερική) συνάρτηση είναι η ενθυλάκωση. Εάν ο κωδικός συνάρτησης έχει άμεση πρόσβαση, τότε λέγεται ότι είναι σε σφαιρικό κώδικα. Η συνάρτηση μπορεί επίσης να χρησιμοποιηθεί με τους τροποποιητές «__init__», «__new__» και «__call__» - αυτές είναι ιδιότητες του διακοσμητή «@staticmethod» και «@classmethod». Σε αυτή την περίπτωση, μπορούμε να μιλήσουμε για «στατικά πολυμορφικό» ή «ταξικό-πολυμορφικό».
Για παράδειγμα, η συνάρτηση για τον υπολογισμό της τετραγωνικής ρίζας: ``` def sq_root(x): return x ** 0,5 ``` και η συνάρτηση για τον υπολογισμό της παραβολικής συνάρτησης:
``` py def parabola(coefs): συντελεστές συνάρτησης y = ax^2 + bx + c περνούν ``` και οι δύο συναρτήσεις μπορούν να χρησιμοποιηθούν σε ένα πρόγραμμα, μέσα σε μια συνάρτηση και/ή μια κλάση, εξίσου επιτυχημένα. Δέχονται ορίσματα, μια τιμή επιστροφής και διατηρούν τη συμπεριφορά του πηγαίου κώδικα μέσα στο σώμα τους με τον ίδιο τρόπο. Ως αποτέλεσμα της εφαρμογής τους, μπορούν να θεωρηθούν λειτουργίες, δηλ.