Protezione software

di il
42 risposte

42 Risposte - Pagina 3

  • Re: Protezione software

    Toki ha scritto:


    Tu che caratteristiche hardware controlli nelle tue protezioni per le copie?
    Molto tempo fa facevo questi controlli ma l'esperienza mi ha insegnato a lasciar perdere ... sono tutti inaffidabili. Quando resistono è perché il programma non interessa.

    Ma se c'è un certo interesse non c'è protezione che tenga.
  • Re: Protezione software

    Sono d'accordo ma è pur sempre un buon deterrente per la massa.

    Ti faccio un esempio banale, metti che sviluppi un gestionale di fatturazione senza alcuna protezione contro le copie.
    Ci mette poco ad essere distribuito a tua insaputa e copia genera copia.
  • Re: Protezione software

    Toki ha scritto:


    Tu che caratteristiche hardware controlli nelle tue protezioni per le copie?
    Pare che l' argomento abbia sollevato un certo interesse!

    Io controllo: il mac address, il seriale del primo hard disk, e il seriale della scheda madre.
    Comunque in .Net usando la classe ManagementObjectSearcher puoi controllare un po tutto quello che ti pare.

    Sicuramente mettere queste protezioni è molto meglio che non mettere nulla.
    Se poi il cliente assolda un abile hacker peggio per lui, poi io assolderò un abile avvocato.
  • Re: Protezione software

    barba59 ha scritto:


    Toki ha scritto:


    Tu che caratteristiche hardware controlli nelle tue protezioni per le copie?
    Pare che l' argomento abbia sollevato un certo interesse!

    Io controllo: il mac address, il seriale del primo hard disk, e il seriale della scheda madre.
    Comunque in .Net usando la classe ManagementObjectSearcher puoi controllare un po tutto quello che ti pare.

    Sicuramente mettere queste protezioni è molto meglio che non mettere nulla.
    Se poi il cliente assolda un abile hacker peggio per lui, poi io assolderò un abile avvocato.
    Scusate signori, vedere due righe di codice sarebbe chiedere troppo?
  • Re: Protezione software

    Bruno81 ha scritto:


    Scusate signori, vedere due righe di codice sarebbe chiedere troppo?
    Certo che no!
    
            private static string GetLogicalDisk()
            {
                ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", 
                      "SELECT * FROM Win32_LogicalDisk");
    
                foreach (ManagementObject wmi in searcher.Get())
                {
                    try { return wmi.GetPropertyValue("VolumeSerialNumber").ToString(); }
                    catch { }
                }
                return null;
            }
    
            private static string GetMacAddress()
            {
                ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", 
                    "SELECT * FROM Win32_NetworkAdapterConfiguration");
    
                foreach (ManagementObject wmi in searcher.Get())
                {
                    try { return wmi.GetPropertyValue("MacAddress").ToString(); }
                    catch { }
                }
                return null;
            }
    
            private static string GetBoardSerialNumber()
            {
                ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", 
                    "SELECT * FROM Win32_BaseBoard");
    
                foreach (ManagementObject wmi in searcher.Get())
                {
                    try { return wmi.GetPropertyValue("SerialNumber").ToString(); }
                    catch { }
                }
                return null;
            }
    
    Poi concateni le stringhe, le ravani un po', le cripti e il gioco è fatto.
  • Re: Protezione software

    Ok, grazie.
  • Re: Protezione software

    barba59 ha scritto:


    il mac address
    Inutile come già detto ...
    il seriale del primo hard disk
    Occhio perché il seriale logico è irrilevante (in quanto modificabile).

    Semmai dovresti prelevare il seriale hardware del disco

    il "serialnumber" del Win32_diskdrive

    (... ma non è sempre disponibile ...).
    il seriale della scheda madre.
    Anche questo non è sempre disponibile ...
    Comunque in .Net usando la classe ManagementObjectSearcher puoi controllare un po tutto quello che ti pare.
    E tu pensi che non si sappia in giro?
    Sicuramente mettere queste protezioni è molto meglio che non mettere nulla.
    Mi ricordi Catalano ... (chi sa di chi e di cosa si parla deve avere una certa età ...)
    Se poi il cliente assolda un abile hacker
    Non serve un abile hacker ma un modesto smanettone ...
    peggio per lui, poi io assolderò un abile avvocato.
    Ahi ... gli avvocati ... lascia stare ...

    (La morale è che le protezioni sono sempre superabili e attirano gli "sprotettori" come mosche; meglio un buon supporto al cliente per le modifiche personalizzate ...)
  • Re: Protezione software

    Ciao ragazzi, ho aperto questo therad per parlare di come proteggere il codice, non se sia più o meno utile farlo. Una volta che è stato detto che le protezioni sono aggirabili, basta, è inutile continuare a ripeterlo.

    Eviterei pure toni polemici che possono portare a flames e alla chiusura del thread (non so chi sia Catalano e non mi interessa).

    Toki ha scritto:


    Sono d'accordo ma è pur sempre un buon deterrente per la massa.

    Ti faccio un esempio banale, metti che sviluppi un gestionale di fatturazione senza alcuna protezione contro le copie.
    Ci mette poco ad essere distribuito a tua insaputa e copia genera copia.
    Questo è il contesto nel quale mi muovo pure io e che vorrei continuare a discuterne. Se avete altri suggerimenti su come inserire protezioni scriveteli pure, finora siete stati fantastici!

    Mi piacerebbe pure parlare di come mettere una scadenza a un programma.
  • Re: Protezione software

    ItaloPasi ha scritto:


    Mi piacerebbe pure parlare di come mettere una scadenza a un programma.

    ti conviene sempre lavorare nel registro di sistema, metti una data di installazione e all'avvio fai il check con un server remoto.

    molto semplice e "potenzialmente" sufficente (dubito che il 90% dei commercilisti sappaino come modficare una chiave dal registro di sistema)
  • Re: Protezione software

    ItaloPasi ha scritto:


    Ciao ragazzi, ho aperto questo therad per parlare di come proteggere il codice, non se sia più o meno utile farlo. Una volta che è stato detto che le protezioni sono aggirabili, basta, è inutile continuare a ripeterlo.

    Eviterei pure toni polemici che possono portare a flames e alla chiusura del thread (non so chi sia Catalano e non mi interessa).
    Datti una calmata ... non puoi dire tu cosa scrivere nelle risposte. Non mi pare che ci siano stai toni polemici nè poco educati e la questione di Catalano era una battuta, se non la capisci non succede nulla.

    Ripeto, datti una calmata ...
    Mi piacerebbe pure parlare di come mettere una scadenza a un programma.
    Controlla la data attuale con una if ...
  • Re: Protezione software

    Spiego la mia esperienza:

    io uso un file crittografato che nella versione DEMO del programma contiene solo valori standard nei campi in esso presenti come: versione, scadenza, azienda, canone, nr.licenze, ecc.

    Quando il cliente acquista la licenza gli viene inviato il file crittografato 'personalizzato' con i dati del cliente stesso che andrà a sostituire quello della DEMO.

    Ciò vale sia per l'installazione su Server aziendali (rete LAN), che per la versione su pc Desktop (non in rete).

    Per le versioni su Server è prevista anche l'installazione sui Client, che crea un codice programma univoco, sempre crittografato, e lo mette nel Registro del pc Client.

    Così un'utente può sì installare il Client sul proprio pc, ma dopo 30gg non funzionerà più.
    Dovrà chiedere la registrazione del Client inviando il codice programma, riceverà il codice di registrazione (anche questo finirà sul Registro) che sarà verificato ad ogni avvio.

    Comunque, quello che conta davvero e che fa la differenza è il buon servizio di assistenza che io fornisco al cliente (dietro pagamento di un canone annuale) rapido ed efficiente che eseguo da remoto, quindi spesso il problema del cliente lo risolvo immediatamente, oppure nel giro di qualche ora.
    Il cliente è soddisfatto perchè l'assistenza è veloce ed efficacie, non deve pagare costi per l'uscita (trasferta, auto, ...) ed io ho tempo per fare più assistenze e soddisfare più cliente (invece che perdere tempo ad andare dal cliente).

    Il Servizio è quello che fa la differenza.

  • Re: Protezione software

    gibra ha scritto:


    Comunque, quello che conta davvero e che fa la differenza è il buon servizio di assistenza che io fornisco al cliente (dietro pagamento di un canone annuale) rapido ed efficiente che eseguo da remoto, quindi spesso il problema del cliente lo risolvo immediatamente, oppure nel giro di qualche ora.
    Il cliente è soddisfatto perchè l'assistenza è veloce ed efficacie, non deve pagare costi per l'uscita (trasferta, auto, ...) ed io ho tempo per fare più assistenze e soddisfare più cliente (invece che perdere tempo ad andare dal cliente).
    Esatto caro Giorgio , è quello che anch'io intendevo quando indicavo che è importante il supporto completo al cliente. Se posso esprimere ancora il mio pensiero.
  • Re: Protezione software

    zaknafein83 ha scritto:


    ti conviene sempre lavorare nel registro di sistema, metti una data di installazione e all'avvio fai il check con un server remoto.

    molto semplice e "potenzialmente" sufficente (dubito che il 90% dei commercilisti sappaino come modficare una chiave dal registro di sistema)
    Concordo, pure io uso il sistema di scrivere la data crittografata nel registro di Windows, e lo ritengo più che sufficiente per i miei scopi. Poi bisognerebbe controllare ogni tanto che la data del pc non sia stata portata indietro, ma se devo essere sincero questo non l' ho mai fatto.
Devi accedere o registrarti per scrivere nel forum
42 risposte