high-end software protection system

Autenticazione ed esecuzione onboard

L'architettura xCore comprende una serie di dispositivi in grado di implementare un livello di protezione mai raggiunto prima da nessun dispositivo presente sul mercato. Il dispositivo xCore si integrerà profondamente con il vostro applicativo, senza aggiungere controlli aggirabili, ma eseguendo parti del vostro codice.

Potrà gestire in autonomia le date di scadenza, sistemi multilicenza con utenti autenticati, moduli applicativi e tutte le caratteristiche che vorrai grazie all'esecuzione di codice custom.

Cosa puoi fare con xCore?

Apertura di una sessione autenticata

Il primo passo è la creazione di una sessione autenticata con il dispositivo: l'applicazione si autentica presso il dispositivo e, ad autenticazione avvenuta, viene creato un canale criptato attraverso il quale passerà tutto lo scambio di informazioni tra l'applicazione protetta ed il dispositivo. Ogni transazione è firmata, ogni dato risulterà criptato.

All'interno della sessione aperta è disponibile una serie di comandi che già permettono di raggiungere un altissimo livello di confidenza nella protezione dell'applicativo.

Esecuzione di codice a bordo del dispositivo

L'applicazione potrà a questo punto inviare al dispositivo il codice che lo stesso dovrà eseguire. Tale codice è criptato con specifiche chiavi AES 256 che solo lo sviluppatore ed il dispositivo conoscono. Il dispositivo decripta il codice, lo verifica e, se tutto è coerente, è pronto per eseguirlo.

A disposizione dello sviluppatore ci sono API interne specifiche per la crittografia simmetrica e asimmetrica, un file system completo per l'accesso al Phantom disk nonché evolute API native per applicazioni DSP (Digial Signal Processing) e funzioni di temporizzazione.

Gestione licenze, istanze e scadenza temporale

Sarà possibile gestire il numero di licenze attive, delle istanze (esecuzioni contemporanee sulla singola macchina) e gestire le date di scadenza delle licenze e degli eventuali moduli attivi.

Memorizzazione di dati cruciali

I dispositivi xCore mettono a disposizione dello sviluppatore una certa quantità di memoria nella quale sarà possibile memorizzare dati ai quali sarà possibile accedere solo dal codice eseguito internamente.

La versione con mass storage a bordo permetterà di gestire anche dischi di grandi dimensioni e di accedervi dal sistema operativo e dall'interno del device grazie al file system messo a disposizione della API interne.

Offriamo anche una serie di esempi pronti per l'integrazione

Stream encryption: scrivi e leggi i tuoi file criptati in tempo reale

Ora l'integrazione della crittografia nella tua applicazione è semplicissima: sostituisci le chiamate a fwrite(..) e fread(..) con le funzioni specifiche dell'architettura xCore. A tutto il resto abbiamo pensato noi.

E se i files sono molto ingombranti è possibile suddividere il processo di crittografia tra xCore e la macchina, mantenendo le performance ad alti livelli e non intaccando l'estrema sicurezza della gestione delle chiavi lasciata sempre al device.

Approfondisci

Data encryption

Devi criptare solo alcuni dati? Allora questo esempio è quello che ti serve. Semplice da utilizzare, permette di cifrare anche piccoli blocchi di dati ad una velocità che non ti aspetti proprio grazie al coprocessore crittografico interno.

Nei tuoi database potrai ora scrivere i dati sensibili in tutta sicurezza, senza preoccuparti che siano esposti a terzi: senza il dispositivo xCore sarà impossibile decifrare il contenuto!

LockToPC: lega la tua applicazione alla specifica macchina

LockToPC mostra come legare sia il dispositivo che la propria applicazione alla macchina sulla quale l'applicazione stessa viene eseguita. Per ottenere tale risultato vengono sfruttate alcune informazioni intrinseche del PC quali ad es. il MAC della scheda di rete, il seriale della scheda madre, il seriale del BIOS, il modello ed il seriale del processore installato, il seriale e l'ID del disco ed altri parametri ricavati dall'hardware del PC stesso.

Alla prima esecuzione il dispositivo si lega alla specifica macchina e funzionerà sono su questa: solo tu potrai, con specifici comandi, sbloccare  il legame e permettere di spostare la licenza su un altro PC.

Approfondisci  [autenticazione richiesta]

User license Web update

Potrai fare in modo che le licenze dei dispositivi si aggiornino autonomamente utilizzando un servizio remoto basato su uno script Google Script che si interfaccia con uno spreadsheet contenente i dati dei dispositivi: non dovraà fare altro che sfruttare le API ed i tools che OxySec ha già approntato.

Approfondisci  [autenticazione richiesta]

xCore License Management System

Preferisci gestire un server di licenze? OxySec ha pensato anche a questo.

Abbiamo utilizzato la nostra architettura di protezione software più evoluta per implementare una suite di controllo licenze estremamente facile da utilizzare e nel contempo estremamente sicura.

Con pochi semplici click sarà possibile creare un utente, assegnargli una licenza e deciderne la data di scadenza, aggiornare la licenza di un utente esistente o analizzare i logs relativi all'utilizzo delle licenze da parte dei clienti.

Il tutto senza preoccuparsi del fatto che il server sia in locale o remoto: con i tools forniti sarà possibile gestire tutto in semplicità.

Approfondisci

Hai bisogno di aiuto? OxySec è a disposizione

OxySec aiuta sempre i propri clienti nell'integrazione

permettendo di raggiungere l'obiettivo della protezione in tempi strettissimi.

Sistema di sviluppo: xCore SDK

Il sistema di sviluppo per l'architettura xCore è basato su Visual Studio di Microsoft per Windows e sull'utilizzo di un compilatore GCC per il processore CortexM4 interno al dispositivo.

Lo sviluppatore potrà gestire anche i progetti più complessi con estrema semplicità, lanciare il build da VS, eseguire il debug del codice sfruttando anche la parte di simulatore dei dispositivi fornita da OxySec e generare infine il binario eseguibile restando sempre in un ambiente a lui familiare.

I dispositivi della famiglia xCore

L'architettura xCore comprende più dispositivi completamente compatibili tra loro:

xCoreLT: dispositivi a basso costo della famiglia xCore

Dimensioni dei dispositivi

xCoreUSB

xCoreS - Design con cappuccio

xCoreC - Connettore USB type C

xCoreSD - Con mass-storage integrato

xCoreNET - interfaccia di rete

Richiesta kit di valutazione

Kit di valutazione e sviluppo

Il kit di valutazione e sviluppo per l'architettura xCore è gratuito e può essere richiesto compilando il Modulo di richiesta kit raggiungibile cliccando sul pulsante sottostante.

Riceverete il dispositivo selezionato e verrete autorizzati ad accedere all'area tecnica dove troverete il SDK, esempi di integrazione in vari linguaggi e tutta la documentazione aggiornata.