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

継承図

SFBPubKey クラスの継承図

バージョン

BREW 2.0 BREW 2.1 BREW 3.1 BREW 4.0
× × ×

参照

BREW API IPubKey

メンバ

パブリック関数
Void Decrypt( UInt08ConstPtr inBuf , SInt32 inBufLen , UInt08Ptr outBuf , SInt32Ptr outBufLen , SInt32 padType , SInt32Ptr result , SFXCallbackPtr callback )
このメソッドをコールして、秘密鍵を使用して復号化を実行します。
Void Encrypt( UInt08ConstPtr inBuf , SInt32 inBufLen , UInt08Ptr outBuf , SInt32Ptr outBufLen , SInt32 padType , SInt32Ptr result , SFXCallbackPtr callback )
このメソッドをコールして、秘密鍵を使用して暗号化を実行します。
static
SFBPubKeySmp
NewInstance( SFCErrorPtr exception = null )
SFBPubKey インスタンスを生成します。
static
SFBPubKeySmp
NewInstance( AEECLSID id , SFCErrorPtr exception = null )
SFBPubKey インスタンスを生成します。
Void Sign( UInt08ConstPtr hash , SInt32 hashLen , UInt08Ptr sign , SInt32Ptr signLen , SInt32 padType , SInt32Ptr result , SFXCallbackPtr callback )
このメソッドをコールしてデータにデジタル署名します。
Void Verify( UInt08ConstPtr sign , SInt32 signLen , UInt08Ptr hash , SInt32 hashLen , SInt32 padType , SInt32Ptr result , SFXCallbackPtr callback )
このメソッドをコールして署名を検証します。
SFCError SetParam( SInt32 id , VoidConstPtr data , UInt32 length ) (SFBParameters から継承)
このメソッドはパラメータ値を設定します。
SFCError SetParam( SInt32 id , SFXBufferConstRef data ) (SFBParameters から継承)
このメソッドはパラメータ値を設定します。
SFCError SetParam( SInt32 id , SFXAnsiStringConstRef data ) (SFBParameters から継承)
このメソッドはパラメータ値を設定します。

SFBPubKey::Decrypt
このメソッドをコールして、秘密鍵を使用して復号化を実行します。
[ public ]
Void Decrypt(
    UInt08ConstPtr inBuf      // 暗号解読するデータのバッファへのポインタ
    SInt32 inBufLen           // 入力バッファの長さ
    UInt08Ptr outBuf          // 暗号化されたデータを格納する、コール側が割り当てたバッファを指すポインタ
    SInt32Ptr outBufLen       // 入力時は、出力バッファの長さ。出力時は、データの長さ
    SInt32 padType            // 使用するパディングのタイプ
    SInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // コールバックレコードへのポインタ (非同期操作が完了したときにコールされる)
);

戻り値

これらの戻り値は、result にあります。

  • AEE_SUCCESS: 成功しました。
  • AEE_CRYPT_BUFFER_TOO_SMALL: 出力バッファが小さすぎる。
  • AEE_CRYPT_INVALID_KEY: 秘密鍵が設定されていない。SetParam がコールされなかった。
  • AEE_CRYPT_INVALID_PADTYPE: 指定されたパディングタイプが不正。
  • AEE_CRYPT_PAD_ERROR: 復号化の後に、パディングのデコードに失敗。(おそらく、復号化が間違った鍵で行われたか、復号化に失敗したことを意味する。)
  • AEE_CRYPT_INVALID_SIZE: inBufLen がモジュラサイズに等しくない、または inBuf がモジュラより大きい。
  • AEE_EUNSUPPORTED: 復号化が実装でサポートされていない。
  • AEE_ENOMEMORY: 処理中にメモリー不足になった。
  • IPUBKEY_RAND_SOURCE_ERROR: ランダムデータソースが正しく設定されていなかった。

その他のエラーコードがエンジンから返されることもある。

解説

復号化に使用する鍵は、操作を試みる前に設定されている必要があります。

参照

BREW API IPubKey_Decrypt


SFBPubKey::Encrypt
このメソッドをコールして、秘密鍵を使用して暗号化を実行します。
[ public ]
Void Encrypt(
    UInt08ConstPtr inBuf      // 暗号化するデータのバッファを指すポインタ
    SInt32 inBufLen           // 入力バッファの長さ
    UInt08Ptr outBuf          // 暗号化されたデータを格納する、コール側が割り当てたバッファを指すポインタ
    SInt32Ptr outBufLen       // 入力時は、出力バッファの長さ。出力時は、データの長さ
    SInt32 padType            // 使用するパディングのタイプ
    SInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // コールバックレコードへのポインタ (非同期操作が完了したときにコールされる)
);

戻り値

これらの戻り値は、result にあります。

  • AEE_SUCCESS: 成功しました。
  • AEE_CRYPT_BUFFER_TOO_SMALL: 出力バッファが小さすぎる。
  • AEE_CRYPT_INVALID_PADTYPE: 指定されたパディングタイプが不正。
  • AEE_CRYPT_INVALID_KEY: 公開鍵が設定されていない。
  • AEE_CRYPT_INVALID_SIZE: nInBufLen がモジュラサイズに等しくないか、または pucInBuf がモジュラより大きい (nPadType が IPUBKEY_NO_PADDING の場合)。
  • AEE_EUNSUPPORTED: 暗号化が実装でサポートされていない。
  • AEE_ENOMEMORY: 処理中にメモリー不足になった。
  • IPUBKEY_RAND_SOURCE_ERROR: ランダムデータソースが正しく設定されていなかった。

その他のエラーコードがエンジンから返されることもある。

解説

暗号化に使用する鍵は、このメソッドをコールする前に設定されている必要があります。

参照

BREW API IPubKey_Encrypt


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

SFBPubKey::Sign
このメソッドをコールしてデータにデジタル署名します。
[ public ]
Void Sign(
    UInt08ConstPtr hash       // 署名するハッシュを格納するバッファを指すポインタ
    SInt32 hashLen            // ハッシュの長さ
    UInt08Ptr sign            // 署名を格納するバッファを指すポインタ
    SInt32Ptr signLen         // 署名の長さ
    SInt32 padType            // IPUBKEY_SIG_ の 1 つ
    SInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // コールバックレコードを指すポインタ (非同期操作が完了したときにコールされる)。 NULL も可能 (同期モード)
);

戻り値

これらの戻り値は、result にあります。

  • AEE_SUCCESS: 成功しました。
  • AEE_CRYPT_INVALID_KEY: 秘密鍵が設定されていない。Init がコールされなかった。
  • AEE_CRYPT_BUFFER_TOO_SMALL: 出力バッファが小さすぎる。
  • AEE_CRYPT_INVALID_PADTYPE: 指定されたパディングタイプが不正。
  • AEE_CRYPT_INVALID_SIZE: cbIn がモジュラサイズと等しくない。
  • AEE_EUNSUPPORTED: 署名が実装でサポートされていない。
  • AEE_ENOMEMORY: 処理中にメモリー不足になった。
  • IPUBKEY_RAND_SOURCE_ERROR: ランダムデータソースが正しく設定されていなかった。

-- その他のエラーコードがエンジンから返されることもある。

解説

署名に使用する鍵は、操作を試みる前に設定されている必要があります。

参照

BREW API IPubKey_Sign


SFBPubKey::Verify
このメソッドをコールして署名を検証します。
[ public ]
Void Verify(
    UInt08ConstPtr sign       // 署名を格納するバッファを指すポインタ
    SInt32 signLen            // 署名の長さ
    UInt08Ptr hash            // ダイジェストを格納するバッファを指すポインタ
    SInt32 hashLen            // ダイジェストの長さ
    SInt32 padType            // IPUBKEY_SIG_ の 1 つ
    SInt32Ptr result          // 結果コード
    SFXCallbackPtr callback   // コールバックレコードを指すポインタ (非同期操作が完了したときにコールされる)。 NULL も可能 (同期モード)
);

戻り値

これらの戻り値は、result にあります。

  • AEE_SUCCESS: 成功しました。
  • AEE_CRYPT_INVALID_KEY: 公開鍵が設定されていない。Init がコールされなかった。
  • AEE_CRYPT_INVALID_PADTYPE: 指定されたパディングタイプが不正。
  • AEE_CRYPT_ROLLBACKATTACK: SSL パディングのデコード中。
  • AEESIG_INVALID: 署名の検証に失敗。
  • AEE_CRYPT_PAD_ERROR: 復号化の後に、パディングのデコードに失敗。 (おそらく、復号化が間違った鍵で行われたか、復号化に失敗したことを意味する。)
  • AEE_CRYPT_INVALID_SIZE: nSigLen がモジュラサイズと等しくない。
  • AEE_EUNSUPPORTED: 検証が実装でサポートされていない。
  • AEE_ENOMEMORY: 処理中にメモリー不足になった。
  • AEE_EITEMBUSY: インタフェースが以前のコールを完了中でビジーか、エンジンにコールをサーブするのに十分なリソースがない。
  • IPUBKEY_RAND_SOURCE_ERROR: ランダムデータソースが正しく設定されていなかった。

その他のエラーコードがエンジンから返されることもある。

解説

検証に使用する鍵は、操作を試みる前に設定されている必要があります。

参照

BREW API IPubKey_Verify