I programmi per elaboratore possono essere protetti mediante le seguenti forme di tutela:
- Brevetto per invenzione.
- Diritto d'autore.
- Concorrenza sleale.
- Tutela contrattuale.
Di particolare interesse sono le prime due forme.
Per quanto riguarda il brevetto per invenzione, non sono brevettabili i programmi per elaboratore in quanto tali, cioè non sono brevettabili i programmi considerati semplicemente creazioni astratte, mancanti di carattere tecnico. Non per questo non sono brevettabili le invenzioni relative al computer: infatti una invenzione diretta ad un processo tecnico in cui è usato un programma per elaboratore è brevettabile come fosse una combinazione di hardware e software che dia luogo ad un nuovo e vantaggioso effetto tecnico. Il brevetto permette di proteggere l'aspetto funzionale, cioè la soluzione di un problema ottenuta mediante il programma per elaboratore.
Il diritto d'autore protegge i programmi per elaboratore come opera dell'ingegno. La protezione ottenuta con il diritto d'autore è limitata però all'aspetto espressivo e cioè alla duplicazione abusiva del programma e non si estende alle idee e ai principi che stanno alla base del medesimo. In sostanza, è protetto soltanto il listato del programma.