Individuelle Einbindung

Smarx OS API

Die volle Leistungsfähigkeit des CRYPTO-BOX Systems entfaltet sich bei der Einbindung über API direkt in den Quellcode der Anwendung und bietet die höchstmögliche Flexibilität für Softwareschutz und Lizenzmanagement.

Individuelle Einbindung

Direkte Einbindung der CRYPTO-BOX in den Quellcode

Smarx OS API
  • Maximale Flexibilität: beispielsweise läuft die Software eingeschränkter Funktionalität wenn die CRYPTO-BOX nicht vorhanden ist.

  • Breite Betriebssystem-Unterstützung: Windows, Linux, macOS sowie iOS und Android.

  • Unterstützung für alle gängigen Compiler und Entwicklungsumgebungen, wie Visual Studio (inkl. NET), Delphi, Java. u.v.m.

  • Höchstes Schutzlevel durch flexiblen Einsatz von Verschlüsselung, multiplen Abfragen, Dummy-Aufrufen und Anti-Debugging-Tricks möglich.

  • Mehrere Anwendungen oder Programm-Module mit ein und derselben CRYPTO-BOX schützen - sowohl lokal als auch im Netzwerk.

  • Individuelle Speicherbereiche (Partitionen) mit Lizenzinformationen in der CRYPTO-BOX für jede Anwendung bzw. jedes Programm-Modul frei definierbar.

  • Multiple AES- und RSA-Schlüsselobjekte definierbar (nur CRYPTO-BOX SC).

Mehr informationen zu Smarx OS API

Smarx OS API


 

Die Implementierung in den Quellcode mittels API-Befehlen richtet sich vor allem an professionelle Softwareentwickler, die maximale Sicherheit und Flexibilität für ihre Schutzstrategie benötigen. So kann zum Beispiel eine eingeschränkte Demoversion ohne Dongle an den Kunden ausgeliefert werden, die durch Anstecken einer CRYPTO-BOX automatisch zur Vollversion wird. Bestimmte Programmteile oder -features lassen sich individuell pro Kunde definieren und nachträglich per Remote-Update freischalten nachdem der Kunde bezahlt hat.

Die individuelle Einbindung in den Sourcecode ist unter allen gängigen Plattformen (Windows, Linux, macOS, iOS und Android) möglich. Das API bietet Zugriff auf die Verschlüsselungsfunktionen der CRYPTO-BOX, und für jede Anwendung oder Programm-Modul kann ein eigener Speicherbereich (Partition) für Lizenzinformationen definiert werden. Ein versehentliches Überschreiben von Daten durch eine andere Anwendung ist daher unmöglich. Das Smarx OS Interface unterstützt Lizenzmanagement sowohl am Einzelplatz, als auch im Netzwerk.

MARX bietet Softwareentwicklern verschiedene API's auf Basis des Smarx®OS Systems an:

 
  1. Smarx API - API Abstraktionslayer

    Smarx API ist ein Interface mit Fokus auf Einfachheit und Nutzerfreundlichkeit. Im Gegensatz zu den weiter unten genannten Interfaces (CBIOS/SmarxCpp für C++/Delphi oder CBIOS4NET/Smarx4NET für C#) ist beim Smarx API der Implementierungsaufwand und damit auch die Möglichkeiten für Bugs und Fehler drastisch reduziert. Gegenüber der automatischen Einbindung mit AutoCrypt bietet es wiederum eine grössere Flexibilität.
    Smarx API unterstützt aktuell die folgenden Entwicklungsumgebungen:
    Windows - C#, C++, VB (Visual Studio 2013 oder höher), Delphi ab Version 10
    macOS - Xcode 8

  2. AC API - API Abstraktionslayer

    Dieses neuste von MARX eingeführte API hat den Fokus auf einer möglichst schnellen und einfachen Implementierung. Es braucht nur ein einziger Funktionsaufruf zum Quellcode der Anwendung hinzufügen, um Lizenz-Informationen in einer lokal oder im Netzwerk angeschlossenen CRYPTO-BOX zu prüfen, beispielsweise ein Ablaufdatum oder einen Ausführungszähler. Anschliessend braucht es nur noch ein Exit-Event (AppExitEvent) mit Übergabe eines Exception-Arguments - damit ist die Einbindung schon abgeschlossen!
    AC API unterstützt C++ und C# (Visual Studio 2013 und höher).

  3. Objektorientierte APIs - CBIOS4NET/Smarx4NET und SmarxCpp

    Smarx4NET/CBIOS4NET - eine Implementierung speziell für .NET.
    Es integriert alle unter Punkt 4 aufgeführten Interfaces und vereinfacht so die Einbindung für .NET Entwickler.

    SmarxCpp - eine objektorientierte Implementierung für C++.
    Es integriert die unter Punkt 4 aufgeführten CBIOS-/DO-Interfaces und vereinfacht so die Einbindung für C++-Entwickler. Es steht als statische Bibliothek (für MSVS2013 und höher) und als DLL zur Verfügung.

  4. Standard APIs (CBIOS/DO/RFP/DP)

    • CBIOS API - Befehle für den Zugriff auf die CRYPTO-BOX (lokal oder im Netzwerk), auf den internen Speicher und auf die Verschlüsselungsfunktionen (hardwarebasierte AES- bzw. RSA-Verschlüsselung, abhängig vom CRYPTO-BOX Modell).
    • CBIOS DO API - enthält Befehle zur einfachen Verwaltung von Datenobjekten im Speicher der CRYPTO-BOX, wie Ablaufdatum, Zähler, Netzwerklizenzen oder kundenspezifische Objekte. Diese Datenobjekte können später über Remote-Update (RUMS im Smarx Application Framework oder das RFP API) aktualisiert werden.
    • CBIOS RFP API - API für Remote-Updates von Datenobjekten in der CRYPTO-BOX direkt beim Endanwender über verschlüsselte Konfigurationsdateien.

Eine detaillierte Übersicht zu allen API's bietet unser White Paper "Implementation with API".

 

Unterstützte Entwicklungsumgebungen

Die nachfolgende Tabelle enthält eine Übersicht der unterstützten Compiler. Eine detaillierte Einführung zur Einbindung über API befindet sich im Compendium in Kapitel 10, außerdem sind White Paper mit API-Befehlsreferenzen für C#, C/C++, Delphi und Visual Basic verfügbar, sowie Beispielcode für viele Entwicklungsumgebungen im Protection Kit.

Windows

C#

  • Microsoft Visual Studio 2005-2019 (.NET 2.0 und höher, inkl. Unterstützung für Windows Store Apps)

C/C++

  • Microsoft Visual Studio 2005-2019
  • Microsoft Visual C++ 6.0, Visual Studio 2003
  • Borland Builder 5 - RAD XE8
  • MinGW
  • Qt4

Delphi

  • Delphi 6 - 10.3

Java

  • JDK 1.6 und höher

VB

  • Microsoft Visual Basic 6.0, Visual Studio 2003
  • Microsoft Visual Studio 2005-2019

VBA

  • Microsoft Access
  • Microsoft Excel

Other

  • LabVIEW
  • Microsoft Visual FoxPro 9.0
  • Micro Focus Visual COBOL 2010 R3
  • Intel Visual Fortran XE 2011
  • Digital Mars D
  • F#
  • MATLAB 2009
  • REALbasic 2006
  • DarkBASIC
  • Scala

Linux

C/C++

  • GCC (32/64bit)
  • Qt 4

Java

  • JDK 1.6 und höher (32/64bit)

Delphi

  • Kylix

Basic

  • REALbasic 2006

Ada

  • GNAT Programming Studio

macOS

C/C++

  • GCC (32/64bit)
  • Qt 4

Java

  • JDK 1.6 und höher (32/64bit)

Basic

  • REALbasic 2006

Other

  • LabVIEW

Mobile Geräte

iOS

  • Xcode

Android

  • Eclipse

Windows Phone

  • Microsoft Visual Studio 2013-2017

Please guide me to find the right solution

guide me

I already know what I need. Take me directly to the
Product Overview/Shop

Product Overview