Qualcuno ha copiato il mio codice: cosa posso fare?
Se qualcuno ha copiato il tuo codice, controlla prima cosa permette la tua licenza: le licenze open source consentono di copiare a certe condizioni (attribuzione, mantenere la licenza, condividere le modifiche con la GPL), quindi il problema spesso è una condizione violata, non la copia in sé. Poi conserva le prove della copia prima che venga riscritta, chiedi di mettersi in regola e, se non succede nulla, invia un avviso di rimozione all’hosting; GitHub, GitLab e gli store di app gestiscono le segnalazioni sul diritto d’autore. In ogni passaggio dovrai mostrare che il tuo codice esisteva prima. La cronologia Git aiuta, ma le date dei commit le imposta chi fa il commit: una data indipendente su una release taggata è molto più solida.
Informazioni generali, non una consulenza legale per una controversia specifica.
Passo 1: che tipo di copia è?
| Situazione | Di solito significa | Prima mossa |
|---|---|---|
| Il tuo codice MIT/BSD/Apache riusato senza la tua nota di copyright | Una condizione della licenza è violata; il riuso in sé era permesso | Chiedere di ripristinare la nota e il file di licenza |
| Il tuo codice GPL/AGPL dentro un prodotto closed source | La condizione copyleft è violata (sorgente non condiviso) | Chiedere la conformità: pubblicare il sorgente o smettere di distribuire |
| Il tuo codice privato pubblicato o venduto da altri | Violazione netta, spesso una fuga o un ex collaboratore | Raccogliere prove, poi avviso di rimozione; valutare un avvocato |
| Un ex datore di lavoro o cliente usa codice scritto per lui | Spesso suo per contratto o per legge (software dei dipendenti) | Leggere il contratto prima di tutto |
| Qualcuno ha creato la stessa funzione o lo stesso algoritmo da solo | Non è copia: idee, algoritmi e funzionalità non sono protetti | Niente da far valere, a meno che non sia stato copiato il codice |
Passo 2: raccogli prove della copia
- Clona o scarica il loro repository subito e annota hash del commit, URL e data. Fork e repository vengono riscritti con force push o cancellati.
- Archivia le pagine (repo, pagina del pacchetto, scheda dell’app) con «Save Page Now» dell’Internet Archive.
- Cerca le tracce della copia: commenti identici, refusi, nomi di variabili insoliti, codice morto, i tuoi vecchi bug e i dati di test. Contano più di una struttura simile.
- Controlla Software Heritage (archive.softwareheritage.org), che archivia i repository pubblici con la data di raccolta e può mostrare cosa esisteva e quando.
Passo 3: mostra che il tuo codice era prima
- La cronologia Git mostra come si è evoluto il codice, ma le date di autore e commit le imposta il tuo computer e si possono riscrivere: da sola è una prova debole del momento.
- I dati dell’hosting (push, pull request, issue, release su GitHub o GitLab) sono migliori, ma dipendono da una piattaforma che non è tua e possono sparire con un account.
- I registri dei pacchetti (npm, PyPI, crates.io) datano solo le versioni pubblicate.
- Una marca temporale qualificata su uno ZIP di un commit taggato, o su un file con gli ID di commit e albero, è una data indipendente con presunzione di esattezza nell’UE.
Passo 4: chiedi, poi fai rimuovere
- Apri una issue o scrivi al maintainer. Molte violazioni di licenza sono disattenzioni risolte in pochi giorni.
- GitHub: invia un avviso DMCA tramite il modulo sul diritto d’autore. GitHub pubblica gli avvisi nel suo repository DMCA pubblico e può disattivare il repository e i suoi fork.
- GitLab, Bitbucket, npm, PyPI, store di app: ognuno ha un modulo per i reclami sul diritto d’autore. Nell’UE gli hosting devono anche agire sulle segnalazioni di contenuti illegali in base al Digital Services Act.
- Per prodotti commerciali o un ex socio, parla con un avvocato prima di rendere pubblica la cosa.
Cosa aggiunge un certificato StampR
Un certificato StampR lega l’impronta SHA-256 dell’archivio della tua release o del tuo manifest dei commit a una marca temporale elettronica qualificata di BORICA B-Trust, insieme alla tua dichiarazione di esserne l’autore. Secondo l’articolo 41, paragrafo 2, del Regolamento eIDAS, data e integrità si presumono esatte in tutti gli Stati membri. Il tuo codice non lascia il computer: viene inviata solo l’impronta, quindi il codice privato resta privato. Se in seguito compare una copia, puoi mostrare nella pagina di verifica che il tuo archivio corrisponde al certificato e quando è stato marcato. L’abitudine migliore è marcare ogni release taggata: richiede un minuto.
Cosa non fa
- Non decide a chi spetta il codice scritto da dipendente o su commissione. Lo decidono il contratto e la legge.
- Non copre idee, algoritmi o funzionalità. Il diritto d’autore tutela il codice così come è scritto.
- Non rimuove nulla. Lo fanno gli hosting dopo una segnalazione.
- Non crea né iscrive diritti. Il diritto sul codice nasce quando lo scrivi.
- Non può retrodatare. Marca prima che compaia la copia.
Il quadro generale: la protezione del diritto d’autore – come nasce il diritto e dove è debole nella pratica.
Letture correlate
- Marca temporale per codice sorgente e repository Git – cosa marcare esattamente e come.
- Molti file, un solo certificato – il metodo del manifest SHA-256 per grandi codebase.
Domande frequenti
È illegale copiare codice da GitHub?
Pubblico non vuol dire libero. Il codice senza licenza ha tutti i diritti riservati; il codice con licenza open source si può copiare solo alle sue condizioni, come l’attribuzione o la condivisione delle modifiche.
Come invio un avviso DMCA a GitHub?
Con il modulo di GitHub per i reclami sul diritto d’autore: indica la tua opera originale e il repository che la viola e includi le dichiarazioni richieste. GitHub lo esamina, pubblica l’avviso e può disattivare il repository.
Qualcuno può copiare l’idea della mia app?
Sì. Idee, funzioni e algoritmi non sono protetti dal diritto d’autore; lo sono solo codice, testi e grafica così come sono realizzati. Brevetti e segreti commerciali sono strade diverse.
Le date dei commit Git dimostrano quando ho scritto il codice?
Da sole no. Le imposta il computer di chi fa il commit e si possono riscrivere. Mostrano l’evoluzione; una marca temporale indipendente fissa la data.
Il mio codice sorgente viene caricato su StampR?
No. L’impronta viene calcolata nel tuo browser e viene inviata solo l’impronta, a meno che tu non scelga di conservare una copia.
Fonti
- Direttiva 2009/24/CE, articolo 1 – programmi tutelati come opere letterarie; idee e principi esclusi.
- GitHub DMCA Takedown Policy – come vengono gestiti gli avvisi.
- Software Heritage – archivio pubblico del codice sorgente.
- Regolamento (UE) n. 910/2014 (eIDAS), articolo 41 – effetti giuridici della marca temporale qualificata.
Fonti verificate il 05/11/2026.
Certifica il tuo lavoro con una data attendibile.
Crea un certificato →Il primo certificato costa 4,90 € con un account.