Vai al contenuto

Come proteggere un programma (SlimLine/Netsyst)

Le famiglie di PLC SlimLine e Netsyst sono state concepite con l’ottica della salvaguardia dell’investimento in programmazione effettuato dal Cliente sia in termini di portabilità da/verso altre piattaforme (ottenuto con l’uso del linguaggio IEC61131-3), sia in termini di protezione dalla copia e dall’utilizzo fraudolento. Esistono due metodi di protezione:

Manufacturer ID (MID)

Il Cliente che vuole proteggere la sua applicazione dalla copia e dall’utilizzo fraudolento ha la possibilità di farsi assegnare un codice MID che verrà installato sulle CPU da lui acquistate (se richiesto). Il codice MID è personale e non vendibile dalla Elsist ad alcun altro se non con autorizzazione scritta del Committente.

Le CPU dotate di MID saranno esternamente identificabili da una etichetta (MIDxxxyzzz) che identifica il codice al quale il Cliente potrà legare la sua applicazione, rendendola in questo modo funzionante in modo esclusivo sui prodotti dotati del suo MID. Il codice impostato è visibile dalla pagina web alla voce Manufacturer code di default è 0. Sarà altresì possibile legare funzionalità particolari rilasciate dalla Elsist o da essa sviluppate su richiesta del Cliente ad un codice MID, stabilendo così una protezione anche sui programmi o sui Blocchi funzione sviluppati da Elsist e disponibili solo su licenza.

Come proteggo un mio programma con il MID

Il codice MID viene ritornato nella variabile SysMfcCode, quindi basterà controllarne il valore all’interno del proprio programma e decidere di conseguenza come procedere. Naturalmente il programma che controlla il MID dovrà essere criptato per evitare modifiche da parte del cliente. Si può inserire il controllo del MID anche all’interno di blocchi funzioni che si desidera funzionino solo sui proprii sistemi, magari prevedendo un periodo di funzionamento dimostrativo.

Si consiglia di rendere evidente il blocco del funzionamento dovuto alla mancanza del MID per evitare di perdere tempo nel caso in cui il cliente cerchi di fare funzionare un programma protetto su di un modulo CPU non provvisto di MID.

LogicLab (ST_MIDProtection)
PROGRAM ST_MIDProtection
VAR
    i : BOOL; (* Auxiliary variable *)
END_VAR

// *****************************************************************************
// PROGRAM "ST_MIDProtection"
// *****************************************************************************
// This program shows how to use the manufacturer ID (MID) that is a personal
// code that can be installed on the CPU modules with the aims to protect
// programs against copies.
// It's obvious that the program must be encrypted to avoid the user bypass it.
// -----------------------------------------------------------------------------

    // -------------------------------------------------------------------------
    // MID CHECK
    // -------------------------------------------------------------------------
    // The MID is returned in the "SysMfcCode" variable, so you have to check
    // the code and decide how to do if it doesn't match. Supposing your MID is
    // 1234 a spy message is reported if it doesn't match.
    
    IF (SysMfcCode <> 1234) THEN
        i:=SysWrSpyData(SPY_ASCII, 0, 16#00000001, ADR('Sp 1'), ADR('Wrong MID'));
    END_IF;

// [End of file]

Cosa comporta per il Cliente la protezione MID

La protezione a questo livello comporta la creazione di un nuovo codice MID ad un costo fisso “una tantum”, più un costo per ogni dispositivo acquistato e provvisto del codice MID identificativo del Committente (Vedi tabella sotto ).
All’atto della implementazione del codice MID il Cliente sarà in grado di consultare le chiavi di attivazione ad esso associate (se include attivazioni di Funzioni o Blocchi Funzione) e di ordinarlo all’occorrenza, dalla pagina “Il mio account” -> “Chiavi di attivazione”.

Codice ELSISTDescrizioneNote
MIDIMPLEMImplementazione nuovo codice MIDCosto fisso una tantum. Viene fatturato nel momento in cui il Cliente decide di acquistare i prodotti provvisti di MID e copre le spese sostenute per l’apertura della posizione MID e relativa documentazione.
MIDxxxyzzzFornitura MID sul dispositivo indicatoFornito con la(e) CPU acquistata(e).
Le CPU saranno provviste di marcatura esterna riportante questo codice.
NON può essere venduto separatamente, ma SOLO in abbinamento alla(e) CPU SlimLine/Netsyst e contestualmente alla sua(loro) fornitura.

Come viene costificato un codice MID

La costificazione di un codice MID avviene sommando i costi delle singole FB abilitate + un costo per ogni dispositivo. Nella tabella che segue è esemplificata una costificazione di un codice MID che include l’attivazione della FB DMX e della FB modem.

Codice ElsistDescrizionePrezzo listino
MIDDMXMANAttivazione MID FB Gestione protocollo DMX Master€ 10,00
MIDMODMANAttivazione MID FB Gestione modem GSM€ 5,00
Costo fisso per ogni dispositivo equipaggiato con MID€ 10,00
MIDxxxyzzzFornitura MID sul dispositivo (esempio)€ 25,00

Come posso ordinare il mio codice MID

Il codice MIDxxxyzzz è un codice personale protetto da password che viene assegnato su richiesta del Cliente. Per ordinarlo, dopo che è stato assegnato, è necessario accedere a Il mio account > Chiavi di attivazione. Al paragrafo “I tuoi MID” troverai la password di accesso ed un link per l’acquisto. Sarà possibile l’apertura della pagina prodotto, ed effettuarne l’ordine, solo dopo aver inserito la password.

ATTENZIONE! L’acquisto del codice MID deve essere sempre legato all’acquisto di una CPU LogicLab.

Device ID (DID)

E’ possibile legare la funzionalità degli applicativi, FB, librerie ecc., anziché ad un ID Cliente, all’ID del dispositivo. Se viene attivata questa protezione si avrà un legame dell’applicativo all’ID univoco del dispositivo sul quale esso è installato, e sarà impedito il funzionamento dell’applicazione su dispositivi diversi da quello. Ovviamente, in questo caso, non sarà più possibile il funzionamento dell’applicativo su eventuali dispositivi di scorta del Cliente, che, per essere usati come scorta per l’applicazione oggetto della protezione, dovranno essere anch’essi dotati di licenza a livello dispositivo.

La protezione DID è in genere utilizzata per la protezione di Blocchi funzione sviluppati da Elsist  la cui licenza di utilizzo viene venduta con la formula “Run Time“. Il codice DID non è pertanto legato ad un ID Cliente, ma identifica unicamente quali FB o funzioni possono essere attivate sul dispositivo acquistato.

MID

Cosa comporta per il Cliente la protezione DID

La protezione a questo livello comporta la generazione di una chiave di protezione, ad un costo dipendente dalle funzioni abilitate sul dispositivo, per ogni dispositivo acquistato.
Ad acquisto effettuato verrà abilitata la possibilità di generare le chiavi in autonomia dalla pagina Il mio account > Chiavi di attivazione.

Codice ELSISTDescrizioneNote
DIDnnnnnnnFornitura DID legato al dispositivoCosto variabile dipendente dalla funzione abilitata sul dispositivo.
Venduto unitamente o separatamente alla(e) CPU acquistata(e).
Le CPU NON saranno provviste di etichettatura esterna ad identificazione della protezione.
La generazione della(e) chiave(i) sarà a cura del Cliente.

Come genero le chiavi di attivazione ?

Puoi generare solo chiavi con attivazione di tipo DID.

  1. Nella colonna “Prodotto” scegli dal menù a discesa il Codice prodotto sul quale vuoi sbloccare l’oggetto o digitalo.
  2. Nella colonna “Matricola” inserisci nella casella la Matricola del prodotto sul quale sbloccare l’oggetto.
  3. Clicca sul bottone “Genera chiave” per la generazione. Una finestra ti chiederà se sei sicuro della scelta, cliccando su “Ok” la chiave verrà generata e la voce verrà spostata nella tabella “Chiavi attive”.

ATTENZIONE! La chiave generata NON sarà più modificabile, La chiave potrà essere utilizzata SOLO sul dispositivo per il quale è stata generata.

Was this article helpful?