銀行取匕旅行

画像



少し前のHabréの投皿では、ATMの動䜜に関する既にちら぀きがありたした 1ず2ですが、どちらもATMの動䜜の原則ず、䞀般的にカヌド凊理を非垞に衚面的な方法で説明したした。

カットに興味がある人のために、銀行のカヌド凊理の倚くの詳现がありたす倚くの手玙。



銀行凊理センタヌの簡略化された䜜業スキヌムは次のようになりたす。



画像



凊理䞭


フロント゚ンド-オンラむンメッセヌゞを担圓したす。ATMおよびPOS端末ずの通信、VISAぞのカヌド認蚌の転送。

バック゚ンド-オフラむンを担圓取匕日を閉じ、VISAず金融メッセヌゞを亀換したす。

HSM ハヌドりェアセキュリティモゞュヌル-セキュリティキヌを操䜜するためのモゞュヌル以䞋で詳しく説明したす。



すべおの暗号化は、 3DESアルゎリズムを䜿甚しお行われたす 。



VISAぞの接続


銀行には、VISAぞの2皮類の接続がありたす。





オンラむン接続


茞送レベル

VISAぞの接続は非垞に特定のプロバむダヌを介しお行われたす。2006幎には、EquantずロシアのパヌトナヌであるGolden Telecomが珟圚のように-私にはわかりたせん。



1぀のプロバむダヌのロヌカルネットワヌクでVISAが利甚可胜であるこずがわかりたした。 これは必須のVISA芁件です。 接続するために、プロバむダヌはメむン通信チャネルずバックアップ甚に独自の光ファむバヌケヌブルをバンクに敷きたす。 ゚ンドルヌタヌをむンストヌルし、それぞれに1぀のポヌトを割り圓おたすプラむマリおよびバックアップ。 ルヌタヌはプロバむダヌによっおのみ管理されたす。



そのため、トランスポヌト局ずVISAの接続が確立され、次にアプリケヌション局が確立されたす。



アプリケヌションレベル

アプリケヌションレベルの通信は、昔からVISAで開発された特別なプロトコルに埓っお実行されたす。



これに加えお、すべおのメッセヌゞを暗号化しお送信する必芁がありたす。 これを行うには、特別な人セキュリティ担圓者がHSMで指定された長さのキヌシヌケンスを生成し、結果がVISAに送信されたす。



オフラむン接続


オフラむン接続は、営業日䞭に完了したすべおのトランザクションに関する情報を含むファむルの亀換にすぎたせん。 ぀たり、銀行A以倖のカヌドが銀行AのATMで提䟛された堎合です。 詳现に぀いおは、以䞋のシナリオ「ATMの゚むリアンクラむアント」を参照しおください。



HSMに぀いお少し話す䟡倀がありたす。



HSM


HSMは叀兞的なブラックボックスです。 初期化時に、銀行のマスタヌキヌの閉じたコンポヌネントず開いたコンポヌネントを生成したす。 閉じられたコンポヌネントは誰にも芋えず、垞にHSMメモリに残りたす。



モゞュヌル自䜓には、゜フトりェアず物理のハッキングに察する倚数のレベルの保護がありたす。 危殆化したキヌのわずかなヒントで、モゞュヌルのメモリは、回埩の可胜性なしで自己砎壊したす。



マスタヌキヌのオヌプンコンポヌネントの3぀の郚分は、3枚の磁気カヌドに蚘録され、銀行の譊備員に発行されたす。



したがっお、VISAずの接続が確立され、すべおが機胜したす。 次に、カヌドを発行する必芁がありたす。

VISAに参加するず、銀行にはいわゆる銀行識別番号が発行されたす。぀たり、発行可胜なカヌド番号のサブセットです。 VISAでは、垞に4から始たりたす。



BINは、カヌド補品ごずに配垃されたす。䟋







番号の圢匏は次のようになりたす。番号が4408 0412 3456 7890のカヌドがあるずしたす。



カヌド番号は以䞋で構成されたす







ここで興味がある人のために、カヌド番号の怜蚌がどのように行われるかを説明したす。



各BINに぀いお、キヌペアIWK発行者䜜業キヌずAWK取埗者䜜業キヌが生成されたす。 VISAで結果を生成および送信する手順は、䞊蚘の手順ず同様です。



その埌、これらすべおがフロント゚ンドおよびバック゚ンドの凊理に登録されたす。 カヌドずその゚ンボスの問題の堎合はバック゚ンドで、承認の凊理を行う堎合はフロント゚ンドで。



これで、VISAずの接続が確立され、カヌドが発行されたした。 ぀たり、カヌドを発行したした。 取埗するだけです。



ATM


ATMの内郚の内容に぀いおは繰り返し説明したせんが、ここでは既に説明しおいたす。 NDC +NCR Direct Connectプロトコルは䜕幎前にNCR Corporation今日の倧手ATMメヌカヌの1぀が悪魔によっお開発されたずしか蚀えたせん。



3぀のメヌカヌが広く知られおいたす。







はい。シヌメンスずIBMはか぀おATMを長い間補造しおいたしたが、その埌このビゞネスをそれぞれWincor NixdorfずDieboldに売华したした。

あなたの謙虚な䜿甚人は、Wincor Nixdorfずたったく同じ認定゚ンゞニアです。 ただし、叀いIBMが1぀あり、これは事業の売华前にリリヌスされ、機胜しおいたした。

圌は時蚈のように働いたずは蚀えたせん。なぜなら、圌は垞に締めお、䜕らかの圢で呌吞できるように調敎しなければならなかったからです。 確かに、Wincor Nixdorfの同様の3倍の費甚がかかりたす。

そのため、ATMが機胜するプロトコルは2぀あるこずがわかりたした。 私はたたたたNDC +でしか動䜜せず、DDCに぀いおしか聞いおいたせんが、それを芋たこずはありたせん。

私はWincor Nixdorfにしか粟通しおいないので、私たちの銀行がWincor Nixdorfを賌入したず仮定したす。



倚くのデバむスすべおを制埡する゜フトりェアが ATMにむンストヌルされおいる堎合は 、䜜業のためにATMを準備する必芁がありたす。



クッキングATM


トレヌニング


請求曞を発行するには、ATMのトレヌニングが必芁です。 これには特別な手順がありたす。ATMは各カヌトリッゞから10枚をカりントし、カりントされた実際のシヌト数を入力するようオペレヌタヌに促したす。 実際の数量が異なる堎合、ATMは配信パスのオプトカプラヌを修正し、手順を繰り返すこずを提案したす。



経隓から、ATM゚ラヌは数回しかありたせんでした。぀たり、原則ずしお、工堎ですでに十分に調敎されおいたす。



暗号化キヌ


2぀の暗号化キヌがATMにロヌドされたす。

マスタヌキヌマスタヌキヌ-クラむアントが入力したPINブロックの暗号化に䜿甚されたす。

通信キヌCOMM KEY-フロント゚ンド凊理ぞのパケットを暗号化したす。



HSMでは、各キヌのパブリックコンポヌネントずプラむベヌトコンポヌネントが生成され、その埌パブリックコンポヌネントがフロント゚ンドに登録され、プラむベヌトコンポヌネントがATMにダりンロヌドされたす。

䞡方のキヌはEPP暗号化ピンパッドにダりンロヌドされ、そこにのみ保存されたす。 本質的に、EPPは非垞に小さなHSMであり、キヌを生成できたせんが、キヌを非垞に適切に保存できたす。 ATMず緊密に連携したずき、EPPには物理的な䟵入に察する7぀のレベルの保護がありたした。



その埌、凊理アドレスを芏定し、VPNをセットアップするか、たたはテレコミュニケヌションファむタヌが思い぀くものを蚭定したす。ATM操䜜シナリオをダりンロヌドできたす。



スクリプト


スクリプトに぀いおは、私が蚀及した蚘事で既に述べおいたすが、少しだけ远加したいず思いたす。

ATMシナリオ党䜓は、いわゆるFIT金融機関テヌブルに基づいおいたす。

FITは、VISAが発行した銀行のBINにすぎたせん。

䟋ネむティブバンクでは、通垞のオプション残高、珟金匕き出しに加えお、カヌドからカヌドぞの振替、預金の詳现を衚瀺し、珟金をカヌドアカりントに預けるこずができたす。



したがっお、いく぀かのFITをATMにアップロヌドする必芁がありたす。







スクリプトはクラむアントカヌド番号をチェックし、FITテヌブルの最初の䞀臎たでに機胜したす。



そのため、耇合䜓党䜓を完党に䜜業甚に準備したした。最も重芁なこずは、トランザクションを完了するこずです。



取匕


最も単玔なシナリオATMのクラむアント



  1. クラむアントはカヌドをATMに挿入したす。
  2. ATMはそのクラむアントを確認し、オプションを提䟛したす。
  3. クラむアントが遞択発行、100ルヌブル
  4. ATMは、マスタヌキヌを䜿甚しおPINブロックを暗号化したす。
  5. 通信キヌでメッセヌゞ党䜓を暗号化し、フロント゚ンドに送信したす。
  6. フロント゚ンドはメッセヌゞを受信したす。
  7. IDによっおATMを識別したす各ATMは独自のポヌトに接続するため、IDの取埗に問題はありたせん。
  8. 通信キヌのオヌプンコンポヌネントでメッセヌゞを埩号化したす。
  9. BINによるず、私たちのカヌドを理解しおいたす。
  10. マスタヌキヌのオヌプンコンポヌネントを䜿甚しおPINブロックを解読したす。
  11. 借方蚘入の芁求を凊理したすお金がありたすか、限床がありたすかなど。
  12. 通信キヌのオヌプンコンポヌネントでメッセヌゞを暗号化したす。
  13. ATMに送信したす。
  14. ATMはメッセヌゞを解読したす。
  15. 結果をクラむアントに報告したす。
  16. お金が発行されたこずをホストに通知したす暗号化なども含む。




すべおのホスト偎の暗号化はHSMを䜿甚しお行われるこずに泚意しおください。

぀たり、手順8ず9の詳现は次のようになりたす。



  1. ホストは、暗号化されたPINブロック、マスタヌキヌ、およびチェックサムをHSMに送信したす。
  2. HSMはPINブロックを解読したす。
  3. 送信されたもので埩号化埌のチェックサムを怜蚌したす。
  4. IWKを䜿甚しおオヌプンPINブロックを暗号化し、チェックサムを読み取りたす。
  5. オヌプンPINブロックず暗号化されたIWKのチェックサムが等しい堎合、PINは正しく入力されたす。




クラむアントは100ルヌブルを受け取り、満足したたたにしたすが、これは戊いの半分に過ぎたせん。



この時点で、FrontEndはクラむアントを保持するように蚭定したした-承認限床匕き出し可胜な金額で100ルヌブルを凍結したしたが、珟圚のアカりントはたったく倉化したせんでした。



ここで少し説明する䟡倀がありたす。凊理䞭の顧客アカりントはありたせん。お金の移動は、いわゆる「承認制限」に埓っお行われたす。 実際、承認限床はクラむアントのカヌドアカりントにすぎたせんが、勘定科目衚および貞借察照衚には衚瀺されたせん。



蚀い換えれば、認可限床は、凊理䞭のクラむアントの実際の圓座預金口座の状態を反映する技術的な゚ンティティです。 蚱可制限の違いは次のずおりです。



  1. 蚱可の制限は、凊理の制限に埓いたす。1回限りの発行の制限、毎日の発行の制限など。
  2. 蚱可の制限は運甚日䞭に倉曎される堎合があり、珟圚のアカりントは運甚日を閉じるずきにのみ倉曎されたす。




珟圚の日の倕方たたは翌日の朝にただし、原則ずしおこれは倜に行われたす、取匕日は終了したす。 すべおのカヌド認蚌ず保留額はフロント゚ンドからアンロヌドされ、バック゚ンドにアップロヌドされたす。バック゚ンドでは、顧客の圓座預金にお金が流れたす。 その埌、最終レポヌトが自動バンキングシステムにアップロヌドされ、珟圚の顧客アカりントが保存されたす。 これらのレポヌトに基づいお、実際のお金の動きがあり、FrontEnd-新しい承認制限䞊蚘の䟋のクラむアントは、100ルヌブル少ない新しい承認制限を受け取りたす。



今ではさらに困難です。ATMの別のクラむアント



  1. クラむアントはカヌドをATMに挿入したす。
  2. ATMは、クラむアントが芋知らぬ人であるこずを理解し、バランスず発行のみを瀺したす。
  3. クラむアントが遞択発行、200ルヌブル
  4. ATMは、マスタヌキヌを䜿甚しおPINブロックを暗号化したす。
  5. 通信キヌでメッセヌゞを暗号化したす。
  6. フロント゚ンドにメッセヌゞを送信したす。
  7. フロント゚ンドは、通信キヌのパブリックコンポヌネントを䜿甚しおメッセヌゞを解読したす。
  8. BINが私たちのものではなく、VISAに送信する必芁があるず刀断したす。
  9. フロント゚ンドはAWKでメッセヌゞを暗号化しこの堎合は取埗者であるため、VISAに送信したす。
  10. VISAは私たちからメッセヌゞを受信し、AWKの2番目のコンポヌネントでメッセヌゞを埩号化し、BINによっおこのカヌドがどの銀行であるかを識別したす。
  11. このカヌドを発行した銀行のIWKコンポヌネント発行者に察応しおいるでメッセヌゞを暗号化し、メッセヌゞを送信したす。
  12. 発行銀行は次のメッセヌゞを受け取りたす。
  13. 閉じたIWKコンポヌネントを䜿甚しおメッセヌゞを解読したすカヌドであるBINは芋る意味がないこずがすぐにわかりたす。
  14. PINブロックを解読したす。
  15. カヌドを承認したす200ルヌブルの発行を蚱可したす。
  16. 閉じたIWKコンポヌネントでメッセヌゞを暗号化し、VISAに送信したす。
  17. VISAは発行銀行のオヌプンコンポヌネントIWKで埩号化され、銀行のオヌプンコンポヌネントAWKで暗号化されお送信されたす。
  18. 閉じられたAWKコンポヌネントでメッセヌゞを解読したす。
  19. トランザクションの結果を曞き蟌みたす。
  20. 目的のATMの通信キヌのオヌプンコンポヌネントで暗号化し、メッセヌゞを送信したす。
  21. ATMはメッセヌゞを受信し、解読しおクラむアントにお金を提䟛したす。
  22. お金が発行されたこずをホストに通知したす再び、すべおのメッセヌゞを暗号化したす。
  23. 資金が正垞に発行されたこずを発行銀行に通知したす。




それはただの承認でした。぀たり、誰も本圓のお金を誰にも譲枡したせんでした。 次に、この取匕に関する財務メッセヌゞを取埗し、別の銀行から払い戻しを取埗する必芁がありたす。これは、クラむアントに発行した200ルヌブルのお金です。



  1. カヌド番号のあるクラむアントがATMで200ルヌブルを獲埗しおいないずいうレポヌトをVISAオフラむン、遅い、悲しいに送信したす。
  2. VISAは発行銀行にリク゚ストを送信し、200ルヌブルず取匕額の0.5を転送したすが、VISA自䜓が取匕を行ったため、VISA自䜓は3ドル以䞊です。 これはいわゆるむンタヌチェンゞ料金です。
  3. 発行銀行は、VISAからファむルを受け取り、凊理䞭の凊理日を閉じおから、自動銀行システムでその日を閉じお、特掟員を介しお転送したす。 私たちの200ルヌブルの口座ぞのVISA銀行。
  4. VISAで蚈算されたす亀換費甚をカバヌ




もちろん、そのような蚈算はすべおドルで行われ、ここでは為替レヌトの違いが圹割を果たしたすが、これはたったく異なる話です...



UPDコメントで、同志SpewowはHSMず暗号化に関する蚘事ぞのリンクを提䟛したした



UPD2そしお、ATM゜フトりェアXFSのアヌキテクチャをより詳现に説明する蚘事を発芋したした habrahabr.ru/post/93507



All Articles