To top
Products Products

CodeMeter Core API

Share:

CodeMeter Core API(コードメーター コア エーピーアイ)を使用すると、ソフトウェア開発者はソフトウェア内から直接CodeMeter機能にアクセスできます。これらの機能は、一般的に次の3つのシナリオに関係します。

  • ライセンスの使用と管理
  • データの読み取りと書き込み
  • 暗号化機能の使用

CodeMeter Runtimeの場合、CodeMeter Core APIは、動的ライブラリ、.NETアセンブリ、およびJavaインターフェースとして使用できます。これらのインターフェースにより、C/C ++、C#、C ++/CLI、Delphi、Java、Fortran、Fortran、VB、VB.NET、Pythonなど、ほとんどすべての一般的なプログラミング言語でCodeMeter Core APIを使用できます。

CodeMeter Core APIは、CodeMeter SDKの一部として、およびCodeMeter RuntimeとCodeMeter Embeddedの静的Cライブラリとしても利用できます。CodeMeter EmbeddedおよびCodeMeter µEmbeddedの場合、CodeMeter Core APIがSDKの一部としてソースコードとして使用できます。CodeMeter Core APIは、Windows、macOS、Linux、Android、VxWorks、QNXなど、CodeMeterをサポートするすべてのプラットフォーム用に公開されています。

CodeMeter Core API CodeMeter
Variant
Part of Operating System
/ Environment
Programming
Languages
Static Library CodeMeter Runtime CodeMeter SDK Windows (x86, x86-64),
macOS (x86-64),
Linux (x86, x86-64, ARM)
C/C++
Static Library CodeMeter Embedded CodeMeter Embedded SDK Windows (x86, x86-64),
macOS (x86-64),
Linux (x86, x86-64, ARM),
QNX (x86, ARM),
VxWorks (x86, x86-64, ARM, PowerPC),
Android (ARM)
C/C++
Dynamic Library CodeMeter Runtime CodeMeter Runtime Windows (x86, x86-64),
macOS (x86-64),
Linux (x86, x86-64, ARM)
C/C++, Delphi, VB, Fortran, Python, ...
.NET Assembly CodeMeter Runtime CodeMeter Runtime Windows (x86, x86-64) C#, C++/CLI, VB .NET 
.NET Standard Assembly CodeMeter Runtime CodeMeter Runtime Windows (x86, x86-64),
macOS (x86-64),
Linux (x86, x86-64, ARM)
C#, VB.NET
Java Interface CodeMeter Runtime CodeMeter Runtime Windows (x86, x86-64),
macOS (x86-64),
Linux (x86, x86-64, ARM)
Java
Source Code CodeMeter Embedded CodeMeter Embedded SDK Any OS C/C++
Source Code CodeMeter µEmbedded CodeMeter µEmbedded SDK Any OS C/C++

ライセンスの使用と管理

CodeMeter Core APIは、ソフトウェア開発者に、ソフトウェアでのライセンスの使用方法を決定する機会を提供します。ソフトウェアの起動時にライセンスを確認し、使用可能なライセンスに応じて個々の機能をアクティベーション、非アクティベーション、または非表示にすることができます。開発者は、起動時または対応する機能の最初の使用時にライセンスがすでに割り当てられているかどうかを決定することもできます。またソフトウェアの終了時、または対応する機能の終了時にライセンスが解放されるかどうかを判断することもできます。CodeMeterは、ライセンスが有効かどうかを自動的にチェックします。期限切れのライセンスまたは他のソフトウェアバージョンのライセンスは自動的に拒否されます。複数の有効なライセンスが利用可能な場合、CodeMeterは自動的に最適なオプションを選択します。

ライセンスがリリースされると、そのライセンスが他のアプリケーションで再び利用可能になることをCodeMeterへ通知します。フローティングネットワーク(同時使用)ライセンスを使用する場合や、ライセンスのリリースが実行される前にアプリケーションがクラッシュしたり終了したりした場合は、CodeMeterは自動的に処理し孤立したライセンスを解放します。

セキュリティを強化するために、CodeMeter Core APIでは、ライセンスに保存されているキーを使用してデータを暗号化できます。適切なライセンスがなければ、データを復号して使用することはできません。

アプリケーションでライセンスを効果的に使用できるようにすることに加えて、CodeMeterでは開発者がライセンスを管理し、独自のライセンスマネージャーを作成することもできます。それにより、期限切れまたは無効なライセンスにアクセス、読み取り、または一覧表示できます。CodeMeter License Centralを使用して、オフラインまたはオンラインでライセンスをアクティベーションまたは非アクティベーションできます。ユーザーは、必要に応じてライセンスを借りて返却することもできます。

データの読み取りと書き込み

CodeMeterには、データをライセンスに保存し、このデータをアプリケーションで使用できるようにする機会が含まれています。ソフトウェア開発者は、最初の作成時にこのデータをライセンスに書き込むことができます。選択したデータフィールドに応じて、データへのアクセスは実行時に無料になるか、特別な暗号化操作(パスワードとして機能)によって制限されます。開発者は、実行時にデータを上書きできるかどうかも決定します。これは、特定のプログラミングシーケンス(別のパスワードとして機能)に制限され、特定のソフトウェアアプリケーションでのみ可能です。

CmSticksにフラッシュメモリが搭載されているため、CodeMeter Core APIは、フラッシュメモリ(セキュアディスク)の特別な非表示パーティションのデータを読み書きすることもできます。数バイトからキロバイトの範囲のライセンスに含まれるデータとは対照的に、これは数ギガバイトのデータ用のスペースを提供します。このオプションは、特にログファイルの安全な保管に使用されます。

Data Type Size CmDongle with Flash Memory CmDongle without Flash Memory / CmActLicense Read during Runtime Write during Runtime Key Source
User Data 256 Byte Yes Yes Yes Yes No
Protected Data 256 Byte Yes Yes Yes Configurable (Password**, No) No
Extended Protected Data 128 x 256 Byte Yes Yes Yes Configurable (Password**, No) No
Hidden Data 128 x 256 Byte Yes Yes Password* Configurable (Password**, No) AES 128, ECC 224
Secret Data 128 x 256 Byte Yes Yes No Configurable (Password**, No) AES 128, ECC 224, RSA 1024, RSA 2048
Universal Data Limited by the size of the smart card chip Yes Yes No No AES 256, RSA 4096
Secure Disk Limited by the size of the flash memory Yes No Password Password** No

* Hidden Data Access Code
** Programming Sequence

暗号化機能の使用

CodeMeterを使用すると、暗号化操作用のキーを、暗号化されたOPC UA通信用の秘密キーを含め、ライセンスに安全に保存できます。これらのキーは通常読み取ることができませんが、CodeMeter Core APIで使用できます。キーをCmDongleに直接作成して、キーが安全なCmDongleから出て行かないようにすることができます。

次の関数は、CodeMeter Core APIを介して利用できます。

  • ハッシュ値の計算(SHA 256)
  • 対称的なデータの暗号化および復号(AES 128、AES 256)
  • データの非対称的な暗号化および復号(ECIES 224、RSA 1024、RSA 2048、RSA 4096)
  • 署名データ(ECDSA 224、RSA 1024、RSA 2048、RSA 4096)
  • 保存された秘密鍵に対する公開鍵の計算(ECDSA 224、ECIES 224)

関数は、幅広いアプリケーションに使用できます。

  • 暗号化された設定とデータをソフトウェアに保存して、より強力なレベルの保護を実現。
  • 保護されたアプリケーションで作成されたデータを暗号化して、有効なライセンスを所有する許可されたユーザーにアクセスを制限。
  • データファイルとログファイルに署名して、それらの信頼性と整合性を証明。
  • 鍵を使用して暗号化された通信を開始。

CodeMeterの技術に興味がありますか?
いくつかの質問にご回答頂くと、弊社営業から必要な情報をお送りします。

お問合せ