Newsgroup: it.comp.lang.c++
Titolo: Come proteggere CD-ROM da copia

Per quanto ne so io il discorso di rovinare la traccia su un CD non va bene
perchè se fai la copia fisica del CD il masterizzatore rovina i settori
danneggiati e quindi non va bene. Alcuni giochi usano questa tecnica per
limitare le copie, ma ho visto che si riesce a fare copie funzionanti senza
grossi problemi perchè bastano un lettore e un masterizzatore SCSI.
Vorrei sapere da te invece come facevi con i floppy.Cosa fai?Lo buchi (dove)
e poi vedi la traccia danneggiata. Poi che programma fai per controllare lo
stato del disco?
Grazie,
Ottavio...@mailexcite.com

stato del disco?
Forse non sarà utile alla discussione, ma vi racconto una storiella!
Io so che si faceva, fin dai tempi del mitico Commodore64!
Foravano il disco e poi il programma leggeva l'errore. Io non riuscivo a
proteggere i miei software così perchè non sapevo mai bene dove foravo.
Io formattavo il disco e appena partiva il format (ai tempi del C64 e
drive1541) levavo il floppy, così si generava un errore (il n. 29) che
controllavo e non era riproducibile con le copie!
Solo che dopo un pò di tempo i copiatori avevano imparato a riprodurre il
mitico 29.
Le software house che avevano provato con le mezze tracce, con formati
speciali, INDEX SYNC ed altre diavolerie erano state battute e ora credevano
di aver avuto ragione, finalmente, con i dischi forati: ma venne fuori
l'insuperato BURST NIBBLER, in 15 secondi annientava qualsiasi protezione!
Per Amiga e PC venne fuori il Synchro Express e in meno di 50 secondi
annientava anche il grande Dragons Lair.
Non c'è molto da fare, hanno vinto loro!
(A meno che non decidi di proteggere con le chiavi H/W, ma questo è un'altro
discorso).
Ciao.
P. Ferraresi (un vecchio programmatore di macchine vecchie, già morte e
sepolte).

discorso).
http://www.fravia.org/
 e` un sito molto interessante,
pieno di lezioni, sia su come proteggere, sia soprattutto
su come sconfiggere le protezioni, e un paio dei molti
articoli tecnici sul sito mostrano anche come si possono
sconfiggere anche le protezioni hardware.  Il sito e`
raccomandato solo a lettori che non si facciano
spaventare da trattazioni tecniche decisamente astruse,
che danno per scontata la perfetta conoscenza del
linguaggio macchina (a livello binario, non solo quello
"piu` astratto" dell'assembler) in ogni suo piu` peculiare
risvolto.  Secondo me -- e parlo come uno che di
protezioni ne ha fatte parecchie, e studiate tante altrui --
allo stato dell'arte, e a parita` di competenza tecnica
fra autore della protezione e suo "crackatore" (elevata
per entrambi), qualsiasi protezione si puo` crackare,
indicativamente, con uno sforzo entro lo stesso ordine
di grandezza che occorre per progettarla e metterla
in atto -- diciamo, ottimisticamente, 2-3 volte piu` ore
di lavoro per il crack, che per la protezione stessa.
Poiche` una protezione ha senso solo se il suo
crack costa piu` sforzo che non riscrivere l'intera
applicazione protetta, questa valutazione implica
che una protezione davvero efficace costa una
frazione non banale dell'intero costo di sviluppo
dell'applicazione.
Supponiamo ad esempio di avere un'applicazione
il cui sviluppo costa 1000 ore di lavoro, e che il
fattore cruciale sia 3 (molto ottimistico).  Quante
ulteriori ore di lavoro dovremmo passare a farne
la protezione perche` non valga la pena per un
"cracker" di sviluppare le contromisure?  Facile:
    1000 <= 3*X
cioe` dovremmo avere X>333.
Naturalmente, se noi rilasciamo una applicazione
cosi` ben protetta, costo di sviluppo 1334 ore,
visto che il mercato e` competitivo, qualcun altro
avra` fatto una applicazione equivalente ma senza
protezione, che gli e` costata solo 1000 ore, quindi
puo` lanciarla sul mercato prima, e/o farla pagare
di meno a parita` del saggio di profitto.  Certo,
nessuno copiera` la nostra applicazione... invece,
copieranno tutti quella del nostro concorrente --
col risultato, tra l'altro, che l'applicazione del nostro
concorrente sara` ancora piu` diffusa "a mercato
nero" di quanto non lo sia in termini di quote di
mercato ufficiale; chi si e` fatto la copia pirata
a casa, e quindi conosce bene e usa spesso la
applicazione del nostro concorrente, quando viene
il momento di raccomandare al lavoro un programma
che svolge quel dato compito, secondo voi cosa
raccomandera`: il nostro programma, piu` costoso,
piu` grosso e lento (quel codice di protezione, che
non aggiunge funzioni all'applicazione in quanto
tale, qualcosa deve pur costare!), meno diffuso,
e che lui personalmente non conosce -- oppure,
il programma nostro concorrente, che tra l'altro
lui conosce gia` usandone una copia-pirata, e
oltretutto e` piu` piccolo, piu` svelto, meno caro,
piu` diffuso sul mercato anche perche` arrivato
prima...?
Parrebbe quindi che una protezione "seria" contro
la copia si ripaghi solo in situazioni di monopolio
o quasi -- dove il problema dell'applicazione della
concorrenza non e` una spada di Damocle sulla
nostra testa.  Eppure, eppure... guardate chi e`
piu` vicino a situazioni di quasi-monopolio nel
mondo del software... e ditemi se il successo di
mercato della Microsoft e` stato per caso costruito
sulla base di elevate protezioni tecniche contro la
copia...?!  C'e` nessuna difficolta` a duplicare il
CD di un qualsiasi programma Microsoft, copiare
la "chiave di accesso", eccetera?  Vi pare che
questa mancanza di protezione gli costi molti
soldi, poveretti -- dovremmo mandare il nostro
pane secco a casa di Bill Gates perche` possa
fare almeno una zuppetta per il suo povero, povero
bambino impoverito...?
O non sara` che in tanti casi, ad esempio al tempo
che Excel spodesto` 1-2-3, Microsoft fosse proprio
il concorrente che di protezione non ne aveva, e
questo l'abbia aiutata a scalzare il prodotto, anche
piu` diffuso, che un minimo di protezione contro la
copia se l'era data...?
Mah -- vedete un po' voi.  Protezione e sprotezione
sono argomenti astrusi ma tecnicamente di grande
fascino, senza dubbio.  Pero`, se quel che uno cerca
dal software che produce e` di guadagnarci, forse
l'eccellenza tecnica della protezione non e` la strada
migliore da perseguire -- quel minimo per garantire
che chi copia e` senza dubbio un criminale che sa
quello che sta facendo, con tutti i dovuti avvisi di
legge onde poterlo eventualmente in futuro perseguire
sul piano legale, e il resto dello sforzo potrebbe forse
invece convenire dedicarlo a migliorare il programma
come percepito dall'utente, e/o calarne il costo di
sviluppo e di consequenza il prezzo di vendita.
Alex