maq chiede:
Perché sembra così facile da pirata oggi?
Sembra un po ‘ difficile credere che con tutti i nostri progressi tecnologici e i miliardi di dollari spesi per progettare il software più incredibile e strabiliante, non abbiamo ancora altri mezzi di protezione contro la pirateria che un “numero di serie/chiave di attivazione.”Sono sicuro che un sacco di soldi, forse anche miliardi, sono andati a creare Windows 7 o Office e persino Snow Leopard, ma posso ottenerlo gratuitamente in meno di 20 minuti. Lo stesso per tutti i prodotti Adobe, che sono probabilmente i più facili.
Può esistere un metodo infallibile e hack-proof di proteggere il software contro la pirateria? Se non realisticamente, potrebbe essere teoricamente possibile? O non importa quali meccanismi queste aziende implementano, gli hacker possono sempre trovare un modo per aggirarlo?
Vedi la domanda originale completa qui.
Codice in esecuzione
Tim Williscroft answers (45 voti):
Il codice è dati. Quando il codice è eseguibile, una copia di tali dati è codice non protetto. Il codice non protetto può essere copiato.
Infarcire il codice con controlli anti-pirateria rende leggermente più difficile, ma gli hacker sarà solo utilizzare un debugger e rimuoverli. Inserire no-ops invece di chiamate a “check_license” è abbastanza facile.
- I programmi hard-to-hack fanno cose progressivamente più fastidiose.
- Ma i fornitori devono vendere ai clienti il software che sono pronti a utilizzare.
- Non tutti consentono ai computer di telefonare a casa.
- Alcune persone che lavorano su cose sensibili si rifiutano di connettere le macchine a Internet.
I programmi che vendo presso il mio attuale datore di lavoro (aerospace tools) non telefonano mai a casa. I clienti non tollererebbero telefonare a casa per” attivazione ” ogni volta che il programma si avvia.
Nel peggiore dei casi, il programma viene eseguito in una VM senza rete, dove è sempre una data fissa.
Quindi potrebbe essere stato legittimamente installato una volta, ma nessuno sforzo da parte degli sviluppatori può dire che non è come era.
- I tentativi di aggiungere hardware “copy prevention” ai computer di uso generale sono destinati a fallire.
- Qualunque azienda venda hardware senza prevenzione della copia finisce per vendere tutto l’hardware.
- Fornitori come Dell e Intel cercano progressivamente di introdurre spy-hardware come Palladium, ma sono fortemente resistiti.
- Quando il computer sta facendo qualcosa di scientifico, in tempo reale, qualsiasi interruzione per “verificare la presenza di contenuti pirata” causerà guasti. Se tutti i computer avessero hardware DRM, quelli speciali scientifici / in tempo reale non dovrebbero averlo. Accidentalmente tutti comprerebbero quelli scientifici/in tempo reale speciali.
- I controlli DRM hardware avranno falsi positivi su alcuni tipi di contenuti.
- Caso più semplice: risoluzione. Registro video Quad HD dal mio array di telecamere (seduto sulla mia scrivania in questo momento). Windows DRM si frappone tra me e i dati perché è QuadHD.
- Analisi delle firme: Il DRM hardware è piccolo e ha un set di dati relativamente fisso. Deve anche utilizzare lo stesso bus dati della CPU in modo che rallenti le cose in modo intermittente. Questo rovina tutto in tempo reale.
- Quindi, per rendere l’hardware DRM più intelligente durante un falso positivo, il tuo computer finirà per essere interrotto per andare a controllare utilizzando un servizio Web. Ora il mio processore di dati scientifici fallisce perché non è collegato in rete o interrompe lo streaming dei dati.
Correlato: “Uso di software pirata in un’azienda…”
Trade-off
Péter Török answers (20 voti):
IMHO un problema fondamentale è che la maggior parte o tutti i metodi” infallibili e hack proof ” * di proteggere il software dalla pirateria infastidiscono o addirittura allontanano gli utenti innocenti e legali.
Controllare che l’app sia installata solo su una singola macchina può rendere difficile per un utente cambiare hardware nella propria macchina. I dongle hardware possono significare che non è possibile utilizzare la stessa app sulle macchine di lavoro e domestiche. Per non parlare di codici di zona DVD, CSS, il Sony rootkit et al., che non sono strettamente per la protezione del software, ma strettamente correlati.
* Come ha notato @FrustratedWithFormsDesigner, i metodi” infallibili e hack proof ” non sono mai perfetti nella pratica; non c’è sicurezza al 100%, puoi solo provare a renderlo abbastanza costoso per un intruso per rompere la difesa in modo che non ce ne siano “troppi”. E credo che sia dovuto alla natura fondamentale del software e delle informazioni digitali, che una volta che qualcuno riesce a rompere una particolare difesa, la rottura può quasi sempre essere banalmente replicata da milioni di persone.
I pirati possiedono l’hardware
Anon. risposte (19 voti):
In definitiva il grosso problema è che la maggior parte del software comporta la consegna sia del lucchetto che della chiave al potenziale attaccante e spera che non capiscano come metterli insieme.
L’unico metodo sicuro per proteggere il software non è darlo all’utente. Noterai che non puoi “pirata” Google Docs, ad esempio. In definitiva, se stai cercando di proteggere qualcosa, devi presumere che abbiano piena conoscenza di qualsiasi cosa tu dia loro. Non puoi fidarti del cliente. Questo vale per prevenire la pirateria tanto quanto per proteggere un sistema dall’essere compromesso.
Poiché i modelli di distribuzione software esistenti si basano sul dare al client l’intero pacchetto e quindi sul tentativo di proteggerlo su hardware che il potenziale attaccante controlla, il modello di distribuzione è incompatibile con qualsiasi concetto di software “non idoneo”.
La libertà è infallibile
Orbling answers (11 voti):
C’è solo un “metodo infallibile e hack proof per proteggere il tuo software dalla pirateria”: il software libero. (Come in si può fare quello che vuoi con esso, anche venderlo.)
Non si può rubare ciò che è liberamente dato. Certo, che sarà letame su alcuni modelli di software aziende dinosauro, ma la pirateria sta andando da nessuna parte. Vendi qualcosa che non puoi copiare, preferibilmente qualcosa che accompagna ciò che hai dato via gratuitamente; il tuo aiuto per esempio.
Vendi la tua merce
Bob Murphy risponde (10 voti):
Chiedi, “Perché è che il software è ancora facilmente pirata oggi?”
La risposta è: È più redditizio vendere software facile da pirata.
Al momento di decidere sulle misure antipirateria, le aziende fanno un’analisi costi-benefici. Per ogni dato insieme di misure, se i benefici non superano i costi, l’azienda non lo fa.
I costi includono il tempo e gli sforzi per implementare, documentare, supportare e mantenere le misure e forse le perdite di vendita se sono davvero fastidiose. In generale, ci sono due tipi di benefici:
- Maggiori profitti perché le persone che avrebbero piratato il programma lo hanno acquistato invece.
- Le persone che prendono decisioni sono felici che il programma non venga piratato.
Ecco un semplice esempio: Microsoft Office.
Ora, MS è tutta una questione di soldi, e non tanto di fare dirigenti felici di pirateria. Per qualche tempo, MS ha venduto un’edizione “Home and Student” di Office per un modo più economico rispetto all’edizione “normale” per le imprese. Ho comprato questo a pochi anni fa, e non aveva alcuna protezione contro la copia a tutti! E la tecnologia “anti-pirateria” consisteva nell’inserire un codice prodotto che veniva poi memorizzato nella cartella dell’applicazione. Ma potresti eseguirlo su tutti i computer che volevi contemporaneamente, e funzionerebbero tutti bene! Infatti, sul Mac, è possibile trascinare la cartella dell’applicazione attraverso la rete su un altro computer in cui non si era mai fatto un’installazione, e poiché la chiave del prodotto è stata memorizzata con l’applicazione, ha funzionato alla grande.
Perché tale patetica tecnologia anti-pirateria? Due ragioni.
Il primo è perché il costo aggiuntivo del supporto tecnico per gli utenti domestici che rovinano le loro installazioni non ne valeva la pena.
La seconda riguarda le misure antipirateria non tecniche. MS ha un programma whistleblower dove se si conosce una società ha piratato il software MS-come l’installazione di 200 copie dello stesso ufficio” Casa e studente ” – si può dare loro una chiamata. Poi MS entra e controlla l’azienda, e se trova software pirata, fa causa a loro—e ottieni un grosso taglio delle vincite.
Quindi MS non deve usare la tecnologia per prevenire la pirateria. Trovano più redditizio usare solo denaro freddo e duro.
Trova altre risposte o lascia la tua risposta al post originale. Vedi tutto Q& A like this at Programmers, un sito di domande e risposte per programmatori professionisti interessati a domande concettuali sullo sviluppo del software. Se hai il tuo problema di programmazione che richiede una soluzione, accedi ai programmatori e fai una domanda (è gratuita).