セキュリティの概要   

国際的なオンライン決済サービスを提供する会社として、私たちOmiseはパートナーのセキュリティを最優先事項と考えています。 

HTTPS/TLS

Omiseでは、カード情報はTLS暗号化され、エンドユーザーが閲覧しているブラウザからOmiseサーバー(加盟店がPCI-DSSに準拠している場合は加盟店サーバーを経由しても問題ない)に送信されます。 また、SSL 3.0の脆弱性に配慮し、同プロトコルは無効とし、ロードバランサの許可は行っていません。アプリケーションサーバー、ロードバランサ、プロキシ、およびデータベース間のすべての通信が、SSL / TLS暗号化されており、PCI-DSS ver. 3.2完全準拠、ならびにTLS ver.1.2以上の接続のみ対応という高セキュリティを担保しています。  

Omiseサーバーは、APIの使用に際して、HTTPS / TLS接続のみを承認しています。これはOmiseのダッシュボードインターフェースでも有効になっています。

SSL Labsのテストページから実装した場合の結果をご覧いただけます。www.ssllabs.com/ssltest/analyze.html?d=api.omise.co

暗号化

Omiseでは、最新の標準として認定されている秘密鍵暗号化技術(AES-256)を利用してお客様のカード情報を保護しています。AES-256では、鍵長(256ビット)とハッシュ値(14)により、第三者によるカード情報の解読を防ぎます。また、機密データは暗号化されたデータベース上で保管され、Omiseの社員もアクセスが禁止されている高セキュリティな環境を維持しています。すべての機密データは、暗号化されたデータベースに格納されています。このデータベースは非常に安全度の高い環境で保護されております。

カード情報のデータの復号化はOmiseのアプリケーションによってのみ可能です。これは決済のためにカードの情報がカード会社に送られた際に実行されます。

PCI コンプライアンス 

Omise Paymentは国際セキュリティ基準PCI-DSS Version 3.2に完全準拠したオンライン決済サービスです。認定を保持するため、毎年PCI(Payment Card Industry)による監査を実施しています。この認定により、Omiseで扱われるカード情報が安全な環境で処理、保存、送信されていること、またOmiseがこの国際基準の要件に確実に準拠していることが保証されています。

Visaのサービスプロバイダのグローバルレジストリを参照することで、弊社の安全性の保証の有効性を確認することができます。また、PCI-DSSの詳細については、www.pcisecuritystandards.org/pci_securityを参照ください。

カードデータの送信

お客様が加盟店ウェブサイト/モバイルアプリの支払い画面上で入力したカード情報は、Omise.jsがお客様の閲覧ブラウザからHTTPS(TLS)通信チャネルを通してOmiseサーバへ直接送信します。Omiseは、受信したカード情報をトークン化し、お客様の閲覧ブラウザへ返します。加盟店サーバーは、このトークンを使い、課金を作成、またはCustomerオブジェクトに紐付けて保存します。

注:Omise Paymentでは、すべてのクレジットカード情報をトークン化した上で処理しています。

処理中のカード

加盟店から受け取った課金リクエストは、Omise Paymentシステムを経由し、カード会社に接続されます。これからご説明するカード決済処理の手順は、初めて使用するカードか、もしくは以前に使用したことがあり、カード情報がOmiseサーバに保管されているかどうかにより異なります。

シナリオ1:初めて使用するカードでの課金

まず、クレジットカードの最小課金額(円)でCVV(セキュリティコード)の有効性を確認します。問題がなければ、確認用の課金は取り消され、カード情報が保管されます。この時、取引内容に不正の疑いがないか、不正検知分野の専門パートナー企業数社のアルゴリズムを用いて自動検知を実行します。国際セキュリティ基準PCIの規定に従い、CVVはカード会社との有効性確認にのみ使用され、Omiseサーバー上で保管されることは一切ございません。

シナリオ2:Omiseサーバー上に保存されているカードでの課金

過去に使用されたカードをCustomerオブジェクトと紐付けて保管してある場合、該当カードでの課金は既にCVV有効性確認・不正検知が済んでいるため、データを復号化した後カード会社へ電送され、処理が実行されます。

なお、クレジットカードの紛失・盗難などの理由によりカード情報が破棄されている場合、またはカード与信枠の残高が不足している場合は、処理を完了することができませんのでご注意ください。

カード情報の保管

支払い画面に入力されたカード情報は、閲覧ブラウザからセキュアHTTPS(TLS)通信を経由し直接Omiseサーバーへ送られます。加盟店が、お客様のクレジットカード情報を閲覧したり、保持したりすることはできません。 カード情報はAES-265という最高レベルの暗号化技術 を利用してOmiseが暗号化したのち、非常に安全度の高い環境で保護されているデータベースに保存されます

データ暗号の解読は決済を実行する際にカード会社へカードデータを送信する時にのみ実行されます。

トークン

トークン は、クレジットカード向けトランスポート層として使用されます。https://www.omise.co/ja/tokens-apiをご参照ください。トークンは、個々のカードに1対1で割り振られており、カードが必要とされる場合は全てトークンIDを使用することが可能です。トークンは、加盟店様のみが知る秘密鍵が必要であるため、クレジットカードデータよりもはるかに安全です。

トークンのライフサイクル:

  • まず初めに、お客様がはブラウザにクレジットカードの情報を入力します。
  • クレジットカード情報は、ブラウザからOmiseサーバーに直接送信されます。 
  • カード情報はトークン化されて返されます。
  • トークンは、顧客のブラウザから加盟店のサーバーに送信されます。
  • その後、お客様へ課金するためトークンをOmiseに送信します。

:
クレジットカード: 4242-4242-4242-4242, Joe Doe, 10/2020
Omise トークン: tokn_51rcpwcdbe2etrgydpb

トークン は1度使用すると無効化される性質があるため、カード情報を保管しておきたい場合は、Customerオブジェクト (顧客ID)にCard IDとして紐付けておくと便利です。例えば、月額課金や、登録カードを選択してワンクリック決済をする際に活用いただけます。 詳細は、 Omise.jsのドキュメントを参照ください。

注意:カード情報を暗号化し安全に処理するには、加盟店のウェブサイト/アプリケーションに Omise.jsのJavaScriptライブラリを組み込む必要があります。加盟店自身がPCI-DSSに準拠している場合を除き、加盟店サーバーへ直接カード情報を受け取らないようくれぐれもご注意ください。 加盟店サーバー上に生のカード情報が残ってしまうと、不正取引被害のリスクが高めます。不正発生率が高いアカウントは一時的あるいは恒久的にサービスのご利用を停止させていただく恐れがございます。

関連記事:
不正行為の防止

Omise PCI-DSSの証明書の閲覧はできますか?