前のページ次のページ上に戻るホーム SophiaFramework UNIVERSE 5.3
SFBRSA
IRSA インターフェースのラッパークラスです。
#include <SFBRSA.h.hpp>
class SFBRSA : public SFBBase;
SFMTYPEDEFWRAPPER(SFBRSA)

継承図

SFBRSA クラスの継承図

バージョン

BREW 2.0 BREW 2.1 BREW 3.1 BREW 4.0

参照

BREW API IRSA

メンバ

パブリック関数
Void Decrypt( VoidConstPtr in , SInt32 inLength , VoidPtr out , SInt32Ptr outLength , SInt32 pad , UInt32Ptr result , SFXCallbackPtr callback )
データの復号化を行います。
Void Decrypt( SFXBufferConstRef in , SFXBufferPtr out , SInt32Ptr outLength , SInt32 pad , UInt32Ptr result , SFXCallbackPtr callback )
データの復号化を行います。
Void Encrypt( VoidConstPtr in , SInt32 inLength , VoidPtr out , SInt32Ptr outLength , SInt32 pad , UInt32Ptr result , SFXCallbackPtr callback )
データの暗号化を行います。
Void Encrypt( SFXBufferConstRef in , SFXBufferPtr out , SInt32Ptr outLength , SInt32 pad , UInt32Ptr result , SFXCallbackPtr callback )
データの暗号化を行います。
SFCError Init( VoidConstPtr modulus , SInt32 modSize , VoidConstPtr exponent , SInt32 expSize )
RSAを使用して暗号化または復号化の鍵を初期化します。
SFCError Init( SFXBufferConstRef modulus , SFXBufferConstRef exponent )
RSAを使用して暗号化または復号化の鍵を初期化します。
Void ModExp( VoidConstPtr in , SInt32 inLength , VoidHandle out , SInt32Ptr outLength , UInt32Ptr result , SFXCallbackPtr callback )
RSA アルゴリズムの基本操作である、基本的なモジュラ指数演算を実行します。こ れは、SFBRSA::RSA() と同様の動作をノンブロッキングに行う関数です。 ※現在、この API はブロッキングモードで動作します。
static
SFBRSASmp
NewInstance( SFCErrorPtr exception = null )
SFBRSA インスタンスを生成します。
static
SFBRSASmp
NewInstance( AEECLSID id , SFCErrorPtr exception = null )
SFBRSA インスタンスを生成します。
SFCError RSA( VoidConstPtr in , SInt32 available , VoidHandle out , SInt32Ptr outSize , SInt32 reserved )
RSA を使用して暗号化または復号化を行います。
Void VerifySig( VoidConstPtr sig , SInt32 sigLength , VoidConstPtr digest , SInt32 digestLength , SInt32 type , UInt32Ptr result , SFXCallbackPtr callback )
署名を検証します。
Void VerifySig( SFXBufferConstRef sig , SFXBufferConstRef digest , SInt32 type , UInt32Ptr result , SFXCallbackPtr callback )
署名を検証します。
プロテクト関数
static
SFBBaseSmp
FactoryByCreate( AEECLSID id , SFCErrorPtr exception = null ) (SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを生成します。
static
SFBBaseSmp
FactoryByQuery( SFBQuerySmpConstRef query , AEECLSID id , SFCErrorPtr exception = null ) (SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを指定した SFBQuery インスタンスを使用して生成します。

SFBRSA::Decrypt
データの復号化を行います。
[ public ]
Void Decrypt(
    VoidConstPtr in           // 復号化するデータのバッファへのポインタ
    SInt32 inLength           // 入力バッファの長さ
    VoidPtr out               // 暗号化されたデータを格納するバッファへのポインタ、コール側で割り当てる
    SInt32Ptr outLength       // 入力時は、出力バッファの長さ
                              // 出力時は、データの長さ
    SInt32 pad                // 使うパディングのタイプ
    UInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // 完了コールバック
);
[ public ]
Void Decrypt(
    SFXBufferConstRef in      // 復号化するデータのバッファへのポインタ
    SFXBufferPtr out          // 暗号化されたデータを格納するバッファへのポインタ
    SInt32Ptr outLength       // 入力時は、出力バッファの長さ
                              // 出力時は、データの長さ
    SInt32 pad                // 使うパディングのタイプ
    UInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // 完了コールバック
);

解説

注意:バッファサイズの上限は、API 呼び出しの変数の型が SInt32 なので、 SInt32 の値です。

参照

BREW API IRSA_Decrypt


SFBRSA::Encrypt
データの暗号化を行います。
[ public ]
Void Encrypt(
    VoidConstPtr in           // 暗号化するデータのバッファへのポインタ
    SInt32 inLength           // 入力バッファの長さ
    VoidPtr out               // 暗号化されたデータを格納するバッファへのポインタコール側で割り当てる
    SInt32Ptr outLength       // 入力時は、出力バッファの長さ出力時は、データの長さ
    SInt32 pad                // 使うパディングのタイプ
    UInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // 完了コールバック
);
[ public ]
Void Encrypt(
    SFXBufferConstRef in      // 暗号化するデータのバッファへのポインタ
    SFXBufferPtr out          // 暗号化されたデータを格納するバッファへのポインタ
    SInt32Ptr outLength       // 入力時は、出力バッファの長さ出力時は、データの長さ
    SInt32 pad                // 使うパディングのタイプ
    UInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // 完了コールバック
);

解説

注意:バッファサイズの上限は、API 呼び出しの変数の型が SInt32 なので、 SInt32 の値です。

参照

BREW API IRSA_Encrypt


SFBRSA::Init
RSAを使用して暗号化または復号化の鍵を初期化します。
[ public ]
SFCError Init(
    VoidConstPtr modulus    // モジュラへのポインタ
    SInt32 modSize          // モジュラサイズ( バイト数 )
    VoidConstPtr exponent   // 公開指数または秘密指数へのポインタ
    SInt32 expSize          // 公開指数または秘密指数のサイズ( バイト数 )
);
[ public ]
SFCError Init(
    SFXBufferConstRef modulus    // モジュラを格納したバッファ
    SFXBufferConstRef exponent   // 公開指数または秘密指数を格納したバッファ
);

戻り値

  • 成功したとき: SFERR_NO_ERROR
  • メモリ不足のとき: SFERR_NO_MEMORY
  • キーが null か、長さがゼロのとき: AEE_CRYPT_INVALID_KEY

参照

BREW API IRSA_Init


SFBRSA::ModExp
RSA アルゴリズムの基本操作である、基本的なモジュラ指数演算を実行します。こ れは、SFBRSA::RSA() と同様の動作をノンブロッキングに行う関数です。 ※現在、この API はブロッキングモードで動作します。
[ public ]
Void ModExp(
    VoidConstPtr in           // 入力バッファへのポインタ
    SInt32 inLength           // 入力データの長さ
    VoidHandle out            // 結果へのポインタ
    SInt32Ptr outLength       // 結果データの長さ
    UInt32Ptr result          // 演算結果用のストレージ
    SFXCallbackPtr callback   // 完了時にコールするユーザー定義のコールバック
);

解説

注意:バッファサイズの上限は、 SInt32 の値です。

バージョン

この関数は、BREW 2.1 から使用可能です。

参照

BREW API IRSA_ModExp


SFBRSA::NewInstance
SFBRSA インスタンスを生成します。
[ public, static ]
SFBRSASmp NewInstance(
    SFCErrorPtr exception = null   // エラー値
);
[ public, static ]
SFBRSASmp NewInstance(
    AEECLSID id                    // クラスID
    SFCErrorPtr exception = null   // エラー値
);

SFBRSA::RSA
RSA を使用して暗号化または復号化を行います。
[ public ]
SFCError RSA(
    VoidConstPtr in     // 暗号化/復号化するデータへのポインタ
    SInt32 available    // 入力データのサイズ( バイト数 )
    VoidHandle out      // 暗号化/復号化されたデータを格納するバッファ
    SInt32Ptr outSize   // 予約する出力サイズ( バイト数 )必ず 0 ( ゼロ )を指定する
    SInt32 reserved     // 0 を設定する
);

戻り値

  • 成功したとき: SFERR_NO_ERROR
  • 失敗したとき: SFERR_FAILED
  • 暗号化/暗号解読鍵が無効なとき: AEE_CRYPT_INVALID_KEY
  • available がモジュラ サイズに等しくないか、または in がモジュラより大きいとき: AEE_CRYPT_INVALID_SIZE

参照

BREW API IRSA_RSA


SFBRSA::VerifySig
署名を検証します。
[ public ]
Void VerifySig(
    VoidConstPtr sig          // 署名を格納するバッファへのポインタ
    SInt32 sigLength          // 署名の長さ
    VoidConstPtr digest       // ダイジェストを格納するバッファへのポインタ
    SInt32 digestLength       // ダイジェストの長さ
    SInt32 type               // AEE_RSA_SIG_ の 1 つ
    UInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // ユーザー定義のコールバック 関数へのポインタ
);
[ public ]
Void VerifySig(
    SFXBufferConstRef sig      // 署名を格納するバッファへのポインタ
    SFXBufferConstRef digest   // ダイジェストを格納するバッファへのポインタ
    SInt32 type                // AEE_RSA_SIG_ の 1 つ
    UInt32Ptr result           // 結果コード
    SFXCallbackPtr callback    // ユーザー定義のコールバック関数へのポインタ
);

参照

BREW API IRSA_VerifySig