Come si può scoprire se il codice open source è stato utilizzato in un prodotto commerciale?

2

Alcune licenze open source non ne consentono l'utilizzo in prodotti commerciali, ma scommetto che alcune persone / aziende lo utilizzano comunque.

È possibile dimostrare che una fonte chiusa, prodotto commerciale incorpora illegalmente codice open source? Se sì, come?

Esempio: dimmi che Microsoft ottiene solo il kernel di Linux, schiaffa una nuova GUI e lo chiama "Windows 9." Sarebbe possibile dimostrare di averlo fatto?

    
posta NullUserException 30.11.2011 - 02:27
fonte

2 risposte

4

Sotto Unix, puoi eseguire il programma strings per vedere se sono presenti stringhe dal tuo codice (messaggi di errore o costanti di stringa). Oppure puoi guardare la tabella dei simboli (supponendo che non sia stata spogliata) per vedere se qualcuno dei tuoi moduli o nomi di routine appaiono. Se vuoi davvero essere un hard-core, puoi rintracciare un simbolo (ad esempio il nome di una funzione) e disassemblare l'eseguibile in quel punto e vedere se il codice compilato corrisponde al tuo. Non è facile (a meno che non ci siano strumenti o tecniche che non conosco, il che è del tutto possibile), ma non è impossibile.

    
risposta data 30.11.2011 - 02:37
fonte
3

Ovviamente, il codice open source è a volte utilizzato in prodotti commerciali in violazione della licenza.

Ad esempio, ecco un elenco qualcuno collegato a recentemente, di prodotti commerciali che hanno violato la licenza su progetti video open source.

A volte i criminali vengono scoperti, sia esaminando il loro prodotto, sia fischiando, provocando cause legali e arretramenti. A volte, senza dubbio, riescono a farla franca.

Ma una cosa da tenere a mente: più grande è l'azienda e più grande è il prodotto, quindi maggiori sono le possibilità che esca, e maggiori sono i rischi quando lo fa. Nel tuo esempio, immagino che la possibilità sarebbe vicina allo zero assoluto che Microsoft potrebbe strappare il kernel di Linux per rendere Windows 9 senza che qualcuno implicasse il suono dell'allarme. E le conseguenze sarebbero disastrose.

Modifica: in risposta al commento di Joe Internet, ho dedotto dal tono della domanda che NullUserException stava parlando di una situazione in cui l'utilizzo era non in conformità con la GPL. Nel caso in cui avesse frainteso questo, ovviamente la GPL non è una licenza open source che "[non consente] il suo utilizzo in prodotti commerciali". Microsoft potrebbe rilasciare un Windows 9 basato su Linux in modo perfettamente legale, anche se il requisito per rendere disponibile la loro fonte sarebbe probabilmente inaccettabile nel loro prodotto OS di punta!

    
risposta data 30.11.2011 - 02:38
fonte

Leggi altre domande sui tag