Integrated当ウェブサイトを利用することによりクッキーの使用に同意したことになります。このアプリケーションノートでは、磁気ストライプカードの読取りと復号化をDS5250セキュアマイクロコントローラ上で簡単に実行する方法について説明します。この記事は、磁気ストライプカードの読取り機能と、セキュアマイクロコントローラの高度なセキュリティ機能および暗号機能を兼ね備えたアプリケーションの開発方法についても実証します。この例では、磁気ストライプカードリーダとのインタフェース接続にDS5250の評価(EV)キットを使用しています。掲載するソースコードは、他の8051ベースのマキシムマイクロコントローラに簡単に移植することが可能です。裏面に磁気符号化ストライプを備えたカードは、通常、磁気ストライプカードと呼ばれ、数多くの銀行業務やストアドバリューなどの金融アプリケーションで広く使用されています。一般的にクレジットカード、ATMカード、およびデビットカードはすべて磁気ストライプカードですが、スマートカードチップが埋め込まれているものもあります。ゲーム、コピー機、および公的輸送で使われる数多くのギフトカード、セキュリティまたはルームキーカード、ストアドバリューカードなども例に挙げられます。これらの磁気ストライプカードは、標準ISOフォーマットを使用したときの最大容量が約160バイトで、通常は大量データを保存しません。スマートカードや携帯型のフラッシュメモリドライブと違って、磁気ストライプカードの記憶容量は、カードの一般的な使用目的である金融や銀行業務のアプリケーションでは十分な容量です。磁気ストライプカードは丈夫で安価であり、内部電源が不要で、比較的読取りが簡単です。このアプリケーションノートでは、DS5250セキュアマイクロコントローラを使用して磁気ストライプカードリーダにインタフェース接続する方法について説明します。(POS)端末など、磁気ストライプカードを読み取る一般的なデバイスを構築するのに必要な重要なセキュリティ機能と暗号化機能を備えているからです。磁気ストライプカードリーダには、磁気ストライブ上の磁束をビット列に復号するという低レベルのタスクを実行するための回路が内蔵されています。DS5250はこれらのビットを文字に変換してから、データフィールドを読み取って検証するという高レベルのタスクを処理します。ハードウェアとソフトウェアの要件ハードウェアこのサンプルアプリケーションでは、DS5250の評価(EV)キットを以下のように改造して使用しています。ポート0ピン用のプルアップ抵抗パック(RN2)を取り外すこのサンプルアプリケーションでは、以下のハードウェアも必要です。G以降(www.magtek.com)2つのプルアップ抵抗(約10kΩ)リニアレギュレータ(5Vの電源から3V~3.6Vを出力可能なもの)テスト用の磁気ストライプカード(ATMカードやクレジットカードなど)これらの磁気ストライプカードの詳細については、以下のMagTekリンクを使用してください。IDEバージョン2.40aを使用してコンパイルしました(www.keil.com/)。マキシムのマイクロコントローラツールキット(MTK)を使用して、コンパイル済みのアプリケーションをDS5250にロードしました。以下の項では、サンプルアプリケーションの実装について説明します。Cコードの完全なサンプルは、マキシムのFTPサイトからダウンロード可能です。5つのインタフェースピンがあります。1—STROBEこの信号は、常にカードリーダへの入力です。これはマスタマイクロコントローラによって駆動され、カードビットを同期出力し、リセットシーケンスをアサートします。2—DATAこの信号は通常、カードリーダが出力として使用します。この信号はトラックA/B/Cからのカードデータビットを保持します。これらのデータビットはSTROBE信号によって同期出力されます。特定の状況下では(リセットシーケンスのアサート時など)、この信号はマスタマイクロコントローラによって駆動可能です。3—VDDカードリーダに電力を供給します(2.7V~3.6V)。4—GNDピン5—GNDSTROBEとDATAピンは3Vのレベルで動作するため、DS5250はこれらのピンを標準ポートのピンでじかに駆動することができません。したがって、代わりにポート0のピン(オープンドレインモードで動作)が使用されます。ピンがDS5250によってトライステートに調整されると、抵抗は信号レベルを3.6Vにプルアップします。DS5250はDATA信号をDATAラインからじかに読み取ります。DS5250のポートピンの最小VIHレベルは3VのI/Oレベルに適合するほど十分に低いからです(詳細については、DS5250データシートを参照してください)。カードリーダは3Vのレベルで動作するため、DS5250が使用する5Vの電源からじかに動作することはできません。EVキットは3Vの電源を供給しないため、別途リニアレギュレータ(MAX1658など)を使用してカードリーダに電源を供給します。図1を参照してください。最初の電源投入の後、マスタマイクロコントローラがカードリーダをリセットして初めて、カードのスキャンが可能になります。このリセットシーケンスは、各カードスキャンの後にも行う必要があります。これは、カードリーダ内部のASICメモリを消去するため、およびカードリーダ側で新しいカードスキャンを受け入れる準備を整えるためです。カードリーダをリセットするには、マスタマイクロコントローラ(このアプリケーションではDS5250)が、以下のシーケンスにてSTROBEとDATAを駆動する必要があります(正確な電圧レベルとタイミングパラメータについては、MagTekのドキュメントを参照してください)。DATAとSTROBEの両方をハイ(アイドル)状態で開始します。DATAをローにします。DATAをローのままにして、STROBEをローにしてから再びハイに駆動します。STROBEを再びローにして、次にDATAを解放すると、DATAがフロート状態のハイになります。DATAをフロート状態のハイのまま、STROBEをローにしてから再びハイに駆動します。この時点でカードリーダはリセットされ、低電力待機状態に入ります。STROBEをローにしてから再びハイに駆動します。この動作によって、カードリーダは「起動」し、カードスキャンを受け入れる準備が整います。strobeLow();}カードスキャンの検出カードリーダのリセットと起動が完了すると、カードスキャンの準備が整います。MagTekカードリーダは、スキャンするときにカードの読取りサイクル全体を実行します。したがってマスタマイクロコントローラからの介入は不要です。カードストライプ上のトラックA、トラックB、トラックCという3つのすべてのトラックの内容全体がカードリーダICに保存されます。カードの読取りサイクルが完了すると、このデータはマスタマイクロコントローラによって一度に1ビットずつ同期出力することができます。カードリーダはハンドシェイクサイクルを経て、マスタにカード読取りの開始と完了を伝えます。サイクルは、STROBEがロー、DATAがフロート状態のハイ(アイドル状態)で始まります。磁気ストライプがリーダヘッドを通過したことをカードリーダが検出すると、カードのスキャンを開始します。カードリーダはDATAラインをローに駆動し、マスタにカードスキャンの開始を伝えます。マスタは、STROBEをハイにしてから再びローに駆動することによって応答します。カードリーダは、再びDATAをハイに駆動します。カード読取りサイクルが完了すると、カードリーダは再びDATAをローに駆動します。この動作は、マスタに、カードスキャンが完了し、カードデータの同期出力の準備が整ったことを伝えます。complete.カードデータの読取りと復号化カードスキャンが完了し、カードリーダのASICによってすべてのカードデータが復号されて保存された後、カードリーダはDATAラインをローに駆動します。上述のとおり、この動作は、カードデータの同期出力の準備が整ったことをDS5250に知らせます。この時点で、DS5250は、各ビットの同期出力のたびにSTROBEをハイにしてからローに駆動することによって、カードデータ内の各ビットを逐次取り出すことができます。STROBEをハイにしてからローに駆動した後、次のビットがカードリーダASICによってDATAライン上に同期出力されます。ASICは、DATAの0ビットについてはハイに駆動し、1ビットについてはローに駆動します。}}カードリーダから同期出力される最初の16ビットは、カードリーダASICのバーションを示す「プリアンブル」です。これらのビットはカードデータを表すものではないため、アプリケーションによって削除可能です。トラックAの変換16ビットのプリアンブルの後、DATAライン上で同期出力される次の704ビットには、磁気ストライプカード上のトラックAから読み取られたデータが含まれます。標準ISOフォーマットを使用して符号化すると、トラックAには、英数字と他の各種記号を含む7ビットの文字セットを使用して最大76文字が格納されます。7ビットの文字はそれぞれ、最下位ビット(LSB)から同期出力されます。最上位ビット(7番目のビット)は、カードデータの完全性を検証するために任意で使用可能なパリティビットです。パリティビットを無視すると、残りの6ビットが、トラックA上で符号化可能な64文字の1つを定義します。000000bはスペース文字に、000001bは感嘆符に相当します。char7bit[64]文字配列を以下のコードに示します。}トラックAに保持される実際のデータは、カードタイプによって異なります。トラックAにはさらに、アルファベット文字も含まれます。このため、トラックAは、カード所持者の名前、場合によっては住所、アカウント番号、およびその他の数値情報を保存するのによく使用されます。上記のコードが示すように、トラックBデータの同期出力の前に、トラックAメモリの704ビットのすべてを読み取る必要があります(ただし、ビットのすべてに符号化データが含まれるわけではありません)。トラックBの変換トラックBはトラックAと同様に符号化されますが、文字の符号化が7ビットでなく、5ビット(4ビットプラス1ビットのパリティビット)であるという点のみが違います。トラックBの文字セットには、以下のchar5bit[16]文字配列に示すとおり、数字と記号のみが含まれます。printf("\r\n\r\n");トラックAの末尾と同様、トラックBメモリからの残りビットはすべて、トラックCの読取りに進む前に読み取る必要があります(トラックCを所望する場合)。5ビット)、トラックCデータにアクセスすることができるようにするには、その前にさらに504ビットを同期出力する必要があります。トラックCの変換トラックCはトラックBと同じ方法で符号化され、同じ文字セットを使用し、7ビットの最大107文字を符号化します。トラックCはもともと、オフラインの金融取引をサポートするために上書き可能なデータエリアを含むことを意図していましたが、通常は使用されません。大部分の磁気ストライプカードでは、トラックCに符号化データは含まれません。磁気ストライプカードは、金融、アクセス制御、行政機関、およびストアドバリューなどの広範囲なアプリケーションで使用されています。DS5250のEVキットに簡単なMagTekカードスキャンリーダと、少しの補助用ハードウェアを追加することによって、磁気ストライプカード読取り機能と、セキュアマイクロコントローラの高度なセキュリティ技術および暗号化技術を併せ持ったアプリケーションの開発が可能です。Cコンパイラを使用することによって、磁気ストライプカードの読取りと復号化を実証するアプリケーションをDS5250セキュアマイクロコントローラ上に簡単に実装することができます。よって管理されています。データシートやユーザガイドなどのDS5250のドキュメントにアクセスするには、秘密保持契約(NDA)が必要です。このアプリケーションノートとソースコードは自由に利用可能であり、他の8051ベースのマキシムマイクロコントローラに容易に移植可能です。EE-Mail配信の登録申し込みをして、興味のある分野の最新ドキュメントに関する自動通知を受け取る。Inc.このウェブサイトのコンテンツは米国および各国の著作権法によって保護されています。お問い合わせください。totalPrice.value}}保存して後で見る​削除{{else}}購入カートには何も入っていません。無料サンプル​削除{{else}}サンプルカートには何も入っていません。{{else}}購入カートには何も入っていません。注文履歴を見るサンプルカートには何も入っていません。注文履歴を見る{{/each}}×ブックマークブックマークを利用するにはログインが必要です。MAXIMお知らせツールをクリックおよびドラッグしてダッシュボードをカスタマイズすることができます。>ご質問/ご意見をお寄せください。見積もり請求をご検討くださいx注意お客様のアカウントに制限がかけられているためご注文をお受けすることができません。カスタマーサポートまでご連絡ください。申し訳ありませんが、このサイトではビジネス/教育と関係のないEメールアドレスからのサンプル請求は受け付けておりません。マキシムの代理店マキシムにご興味をお持ちいただきどうもありがとうございます。x注意マキシム・インテグレーテッドにご興味をお持ちいただきどうもありがとうございます。マキシムの無料サンプルプログラムは、暦年につきお客様に提供できる数量を限らせていただいております。誤ってこのメッセージをお受け取りになった場合はsamples-admin@maximintegrated.comまでご連絡ください。distributorData.coreStaff.stockValue}}{{distributorData.coreStaff.stockValue}}{{/if}}価格は代理店のサイトにあります。製品IDを選択して、はじめてください。閉じるお客様の見積もり請求にお応えするためには以下情報が必要です。できるだけ詳しくお答えください。見積もり請求を送信キャンセルお客様の見積もり請求が送信されました。価格と入手性について24時間以内にお答えします。全カテゴリ最近行った。