次の方法で共有


ISCardISO7816::InternalAuthenticate メソッド

[ InternalAuthenticate メソッドは、[要件] セクションで指定されたオペレーティング システムで使用できます。 Windows Server 2003 Service Pack 1 (SP1) 以降、Windows Vista、Windows Server 2008、およびそれ以降のバージョンのオペレーティング システムでは使用できません。 スマート カード モジュールも同様の機能を提供します

InternalAuthenticate メソッドは、インターフェイス デバイスから送信されたチャレンジ データと、カードに格納されている関連するシークレット (キーなど) を使用して、カードによる認証データの計算を開始するアプリケーション プロトコル データ ユニット (APDU) コマンドを構築します。

関連するシークレットが MF に接続されている場合、コマンドを使用してカード全体を認証できます。

関連するシークレットが別の DF にアタッチされている場合は、その DF を認証するためにコマンドを使用できます。

構文

HRESULT InternalAuthenticate(
  [in]      BYTE         byAlgorithmRef,
  [in]      BYTE         bySecretRef,
  [in]      LPBYTEBUFFER pChallenge,
  [in]      LONG         lReplyBytes,
  [in, out] LPSCARDCMD   *ppCmd
);

パラメーター

byAlgorithmRef [in]

カード内のアルゴリズムの参照。

この値が 0 の場合、情報が指定されていないことを示します。 アルゴリズムの参照は、コマンドを発行する前にわかっているか、データ フィールドに指定されています。

bySecretRef [in]

シークレットの参照。

説明
情報なし
ビット位置: 00000000
情報は提供されません。 シークレットの参照は、コマンドを発行する前にわかっているか、データ フィールドに指定されています。
Global ref
ビット位置: 0-------
グローバル参照データ (MF 固有のキー)。
特定の参照
ビット位置: 1-------
特定の参照データ (DF 固有のキー)。
Rfu
ビット位置: -xx-----
00 (その他の値は RFU)。
シークレット
ビット位置: ---xxxxx
シークレットの番号。

 

pChallenge [in]

認証関連のデータへのポインター (チャレンジなど)。

lReplyBytes [in]

応答で予想される最大バイト数。

ppCmd [in, out]

入力時に、 ISCardCmd インターフェイス オブジェクトまたは NULL へのポインター。

戻り時には、この操作によって作成された APDU コマンドが入力されます。 ppCmdNULL に設定されている場合は、スマート カードISCardCmd オブジェクトが内部的に作成され、ppCmd ポインターを使用して返されます。

戻り値

メソッドは、次のいずれかの可能な値を返します。

リターン コード 説明
S_OK
操作は正常に完了しました。
E_INVALIDARG
無効なパラメーター。
E_POINTER
不適切なポインターが渡されました。
E_OUTOFMEMORY
メモリが不足しています。

 

解説

コマンドが正常に実行されると、前のコマンド (VERIFY や SELECT FILE など) または選択 (関連するシークレットなど) が正常に完了する可能性があります。

コマンドの発行時にキーとアルゴリズムが現在選択されている場合、コマンドはキーとアルゴリズムを暗黙的に使用できます。

コマンドが発行される回数は、関連するシークレットまたはアルゴリズムを使用する試行回数をさらに制限するために、カードに記録できます。

このインターフェイスによって提供されるすべてのメソッドの一覧については、「 ISCardISO7816」を参照してください。

上記の COM エラー コードに加えて、スマート カード関数が呼び出されて要求を完了した場合、このインターフェイスはスマート カード エラー コードを返す場合があります。 詳細については、「 スマート カードの戻り値」を参照してください。

必要条件

要件
サポートされている最小のクライアント
Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
クライアント サポートの終了
Windows XP
サーバー サポートの終了
Windows Server 2003
ヘッダー
Scardssp.h
タイプ ライブラリ
Scardsrv.tlb
[DLL]
Scardssp.dll
IID
IID_ISCardISO7816は 53B6AA68-3F56-11D0-916B-00AA00C18068 として定義されています

関連項目

ExternalAuthenticate

ISCardISO7816