Die Zukunft der Industrie ist digital und intelligent. Sie wird angetrieben durch Software-Know-how, welches kollaborative Robotik, Big Data und Analytik, IIoT und M2M, erweiterte und virtuelle Realität und 3D-Druck ermöglicht. Die Zusammenarbeit zwischen Herstellern innovativer Lösungen und Fertigungsunternehmen fördert die Verbreitung der Automation-4.0-Kultur, das Verständnis ihrer Konsequenzen für die Wettbewerbsfähigkeit und die Umsetzung erfolgreicher Anwendungsfälle. Im Mittelpunkt der neuen Infrastruktur stehen Cyber-Sicherheit 4.0 und Digital Business 4.0, die beide durch CodeMeter Embedded 2.0 unterstützt werden.
Die brandneue Generation von CodeMeter Embedded bietet ein breites Spektrum an neuen Funktionen:
- Extrem kleiner Footprint: Die Technologie ist modular aufgebaut, So können Sie die Module, die Sie benötigen, kombinieren und eine vollständig maßgeschneiderte Lösung für Ihr Projekt erstellen.
- Umfangreiche Kompatibilität mit Embedded-Systemen und speicherprogrammierbaren Steuerungen (SPS), um die gesamte Palette intelligenter Geräte abzudecken.
- Erweiterte Kompatibilität mit Plattformen und Betriebssystemen, einschließlich ARM, Intel und PPC: Wählen Sie die Plattform und wir liefern Ihnen die entsprechenden Bibliotheken.
- Verfügbar für beliebige Plattformen als ANSI-C-Quellcode.
- Kompatibilität mit allen Hardware- und Software-Containern von CodeMeter: CmDongles, CmActLicenses und CmLAN (Lizenzserver in einem Netzwerk).
- Kompatibilität mit CodeMeter Runtime: Sie können die gleiche Lösung für Software auf einem PC und Ihrem Embedded Device verwenden.
- Kompatibilität mit CodeMeter Protection Suite: Die bekannten und erprobten Schutzmethoden sind auch für Embedded Devices verfügbar.
- Kompatibilität mit der CodeMeter License Central: Ein einheitliches System für alle Ihre Softwareprodukte, um Ihre Lizenzen zu erstellen, auszuliefern und zu verwalten.
Webinar anschauen: https://youtu.be/HWbMGF2P0Rg
3. Auslieferung an den Anwender
Integration in die Prozesse
Einmal Integrieren – Vielfach Ausliefern
08.03.2017 Schutz und Lizenzierung für Embedded Devices 3
Integration in die Software
Software Software
CodeMeter
Protection Suite
Einmal Integrieren Vielfach Ausliefern
ERP/CRM
E-Commerce
Software
Lizenz Portal
License
Central
License
Central
4. CodeMeter Lizenzierungssysteme
08.03.2017 Schutz und Lizenzierung für Embedded Devices 4
CmDongle
Hardware basierte
Sicherheit
Lizenz-Server
Lizenz-Server
im LAN / WAN
CmCloudContainer
Anwenderbezogene
Lizenz in der Cloud
CmActLicense
Rechnergebundene
Lizenz-Datei
5. Lizenzeinträge
08.03.2017 Schutz und Lizenzierung für Embedded Devices 5
Lizenzeintrag = Firm Code | Product Code
Firm Code: von Wibu-Systems vergeben
Product Code:
Vom Hersteller gewählt
Je Option / Modul / Feature
4 Mrd. Product Codes (UInt32)
Product Item Options: Jede Lizenz kann
kombinierbare Optionen besitzen
Bis zu 2.000 Product Items pro CmContainer
Firm Code: 10
…
Product Item Options
Product Code: 201.000
Product Item Options
Product Code: 201.001
Product Item Options
Product Code: 201.002
11. Skalierbare Varianten von CodeMeter
08.03.2017 Schutz und Lizenzierung für Embedded Devices 11
Identische CodeMeter®-Technologie für alle Plattformen:
12. Varianten von CodeMeter im Detailvergleich
08.03.2017 Schutz und Lizenzierung für Embedded Devices 12
Funktion
CodeMeter
µEmbedded
CodeMeter
Embedded
CodeMeter
Runtime
CmDongle | CmActLicense | CmCloudContainer - | x | - x | x | - x | x | x
LAN Client | LAN Server - | - x | - x | x
Zeitbasierte Lizenzen | Zählerbasierte Lizenzen - | - x | x x | x
Featurebasierte Lizenzen | Versionsbasierte Lizenzen x | x x | x x | x
License Transfer Master | License Transfer Endpunkt - | x - | x x | x
Dateibasierte Lizenzaktualisierung x x x
Terminal Server Erkennung | Remote Desktop Erkennung - | - - | - x | x
Sicherer Schlüsselspeicher x x x
Virtuelle CodeMeter Uhr - x x
14. CodeMeter Embedded
Alternative zu CodeMeter Runtime
Direkter Zugriff auf einen oder mehrere CmDongles / CmActLicenses
Als statische Bibliothek oder als Quelltext
Modularer Aufbau
Kleiner Footprint (ca. 90 kByte .. 300 kByte)
Kompatible Teilmenge der CodeMeter Core API Funktionen
Kein lokales Zählen von Lizenzen
Hauptsächlich für Embedded Betriebssysteme
08.03.2017 Schutz und Lizenzierung für Embedded Devices 14
15. CodeMeter Embedded Architektur
08.03.2017 Schutz und Lizenzierung für Embedded Devices 15
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle
CmActLicense CmLAN Runtime Bridge
License Cache
Multi Application Access
License Transfer
Encrypted Storage Encrypted CommunicationEncrypted Communication
Host-ID CodeMeter License Server CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
16. Module im Detail
CodeMeter Embedded Core
License Cache
Multiple Application Access
CmDongle
CmActLicenses
CmLAN
CmRuntimeBridge
API (Teilmenge von CodeMeter Core API)
08.03.2017 Schutz und Lizenzierung für Embedded Devices 16
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle
CmActLicense CmLAN Runtime Bridge
License Cache
Multi Application Access
License Transfer
Encrypted Storage Encrypted CommunicationEncrypted Communication
Host-ID
CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
17. CodeMeter Embedded Core
Core Funktionen
Bereitstellung aller Basisfunktionen
Kryptobibliotheken
Symmetrische Kryptographie
Asymmetrische Kryptographie
Handle Management für den Zugriff
auf CmDongle/CmActLicense
08.03.2017 Schutz und Lizenzierung für Embedded Devices 17
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle CmActLicense CmLAN Runtime Bridge
License Cache
Multi ApplicationAccess
License Transfer
Encrypted Storage Encrypted CommunicationEncrypted Communication
Host-ID CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
18. License Cache
License Cache
Zwischenspeicherung von
Lizenzinformationen
Schneller Zugriff auf Lizenzen
aus dem Cache statt aus CmDongles
und CmActLicenses
08.03.2017 Schutz und Lizenzierung für Embedded Devices 18
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle CmActLicense CmLAN Runtime Bridge
License Cache
Multi ApplicationAccess
License Transfer
Encrypted Storage Encrypted CommunicationEncrypted Communication
Host-ID CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
19. Multiple Application Access
Multiple Application Access
Ermöglicht den parallelen Zugriff
mehrerer Anwendungen oder Prozesse
auf einen CmDongle bzw. eine
CmActLicense
Wird in der OPC UA Referenz
„Implementierung für konkurrierenden
Zugriff auf den Privaten Schlüssel“ verwendet
08.03.2017 Schutz und Lizenzierung für Embedded Devices 19
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle CmActLicense CmLAN Runtime Bridge
License Cache
Multi Application Access
License Transfer
Encrypted Storage Encrypted CommunicationEncrypted Communication
Host-ID CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
20. CmDongle
CmDongle
Unterstütze Kommunikationswege
File-IO (Mass Storage Device)
HID (Human Interface Device)
SPI (Serial Peripheral Interface)
08.03.2017 Schutz und Lizenzierung für Embedded Devices 20
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle
CmActLicense CmLAN Runtime Bridge
License Cache
Multi Application Access
License Transfer
Encrypted Storage Encrypted CommunicationEncrypted Communication
Host-ID CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
21. CmActLicenses
Individuelle Implementierung
der Bindung an das Gerät
Adapter für
Implementierung eines Fingerabdrucks
Implementierung zum Speichern der
Lizenzdatei(en)
Implementierung zur Speicherung von dynamischen Daten
Sicherer Zähler für Rückgabe und dynamische Daten (empfohlen)
Aktivierung per CodeMeter-API (kompatibel zu CodeMeter Runtime)
08.03.2017 Schutz und Lizenzierung für Embedded Devices 21
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle CmActLicense CmLAN Runtime Bridge
License Cache
Multi Application Access
License Transfer
Encrypted Storage Encrypted CommunicationEncrypted Communication
Host-ID CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
22. Typische Bindungsmerkmale
08.03.2017 Schutz und Lizenzierung für Embedded Devices 22
Unveränderbare Seriennummer
Physical Uncloneable Function
Unveränderbare IMEI
Unveränderbare CID
Unveränderbare CPU ID
Unveränderbare GPU ID
SGX
Trust Zone
TPM 1.2 / 2.0
etc….
23. CmLAN
CmLAN
Erlaubt Nutzung von konkurrierenden
Netzwerk-Lizenzen
Kompatibel mit einem CodeMeter
Lizenzserver im Netzwerk
CmEmbedded als Client eines
CodeMeter Lizenzservers
(z.B. zum Zählen von Lizenzen)
08.03.2017 Schutz und Lizenzierung für Embedded Devices 23
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle CmActLicense CmLAN Runtime Bridge
License Cache
Multi Application Access
License Transfer
Encrypted Storage Encrypted Communication
Encrypted Communication
Host-ID CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
24. CmRuntimeBridge
CmRuntimeBridge
Koexistenz mit CodeMeter Runtime
auf dem gleichen Rechner
Für Tests auf Entwicklungsrechnern
gedacht auf denen CodeMeter
Runtime und CmEmbedded gleichzeitig
genutzt werden (Entwicklungsumgebung
und Gerätesimulation)
08.03.2017 Schutz und Lizenzierung für Embedded Devices 24
CodeMeter Embedded Core
Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle CmActLicense CmLAN Runtime Bridge
License Cache
Multi Application Access
License Transfer
Encrypted Storage
Encrypted Communication
Encrypted Communication
Host-ID CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
25. API (Teilmenge von CodeMeter Core API)
API (Application Interface)
Für Embedded Szenarien notwendige
Untermenge der CodeMeter Core API
Accessing API
Authentication API
Encryption API
Error Management API
Managing API
Kompatibel zur CodeMeter API auf Desktopsystemen
08.03.2017 Schutz und Lizenzierung für Embedded Devices 25
CodeMeter Embedded Core Core Modules
API (Teilmenge von CodeMeter Core API)
CmDongle CmActLicense CmLAN Runtime Bridge
License Cache
Multi ApplicationAccess
License Transfer
Encrypted Storage Encrypted
Communication
Encrypted Communication
Host-ID CodeMeter License
Server
CodeMeter RuntimeTPM
ApplicationExEngineAxEngineOPC UA
HID SPIFile-I/O
28. Auslieferungsoptionen CodeMeter Embedded
Als dynamische Bibliothek (dll / so) zum Testen
CmDongles, Runtime Bridge
Als statische Bibliothek
Module und Betriebssysteme auf Anfrage
Als Quellcode (auf Anfrage)
Module auf Anfrage
NDA erforderlich
08.03.2017 Schutz und Lizenzierung für Embedded Devices 28
29. Integration in die Software
08.03.2017 Schutz und Lizenzierung für Embedded Devices 29
30. Key-Facts von CodeMeter
Symmetrische Verschlüsselung
128-Bit AES (Advanced Encryption Standard)
Verwendung für Softwareschutz und Datenverschlüsselung
Asymmetrische Verschlüsselung
224-Bit ECC (Elliptic Curve Cryptography)
2048-Bit RSA (Rivest Shamir Adleman)
Verwendung für Signaturen, Authentifizierung und Software as a Service (SaaS)
08.03.2017 Schutz und Lizenzierung für Embedded Devices 30
31. Integration in die Software
Automatische Verschlüsselung
CodeMeter Protection Suite
AxProtector CmE
ExProtector
CodeMeter Core API
Einsatz von Verschlüsselung
Eigene Lizenzabfragen in der Software
Aktivierung / Deaktivierung von Lizenzen
08.03.2017 Schutz und Lizenzierung für Embedded Devices 31
32. CodeMeter Protection Suite
CodeMeter Protection Suite
08.03.2017 Schutz und Lizenzierung für Embedded Devices
Automatischer Schutz
(IP Protection)
Anti-Debug Methoden
Verwendete
CodeMeter Variante
Individuelle
Funktionsverschlüsselung
Integritätsschutz
(Tamper Protection)
Authentizität der Software
(Secure Loader / Authenticity)
Java SE
Java EE
Embedded
Operating System
.NETPC (Windows,
Linux, macOS)
CodeMeter
Runtime
CodeMeter
Runtime
CodeMeter
Runtime
CodeMeter
Embedded
CodeMeter
Embedded
IxProtector
AxProtector
AxProtector .NET
AxProtector Java
AxProtector CmE
ExProtector
32
38. ExProtector
Für Embedded Geräte
ExEngine integriert in das Betriebssystem
Wind River VxWorks
3S CODESYS
Embedded Linux
Android
Schutz vor Reverse Engineering
Manipulationsschutz
Schutz vor Einsatz nicht autorisierter Software
08.03.2017 Schutz und Lizenzierung für Embedded Devices 38
39. ExProtector
08.03.2017 Schutz und Lizenzierung für Embedded Devices 39
Geschützte AnwendungKompilierte Anwendung
Header
Code Section
Credentials
(Signatur, Zertifikate, …)
Data Section
Resource Section
ExProtector
Verschlüsselte
Anwendung
Kompilierte Anwendung
Header
Data Section
Resource Section
Code Section
40. ExEngine integriert im Betriebssystem
08.03.2017 Schutz und Lizenzierung für Embedded Devices 40
Operating System
Protected Application
ExEngine
(Security Engine)
IntegritätsprüfungStart
45. Key Features CodeMeter Core API
CmAccess2 (Zugriff auf Lizenz)
CmCrypt2 (Verschlüsselung)
CmRelease (Freigabe von Lizenzen)
CmCalculateSignature (Signatur erzeugen)
CmValidateSignature (Signatur prüfen)
CmGetLastErrorCode (Fehlerhandling)
08.03.2017 Schutz und Lizenzierung für Embedded Devices 45
46. Wozu wird das CodeMeter Core API verwendet?
Verschlüsselung eigener Daten
Konfigurationsdateien / Datendateien
Gesicherter Datenaustausch
Anmeldevorgang
Über asymmetrische Verschlüsselung
Nutzung des Challenge Response Verfahrens
08.03.2017 Schutz und Lizenzierung für Embedded Devices 46
47. Identisches API in allen CodeMeter Implementierungen
08.03.2017 Schutz und Lizenzierung für Embedded Devices 47
CodeMeter Runtime CodeMeter Embedded
49. Unterstützte Platformen – CodeMeter Embedded
08.03.2017 Schutz und Lizenzierung für Embedded Devices 49
Operating System CPU
CodeMeter
Runtime
DLL/SO
(Eval)
LIB
ANSI-C
Source
Windows Intel
Linux Intel
Windows Embedded Standard (WES) Intel
Windows Embedded Compact (WEC) Intel, ARM
Embedded Linux Intel, ARM
Android ARM
VxWorks Intel, ARM, PPC
QNX Intel, ARM
Other Operating System Any CPU
50. Unterstützte Platformen – CodeMeter Protection Suite
08.03.2017 Schutz und Lizenzierung für Embedded Devices 50
Operating System
CodeMeter
Variant
AxProtector
AxProtector
Java
AxProtector
.NET
ExProtector
Windows Runtime -
Linux Runtime -
Windows Embedded Standard Runtime -
Windows Embedded Compact Embedded legacy - - -
Embedded Linux Embedded (CmE) 2018 -
Android Embedded (CmE) 2017 - 2018
VxWorks Embedded - - -
QNX Embedded - - - on request
Other Operating System Embedded on request on request - on request
52. Erstellen von Lizenzen
08.03.2017 Schutz und Lizenzierung für Embedded Devices 52
CodeMeter High Level Programming API (HIP)
CmBoxPgm
CodeMeter
License Editor
CodeMeter
License Central
Eigene
Application
53. End UserVendor
CodeMeter License Central – Ticketing System
08.03.2017 53
Ticket + Fingerabdruck
4
Lizenz
5
Ticket
2
Auftrag
1
E-Commerce
ERP/CRM Software
Lizenzportal
Ticket:
ABCDE-FGHIJ-KLMNO-PQRST-UVWXY
3
Schutz und Lizenzierung für Embedded Devices
54. WebDepot und Gateway / Software Activation Wizard
WebDepot
Lizenzaktivierung mittels Web Browser
Online über WebSockets
Offline via Dateitransfer
Gateway / Software Activation Wizard
Lizenzaktivierung aus der geschützen Applikation oder mittels License Manager
Online über Gateways zur CodeMeter License Central
Offline über RaC (Request) und RaU (Update) Dateien
08.03.2017 Schutz und Lizenzierung für Embedded Devices 54
55. WebDepot – License Portal
08.03.2017 Schutz und Lizenzierung für Embedded Devices 55
57. Zusammenfassung
CodeMeter Embedded ist multivendorfähig
CodeMeter Embedded ist eine portable und modular aufgebaute ANSI-C Library
Identisches API bei CodeMeter Standard und CodeMeter Embedded
Identischer Toolsatz
Identisches Lizenzmanagement
08.03.2017 Schutz und Lizenzierung für Embedded Devices 57
58. Deutschland: +49-721-931720
USA: +1-425-7756900
China: +86-21-55661790
http://www.wibu.com
info@wibu.com
Deutschland: +49-721-931720
USA: +1-425-7756900
China: +86-21-55661790
http://www.wibu.com
info@wibu.com
Vielen Dank für Ihre Aufmerksamkeit!
Notas do Editor
Diese Folie kommt hier so unvermittelt, um sagen zu können:
Eigentlich müssten Sie sich darum kümmern, wie Sie den Encryption Code sinnvoll variieren und einsetzen. AxProtector, IxProtetcor und Wupi nehmen Ihnen dies ab. Diese Tools erzeugen automatisch Arrays von Encryption Codes. Nur mit dem Core API müssen Sie dies manuell machen.