問題タブ [smartcard]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
8262 参照

java - Java アプリケーションがカードリーダーからデータを読み取ります

誰かが物理デバイス、特にリーダーと対話する Java アプリケーションを作成したい場合 (たとえば、ホテル、ジム、銀行などに行ってカードをリーダーに渡すと、アプリケーションがデータベースであなたを見つけます)。これはできていますか?
リーダーとやり取りしてカード データを取得するための Java API はありますか?
企業がリーダー (物理デバイス) を作成するとき、関連する API を提供しますか?
物理的な詳細は、アプリケーション プログラマーから抽象化されていますか?
Java でリーダーと対話する必要がありますが、開始方法がわかりません。
どんな入力でも大歓迎です!

ありがとう

0 投票する
4 に答える
30751 参照

c# - C#スマートカードプログラミング

スマートカード用にC#(.NET)でプログラミングを開始するにはどうすればよいですか?最初は、カードリーダー(Omnikeyなど)の名前を知って、それを印刷する必要があります。

答えてくれてありがとう、アレス。

0 投票する
2 に答える
8518 参照

c# - winscard.dll ウォームアップ

まず第一に、正式に私は Java プログラマーであることを明記したいのですが、smardcard (sle4428) を読み書きするプログラムを作成するために、しばらくの間 Visual Studio 2010 Express で C# プログラミングに移行する必要があります。そして、いくつか質問があります。

1)この urlで winscard.dll API に関するドキュメントを見てきましたが、関数の署名にはパラメーターのデータ型はなく、in または out のみです。(Doh) どのタイプを使用する必要があるかを理解する方法はありますか?

2)「Google検索コード」で検索せずに、通信を初期化する方法のコード例がいくつかあります

3) 顧客は基本的な VB コードを提供してくれましたが、C# コンテキストで使用できるものをビルドできますか?

みんな助けてくれてありがとう!!!!

0 投票する
2 に答える
5243 参照

java - PKCS11 トークン (スマートカード) でクライアント認証を行う

サーバー上でスクリプトを呼び出す必要があります(php、jsp-何でも)。ただし、このサーバーはクライアント認証によって保護されています。これで、P12-Keystore を使用して実行できるようになりました。このためのコード:

これはうまくいきます。

しかし、今はスマートカード (PKCS11) を持っているので、これで認証する必要があります。opensc-cryptocard プロバイダーを使用してカードを読み取ります。このサンプル コードはここにあります (行のコメントを参照してください!):

NoSuchAlgorythmException:

問題を確認してください。前もって感謝します...ダニエル

0 投票する
4 に答える
1889 参照

django - Django開発サーバーのスマートカード認証

Django開発サーバーでスマートカードベースの認証を使用したいと思います。これは、私が住んでいる場所で広く受け入れられている認証手段だからです。

Apacheを使用すると、.htaccess認証が必要なディレクトリにファイルを作成することで有効にできます。

そして仮想ホストで:

そして、次のような証明書と失効リストを参照することによって:

Djangoでのテストと開発の目的でこの機能がないのは非常に面倒です。それを設定する方法について何かアイデアはありますか?

編集:マーティン、あなたの答えに感謝します、しかしそれはまだ私が望むところに私を得るのを本当に助けませんでした。とにかく、今私は誰かが質問に答えるための報奨金を開いて、サンプルコードの小さな断片/または何を読むべきか、どこから始めるべきかについてのより明確なものを提供しました。

0 投票する
5 に答える
31272 参照

java - sun.security.pkcs11.SunPKCS11 のアクセス制限

スマートカードにアクセスするために PKCS11 プロバイダーをセットアップしようとしています。システムに PKCS11 ライブラリをインストールし、Java PKCS#11 リファレンス ガイドの指示に従いました。参照では、単にインスタンスを作成しsun.security.pkcs11.SunPKCS11、構成ファイルの名前をコンストラクターに渡します。次のコードをコンパイルしようとすると

次のエラーが表示されます。

アクセス制限: 必要なライブラリー /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/ext/sunpkcs11.jar の制限により、コンストラクター SunPKCS11(String) にアクセスできません

私は何を間違っていますか?Ubuntu x86 で Eclipse 3.5 と Java SE 1.6 を使用しています。

よろしくお願いします。

0 投票する
1 に答える
2115 参照

c - C で SLE4442 メモリ カードにアクセスする - 助けが必要 (RPC_X_BAD_STUB_DATA)

私はスマートカードプログラミングが初めてなので、ご容赦ください..

WinSCard API を使用して、アナグラム的に SLE4442 メモリ カードにアクセスしようとしています。ここから pcscdiag.exe ツールを使用してカードにアクセスすると: http://scm-smartpcscdiag.software.informer.com/ 次の情報が得られます。

T=65535
Clock=372
F=372
D=-
N=0
W=0
IFSD=252
EBC=Longitudinal Redundancy Check
ATR ごとの ICC タイプ=unknown Type

当然、T=0 または T=1 プロトコルを使用してカードにアクセスしようとすると失敗しますが、RAW アクセスで読み取りに接続できます。

今、最初のステップとして、カードの内容を読み取ろうとしています。

また、CLA を 0xFF に設定したり、他のバリアント (CLA と INS の値が 0..255 のネストされたループ) を試したりしました。

1783 エラーが発生し続けます: RPC_X_BAD_STUB_DATA

私は何を間違っていますか?カードを読むにはどうすればいいですか?

前もって感謝します!

0 投票する
1 に答える
6182 参照

smartcard - Omnikey 5325 スマートカード リーダーがカードを認識しないのはなぜですか?

スマートカード リーダー (OMNIKEY 5325 CL USB Prox) を購入し、すべてのドライバーをインストールしましたが、カード (1386 ISOProx II カード) を読み取れません。診断ツールはそれを認識していないようで、SCardTransmit を呼び出すと ERROR_GEN_FAILURE が返されます。このツールは、リソース マネージャーが開始されて実行中であることを示していますが、scardsvr.dll のバージョン番号は示していません。ただN / A。私のカードは間違いなく機能しますが、これには完全に困惑しています。すべてのドライバーとすべてをアンインストールしようとしました。Windows 7 を実行しています。アイデアはありますか?

診断ツールのスクリーンショット

0 投票する
2 に答える
1830 参照

c# - adwapi.dll のピンボーク - cryptDecrypt および cryptEncrypt 関数、奇妙な問題

この関数の奇妙な動作を観察しています。暗号化したい文字列に 14 バイトが含まれています。この関数を使用してバッファの長さ = 14 を送信すると、失敗します (「内部エラー」 - 非常に説明的で最も役立つエラー コード)。ですが、バッファ長 (およびバッファ自体) が 128 バイトの場合に機能します。

サイズが 128 バイトの配列を作成することでこの問題を克服し、(暗号化したい) プレーン テキストから 14 バイトをコピーしました。

これらのバイトを復号化するときは、もう一度関数に 128 バイト配列全体を渡す必要があります (これで、#13 から #127 までのすべてのバイトが暗号化されます (これは当然のことだと思います))。幸いなことに、最初の 14 バイトは正常に復号化され、残りは意味不明です。

着信バッファが 128 バイトではない場合に暗号化メソッドが失敗する理由と、復号化関数にも 128 バイト配列が必要な理由を知りたいのですが、それはパディングですか?

これは、暗号化関数を呼び出す方法です。

// この場合、MyKey は暗号鍵へのポインタ、2 番目の引数は null、3 番目は「true」(これ以上データがない)、フラグなし、バッファ バイト配列 (128)、Testing.Length この場合は 7 、128

これは私がそれを解読する方法です:

結果は次のようになります: Testing?R????7?q?????$??uj??m%?b??e?a?74p?)?n9??w?R*O )え?i?+?>[?S???}Ct?n?&??b?P!?u1??%?JQ???/?mP?5wB????

ほぼ意図したとおりに機能しますが、サブストリングなどのトリックを使用せずに、文字列の「テスト」部分のみを取得できるようにする必要があります。

私がやろうとしていること(おそらく別の方法があるかもしれません)はこれです; SmartCard からエクスポートした証明書から取得した公開鍵で暗号化された「テスト」を含むバイナリ (ファイル) があります。秘密鍵を使用して SmartCard (私はその適切な CSP を使用しています) を使用して、このファイルを検証 (復号化) する必要があります。ご覧のとおり、ほとんど機能します。

前もって感謝します。

0 投票する
2 に答える
4001 参照

c# - スマートカードへの接続

Smart Card Frameworkfor.NETを使用してCryptoTechSCR3310経由でドキュメントに署名しようとしています。2番目の記事(SmartcardFmwk)のデモを使用します。APDUCommandを送信しているときに、次のようなエラーが発生します。

  • 検証用(new APDUCommand(0x00、0x20、0、1、null、0))SW1 = 69 SW2 = 83(認証方法がブロックされています) ErrorNr1
  • ファイル選択用(new APDUCommand(0x00、0xA4、0、0、null、0))[SW = 61 SW2 = 2E] [4] ErrorNr2
  • 応答を取得するため(new APDUCommand(0x00、0xC0、0、0、null、0))SW = 68 00 ErrorNr3

コード:

それらのエラーを取り除くために私は何をすべきですか?カードを別のプログラムでテストしましたが、エラーはありません。

APDUCommandパラメーターが間違っている可能性があります。あなたはどのように思いますか?