製品&サービス
ホーム » 製品&サービス » CypherTec Security SDK » プログラミングイメージ
CypherTec Security SDK プログラミングイメージ

SDKの構造とアプリケーションインタフェース

CypherTec Security SDKは複数のコンポーネントから構成されています。
下に各コンポーネントと用意しているインタフェースの関係図を示します。

SDKの構造とアプリケーションインタフェース
※Visual C++、Visual Basic、Visual C#(unmanaged)等を用いたプログラム開発を可能としています。

概要

CypherTec Security SDKは、様々な用途に応じて必要なコンポーネントが利用されることになります。
以下に、元コンテンツを暗号化して、復号視聴するまでの基本的なシーケンスを示します。

シーケンス
図1 暗号化から復号視聴までのシーケンス例
サイファー・テックではSDKを有効に活用するために、
  • カプセル化ツール(カプセル化からライセンス作成までを行うWindowsアプリケーションです)
  • ライセンスサーバインタフェース(お客様の配信サーバとメッセージをやりとりするHTTPインタフェースです)
などを用意しています。SDKとこれらのツール、インタフェースを効果的に利用することで、少ない開発工数でオリジナルのサービスを実現することができます。

クラスイメージ

各コンポーネントは、機能ごとに定義された多数のクラスから構成されています。ここでは一例として、カプセル化コンポーネントの主なクラスを示します。

クラス 概要
カプセル化実行 コンテンツを暗号化しDRM情報を付加するカプセル化機能を持ちます。
DRM情報生成クラス 多種の認証方式に対応したDRM情報を生成するための機能を持ちます。
ファイル設定クラス カプセル化の対象となるファイルを設定するクラスです。
オプション設定クラス オプションを設定する機能を持ちます。
コーディングイメージ

以下に、Visual C++によるカプセル化コンポーネントの利用(PDFコンテンツのカプセル化)のサンプルを示します。

※カプセル化とはサイファー・テック独自の用語で、コンテンツを暗号化した上で、それを視聴するために必要な種々の情報を付加することを示します。
CCypherCapsulizeCtrl ctrl;
ctrl.SetCapsulizeManagementServer("password", "D:\\SampleService.ctl");
⁄⁄ ライセンスサーバの指定
CLicenseServer server;
server.SetServerURL("http://licenseserver/servermodule");
server.SetServiceID("12345678-90AB-CDEF-1234567890AB");
server.SetLoginID("loginid");
server.SetLoginPassword("loginpwd");
ctrl.SetLicenseServer(&ctLicSv);
⁄⁄ コンテンツファイルの設定
ctrl.SetSingleSourceFile("D:\\Data\\test.pdf", "test.cpd");
⁄⁄ コンテンツに対する各種情報設定
COnlineDrmInfoCreator drmCreator;
drmCreator.SetServiceID("12345678-90AB-CDEF-1234567890AB");
drmCreator.SetServiceName("サンプルサービス");
drmCreator.SetContentName("サンプルコンテンツ");
drmCreator.SetContentID(123);
drmCreator.SetPolicyID(1);
ctrl.SetDrmInfoCreator(&drmCreator);
⁄⁄ カプセル化実行
ctrl.SetCapsulizeDest("D:\\capsulized");
ctrl.Capsulize(CTCTL_LEAVES_CAPSULIZEFILE_ONLY, NULL);
※これはあくまでもイメージを示すもので、このままコードが動作するわけではありません。