Domanda

Possibili Duplicati:
Come si fa a proteggere il vostro software di distribuzione illegale?
Migliori pratiche per prevenire la copia del software

Situazione ipotetica:

Diciamo che io ho costruito un software prodotto da zero e fa cose meravigliose.L'unico problema è che, una volta che qualcuno prende un'occhiata al codice, capiscono molto facilmente e si può facilmente costruire se stessi.

Ora, il fatto è che ho costruito il codice da zero al 100% e utilizza una miscela di chiamate API.Nessuno è coinvolto nello sviluppo del codice.

Se voglio vendere questo prodotto, qual è la garanzia che qualcuno molto più intelligente di me, decodificare il tutto e venire con un prodotto migliore?

Adesso sto pensando di frammentare l'intero codice.L'aggiunta di un sacco di codice ridondante e tonnellate di commenti.

C'è qualche software che cripta il codice del software, che renderà il debug, la risoluzione dei problemi, e capire come funziona il codice praticamente impossibile?e ancora corre come al solito?in modo che lo sviluppatore può avere la pace della mente?

È stato utile?

Soluzione

Molto poche cose in un programma sono veramente romanzo. Quasi tutto ciò che si rischia di mettere in codice, qualcun altro poteva inventare per conto proprio. In genere più facilmente di quanto potrebbero imparare leggendo il codice. il codice di lettura è più difficile che scrivere, e la maggior parte dei programmatori non piace farlo comunque.

Quindi è molto più probabile che guardare la tua app e pensare "potevo farlo", poi "che figata, sarò letto che il codice e quindi copiarlo!". Anche se la capiscono, si continua a possedere i diritti d'autore, è ancora ottenere sul mercato prima.

Vi consiglio solo dimenticare.

Altri suggerimenti

  

qualcuno una volta prende in esame la   codice, si capirà molto   facilmente e possono facilmente costruire in su   stessi.

Quindi non dare a nessuno il codice sorgente.

  

Se voglio vendere questo prodotto, cosa   è la garanzia che qualcuno molto   più intelligente di me sarà decodificare   il tutto e venire con   prodotto migliore?

(a) in modo da iniziare a vendere è oggi e conquistare il mercato. Il reverse engineering richiede tempo, durante il quale si sta catturando mercato e 'la mente-share'. (B) Mettere una clausola nel contratto di licenza che vieta di reverse-engineering. (C) Assicurarsi che tutti coloro che ottiene i segni del prodotto del contratto.

  

In questo momento sto pensando a frammentazione   l'intero codice. L'aggiunta di un sacco di   codice ridondante e tonnellate di commenti.

che ha solo un punto se avete intenzione di distribuire il codice sorgente. Nel qual caso nessuno ha bisogno anche di reverse-engineering. Hanno il codice sorgente. Non dare a loro.

  

Esiste un software ...

C'è un sacco di software che pretende di fare questo lavoro. Tuttavia si tratta di una soluzione tecnica ad un problema di business. Tutto il software può essere decodificato, perché a un certo punto o l'altro tutto deve essere decifrati e de-offuscato al punto in cui la CPU lo capirà. A quel punto è essenzialmente testo in chiaro. Quindi, la soluzione non tecnico è formalmente possibile (a corto di qualcosa come il codice che viene eseguito in un HSM prova di manomissione).

Vorrei aggiungere che c'è un altro meccanismo di business si può utilizzare per la difesa contro la perdita di business, che è ciò che questo è tutto: il prezzo. Rendere il prezzo così alto che i licenziatari valuteranno la loro copia e non le consente di essere ispezionata, o farlo così in basso che reverse-engineering è costo-irrealizzabile; o renderlo libero e fare i soldi per il contratto di supporto.

Una volta che in realtà hanno le conoscenze e l'esperienza per scrivere un tale codice di base, sarà chiaro a voi che offuscamento è destinato a scoraggiare la violazione casuale IP.

Qualcuno che vuole conoscere il codice sta per conoscere il codice.

Se diventa un problema di perdita monetaria, i tribunali sono la vostra protezione.

Ecco come funziona.

Qualcuno sarà sempre in grado di comprendere e risolvere il vostro codice. Heck, se avete avuto modo di arrivare a 0 il codice, anche solo utilizzando il sistema è sufficiente per qualcuno di essere in grado di replicare il processo.

Esempio: prendo una brocca d'acqua e versare nella tazza, mentre la mia schiena si trova ad affrontare a un'altra persona. Quest'altra persona sa che l'acqua e la gravità sono impressionanti a rendere le cose rientrano in altri contenitori, in modo che possano poi elaborare un processo di sollevamento una brocca per lasciare che la gravità (chiamata API) di lavoro in loro favore. Essi potrebbero non sapere esattamente quale angolo si è utilizzato nel vostro avambraccio e tutte le tecniche di coppa-holding super subdolo che hai usato, ma in grado di replicare lo stesso processo e migliorare nel tempo.

tl; dr:. Non è possibile il codice di protezione

La cosa da fare è inventare ancora più meraviglioso cose, mentre la concorrenza è reverse-engineering vostro roba corrente. Si chiama in competizione attraverso l'innovazione.

Io non sono un avvocato

se siete veramente preoccupato, al punto che si è disposti a investire denaro in essa, dont proteggere il codice (al di là di qualcosa di ragionevole come offuscamento o la crittografia), ma piuttosto brevetto la vostra idea e il vostro arte. Poi, se qualcuno non prenda, decodificare e fare un processo migliore basato tuo, hai giuridica motivi per ottenere i vostri soldi.

Ci sono tonnellate di cose che dovrete fare, comprendono dimostrando hanno preso la vostra idea (che costerà facile), ma se questa è la soluzione alla fame nel mondo e tutti i problemi umanistici è la cosa da fare.

Ora per la aspetto negativo , io immagino, e probabilmente al 90% a destra che il metodo è il seguente:

  1. Non brevettabile, per vari motivi (Sono rimasto stupito dal numero di idee già brevettate, e quanto fosse difficile identificare arte originale)
  2. Non è nuovo, o unico (cioè non v'è già stabilito arte per esso)
  3. Non vale la brevettazione, perché la spesa di gran lunga i benefici outways

Un avvocato IP può dire con certezza, e la spesa di un consulto non è più di tanto. Nel complesso sarà più conveniente di consultarsi con loro poi di investire un sacco di tempo a nascondere il codice.

In bocca al lupo.

non si preoccupano neppure. Se il codice realmente "fa cose meravigliose" essere certi che otterrà violato. Ed essere anche solo per curiosità.

Non c'è modo al 100% per proteggere il codice da reverse engineering. Che lingua stiamo parlando? Se questa è la C / C ++, allora è piuttosto difficile da decodificare, più si potrebbe striscia da informazioni di debug, ecc Ma se questo è ad esempio Java, allora anche se si offuscare il codice, ci sono alcuni strumenti piuttosto fresco (come JAD ) che si rivelerà molto del vostro lavoro in ogni caso.

Nonostante tutto questo penso che si dovrebbe cercare di cambiare il vostro atteggiamento. Le grandi aziende pagano un sacco di soldi per soluzioni semplici e sembra che al giorno d'oggi il servizio è il più importante, non il software (da qui il successo delle aziende basate open software). Quindi, se avete una grande software non aver paura che qualcuno possa rubare, piuttosto pensare a come venderlo bene.

  

Esiste un software che cripta il codice del software, che renderà il debug, risoluzione dei problemi e capire come il codice funziona praticamente impossibile? e tuttavia funziona come al solito? in modo che lo sviluppatore può avere la pace della mente?

Questa è la mentalità totalmente sbagliato IMO. Che cosa succede se vieni colpito da un autobus? La vostra azienda fallisce? Tutti i vostri dati viene distrutta in un incendio? Per ogni singolo dei vostri clienti, il valore dei loro investimenti nel software cadrà, e alla fine arrivare a zero, perché il software non può essere sviluppato, o di analisi guasti, qualsiasi ulteriore senza di te. Ho visto così molto denaro sprecato in questo modo, penso che sia un modello di business orribile.

mi guadagno il pane con me stesso rendere il software in modo da conosco le difficoltà di guadagnarsi da vivere con essa. Ancora, offuscamento non può essere la strada da percorrere al giorno d'oggi. Imporre rigide restrizioni e accordi di licenza sui vostri clienti, spaventare l'inferno fuori di loro in modo che non hanno nemmeno pensare la ridistribuzione del software, ma lasciarlo aperto .

Questa è futile. C'è sempre qualcuno più intelligente di te e quindi sarà in grado di decodificare l'offuscamento.

Di solito qualcuno abbastanza intelligente per incidere il vostro codice e usarlo in modo significativo è abbastanza intelligente per farlo da soli, e, probabilmente, pensa di poter fare meglio di quanto fatto, in modo da non disturbare rubare le tue cose.

Non preoccuparti per le persone che possono incidere il vostro codice, ma non fare uso significativo di esso. Se hai fatto un lavoro buono, questo non può che rafforzare la qualità del lavoro che hai fatto (pensare a tutte le schifose imitatori telefono touchscreen).

Si stanno per decodificare il codice. Niente li può fermare .. L'unica cosa che puoi fare è rendere più difficile. Si va da offuscando il codice che è inheritely "aperto" come PHP e Javascript, tutta la strada fino a sporcare il codice con un carico di merda di auto-modifica.

In un sacco di modi, credo, la cosa che rende un pezzo di software prezioso, non è il pazzo progresso tecnologico che offre, ma piuttosto le cose che pensiamo potrebbe pensare come il terziario per il pezzo di software.Come il fatto che sarete lì per il supporto.O che è fornito come un servizio web e sarete lì per assicurarsi che il server è in esecuzione.O che si tratta di una comunità, e voi ci sarete a moderata e di costruire la comunità.

Mentre si potrebbe essere in realtà vendita codice, il valore che il codice non è intrinseca al codice stesso, ma piuttosto deriva dalle caratteristiche e l'ecosistema che circonda il vostro codice.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top