Newsgroup: it.comp.lang.visual-basic
Titolo: Generazione Codice Attivazione.

Buongiorno a tutti,
sto elaborando un sistema per ottenere un codice di attivazione. Pensavo 
di leggere tramite WMI le caratteristiche fisiche dell'HD,
versione e seriale BIOS e ottenere tramite questi valori un codice di 
identificazione.
Secondo voi, il Metodo GetHashCode dell'oggetto string, è valido a 
questo scopo?
Grazie.

 Grazie.
Il seriale dell'hard disk te lo cambio come voglio!
cmq va bene
C'è il namespace apposito di crittografia!
System.Security.Cryptography
e anche
System.Security.Cryptography.X509Certificates
Usa sistemi di hash abbastanza sicuri
SHA512 ad esempio
e SALALI!!!
oppure usa i Certificati
la cosa è un po complessa ma fattibile
potresti fare l'hash di 2 file in una cartelal custom tua + il seriale
dell'hd!
In teoria sull'intel ci sarebbe anche l'ID della CPU....ma pareva
troppa violazione della privacy...tutte le MB hanno una utility per
disattivarlo! e poi credo che gli AMD non l'abbiamo....o si?
 BOH!
GBC....aiutoooooo
è lui l'esperto della privacy!
;-)

 dell'hd!
più che altro stavo pensando come poter mettere un blocco temporale, 
dove mi salvo la data di installazione che non me la sgamano, Crittata o 
no che sia? Pensavo ad un file nomeastruso.dat da salvare sotto cartella 
di sistema, ma se il furbone mi cancella il file sono punto e accapo.
Grazie per le dritte sulla crittografia ;-)

 ;-)
Sto riflettendo sulle virgolette dell'oKKio di un altro thread...
-- 
-> GbC|
www.gbcweb.com
www.chiappori.com
 

On 23 Giu, 17:51, "EffegiWeb.net" <w-e-b-m-a-s-t-e...@-e-f-f-e-g-i-w-e-
b-.-n-e-t> wrote:
stiamo a criticare microsoft e poi facciamo peggio????
Cioè tu mi vorresti legare all'hard disk?Nemmeno alla cpu...all'hard
disk?
:-)

 :-)
Non ho detto che voglio bloccare il codice dopo N. Reinstallazioni.
Solo pensavo di attivare il tutto in qualche modo. e visto che se cambi 
HD (principale) devi reinstallare anche l'applicativo ci vuole poco a 
rifare una reinstallazione.

 
Anch'io uso un file 'astruso.dat' per verificare la registrazione.
Ma solo sul directory di runtime. Questo file viene creato durante la 
registrazione del prodotto.
Io pensavo di usare un'altra soluzione  per il mio sito, per il 
controllo della validitŕ di registrazione.
Perchč non puoi mai controllare che la persona cambi computer, per 
qualsiasi motivo, e voglia installare il software sul nuovo PC.
Ne avrebbe diritto.
In questo caso, dovrebbe ritornare sulla procedura di registrazione
ed immettere di nuovo username e product key (calcolata a partire dallo 
username).
A questo punto la procedura di registrazione prevede una chiamata al 
database MySQL del mio server centrale dove si verifica quante richieste 
di registrazione sono state fatte per questo product key.
Se oltrepassano un numero ragionevole, (ad esempio 5) allora si 
impedisce la registrazione.
Quando conoscerň meglio altre tecniche di cgi, potrň farmi il mio 
database personale, non standard, e senza accesso via PHP ma tramite
random access binario.

 random access binario.
'Impedisce' è una parola grossa.
Tu vai in vacanza (ma l'esempio calza bene anche per un semplice 
weekend).
Un virus (nella rete dell'ufficio) mi fotte il disco; non me ne accorgo 
perché penso si sia semplicemente guastato e perché non sono un esperto. 
Reinstallo: appena attacco il cavo lo stesso virus mi fotte l'hd. E sono 
talmente scemo da farlo 5 volte.
Vuoi dire che a questo punto il programma, che ho pagato, smette di 
funzionare? E che non posso registrarlo nulla perché non sei in ufficio 
e non sei raggiungibile col telefono?
Ti consiglio di rivedere questo approccio.
Qualsiasi cosa noi inventiamo per 'proteggerci' non può ledere i diritti 
di chi acquista.
C'è gente che ti porta davanti ad un giudice per molto, ma molto, meno. 
E nel tuo caso ti assicuro che hai torto perché non puoi impedirmi di 
usare il programma, che ho pagato, in modo completo. Molti utenti non 
creano problemi, ma c'è quella percentuale di persone moleste che sono 
lì e non aspettano altro. E, credimi, parlo per esperienza.
Generalmente invece di 'impedire' si attiva una modalità 'temporanea' 
(ad esempio di 30 giorni, non ripetibile) che consenta a chi deve 
registrare il software di sopravvivere senza regalare agli avvocati 
quello che guadagnamo.


 
io nel mio software, faccio di più : si scarica la 'demo' version 
gratuita, e la puo' visionare 'ad infinitum'.
Questo gli permette di 'giocare' col software e vederne tutta la 
funzionalità.
Quando decide di comprarlo, paga, e la product key che gli invierò
gli permetterà di attivare le opzioni 'save' e 'print' che avevo 
bloccato nella demo version.

 bloccato nella demo version.
boh...
forse non sono riuscito a spiegarmi...
fa nulla...


GbC dice un ALTRA COSA....
io compro un tuo software...lo porto a casa...lo installo
Succede un qualsiasi casino...anche per colpa mia....
sistemo il casino.....
devo rifare la procedura di registrazione? ...ok mi stà anche bene
rifarla...ma non può essere altro che istantanea!....non dipendere da
te che sei davanti al pc!Ne dal numero di volte che lo faccio!
Perchè in tal caso io sono un "incazzino" mi aggrappo ai meandri del
codice civile e ti cito per danni...e fra 10 anni ti condannano a
pagare 10 volte tanto...e nell'immediato un giudice di pace mi assegna
una "provvisionale" per il danno patito!
La soluzione c'è:
il software non lo vendi. Lo CONCEDI in licenza d'uso.
Con tutte le limitazione che vuoi...
MA
deve esserci un contratto firmato
e le clausole vessatorie
ESPRESSAMENTE evidenziate e firmate una per una ( e comunque non puoi
ledere i diritti della parte garantiti dalla legge)
Allora puoi anche dire: ti do solo 5 chance di reinstallazione....poi
mi chiami e ti vendo altri 5 ticket per altrettante reinstallazioni!
C'è chi sì è fatto d'oro negli anni passati!...ora non è più facile
come prima  turlupinare il cliente!
Che casino vero?
Lo si fà SOLO e SOLTANTO quando il lume vale la candela...!!!

 
Vuoi dire che il software glielo vendi una volta e poi te ne frega di 
quello che fa il cliente ?
Come ad esempio se vendi un tool per studenti di scuole, e UNO studente 
lo compra (costo 25 euro) e poi lo passa gratis ai suoi 150 compagni,
(passandogli chiaramente username e product code)
non esiste un metodo intelligente per far sì che questo non possa 
avvenire ??

 avvenire ??
Certo che esiste ma è una lotta continua...e presuppone grossi
investimenti!
M$ che fà?
Un product code.....e internet.....
server su server che identificano e validano chiavi!
Poi però....anche un call center a cui rivolgersi per farsi riattivare
windows se lo hai reinstallato e non hai internet o la procedura non
funziona!
Attento però
TU NON RIVENDI la licenza....
io compro un programma "X" a 300 Euro(s). Compro la licenza d'uso che
non scade mai. Ma lega l'installazione ad un pc!
Se il tuo pc si sputtana....reinstalli e il product code non
corrisponde!
L'utente si connette rivalida la sua copia.....il sw monitorizza ogni
tanto questa chiave! Se esistono 2 istanze...ne manda una con il
fatidico messaggio "Copia non originale".
Cosa ci vuole....????
un server delle chiavi costantemente online e un po di sw gestionale!
Però ogni tanto arriva uno come zio Gibbi con l'Iphone che si
pianta....ed internet non la può usare! (ghghgh)
devo avere un altra chance....mando una mail...ma entro un giorno devi
mandarmi la chiave....o un call center!
Veniamo ai soldi
se sei chiaro non ci sono problemi!...il problema...è essere chiari
con l'uTonto!
Nel contratto vendi la licenza a 300 Euro(s) e un ticket di assistenza
di 5 "qualcosa"
ogni reinstallazione ne consuma uno....ogni richiesta di
assistenza....uno o  due o quello che vuoi....
esauriti...paga che sò il 20% del prezzo iniziale per avere altri 5
ticket
In pratica è una assistenza!
Vatti a leggere il contratto di windows....ci rimani male...in pratica
consenti che Microsoft faccia di TUTTO al tuo pc....senza essere
responsabile ...di NULLA!!!
E noi siamo più scemi?
e che c'ho scritto: "Jo Condor"?
:o)
Saluti

Mi intrometto nel discorso per dare i miei 2 cents.
Quando Gestione Ottica era a pagamento, concedevo agli utenti di
utilizzare una demo non registrata senza alcun limite di funzionalit�.
L'unico "problema" � che ogni 10 minuti ti usciva un messaggio a schermo
"programma non registrato... bla bla bla".
Il cliente che distrugge il pc e reinstallava Gestione Ottica quando io
non ero disponibile, semplicemente lo utilizzava come tutti gli altri
giorni, con l'unico aggravante di chiudere la messagebox ogni 10 minuti.
Quando ero nuovamente disponibile (generalmente dopo qualche ora, giusto
il tempo di avere un accesso ad internet per generargli il nuovo seriale
da una zona privata del mio sito) gli davo il nuovo seriale e fine del
discorso.
Ora che � gratuito la registrazione � ancora presente, ma a me serve
solo per censire i clienti che lo utilizzano, nel senso che almeno
l'indirizzo email deve essere corretto per ricevere il seriale di
attivazione.
Nicola

 Nicola
domanda : questa procedura non era possibile automatizzarla, magari con 
php o un altro programma cgi (che magari è più sicuro)  ??
Oppure non è consigliabile automatizzarla ?

 Oppure non è consigliabile automatizzarla ?
Cosa intendi per "automattizzare"?
Nicola

Nicola Ottomano schrieb:

Automatizzare significa che se il POS virtuale (cioè la banca) ti dà la 
confrma che il pagamento è statoi effettuato e valido, tu mandio al 
compratore via email, il codice di attivazione. Questo implica ceh 
l'algoritmo deve essere sul server. E se lo si fa in php chiunque lo 
puo' leggere liberamente (chi ha accesso al server).
Quindi sarebbe megli un cgi (programma compilato magari in C).
Dico bene ? O no ?

 Quindi sarebbe megli un cgi (programma compilato magari in C).
Qui non ci sono arrivato, perchč i clienti mi pagavano con bonifico o
vaglia postale.
In ogni caso, si, l'operazione puň essere automatizzata interfacciandosi
alle api di Banca Sella o Paypal e servizi simili.
Nicola