JP6768960B2 - 2次元バーコード処理方法、デバイス、およびシステム - Google Patents

2次元バーコード処理方法、デバイス、およびシステム Download PDF

Info

Publication number
JP6768960B2
JP6768960B2 JP2019532002A JP2019532002A JP6768960B2 JP 6768960 B2 JP6768960 B2 JP 6768960B2 JP 2019532002 A JP2019532002 A JP 2019532002A JP 2019532002 A JP2019532002 A JP 2019532002A JP 6768960 B2 JP6768960 B2 JP 6768960B2
Authority
JP
Japan
Prior art keywords
server
credential
client software
electronic
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019532002A
Other languages
English (en)
Other versions
JP2020502674A5 (ja
JP2020502674A (ja
Inventor
リンナン・シェン
ゲ・チェン
ヤンフイ・リュウ
フイフェン・ジン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2020502674A publication Critical patent/JP2020502674A/ja
Publication of JP2020502674A5 publication Critical patent/JP2020502674A5/ja
Application granted granted Critical
Publication of JP6768960B2 publication Critical patent/JP6768960B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/08Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code using markings of different kinds or more than one marking of the same kind in the same record carrier, e.g. one marking being sensed by optical and the other by magnetic means
    • G06K19/10Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code using markings of different kinds or more than one marking of the same kind in the same record carrier, e.g. one marking being sensed by optical and the other by magnetic means at least one kind of marking being used for authentication, e.g. of credit or identity cards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/108Network architectures or network communication protocols for network security for controlling access to devices or network resources when the policy decisions are valid for a limited amount of time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、情報処理技術の分野に関し、詳細には、2次元バーコードを処理する方法、装置、およびシステムに関する。
現在、日常の仕事および生活において、いくつかの資格証明書検証用途シナリオ、例えば、身分証明書、銀行カード、バスチケット、コンサートチケット、およびアクセス制御カードが存在する。いくつかの用途シナリオにおいて、資格証明書検証は、特定のエンティティ、例えば、バスチケット、コンサートチケット、およびアクセス制御カードを使用することによって完了する必要があるだけである。比較的高いセキュリティ要件を有するいくつかの資格証明書検証シナリオでは、検証を完了するために特定のエンティティおよび個人情報、例えば、銀行カードおよび自宅/会社指紋アクセスが一緒に使用される必要がある。
実際には、特定のエンティティを使用することによって完了する必要があるだけである資格証明書検証を伴う用途シナリオでは、資格証明書検証は、対応する特定のエンティティを取得することによって完了され得る。例えば、ユーザは、チケット窓口から紙のバスチケットまたは紙のコンサートチケットを購入することができ、チケットバリアにおいて検証が完了した後にバスに乗るかまたはコンサートに行くことができる。この検証は、特定のエンティティ(バスチケットまたはコンサートチケット)に依存し、特定のエンティティを運ぶことをユーザに要求する。しかしながら、特定のエンティティが紛失または破損された場合、特定のエンティティの登録を抹消または後登録するプロセスは、複雑である。
比較的高いセキュリティ要件を有する用途シナリオでは、追加のセキュリティ認証補助デバイス、例えば、セキュアキーボードまたは指紋認証デバイスによってセキュリティが保証され得る。そのため、使用コストが増加する。この方法は、個人情報の漏洩を防ぐことができるが、個人情報の漏洩の脅威が依然として存在する。
前述の2つの用途シナリオの両方において、資格証明書検証が比較的低いセキュリティではあまり便利ではなく、資格証明書発行者のコストが比較的高いという問題がある。以前の問題を軽減するために、既存の技術におけるユーザは、電子資格証明書をオンラインで購入することができる。一連のランダムコードが電子資格証明書内に記録され、資格証明書検証中、電子資格証明書内のランダムコードを検証することによって検証が完了され得、それによって、資格証明書検証の利便性およびセキュリティを改善し、資格証明書発行者の発行コストを削減する。しかしながら、電子資格証明書においては静的なランダムコードが使用され、電子資格証明書が写真撮影によってコピーまたは盗難された場合、電子資格証明書のセキュリティが保証され得ない。
これを考慮して、本発明は、2次元バーコードを処理する方法、装置、およびシステムを提供し、電子資格証明書が静的なランダムコードに基づいて生成され、電子資格証明書が写真撮影によってコピーまたは盗難されると電子資格証明書のセキュリティが保証され得ないという既存の技術の問題を軽減することを主に目的とする。
本発明の第1の態様によれば、本発明は、2次元バーコードを処理する方法であって、以下、すなわち、サーバによって、クライアントソフトウェアによって送信された電子資格証明書取得要求を受信するステップであって、電子資格証明書取得要求がユーザ識別子を含む、ステップと、ユーザ識別子に対応する電子資格証明書を取得し、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名するステップと、資格証明書検証エンドデバイスが2次元バーコード内に含まれる電子資格証明書を検証するように、クライアントソフトウェアがサーバ署名情報を検証し、電子資格証明書に基づいて2次元バーコードを生成するように、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信するステップであって、資格証明書検証エンドデバイスがユーザ識別子に基づいて電子資格証明書を生成するように構成される、ステップとを含む方法を提供する。
本発明の第2の態様によれば、本発明は、2次元バーコードを処理する方法であって、以下、すなわち、クライアントソフトウェアによって、サーバによって送信されたサーバ署名情報および電子資格証明書を受信するステップであって、サーバ署名情報が、サーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名することによってサーバによって取得される、ステップと、電子資格証明書を取得するためにサーバ署名情報を検証するステップと、ユーザ公開鍵に対応するユーザ鍵を取得し、クライアントソフトウェア署名情報を取得するためにユーザ鍵を使用することによって電子資格証明書に署名するステップと、資格証明書検証エンドデバイスが所定のセキュリティ情報およびユーザ公開鍵に基づいて2次元バーコード内に含まれる電子資格証明書を検証するように、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成するステップであって、所定のセキュリティ情報が有効期間を有し、資格証明書検証エンドデバイスがユーザ識別子に基づいて電子資格証明書を生成するように構成される、ステップとを含む方法を提供する。
本発明の第3の態様によれば、本発明は、2次元バーコードを処理する方法であって、以下、すなわち、資格証明書検証エンドデバイスによって、クライアントソフトウェア内の2次元バーコードを取得するステップであって、2次元バーコードが、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいてクライアントソフトウェアによって生成され、クライアントソフトウェア署名情報が、電子資格証明書に署名することによってクライアントソフトウェアによって取得され、サーバ署名情報が、電子資格証明書およびユーザ公開鍵に署名することによってサーバによって取得される、ステップと、所定のセキュリティ情報の有効期間を検証し、クライアントソフトウェア署名情報およびサーバ署名情報を検証するステップと、所定のセキュリティ情報、クライアントソフトウェア署名情報、およびサーバ署名情報の各々に対する検証が成功した場合、検証のために電子資格証明書内に含まれるサービス有効時間を取得するステップと、電子資格証明書内に含まれるサービス有効時間に対する検証が成功した場合、電子資格証明書に対する検証が成功したと判定するステップとを含む方法を提供する。
本発明の第4の態様によれば、本発明は、以下、すなわち、クライアントソフトウェアによって送信された電子資格証明書取得要求を受信するように構成される受信ユニットであって、電子資格証明書取得要求がユーザ識別子を含む、受信ユニットと、受信ユニットによって受信されるユーザ識別子に対応する電子資格証明書を取得するように構成される第1の取得ユニットと、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名するように構成される署名ユニットと、資格証明書検証エンドデバイスが2次元バーコード内に含まれる電子資格証明書を検証するように、クライアントソフトウェアが、ユーザ鍵の有効時間内にサーバ署名情報を検証し、電子資格証明書に基づいて2次元バーコードを生成するように、署名ユニットによって取得されるサーバ署名情報、および第1の取得ユニットによって取得される電子資格証明書をクライアントソフトウェアに送信するように構成される送信ユニットであって、資格証明書検証エンドデバイスがユーザ識別子に基づいて電子資格証明書を生成するように構成される、送信ユニットとを含むサーバを提供する。
本発明の第5の態様によれば、本発明は、以下、すなわち、サーバによって送信されたサーバ署名情報および電子資格証明書を受信するように構成される第1の受信ユニットであって、サーバ署名情報が、サーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名することによってサーバによって取得される、第1の受信ユニットと、電子資格証明書を取得するためにサーバ署名情報を検証するように構成される署名検証ユニットと、ユーザ公開鍵に対応するユーザ鍵を取得するように構成される取得ユニットと、クライアントソフトウェア署名情報を取得するために、取得ユニットによって取得されるユーザ鍵を使用することによって電子資格証明書に署名するように構成される署名ユニットと、資格証明書検証エンドデバイスが、所定のセキュリティ情報およびユーザ公開鍵に基づいて2次元バーコード内に含まれる電子資格証明書を検証するように、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成するように構成される生成ユニットであって、所定のセキュリティ情報が有効期間を有し、資格証明書検証エンドデバイスが、ユーザ識別子に基づいて電子資格証明書を生成するように構成される、生成ユニットとを含むクライアントソフトウェアを提供する。
本発明の第6の態様によれば、本発明は、以下、すなわち、クライアントソフトウェア内の2次元バーコードを取得するように構成される第1の取得ユニットであって、2次元バーコードが、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいてクライアントソフトウェアによって生成され、クライアントソフトウェア署名情報が、電子資格証明書に署名することによってクライアントソフトウェアによって取得され、サーバ署名情報が、電子資格証明書およびユーザ公開鍵に署名することによってサーバによって取得される、第1の取得ユニットと、第1の取得ユニットによって取得される所定のセキュリティ情報の有効期間を検証するように構成される第1の検証ユニットと、クライアントソフトウェア署名情報およびサーバ署名情報を検証するように構成される第2の検証ユニットと、所定のセキュリティ情報に対する第1の検証ユニットの検証が成功し、クライアントソフトウェア署名情報およびサーバ署名情報の各々に対する第2の検証ユニットの検証が成功したときに、検証のために電子資格証明書内に含まれるサービス有効時間を取得するように構成される第3の検証ユニットと、電子資格証明書内に含まれるサービス有効時間に対する第3の検証ユニットの検証が成功したときに電子資格証明書に対する検証が成功したと判定するように構成される判定ユニットとを含む資格証明書検証エンドデバイスを提供する。
本発明の第7の態様によれば、本発明は、2次元バーコードを処理するシステムを提供し、システムは、以下、すなわち、電子資格証明書取得要求をサーバに送信するように構成されるクライアントソフトウェアであって、電子資格証明書取得要求がユーザ識別子を含む、クライアントソフトウェアと、クライアントソフトウェアによって送信される電子資格証明書取得要求を受信し、ユーザ識別子に基づいて資格証明書検証エンドデバイスから電子資格証明書を取得するように構成されるサーバと、サーバによって送信される電子資格証明書を取得するための要求情報を受信してそれに応答し、電子資格証明書をサーバに送信するように構成される資格証明書検証エンドデバイスとを含み、サーバが、資格証明書検証エンドデバイスによって送信される電子資格証明書を受信し、サーバ署名情報を取得するために電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名し、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信するようにさらに構成され、クライアントソフトウェアが、サーバによって送信されたサーバ署名情報および電子資格証明書を受信し、電子資格証明書を取得するためにサーバ署名情報を検証し、ユーザ公開鍵に対応するユーザ鍵を取得し、クライアントソフトウェア署名情報を取得するためにユーザ鍵を使用することによって電子資格証明書に署名し、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成するように構成され、資格証明書検証エンドデバイスが、クライアントソフトウェア内の2次元バーコードを取得し、所定のセキュリティ情報の有効期間を検証し、クライアントソフトウェア署名情報およびサーバ署名情報を検証し、所定のセキュリティ情報、クライアントソフトウェア署名情報、およびサーバ署名情報の各々に対する検証が成功した場合、検証のために電子資格証明書内に含まれるサービス有効時間を取得し、電子資格証明書内に含まれるサービス有効時間に対する検証が成功した場合、電子資格証明書に対する検証が成功したと判定するように構成される。
前述の技術的解決策によれば、そして本発明において提供される2次元バーコードを処理する方法、装置、およびシステムによれば、クライアントソフトウェアによって送信される電子資格証明書取得要求を受信した後、サーバは、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名し、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。クライアントソフトウェアは、サーバによって送信されたサーバ署名情報および電子資格証明書を受信し、サーバ署名情報を検証し、署名情報に対する検証が成功した後、電子資格証明書に署名し、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成する。2次元バーコードを取得した後、資格証明書検証エンドデバイスは、使用プロセスにおける電子資格証明書のセキュリティを保証するために、電子資格証明書が伝送プロセスにおいて改ざんされているかどうかを判定するために、2次元バーコード内のサーバ署名情報、クライアントソフトウェア署名情報、および所定のセキュリティ情報を検証することができる。
説明は、単に本発明の技術的解決策の概要である。本明細書の内容を実施するために本発明の技術的手段をより明確に理解し、本発明の前述および他の目的、特徴、および利点をより理解可能にするために、以下は、本発明の具体的な実装形態を列挙する。
以下の好ましい実装形態の詳細な説明を読むことによって、当業者は、様々な他の利点および利益を理解する。添付図面は、単に好ましい実装形態の目的を示すために使用され、本発明に対する限定としてみなされない。加えて、すべての添付図面において、同じ参照番号は、同じ部分を示すために使用される。
本発明の一実装形態による、クライアントソフトウェアと、サーバと、資格証明書検証エンドデバイスとの間の対話を示すフレームワーク図である。 本発明の一実装形態による、2次元バーコードを処理するための第1の方法を示すフローチャートである。 本発明の一実装形態による、2次元バーコードを処理するための第2の方法を示すフローチャートである。 本発明の一実装形態による、2次元バーコードを処理するための第3の方法を示すフローチャートである。 本発明の一実装形態による、署名することおよび署名に対する検証を示す概略図である。 本発明の一実装形態による、2次元バーコードを処理するための第4の方法を示すフローチャートである。 本発明の一実装形態による、2次元バーコードを処理するための第5の方法を示すフローチャートである。 本発明の一実装形態による、サーバを示すブロック図である。 本発明の一実装形態による、別のサーバを示すブロック図である。 本発明の一実装形態による、クライアントソフトウェアを示すブロック図である。 本発明の一実装形態による、別のクライアントソフトウェアを示すブロック図である。 本発明の一実装形態による、資格証明書検証エンドデバイスを示すブロック図である。 本発明の一実装形態による、別の資格証明書検証エンドデバイスを示すブロック図である。 本発明の一実装形態による、2次元バーコードを処理するシステムを示すブロック図である。
以下、添付図面を参照しながら本開示の例示的な実装形態をより詳細に説明する。添付図面は、本開示の例示的な実装形態を示すが、本開示は、様々な形態において実装され得、本明細書で説明する実装形態によって限定されてはならないことが理解されるべきである。代わりに、これらの実装形態は、当業者に本開示および本開示の範囲をより完全に理解させるために提供される。
2次元バーコード内の電子資格証明書情報が容易に漏洩する可能性があるという既存の技術的問題を軽減するために、本発明の実装形態は、2次元バーコードを処理する方法を提供する。方法は、サーバ、クライアントソフトウェア、および資格証明書検証エンドデバイスの協働を通して実施される。資格証明書検証エンドデバイスは、生成された電子資格証明書をサーバに送信するために、少なくとも、データを生成および送信することができ、クライアントソフトウェア内の2次元バーコードから電子資格証明書を取得し、電子資格証明書が正しいかどうかを検証するために、データを取得しデータを検証することができる。サーバは、資格証明書検証エンドデバイスによって送信される電子資格証明書を受信し、データ送信を実施するために電子資格証明書をクライアントソフトウェアに送信するために、少なくとも、データを送信および受信することができる。クライアントソフトウェアは、サーバによって送信される電子資格証明書を受信するために、少なくとも、サーバとデータを交換することができ、電子資格証明書情報に基づいて2次元バーコードなどを生成するために、画像を生成することができる。
実装形態における方法について説明する前に、理解の容易さのために、図1に示すように、本発明の一実装形態による、クライアントソフトウェアと、サーバと、資格証明書検証エンドデバイスとの間の対話を示すフレームワーク図が最初に提供される。本発明の実装形態において、(身分証明書番号、携帯電話番号、または電子メールアドレスのような)ユーザ識別子に基づいて電子資格証明書を生成した後、資格証明書検証エンドデバイスは、電子資格証明書をサーバに送信し、サーバは、資格証明書検証エンドデバイスによって生成される電子資格証明書に対するアクセス権限を有する。クライアントソフトウェアから電子資格証明書取得要求を受信した後、サーバは、資格証明書検証エンドデバイスが検証するための電子資格証明書に基づく2次元バーコードをクライアントソフトウェアが生成するように、電子資格証明書をクライアントソフトウェアに送信する。
本発明の本実装形態において、電子資格証明書が2次元バーコード内に担持される例を使用することによって説明がなされることに留意することは、価値がある。しかしながら、理論的には、電子資格証明書は、他の媒体、例えば、SE機能またはHCE機能のようなNFC機能を有するクライアントソフトウェアにも依存し得る。本発明の実装形態において、電子資格証明書ユーザおよび資格証明書検証エンドデバイスにとって、2次元バーコードは、使用されるハードウェアデバイスに対する要求が比較的低く、ハードウェアデバイスが比較的一般的であるので、電子資格証明書が2次元バーコード内に担持される例を使用することによって説明がなされる。しかしながら、そのような説明方法が、電子資格証明書が2次元バーコードを使用することによってのみ担持され得るという制限を課すことを意図していないことは、明らかであるべきである。
以下は、最初に、図1に示す概略図に基づいてサーバ側で実施される2次元バーコードを処理する方法を提供する。図2に示すように、方法は、以下のステップを含む。
101.サーバがクライアントソフトウェアによって送信された電子資格証明書取得要求を受信する。
サーバへのログインが成功した後、クライアントソフトウェアは、電子資格証明書取得要求をサーバに送信し、ここで、電子資格証明書取得要求は、サーバがユーザ識別子に基づいて対応する電子資格証明書情報を探索するように、ユーザ識別子を含む。具体的な実装形態プロセスにおいて、電子資格証明書は、限定はしないが、以下の内容、すなわち、航空券、バスチケット、列車チケット、コンサートチケット、銀行カード、アクセス制御カード、パーク入場チケット、身分証明書、マーチャントクーポン、会員証、運転免許証、運転免許証アクセス制御カード、またはバスカードに対応する電子資格証明書を含むことができる。
具体的な実装形態プロセスにおいて、クライアントソフトウェアは、電子デバイスにインストールされたアプリケーション(APP)またはウェブサイトである。クライアントソフトウェアがサーバと対話する前に、クライアントソフトウェアは、ユーザ識別子に基づいてサーバに登録することができ、ユーザ識別子は、限定はしないが、ユーザ身分証明書、身分証明書と一致する実名、携帯電話番号、電子メールアドレス、アカウント名などを含むことができる。登録プロセスにおいて、サーバにログインするためのログインパスワードが設定され得、登録およびログインの成功の後、クライアントソフトウェアは、サーバに接続し、サーバと通信することができる。
102.サーバは、ユーザ識別子に対応する電子資格証明書を取得し、サーバ署名情報を取得するために、サーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名する。
本明細書の本実装形態において説明されるサーバは、電子資格証明書を生成しない。クライアントソフトウェアによって送信される電子資格証明書取得要求を受信した後、サーバは、電子資格証明書を生成する資格証明書検証エンドデバイスからユーザ識別子に対応する電子資格証明書を取得する。サーバは、電子資格証明書使用者(クライアントソフトウェア)と電子資格証明書検証エンドデバイス(資格証明書検証エンドデバイス)との間のブリッジとして機能し、資格証明書検証エンドデバイスによって生成される電子資格証明書を電子資格証明書使用者に転送する役割を果たす。本発明の本実装形態において説明されるサーバが国内規制要件を満たすことを前提として、サーバが資格証明書検証エンドデバイスにアクセスするために資格証明書検証エンドデバイスによって許可される必要があることに留意することは、価値がある。
電子資格証明書がサーバおよびクライアントソフトウェアの伝送プロセスにおいて改ざんされるのを防ぐために、サーバがクライアントソフトウェアによって送信される電子資格証明書取得要求に応答する前に、サーバは、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによってクライアントソフトウェアのユーザ公開鍵に署名する必要がある。本発明の本実装形態において、クライアントソフトウェアのユーザ公開鍵は、クライアントソフトウェアおよびサーバが互いの身元を検証し、識別情報に対してセキュリティ認証を実行し、データ伝送プロセスにおける情報が改ざんされていないことを保証することができるように署名される。サーバは、元の電子資格証明書の完全性が判定され得るように、サーバ秘密鍵を使用することによって電子資格証明書に署名する。
加えて、ユーザ公開鍵および電子資格証明書に署名するとき、サーバは、クライアントソフトウェアによって送信される電子資格証明書がサーバによって送信され、クライアントソフトウェアによって検証され、認定されて信頼できるものであることを保証するために、クライアントソフトウェアがその後に2次元バーコードを生成するときに、生成される2次元バーコードの属性情報として、サーバが電子資格証明書およびユーザ公開鍵に署名するときに取得されるサーバ署名情報をさらに使用することができる。そのため、電子資格証明書は、偽造または拒絶され得ない。
103.サーバは、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。
そのため、クライアントソフトウェアは、署名された電子資格証明書を検証し、資格証明書検証エンドデバイスが2次元バーコード内に含まれる電子資格証明書を検証するように、電子資格証明書に基づいて2次元バーコードを生成する。資格証明書検証エンドデバイスは、ユーザ識別子に基づいて電子資格証明書を生成するように構成される。
本発明の本実装形態において提供される2次元バーコードを処理する方法によれば、クライアントソフトウェアによって送信される電子資格証明書取得要求を受信した後、サーバは、サーバ署名情報を取得するために、サーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名し、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。クライアントソフトウェアは、サーバによって送信されたサーバ署名情報および電子資格証明書を受信し、サーバ署名情報を検証し、署名情報に対する検証が成功した後、電子資格証明書に署名し、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて、2次元バーコードを生成する。2次元バーコードを取得した後、資格証明書検証エンドデバイスは、使用プロセスにおける電子資格証明書のセキュリティを保証するために、電子資格証明書が伝送プロセスにおいて改ざんされているかどうかを判定するために、2次元バーコード内のサーバ署名情報、クライアントソフトウェア署名情報、および所定のセキュリティ情報を検証することができる。
図1に示す方法のさらなる説明として、クライアントソフトウェアのユーザ識別子の有効性を保証し、クライアントソフトウェアのユーザ識別子がコンテンツ伝送プロセスにおいて改ざんされていないことを保証するために、ステップ102において、電子資格証明書およびクライアントソフトウェアのユーザ公開鍵は、以下の方法などにおいてサーバ秘密鍵を使用することによって署名され得る。例えば、以下の通りである。
方法1:サーバは、電子資格証明書にユーザ署名鍵を割り当て、サーバ秘密鍵を使用することによって電子資格証明書および第1のユーザ公開鍵に署名し、ここで、割り当てられたユーザ署名鍵は、第1のユーザ公開鍵を含む。
サーバがクライアントソフトウェアによって送信される電子資格証明書取得要求を受信したとき、クライアントソフトウェアのユーザ公開鍵が電子資格証明書取得要求から取得されない場合、サーバは、クライアントソフトウェアのユーザ識別子を認証するため、したがって、電子資格証明書が改ざんされていないことを保証するために、電子資格証明書に1対のユーザ署名鍵を一時的に割り当て、ここで、割り当てられたユーザ署名鍵は、1つの第1のユーザ公開鍵と1つの第1のユーザ秘密鍵とを含み、そしてサーバは、サーバ署名情報が受信された後、サーバ署名情報に対するセキュリティ認証を実行するために、サーバ秘密鍵を使用することによって第1のユーザ秘密鍵に署名する。
ユーザ署名鍵は、サーバによって一時的に電子資格証明書に割り当てられるので、ユーザ署名鍵がクライアントソフトウェアによって取得されない場合、サーバ内のサーバ署名情報は、検証され得ない。前述の問題を軽減するために、サーバが方法1を使用することによって電子資格証明書およびクライアントソフトウェアの第1のユーザ公開鍵に署名した場合、サーバがサーバ署名情報および電子資格証明書をクライアントソフトウェアに送信するとき、サーバは、クライアントソフトウェアがユーザ署名鍵に基づいてサーバ署名情報を検証することができるように、電子資格証明書に割り当てられたユーザ署名鍵を同期してクライアントソフトウェアに送信する必要がある。
具体的な実装形態プロセスにおいて、サーバによって一時的に電子資格証明書に割り当てられたユーザ署名鍵を受信し、ユーザ署名鍵に基づいてサーバ署名情報を検証した後、クライアントソフトウェアは、ユーザ署名鍵を直接破棄することができ、または、クライアントソフトウェアの共通ユーザ鍵およびユーザ公開鍵としてユーザ署名鍵を使用することができる。実装形態は、本発明のこの実装形態に限定されない。
方法2:サーバは、クライアントソフトウェアによって送信される第2のユーザ公開鍵を取得し、サーバ秘密鍵を使用することによって第2のユーザ公開鍵および電子資格証明書に署名する。
この実装形態において、クライアントソフトウェアの身元を識別するために、電子資格証明書取得要求をサーバに送信するとき、クライアントソフトウェアは、サーバがクライアントソフトウェアに対する身元認証を実行し、サーバがサーバ秘密鍵を使用することによってクライアントソフトウェアの第2のユーザ公開鍵および電子資格証明書に署名するように、クライアントソフトウェアの第2のユーザ公開鍵を同期してサーバに送信する。署名された第2のユーザ公開鍵および署名された電子資格証明書を受信した後、クライアントソフトウェアは、電子資格証明書が改ざんされていないことを保証するために、成功した署名検証の後にのみ電子資格証明書情報を取得することができる。
本発明の本実装形態において説明される第1のユーザ公開鍵および第2のユーザ公開鍵は、クライアントソフトウェアの異なるユーザ公開鍵を区別するために使用されることに留意することは、価値がある。「第1」および「第2」は、他の意味を持たず、ユーザ公開鍵の数、優先順位などを限定することを意図していない。クライアントソフトウェアにおけるユーザ公開鍵を命名する方法は、本発明の本実装形態において限定されない。
説明の容易さのために、本発明の実装形態における以降の説明において、ユーザ公開鍵およびユーザ秘密鍵が非対称鍵である例を使用することによって説明がなされる。しかしながら、ユーザ公開鍵およびユーザ秘密鍵は、非対称鍵に限定されず、対称鍵であり得ることは、明らかであるべきである。実装形態は、本発明の本実装形態において限定されない。
サーバの署名プロセスの理解を容易にするために、以下は、説明のためにサーバがユーザ公開鍵および電子資格証明書に署名する例を使用する。具体的なプロセスは、以下を含む。ユーザ公開鍵および電子資格証明書を取得した後、サーバは、ハッシュ値を取得するためにハッシュアルゴリズムを使用することによってユーザ公開鍵および電子資格証明書に対するハッシュ演算を実行し、次いで、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによってハッシュ値に署名することができる。署名プロセスにおいて使用される(ハッシュ演算のような)アルゴリズムは、本発明の本実装形態において限定されない。
電子資格証明書およびユーザ公開鍵に署名した後、サーバは、クライアントソフトウェアがサーバ署名情報を検証し、電子資格証明書がデータ伝送プロセスにおいて悪意のあるユーザによって改ざんされていないことを保証するように、電子資格証明書、署名されたユーザ公開鍵、および署名された電子資格証明書をクライアントソフトウェアに送信する。加えて、サーバはさらに、クライアントソフトウェアおよび資格証明書検証エンドデバイスがサーバによってブロードキャストされた公開鍵を受信し、署名情報を検証するためにサーバ公開鍵を使用するように、サーバが署名情報を取得するときに使用されるサーバ秘密鍵に対応する公開鍵をブロードキャストする必要がある。
さらに、本発明の本実装形態において説明されるサーバは、クライアントソフトウェアと資格証明書情報検証パーティとを運ぶブリッジとして機能する。サーバは、ユーザの正当性を認証する責任があり、加えて、サーバは、電子資格証明書を使用することの正当性をさらに検証することができる。具体的な使用プロセスにおいて、電子資格証明書は、異なるサービスタイプに対応し、異なるサービスタイプは、異なるサービス仕様を使用することによって制限される。例えば、電子資格証明書が航空券である場合、航空券サービスは、飛行機の出発時間を含む(この用途シナリオは、飛行機が遅延なしで時間通りに離陸するシナリオでしかあり得ない)。代替的には、電子資格証明書がコンサートチケットであるとき、チケットサービスは、コンサートの開始時間、入場時間なども含む。したがって、本発明の本実装形態において、ユーザ識別子に基づいて対応する電子資格証明書を取得する前に、サーバは、電子資格証明書取得要求を構文解析し、電子資格証明書取得要求内に含まれるサービス有効時間を取得し、サービス有効時間がサービス仕様に準拠しているかどうかを検証する必要がある。サービス有効時間がサービス仕様に準拠しているとき、サーバは、ユーザ識別子に対応する電子資格証明書を取得する。サービス有効時間がサービス仕様に準拠していないとき、サーバは、対応する電子資格証明書が利用できないことを示すプロンプト情報をクライアントソフトウェアに返す。
よりよい理解のために、以下は、例を用いてサービス有効時間およびサービス仕様を説明する。例えば、電子資格証明書がバスチケットであり、資格証明書検証エンドデバイスがバスチケットを事前販売するための時間が7日であり、現在の日付が2016年11月1日であると仮定する。ユーザは、2016年11月1日にクライアントソフトウェアを使用することによって電子資格証明書取得要求をサーバに送信し、要求内に含まれるサービス有効時間は、2016年11月20日までであり、資格証明書検証エンドデバイスによって生成される電子資格証明書の最大有効時間は、2016年11月8日までである。したがって、サーバは、サービス有効時間がサービス仕様に準拠していないと判定することができる。前述の説明は、単なる例である。本発明の本実装形態は、電子資格証明書のサービスタイプ、サービス有効時間、サービス仕様などに制限を課さない。
さらに、ステップ102において、ユーザ識別子に対応する電子資格証明書は、以下の方法において取得され得るが、それらの方法に限定されない。例えば、以下の通りである。
方法1:資格証明書検証エンドデバイスがユーザ識別子に基づいて電子資格証明書を生成した後、資格証明書検証エンドデバイスによって同期された電子資格証明書が受信される。
本実装形態において、電子資格証明書を生成した後、資格証明書検証エンドデバイスは、生成された電子資格証明書をサーバに能動的に送信する。具体的な実装形態プロセスにおいて、複数の電子資格証明書の管理を容易にするために、サーバは、所定のリストをローカルに生成することができ、ここで、所定のリストは、ユーザ識別子と電子資格証明書との間のマッピング関係を記録するために使用される。資格証明書検証エンドデバイスによって同期された電子資格証明書を受信した後、サーバは、電子資格証明書とユーザ識別子との間の新たに受信されたマッピング関係を所定のリスト内に記録する。電子資格証明書をクライアントソフトウェアに送信した後、サーバは、サーバによって占有されるリソースを低減するために、うまく送信された電子資格証明書を所定のリストから削除することができる。
方法2:電子資格証明書を取得するために、ユーザ識別子に基づいて、電子資格証明書を取得するための要求情報が資格証明書検証エンドデバイスに送信される。
この実装形態において、サーバは、転送するために使用される。サーバは、クライアントソフトウェアによって送信される電子資格証明書取得要求を受信したときにのみ、電子資格証明書取得要求内のユーザ識別子に基づいて資格証明書検証エンドデバイスからの電子資格証明書を要求し、次いで、取得された電子資格証明書をクライアントソフトウェアに転送する。サーバによって電子資格証明書を取得する方法は、本発明の本実装形態において限定されない。
さらに、前述の方法のさらなる説明および拡張として、本発明の一実装形態は、2次元バーコードを処理する方法をさらに提供する。この方法において、説明の容易さのために、主に、クライアントソフトウェアがアリペイであり、電子資格証明書が電子コンサートチケットである例を使用することによって説明がなされる。そのような説明方法が、本発明の本実装形態において説明するクライアントソフトウェアがアリペイのみであり得るという制限を課すことを意図していないことは、明らかであるべきである。図3に示すように、方法は、以下のステップを含む。
201.サーバがアリペイによって送信された電子コンサートチケット取得要求を受信し、ここで、電子コンサートチケット取得要求は、携帯電話番号とサービス有効時間とを含む。
実際には、サービス有効時間は、電子コンサートチケットの予約時間であり得、または、電子コンサートチケットの開始時間であり得、または、電子コンサートチケットとは無関係の任意の時間であり得る。サービス有効時間は、本発明の本実装形態において限定されない。
202a.サーバは、電子コンサートチケット取得要求を構文解析し、電子コンサートチケット取得要求内に含まれるサービス有効時間を取得する。
例えば、要求内のサービス有効時間は、2016年9月20日の16:00の開始時間であり、現在の日付は、2016年9月1日である。
203a.サービス有効時間がサービス仕様に準拠しているかどうかを検証する。
サービス有効時間がサービス仕様に準拠している場合、ステップ204が実行される。サービス有効時間がサービス仕様に準拠していない場合、ステップ205が実行される。
本発明の本実装形態において、電子コンサートチケットは、以下のシナリオに対して取得される。コンサートのための紙のチケットが紛失または破損されたとき、コンサートは、紙のコンサートチケットを後登録することなく、電子コンサートチケットを検証することによって入場され得る。それは、チケットを後登録する面倒な処理を低減する。この例において、サービス仕様が、電子コンサートチケットがコンサートの開始前の30日以内に取得され得ること、または、電子コンサートチケットがコンサートの開始後の30分以内に取得され得ることであることが指定され得る。ステップ202bは、サービス有効時間がサービス仕様に準拠するという条件で実行される。ステップ201に記載の有効時間は、サービス仕様に準拠している2016年9月20日におけるコンサートの開始時間であるので、ステップ202bが実行される。
202b.サーバは、電子コンサートチケット取得要求を構文解析し、電子コンサートチケット取得要求内の携帯電話番号を取得する。
203b.携帯電話番号の有効性を検証する。
携帯電話番号が有効である場合、ステップ204が実行される。携帯電話番号が無効である場合、ステップ205が実行される。
本ステップにおいて、要求内の携帯電話番号がサーバ内の携帯電話番号と一致するかどうかが検証される。
ステップ202aおよびステップ202bが実行されるとき、2つのステップ間に順序が存在しないことに留意することは、価値がある。加えて、サービス有効時間に対する検証およびユーザ識別子(携帯電話番号)に対する検証が成功した後にのみ、後続のステップが実行され続ける。
204.サーバは、携帯電話番号に対応する電子コンサートチケットを取得し、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによってアリペイのユーザ公開鍵および電子資格証明書に署名する。
異なるサービスタイプに基づいて、電子資格証明書は、対応する詳細を有する。電子コンサートチケットが例として使用される。電子コンサートチケットは、コンサートの場所、位置、特定の座席番号、コンサート名、価格などを含む。実装形態は、本発明の本実装形態において限定されない。
205.電子コンサートチケット取得要求を傍受し、要求失敗プロンプトをアリペイに送信する。
206.サーバ署名情報および電子コンサートチケットをアリペイに送信する。
207.アリペイがサーバ公開鍵に基づいて署名情報を検証するように、サーバ秘密鍵に対応する公開鍵をブロードキャストする。
図3に示す方法に対する拡張として、アリペイをインストールされた電子デバイス(例えば、携帯電話)が紛失された後、ユーザは、携帯電話を切り替えることができ、アリペイへのログインに成功した後、電子資格証明書を使用し続けることができ、紙の資格証明書が紛失された後の登録抹消、後登録などを防ぐ。そのような用途シナリオは、ユーザ秘密鍵、サーバ公開鍵、および電子資格証明書を使用することによって、アリペイが正常な署名検証を実行した後にのみ適用され得る。アリペイがサーバ署名情報を検証しない場合、アリペイは、サーバ公開鍵に基づいてサーバ署名情報を検証し、検証が成功した後に電子資格証明書を取得する必要がある。本発明のオプションの実装形態において、電子資格証明書が漏洩していないとさらに判定するために、サーバがサーバ署名情報および電子資格証明書をクライアントソフトウェアに送信した後、サーバ公開鍵に対する検証有効期間が設定され得る。そのため、クライアントソフトウェアは、指定された時間制限内にサーバ署名情報に対する検証を完了しなければならない。サーバ公開鍵に対する検証有効期間が終了した場合、サーバ署名情報は、検証され得ない。
さらに、本発明の一実装形態は、2次元バーコードを処理する方法をさらに提供する。方法は、図1に示すクライアントソフトウェア側に適用される。図4に示すように、方法は、以下のステップを含む。
301.クライアントソフトウェアは、サーバによって送信されたサーバ署名情報および電子資格証明書を受信する。
クライアントソフトウェアがユーザアカウント名およびログインパスワードを使用することによってサーバに正常にログインした後、クライアントソフトウェアは、電子資格証明書取得要求をサーバに送信する。サーバは、電子資格証明書取得要求に応答する。伝送プロセスにおいて電子資格証明書が改ざんされるのを防ぐために、サーバは、クライアントソフトウェアの身元の有効性を検証するために、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。サーバ署名情報は、サーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名することによってサーバによって取得される。サーバ署名情報を取得することに関する関連説明について、前述の実装形態における詳細な説明に対して参照がなされ得る。本発明の本実装形態においては、簡単にするために詳細を省略する。
302.クライアントソフトウェアは、電子資格証明書を取得するためにサーバ署名情報を検証する。
例えば、サーバによってユーザ公開鍵および電子資格証明書を署名することによって取得されるサーバ署名情報、ならびにクライアントソフトウェアによって実行されるサーバ署名情報に対する検証が、詳細な説明のための例として使用される。図5は、本発明の一実装形態による、署名することおよび署名に対する検証を示す概略図である。ユーザ公開鍵および電子資格証明書を取得した後、サーバは、第1のハッシュ値を取得するためにハッシュアルゴリズムを使用することによってユーザ公開鍵および電子資格証明書に対してハッシュ演算を実行し、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによって第1のハッシュ値を暗号化する。サーバは、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。サーバ署名情報および電子資格証明書を受信した後、クライアントソフトウェアは、電子資格証明書を抽出し、第2のハッシュ値を取得するために電子資格証明書に対してハッシュ演算を実行する。加えて、クライアントソフトウェアは、第1のハッシュ値を取得するためにサーバ署名情報を復号するためにサーバ公開鍵を使用し、復号して得られた第1のハッシュ値と計算によって得られた第2のハッシュ値とを比較する。第1のハッシュ値が第2のハッシュ値と同じである場合、それは、電子資格証明書が伝送プロセスにおいて改ざんされていないことを示し、電子資格証明書は、電子資格証明書が取得された後に直接使用され得る。第1のハッシュ値が第2のハッシュ値と異なる場合、それは、電子資格証明書がデータ伝送プロセスにおいて改ざんされたことを示し、情報漏洩のリスクが存在し得る。図5が単なる一例であり、サーバ署名情報の具体的な内容が限定されないことに留意することは、価値がある。
303.クライアントソフトウェアは、ユーザ公開鍵に対応するユーザ鍵を取得し、クライアントソフトウェア署名情報を取得するためにユーザ鍵を使用することによって電子資格証明書に署名する。
クライアントソフトウェアは、2次元バーコード内に担持される電子資格証明書を生成する。電子資格証明書が不正に改ざんされることを防ぎ、電子資格証明書情報が漏洩するのを防ぐために、クライアントソフトウェアは、クライアントソフトウェア署名情報を取得するためにユーザ秘密鍵を使用することによって電子資格証明書に署名する必要がある。クライアントソフトウェアがクライアントソフトウェア署名情報を生成された2次元バーコードの属性情報として使用するとき、資格証明書検証エンドデバイスは、クライアントソフトウェア署名情報を検証することができ、クライアントソフトウェアの有効性をさらに認証する。
具体的な署名実施方法について、図5における詳細な説明に対して参照がなされ得る。本発明の本実装形態においては、簡単にするために詳細を省略する。
304.クライアントソフトウェアは、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成する。
クライアントソフトウェアおよび資格証明書検証パーティが短距離データ(電子資格証明書)送信を実行するとき、電子資格証明書を送信することのセキュリティを保証するために、生成された2次元バーコードに認証情報が追加され得、認証情報は、限定はしないが、クライアントソフトウェア署名情報、サーバ署名情報、および所定のセキュリティ情報を含むことができる。資格証明書検証エンドデバイスは、検証される必要がある電子資格証明書がクライアントソフトウェアによって送信されたことを判定するために、クライアントソフトウェア署名情報を検証することができる。加えて、資格証明書検証エンドデバイスは、電子資格証明書が改ざんされていないことを保証するために、2次元バーコード内の電子資格証明書がサーバによって送信されたことを判定するためにサーバ署名情報を検証することができる。
本発明の本実装形態において、所定のセキュリティ情報は、2次元バーコードの動的な実装形態として使用され、クライアントソフトウェアと資格証明書検証エンドデバイスとの間の「信用できる」データ伝送を確立するための資格証明書として使用される。クライアントソフトウェアによって送信される2次元バーコードを受信する前に、資格証明書検証エンドデバイスは、クライアントソフトウェアによって送信される電子資格証明書のセキュリティを保証するために所定のセキュリティ情報の有効性およびセキュリティを検証する。所定のセキュリティ情報は、限定はしないが、以下の内容、すなわち、動的パスワード情報、時間情報、ランダムコード情報などを含むことができる。実装形態は、本発明の本実装形態において限定されない。
例えば、本明細書で説明するように、現在のシステム時間が所定のセキュリティ情報のために使用される。クライアントソフトウェアが08:00において2次元バーコードを生成した場合、所定のセキュリティ情報は、08/00であると判定され得る。クライアントソフトウェアが10:21において2次元バーコードを生成した場合、所定のセキュリティ情報は、10/21であると判定され得る。前述の例は、所定のセキュリティ情報を現在のシステム時間として使用することによって説明されている。しかしながら、そのような説明方法が、本発明の本実装形態において説明される所定のセキュリティ情報がクライアントソフトウェアの現在のシステム時間のみであり得るという制限を課すことを意図していないことは、明らかであるべきである。
2次元バーコードが生成されるとき、クライアントソフトウェアのユーザ公開鍵は、ブロードキャストされず、代わりに、ユーザ公開鍵は、生成された2次元バーコードの属性情報として直接使用されることに留意することは、価値がある。それは、クライアントソフトウェアの追加のオーバヘッドおよびコストを効果的に低減することができる。
本発明の本実装形態において提供される2次元バーコードを処理する方法によれば、クライアントソフトウェアによって送信される電子資格証明書取得要求を受信した後、サーバは、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名し、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。クライアントソフトウェアは、サーバによって送信されたサーバ署名情報および電子資格証明書を受信し、サーバ署名情報を検証し、署名情報に対する検証が成功した後、電子資格証明書に署名し、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成する。2次元バーコードを取得した後、資格証明書検証エンドデバイスは、使用プロセスにおける電子資格証明書のセキュリティを保証するために、伝送プロセスにおいて電子資格証明書が改ざんされているかどうかを判定するために、2次元バーコード内のサーバ署名情報、クライアントソフトウェア署名情報、および所定のセキュリティ情報を検証することができる。
本発明の一実装形態において、ユーザ公開鍵に対応するユーザ鍵を取得するとき、クライアントソフトウェアは、サーバによって送信され、電子資格証明書に割り当てられたユーザ署名鍵を受信し、ここで、ユーザ署名鍵は、第1のユーザ公開鍵および第1のユーザ鍵を含み、ユーザ鍵およびユーザ公開鍵は、非対称鍵であり、クライアントソフトウェアは、サーバによって電子資格証明書に割り当てられたユーザ署名鍵内の第1のユーザ鍵を取得する。本発明の別の実装形態において、ユーザ公開鍵に対応するユーザ鍵を取得するとき、クライアントソフトウェアは、クライアントソフトウェアによって生成され、ユーザ公開鍵に対応する第2のユーザ鍵を取得することができる。クライアントソフトウェアがユーザ鍵を取得する方法は、本発明の本実装形態において限定されない。
さらに、サーバ署名情報を検証するとき、方法は、以下、すなわち、サーバによってブロードキャストされるサーバ公開鍵を受信して記憶するステップと、サーバ公開鍵および電子資格証明書に基づいてサーバ署名情報を検証するステップとを含む。
サーバがクライアントソフトウェアによって生成される第2のユーザ公開鍵に署名していると判定したとき、クライアントソフトウェアは、サーバ公開鍵、電子資格証明書、および第1のユーザ公開鍵に基づいてサーバ署名情報を検証する。
サーバがサーバによって電子資格証明書に割り当てられた第1のユーザ公開鍵に署名していると判定したとき、クライアントソフトウェアは、サーバ公開鍵、電子資格証明書、および第2のユーザ公開鍵に基づいてサーバ署名情報を検証する。クライアントソフトウェアがサーバ署名情報を検証するプロセスについて、図5における詳細な説明に対して参照がなされ得る。実装形態は、本発明の本実装形態において限定されない。
電子資格証明書をクライアントソフトウェアに送信するとき、サーバは、その後クライアントソフトウェアが2次元バーコードを生成するときに、生成された2次元バーコードの属性情報としてサーバ署名情報が使用され得るように、サーバ署名情報を取得するために電子資格証明書およびユーザ公開鍵に署名する必要があることに留意することは、価値がある。ユーザは、電子資格証明書の元の情報の正当性を保証し、ユーザ公開鍵が検証されたように有効で信頼でき、偽造または拒絶され得ないことを保証するために、サーバによって送信される情報に署名するためにユーザ秘密鍵を使用する。
さらに、クライアントソフトウェアにおいて(クライアントソフトウェアによって生成される第1のユーザ鍵、およびサーバによって電子資格証明書に割り当てられる第2のユーザ鍵を含む)複数のユーザ署名鍵が存在し得る。したがって、クライアントソフトウェアは、クライアントソフトウェアと一致する任意のユーザ秘密鍵を使用することによって電子資格証明書に署名することができる。例えば、クライアントソフトウェアは、第1のユーザ鍵を使用することによって電子資格証明書に署名することができ、または、第2のユーザ鍵を使用することによって電子資格証明書に署名することができる。実装形態は、本発明の本実装形態において限定されない。
電子資格証明書のセキュリティをさらに保証するために、クライアントソフトウェアが2次元バーコードを生成するとき、クライアントソフトウェアは、プロセスにおいてクライアントソフトウェア署名情報も使用する。そのため、資格証明書検証エンドデバイスは、電子資格証明書がクライアントソフトウェアによって生成され、クライアントソフトウェアが電子資格証明書を使用することを許可され信頼できることを保証するために、クライアントソフトウェア署名情報を検証し、電子資格証明書は、偽造または拒絶され得ない。2次元バーコードは、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて、以下の方法、すなわち、所定のセキュリティ情報の有効期間を設定し、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、ユーザ公開鍵、所定のセキュリティ情報の有効期間、およびユーザ識別子に基づいて2次元バーコードを生成することにおいて、生成され得る。
本発明の本実装形態において、2次元バーコードを生成するとき、クライアントソフトウェアが生成された2次元バーコードの属性情報としてユーザ識別子を使用する必要があることに留意することは、価値がある。これは、ユーザの実名システムを必要とする資格証明書検証エンドデバイスを伴う用途シナリオに適用され得る。例えば、電子資格証明書が航空券、バスチケット、列車チケット、銀行カードなどに対応する資格証明書であるとき、資格証明書検証エンドデバイスがそのような電子資格証明書を検証するとき、実名システムの状態をチェックし、検証を完了するのを支援し、実名システムを必要とするいくつかの用途シナリオにおける要件を満たすために、ユーザ身分証明書エンティティが使用され得る。
本発明の本実装形態におけるオプションの解決策において、いくつかの高度なセキュリティシナリオでは、2次元バーコードが生成されるとき、携帯電話またはタブレットコンピュータが紛失されたときに、または2次元バーコードが解読されたときの短い時間期間内に、2次元バーコードが悪意のあるユーザによって使用されるのを防ぐために、電子資格証明書を使用する人の生体的特徴が2次元バーコードに追加され得る。例えば、電子資格証明書を使用する人の指紋のような生体的特徴が2次元バーコード内に含まれる。資格証明書検証エンドデバイスが2次元バーコードを検証するとき、電子資格証明書のセキュリティをさらに保証するために、人の生体的特徴に対する検証が必要とされる。
さらに、前述の実装形態において、2次元バーコードを処理するためのサーバおよびクライアントソフトウェアの具体的な機能および具体的な実装形態が詳細に説明されている。図1に示す資格証明書検証エンドデバイスは、2次元バーコードに依存する生成された電子資格証明書に対する検証を実行する必要がある。以下は、2次元バーコードを処理する方法を提供する。方法は、資格証明書検証エンドデバイスに適用される。図6に示すように、方法は、以下のステップを含む。
401.資格証明書検証エンドデバイスは、クライアントソフトウェア内の2次元バーコードを取得する。
2次元バーコードは、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいてクライアントソフトウェアによって生成され、クライアントソフトウェア署名情報は、電子資格証明書に署名することによってクライアントソフトウェアによって取得され、サーバ署名情報は、電子資格証明書およびユーザ公開鍵に署名することによってサーバによって取得される。
資格証明書検証エンドデバイスは、以下の方法などにおいてクライアントソフトウェア内の2次元バーコードを取得することができる。例えば、2次元バーコードは、所定のデータ取得命令を使用することによって取得される。所定のデータ取得命令に関する方法は、走査方法、データ送信側シェイキング方法、鍵トリガ方法、ボイストリガ方法、およびトラックに沿ってスライドさせる方法を含む。
本発明の本実装形態における所定のデータ取得命令方法において、データ伝送前に走査方法以外の所定のデータ取得命令方法が設定される必要がある。例えば、データ送信側シェイキング方法が、以下、すなわち、同一方向に2回シェイクし、左右に2回シェイクし、上下に3回シェイクするようにして設定される。鍵トリガ方法は、以下を含む。資格証明書検証エンドデバイスは、所定の鍵のトリガ状態を監視し、所定の鍵は、物理的鍵であり得、または仮想的鍵であり得る。クライアントソフトウェアが所定の鍵をトリガするとき、資格証明書検証エンドデバイスは、クライアントソフトウェアにおいて表示される2次元バーコードを取得することができる。クライアントソフトウェアがタッチスクリーンクライアントソフトウェアである場合、資格証明書検証エンドデバイスがトラックに沿ってスライドする方法を事前に判定した後、資格証明書検証エンドデバイスは、クライアントソフトウェアにおけるタッチスクリーンのスライド状態を監視し、クライアントソフトウェアユーザがスクリーン上でスライド操作をトリガしたとき、2次元バーコードを取得する。所定のデータ取得命令は、上記で説明されており、実際の所定のデータ取得命令のタイプは、本発明の本実装形態において限定されない。
402.資格証明書検証エンドデバイスは、所定のセキュリティ情報の有効期間を検証し、クライアントソフトウェア署名情報およびサーバ署名情報を検証する。
資格証明書検証エンドデバイスは、取得された2次元バーコードを構文解析し、2次元バーコード内に含まれる所定のセキュリティ情報および電子資格証明書を取得し、所定のセキュリティ情報の有効期間および電子資格証明書内のサービス有効時間を検証する。例えば、所定のセキュリティ情報がクライアントソフトウェアの現在のシステム時間であり、所定のセキュリティ情報が10/21であり、所定のセキュリティ情報の有効期間が60秒であると仮定する。資格証明書検証エンドデバイスは、現在のシステム時間と所定のセキュリティ情報との間の時間差を取得し、有効期間が60秒よりも長いかどうかを判定する。有効期間が60秒よりも長いと判定された場合、資格証明書検証エンドデバイスは、2次元バーコードが無効であると判定する。前述の説明は、一例である。代替的には、所定のセキュリティ情報の有効期間は、2分などに設定され得る。所定のセキュリティ情報の有効期間は、本発明の本実装形態において限定されない。
資格証明書検証エンドデバイスがクライアントソフトウェア署名情報およびサーバ署名情報を検証するための実装形態について、図5に示す方法への参照がなされ得る。本発明の本実装形態においては、簡単にするために詳細を省略する。
403.所定のセキュリティ情報、クライアントソフトウェア署名情報、およびサーバ署名情報の各々に対する検証が成功した場合、検証のために電子資格証明書内に含まれるサービス有効時間を取得する。
サービス有効時間に対する検証について、前述の実装形態における関連説明に対して参照がなされ得る。本発明の本実装形態においては、簡単にするために詳細を省略する。
404.電子資格証明書内に含まれるサービス有効時間に対する検証が成功した場合、電子資格証明書に対する検証が成功したと判定する。
本発明の本実装形態において提供される2次元バーコードを処理する方法によれば、クライアントソフトウェアによって送信される電子資格証明書取得要求を受信した後、サーバは、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名し、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。クライアントソフトウェアは、サーバによって送信されたサーバ署名情報および電子資格証明書を受信し、サーバ署名情報を検証し、署名情報に対する検証が成功した後、電子資格証明書に署名し、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成する。2次元バーコードを取得した後、資格証明書検証エンドデバイスは、使用プロセスにおける電子資格証明書のセキュリティを保証するために、伝送プロセスにおいて電子資格証明書が改ざんされているかどうかを判定するために、2次元バーコード内のサーバ署名情報、クライアントソフトウェア署名情報、および所定のセキュリティ情報を検証することができる。
さらに、図6に示す方法に対する拡張として、本発明の本実装形態において、方法のステップは、資格証明書検証エンドデバイスによって生成される電子資格証明書に基づいてすべて実行される。したがって、本発明の本実装形態において、クライアントソフトウェアにおける2次元バーコードが取得される前に、資格証明書検証エンドデバイスは、ユーザ識別子に基づいて電子資格証明書を生成し、電子資格証明書を生成する機会は、限定はしないが以下の内容を含むことができる。例えば、ユーザがチケット窓口からチケットを購入した後、チケットシステムは、紙の資格証明書を生成することに加えて電子資格証明書情報を生成し、電子資格証明書情報をサーバにフィードバックする。そのため、サーバは、電子資格証明書をクライアントソフトウェアに送信することができる。代替的には、ユーザがチケットウェブサイト上で電子チケットを購入した後、電子チケットに対応する電子資格証明書が生成され、次いでサーバに送信される。本発明の本実装形態において、資格証明書検証エンドデバイスが電子資格証明書を生成した後に紙のチケットを提供するかどうかに対する制限は、存在しない。本発明の本実装形態において、電子資格証明書は、紙の資格証明書が紛失または破損された後の紙の資格証明書に関する複雑な後登録操作を防ぐことを意図している。加えて、資格証明書検証エンドデバイスが動的な2次元バーコード内に担持される電子資格証明書を取得するとき、電子資格証明書のセキュリティが保証され得る。
資格証明書検証エンドデバイスが電子資格証明書を生成した後、対応する電子資格証明書は、クライアントソフトウェアがサーバから電子資格証明書を取得することができるように、ユーザ識別情報に基づいてサーバと同期され得る。本発明の別の実装形態において、サーバによって送信される電子資格証明書を取得するための要求情報を受信した後、資格証明書検証エンドデバイスは、電子資格証明書をサーバに送信し、ここで、電子資格証明書を取得するための要求情報は、ユーザ識別子を含む。
さらに、資格証明書検証エンドデバイスは、以下の方法などにおいて、クライアントソフトウェア署名情報およびサーバ署名情報を検証することができる。例えば、資格証明書検証エンドデバイスは、2次元バーコード内に含まれるユーザ公開鍵を取得し、ユーザ公開鍵および電子資格証明書に基づいてクライアントソフトウェア署名情報を検証する。資格証明書検証エンドデバイスは、サーバ秘密鍵に対応し、サーバによってブロードキャストされるサーバ公開鍵を受信して記憶し、サーバ公開鍵および電子資格証明書に基づいてサーバ署名情報を検証する。
さらに、比較的高いセキュリティ要件を有するいくつかの用途シナリオにおいて、クライアントソフトウェアは、資格証明書検証エンドデバイスがユーザ識別情報を認証するように、生成された2次元バーコードの属性情報としてユーザ識別子情報を使用する。例えば、クライアントソフトウェアは、生成された2次元バーコードの属性情報としてユーザ身分証明書を使用する。資格証明書検証エンドデバイスは、2次元バーコードを構文解析し、2次元バーコード内に含まれるユーザ識別子を取得し、ユーザ識別子を検証する。資格証明書検証エンドデバイスが、ユーザ識別子に対する検証が成功したと判定した場合、資格証明書検証エンドデバイスは、電子資格証明書に対する検証が成功したと判定する。例えば、2次元バーコード内の電子資格証明書が列車チケットであるとき、ユーザが駅の回転式改札口を通過するために電子列車チケットを使用するとき、ユーザの身分証明書は、電子資格証明書に対する検証を完了するために同時に検証され得る。
さらに、資格証明書検証エンドデバイスが2次元バーコード内の内容を検証するとき、2次元バーコード内に含まれる内容の量にかかわらず、2次元バーコード内に含まれる内容が資格証明書検証エンドデバイスによって正常に検証される限り、それは、電子資格証明書の検証が成功することを示す。2次元バーコード内に含まれる1つの項目またはいくつかの項目が検証されるのに失敗した場合、それは、電子資格証明書の検証が失敗したことを示す。例えば、2次元バーコードが所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、およびユーザ識別子を含むとき、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、およびユーザ識別子の各々に対する検証が成功した後にのみ、電子資格証明書が正常に検証されたと判定され得ると仮定する。
上記で説明したように、資格証明書検証エンドデバイスは、2次元バーコード内に担持される電子資格証明書を検証し、日常の仕事および生活における電子資格証明書の利便性およびセキュリティは、プロセスから見られ得る。前述の説明は、クライアントソフトウェアが1つのタイプの電子資格証明書を含む例を使用することによって説明されている。実際には、クライアントソフトウェアは、複数のタイプの電子資格証明書を含むことができる。電子資格証明書は、異なる動的2次元バーコード内に別々に記録され得、または、同じ2次元バーコード内に記録され得る。実装形態は、本発明の本実装形態において限定されない。電子資格証明書は、既存の技術におけるエンティティ資格証明書情報を置き換えることができ、エンティティ資格証明書における情報漏洩を防ぎ、エンティティ資格証明書が紛失されたときの厄介な登録抹消または後登録ステップを軽減する。本発明の本実装形態における方法によれば、ユーザは、外出するときにクライアントソフトウェアをインストールされた1つの端末デバイス(携帯電話)を携帯するだけでよく、いかなるエンティティ資格証明書も携帯する必要はない。
例えば、ユーザAが、クライアントソフトウェアをインストールされた1つの携帯電話のみを携帯し、朝の8:00に家から会社までバスで行く。ユーザは、クライアントソフトウェア内のバスの電子資格証明書の2次元バーコードを用いてスムーズに移動することができる。到着後、ユーザは、アクセス制御電子資格証明書を用いて会社に入ることができ、電子資格証明書を使用することによって出勤することができる。午前11:00において、ユーザAは、銀行サービスを処理するために銀行に行く必要があり、サービスを処理するために電子身分証明書および電子銀行カードが使用され得る。17:00において、ユーザAは、出張のために鉄道駅に移動する必要がある。ユーザAが回転式改札口を通過するとき、実名検証は、電子身分証明書および電子列車チケットを使用することによって実行され得る。検証が成功した後、ユーザは、列車に乗ることができる。電子資格証明書が検証されると、2次元バーコードを処理するための前述の安全な方法が使用される。前述の例は、生活および仕事について電子資格証明書によってもたらされる利便性およびセキュリティを説明することを意図しており、電子資格証明書の具体的な用途シナリオを限定することを意図していない。
前述の実装形態において、サーバ、クライアントソフトウェア、および資格証明書検証エンドデバイスが2次元バーコードを処理するプロセスは、別々に詳細に説明されている。しかしながら、実際には、サーバ、クライアントソフトウェア、および資格証明書検証エンドデバイスは、2次元バーコードを検証する上で不可欠である。以下の実装形態において、サーバ、クライアントソフトウェア、および資格証明書検証エンドデバイスは、まとめられて説明される。図7に示すように、方法は、以下のステップを含む。
501.資格証明書検証エンドデバイスは、サーバが電子資格証明書をクライアントソフトウェアに送信するように、ユーザ識別子に基づいて電子資格証明書を生成し、ユーザ識別子に基づいて対応する電子資格証明書をサーバに同期させる。
502.クライアントソフトウェアは、電子資格証明書取得要求をサーバに送信し、ここで、電子資格証明書取得要求は、ユーザ識別子とサービス有効時間とを含む。
503.サーバは、クライアントソフトウェアによって送信される電子資格証明書取得要求を受信し、電子資格証明書取得要求を構文解析し、電子資格証明書取得要求内に含まれるサービス有効時間を取得する。
504.サーバは、サービス有効時間がサービス仕様に準拠しているかどうかを検証する。
サービス有効時間がサービス仕様に準拠している場合、ステップ505が実行される。サービス有効時間がサービス仕様に準拠していない場合、電子資格証明書取得要求は、無視される。
505.ユーザ識別子に対応する電子資格証明書を取得し、電子資格証明書を暗号化する。
電子資格証明書を取得するための要求情報は、電子資格証明書を取得するためにユーザ識別子に基づいて資格証明書検証エンドデバイスにさらに送信され得る。
506.サーバは、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによってクライアントソフトウェアのユーザ公開鍵および電子資格証明書に署名し、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。
507.サーバは、クライアントソフトウェアおよび資格証明書検証エンドデバイスがサーバ公開鍵に基づいて署名情報を検証するように、サーバ秘密鍵に対応する公開鍵をブロードキャストする。
508.クライアントソフトウェアは、サーバによってブロードキャストされた公開鍵を受信して記憶する。
509.クライアントソフトウェアは、サーバによって送信されたサーバ署名情報および電子資格証明書を受信する。
510.クライアントソフトウェアは、電子資格証明書を取得するために、サーバによってブロードキャストされた公開鍵に基づいてサーバ署名情報を検証する。
サーバ署名情報に対する検証が成功した場合、ステップ511が実行される。サーバ署名情報に対する検証が失敗した場合、サーバによって提供される電子資格証明書が取得され得ない。
511.クライアントソフトウェアは、クライアントソフトウェア署名情報を取得するためにユーザ鍵を使用することによって電子資格証明書に署名し、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成する。
512.資格証明書検証エンドデバイスは、クライアントソフトウェア内の2次元バーコードを取得し、所定のセキュリティ情報の有効期間を検証し、クライアントソフトウェア署名情報およびサーバ署名情報を検証する。
513.所定のセキュリティ情報、クライアントソフトウェア署名情報、およびサーバ署名情報の各々に対する検証が成功した場合、検証のために電子資格証明書内に含まれるサービス有効時間を取得し、電子資格証明書内に含まれるサービス有効時間に対する検証が成功した場合、電子資格証明書に対する検証が成功したと判定する。
ステップ501からステップ513の詳細な説明について、前述の関連する説明に対して参照がなされ得ることに留意することは、価値がある。本発明の本実装形態においては、簡単にするために詳細を省略する。
さらに、図1に示す方法の実装形態として、本発明の別の実装形態は、さらにサーバを提供する。この装置の実装形態は、前述の方法の実装形態に対応する。読みやすくするために、前述の方法の実装形態における詳細は、この装置の実装形態においては省略される。しかしながら、本実装形態における装置が前述の方法の実装形態におけるすべての内容を対応して実施することができることは、明らかであるべきである。
さらに、本発明の一実装形態は、サーバを提供する。図8に示すように、装置は、以下、すなわち、クライアントソフトウェアによって送信された電子資格証明書取得要求を受信するように構成される受信ユニット61であって、電子資格証明書取得要求がユーザ識別子を含む、受信ユニット61と、受信ユニットによって受信されるユーザ識別子に対応する電子資格証明書を取得するように構成される第1の取得ユニット62と、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名するように構成される署名ユニット63と、資格証明書検証エンドデバイスが2次元バーコード内に含まれる電子資格証明書を検証するように、クライアントソフトウェアがユーザ鍵の有効時間内にサーバ署名情報を検証し、電子資格証明書に基づいて2次元バーコードを生成するように、署名ユニット63によって取得されるサーバ署名情報および第1の取得ユニットによって取得される電子資格証明書をクライアントソフトウェアに送信するように構成される送信ユニット64であって、資格証明書検証エンドデバイスがユーザ識別子に基づいて電子資格証明書を生成するように構成される、送信ユニット64とを含む。
さらに、図9に示すように、署名ユニット63は、以下、すなわち、電子資格証明書にユーザ署名鍵を割り当てるように構成される割り当てモジュール631と、サーバ秘密鍵を使用することによって、電子資格証明書と割り当てモジュールによって割り当てられる第1のユーザ公開鍵とに署名するように構成される第1の署名モジュール632であって、割り当てられるユーザ署名鍵が第1のユーザ公開鍵を含む、第1の署名モジュール632と、クライアントソフトウェアによって送信される第2のユーザ公開鍵を取得するように構成される取得モジュール633と、サーバ秘密鍵を使用することによって、電子資格証明書と、取得モジュールによって取得される第2のユーザ公開鍵とに署名するように構成される第2の署名モジュール634とを含む。
さらに、第1のユーザ公開鍵がサーバ秘密鍵を使用することによって署名された場合、送信ユニット64は、割り当てられたユーザ署名鍵、サーバ署名情報、および電子資格証明書をクライアントソフトウェアに送信するようにさらに構成される。
さらに、図9に示すように、サーバは、以下、すなわち、第1の取得ユニット62がユーザ識別子に対応する電子資格証明書を取得する前に電子資格証明書取得要求を構文解析するように構成される構文解析ユニット65と、構文解析ユニット65が電子資格証明書取得要求を構文解析した後、電子資格証明書取得要求内に含まれるサービス有効時間を取得するように構成される第2の取得ユニット66と、第2の取得ユニット66によって取得されるサービス有効時間がサービス仕様に準拠しているかどうかを検証するように構成される検証ユニット67とをさらに含み、ここで、第1の取得ユニット62は、検証ユニット67が、サービス有効時間がサービス仕様に準拠していることを検証するとき、ユーザ識別子に対応する電子資格証明書を取得するようにさらに構成される。
さらに、図9に示すように、第1の取得ユニット62は、以下、すなわち、資格証明書検証エンドデバイスがユーザ識別子に基づいて電子資格証明書を生成した後、資格証明書検証エンドデバイスによって同期された電子資格証明書を受信するように構成される受信モジュール621と、電子資格証明書を取得するために、ユーザ識別子に基づいて、電子資格証明書を取得するための要求情報を資格証明書検証エンドデバイスに送信するように構成される処理モジュール622とを含む。
さらに、ユーザ署名鍵は、非対称鍵である。
さらに、図9に示すように、サーバは、以下、すなわち、クライアントソフトウェアおよび資格証明書検証エンドデバイスがサーバ公開鍵に基づいて署名情報を検証するように、サーバ秘密鍵に対応する公開鍵をブロードキャストするように構成されるブロードキャストユニット68をさらに含む。
本発明の一実装形態は、クライアントソフトウェアをさらに提供する。図10に示すように、クライアントソフトウェアは、以下、すなわち、サーバによって送信されたサーバ署名情報および電子資格証明書を受信するように構成される第1の受信ユニット71であって、サーバ署名情報がサーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名することによってサーバによって取得される、第1の受信ユニット71と、電子資格証明書を取得するためにサーバ署名情報を検証するように構成される署名検証ユニット72と、ユーザ公開鍵に対応するユーザ鍵を取得するように構成される取得ユニット73と、クライアントソフトウェア署名情報を取得するために取得ユニット73によって取得されるユーザ鍵を使用することによって電子資格証明書に署名するように構成される署名ユニット74と、資格証明書検証エンドデバイスが所定のセキュリティ情報およびユーザ公開鍵に基づいて2次元バーコード内に含まれる電子資格証明書を検証するように、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成するように構成される生成ユニット75とを含み、ここで、所定のセキュリティ情報が有効期間を有し、資格証明書検証エンドデバイスは、ユーザ識別子に基づいて電子資格証明書を生成するように構成される。
さらに、図11に示すように、クライアントソフトウェアは、以下、すなわち、ユーザ公開鍵に対応するユーザ鍵を取得する前に、電子資格証明書に割り当てられ、サーバによって送信されるユーザ署名鍵を受信するように構成される第2の受信ユニット76をさらに含む。
取得ユニット73は、サーバによって電子資格証明書に割り当てられ、第2の受信ユニットによって受信されるユーザ署名鍵内に含まれる第1のユーザ鍵を取得するようにさらに構成される。
取得ユニット73は、クライアントソフトウェアによって生成され、ユーザ公開鍵に対応する第2のユーザ鍵を取得するようにさらに構成される。
さらに、図11に示すように、署名ユニット74は、以下、すなわち、第1のユーザ鍵を使用することによって電子資格証明書に署名するように構成される第1の署名モジュール741と、第2のユーザ鍵を使用することによって電子資格証明書に署名するように構成される第2の署名モジュール742とを含む。
さらに、図11に示すように、署名検証ユニット72は、以下、すなわち、サーバによってブロードキャストされるサーバ公開鍵を受信するように構成される受信モジュール721と、受信モジュールによって受信されるサーバ公開鍵を記憶するように構成される記憶モジュール722と、記憶モジュールによって記憶されるサーバ公開鍵、クライアントソフトウェア公開鍵、および電子資格証明書に基づいてサーバ署名情報を検証するように構成される第1の署名検証モジュール723とを含む。
さらに、ユーザ公開鍵およびユーザ鍵は、非対称鍵である。
さらに、図11に示すように、生成ユニット75は、以下、すなわち、所定のセキュリティ情報の有効期間を設定するように構成される設定モジュール751と、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、ユーザ公開鍵、所定のセキュリティ情報の有効期間、およびユーザ識別子に基づいて2次元バーコードを生成するように構成される生成モジュール752とを含む。
本発明の一実装形態は、資格証明書検証エンドデバイスをさらに提供する。図12に示すように、資格証明書検証エンドデバイスは、以下、すなわち、クライアントソフトウェア内の2次元バーコードを取得するように構成される第1の取得ユニット81であって、2次元バーコードが、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいてクライアントソフトウェアによって生成され、クライアントソフトウェア署名情報が、電子資格証明書に署名することによってクライアントソフトウェアによって取得され、サーバ署名情報が、電子資格証明書およびユーザ公開鍵に署名することによってサーバによって取得される、第1の取得ユニット81と、第1の取得ユニットによって取得される所定のセキュリティ情報の有効期間を検証するように構成される第1の検証ユニット82と、クライアントソフトウェア署名情報およびサーバ署名情報を検証するように構成される第2の検証ユニット83と、所定のセキュリティ情報に対する第1の検証ユニットの検証が成功し、クライアントソフトウェア署名情報およびサーバ署名情報の各々に対する第2の検証ユニットの検証が成功したとき、検証のために電子資格証明書内に含まれるサービス有効時間を取得するように構成される第3の検証ユニット84と、電子資格証明書内に含まれるサービス有効時間に対する第3の検証ユニットの検証が成功したとき、電子資格証明書に対する検証が成功したと判定するように構成される判定ユニット85とを含む。
さらに、図13に示すように、資格証明書検証エンドデバイスは、以下、すなわち、第1の取得ユニット81がクライアントソフトウェア内の2次元バーコードを取得する前に、ユーザ識別子に基づいて電子資格証明書を生成するように構成される生成ユニット86と、サーバが電子資格証明書をクライアントソフトウェアに送信するように、ユーザ識別子に基づいて対応する電子資格証明書をサーバに同期させるように構成される同期化ユニット87と、サーバによって送信される電子資格証明書を取得するための要求情報を受信するように構成される受信ユニット88と、電子資格証明書をサーバに送信するように構成される送信ユニット89とをさらに含み、電子資格証明書を取得するための要求情報は、ユーザ識別子を含む。
さらに、図13に示すように、第2の検証ユニット83は、以下、すなわち、2次元バーコード内に含まれるユーザ公開鍵を取得するように構成される取得モジュール831と、取得モジュールによって取得されるユーザ公開鍵および電子資格証明書に基づいてクライアントソフトウェア署名情報を検証するように構成される第1の署名検証モジュール832と、サーバ秘密鍵に対応し、サーバによってブロードキャストされるサーバ公開鍵を受信するように構成される受信モジュール833と、受信モジュールによって受信されるサーバ公開鍵を記憶するように構成される記憶モジュール834と、記憶モジュールによって記憶されるサーバ公開鍵、クライアントソフトウェア公開鍵、および電子資格証明書に基づいてサーバ署名情報を検証するように構成される第2の検証モジュール835とを含む。
さらに、図13に示すように、資格証明書検証エンドデバイスは、以下、すなわち、判定ユニット85が、電子資格証明書に対する検証が成功したと判定する前に、2次元バーコード内に含まれるユーザ識別子を取得するように構成される第2の取得ユニット810と、第2の取得ユニット810によって取得されるユーザ識別子を検証するように構成される第4の検証ユニット811とをさらに含む。
判定ユニット85は、第4の検証ユニット811が、ユーザ識別子に対する検証が成功したと判定したとき、電子資格証明書に対する検証が成功したと判定するようにさらに構成される。
さらに、図14に示すように、本発明の一実装形態は、2次元バーコードを処理するシステムをさらに提供し、システムは、以下、すなわち、電子資格証明書取得要求をサーバ92に送信するように構成されるクライアントソフトウェア91であって、電子資格証明書取得要求がユーザ識別子を含む、クライアントソフトウェア91と、クライアントソフトウェア91によって送信される電子資格証明書取得要求を受信し、ユーザ識別子に基づいて資格証明書検証エンドデバイス93から電子資格証明書を取得するように構成されるサーバ92と、サーバ92によって送信される電子資格証明書を取得するための要求情報を受信してそれに応答し、電子資格証明書をサーバ92に送信するように構成される資格証明書検証エンドデバイス93とを含む。
サーバ92は、資格証明書検証エンドデバイス93によって送信される電子資格証明書を受信し、サーバ92の署名情報を取得するために電子資格証明書およびクライアントソフトウェア91のユーザ公開鍵に署名し、サーバ92の署名情報および電子資格証明書をクライアントソフトウェア91に送信するようにさらに構成される。
クライアントソフトウェア91は、サーバ92によって送信されるサーバ92の署名情報および電子資格証明書を受信し、電子資格証明書を取得するためにサーバ92の署名情報を検証し、ユーザ公開鍵に対応するユーザ鍵を取得し、クライアントソフトウェア91の署名情報を取得するためにユーザ鍵を使用することによって電子資格証明書に署名し、所定のセキュリティ情報、クライアントソフトウェア91の署名情報、サーバ92の署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成するように構成される。
資格証明書検証エンドデバイス93は、クライアントソフトウェア91内の2次元バーコードを取得し、所定のセキュリティ情報の有効期間を検証し、クライアントソフトウェア91の署名情報およびサーバ92の署名情報を検証し、所定のセキュリティ情報、クライアントソフトウェア91の署名情報、およびサーバ92の署名情報の各々に対する検証が成功した場合、検証のために電子資格証明書内に含まれるサービス有効時間を取得し、電子資格証明書内に含まれるサービス有効時間に対する検証が成功した場合、電子資格証明書に対する検証が成功したと判定するように構成される。
本発明において提供される2次元バーコードを処理するためのサーバ、クライアントソフトウェア、資格証明書検証エンドデバイス、システムによれば、クライアントソフトウェアによって送信される電子資格証明書取得要求を受信した後、サーバは、サーバ署名情報を取得するためにサーバ秘密鍵を使用することによって電子資格証明書およびクライアントソフトウェアのユーザ公開鍵に署名し、サーバ署名情報および電子資格証明書をクライアントソフトウェアに送信する。クライアントソフトウェアは、サーバによって送信されたサーバ署名情報および電子資格証明書を受信し、サーバ署名情報を検証し、署名情報に対する検証が成功した後、電子資格証明書に署名し、所定のセキュリティ情報、クライアントソフトウェア署名情報、サーバ署名情報、電子資格証明書、およびユーザ公開鍵に基づいて2次元バーコードを生成する。2次元バーコードを取得した後、資格証明書検証エンドデバイスは、使用プロセスにおいて電子資格証明書のセキュリティを保証するために、伝送プロセスにおいて電子資格証明書が改ざんされているかどうかを判定するために、2次元バーコード内のサーバ署名情報、クライアントソフトウェア署名情報、および所定のセキュリティ情報を検証することができる。
前述の実装形態において、各実装形態の説明は、それぞれの焦点を有する。実装形態において詳細に説明されていない部分について、他の実装形態における関連説明に対して参照がなされ得る。
前述の方法および装置における関連する特徴は、相互に参照され得ることが理解され得る。加えて、前述の実装形態における「第1の」、「第2の」などは、実装形態間を区別するために使用され、各実装形態の長所および短所を表さない。
当業者は、説明の便宜および簡潔さのため、上記で説明したシステム、装置、およびユニットの特定の作業プロセスについて、前述の方法の実装形態における対応するプロセスに対して参照がなされ得、本発明の実装形態においては、簡単にするために詳細を省略することを明確に理解することができる。
本明細書で提供されるアルゴリズムおよび表示は、いかなる特定のコンピュータ、仮想システム、または他のデバイスにも本質的に関係しない。様々な汎用システムが本明細書に基礎を置く指示と一緒にも使用され得る。上記の説明に基づいて、そのようなシステムを構築するために必要とされる構造は、明らかである。さらに、本発明は、いかなる特定のプログラミング言語にも適用されない。本明細書で説明する本発明の内容は、様々なプログラミング言語を使用して実施され得、詳細な言語の前述の説明は、本発明の最良の実装形態を開示するために使用されることが理解されるべきである。
本明細書において、多数の詳細が提供される。しかしながら、本発明の実装形態がこれらの詳細なしで実施され得ることが理解され得る。いくつかの事例では、本明細書の理解を曖昧にしないように、よく知られている方法、構造、および技術は、詳細には示されていない。
同様に、本開示を合理化し、様々な発明の態様のうちの1つまたは複数を理解するのを助けるために、本発明の特徴は、ときには、本発明の単一の実装形態、図面、または説明にまとめてグループ化されることが理解されるべきである。しかしながら、開示されている方法は、以下の意図を反映していると解釈されるべきではない。すなわち、特許請求されている開示は、各請求項において指定された特徴よりも多くの特徴を必要とする。より正確には、以下の特許請求の範囲において反映されるように、発明の態様は、以前に開示した単一の実装形態のすべての特徴よりも少ない。したがって、詳細な実装形態に続く特許請求の範囲は、詳細な実装形態を明確に組み込む。各請求項は、本発明の別々の実装形態として機能する。
当業者は、実装形態における装置内のモジュールが適応的に変更され得、実装形態とは異なる1つまたは複数のデバイス内に配置され得ることを理解することができる。実装形態におけるモジュールまたはユニットまたは構成要素は、1つのモジュールまたはユニットまたは構成要素に組み合わされ得、加えて複数のサブモジュールまたはサブユニットまたはサブ構成要素に分割され得る。これらの特徴および/またはプロセスもしくはユニットが相互に排他的であるという事実を除いて、明細書(添付の特許請求の範囲、要約書、および添付図面を含む)におけるそのような方法において開示された任意の方法またはデバイスのすべての開示された特徴およびすべてのプロセスまたはユニットは、任意の組合せモードにおいて組み合わされ得る。特に明記しない限り、本明細書(添付の特許請求の範囲、要約書、および添付図面を含む)において開示された各特徴は、同じ、同等の、または類似の目的を果たす代替の特徴によって置き換えられ得る。
加えて、当業者は、本明細書に記載のいくつかの実装形態は、別の特徴を含む代わりに別の実装形態に含まれるいくつかの特徴を含むが、異なる実装形態の特徴の組合せが、本発明の範囲内に入ること、および異なる実装形態を形成することを意味することを理解することができる。例えば、以下の特許請求の範囲において、企図された実装形態のうちの任意の1つが任意の組合せモードにおいて使用され得る。
本発明における様々な部分の実装形態は、ハードウェア、または1つもしくは複数のプロセッサ上で実行されるソフトウェアモジュール、またはそれらの組合せによって実施され得る。当業者は、本発明の一実装形態に基づいて開示の名称(例えば、2次元バーコードを処理するための装置)の構成要素のうちのいくつかまたはすべての機能のうちのいくつかまたはすべてを実装するために、実際にはマイクロプロセッサまたはデジタル信号プロセッサ(DSP)が使用され得ることを理解すべきである。本発明は、本明細書に記載の方法の一部またはすべてを実行するためのデバイスまたは装置プログラム(例えば、コンピュータプログラムおよびコンピュータプログラム製品)としても実装され得る。本発明を実施するためのそのようなプログラムは、コンピュータ可読媒体内に記憶され得、または1つもしくは複数の信号の形態を有することができる。そのような信号は、インターネットウェブサイトからダウンロードされ得、または搬送波信号上で提供され得、または任意の他の形態において提供され得る。
前述の実装形態は、本発明を限定するのではなく、本発明を説明することを意図しており、当業者は、添付の特許請求の範囲から逸脱することなく代替の実装形態を設計することができることに留意することは、価値がある。特許請求の範囲において、括弧内に配置されたいかなる参照記号も、特許請求の範囲に対する限定として構成されるべきではない。「含む」という単語は、特許請求の範囲内に列挙された要素またはステップの存在を排除しない。要素の前の「1つ」または「a/an」という単語は、複数のそのような要素の存在を排除しない。本発明は、いくつかの異なる要素を含むハードウェア、または適切にプログラムされたコンピュータによって実施され得る。いくつかの装置を列挙している請求項において、これらの装置のうちのいくつかは、同じハードウェア項目を使用することによって具体化され得る。「第1の」、「第2の」、および「第3の」という単語の使用は、いかなる順序も示さない。これらの単語は、名前として解釈され得る。
61 受信ユニット
62 第1の取得ユニット
63 署名ユニット
64 送信ユニット
65 構文解析ユニット
66 第2の取得ユニット
67 検証ユニット
68 ブロードキャストユニット
71 第1の受信ユニット
72 署名検証ユニット
73 取得ユニット
74 署名ユニット
75 生成ユニット
76 第2の受信ユニット
81 第1の取得ユニット
82 第1の検証ユニット
83 第2の検証ユニット
84 第3の検証ユニット
85 判定ユニット
86 生成ユニット
87 同期化ユニット
88 受信ユニット
89 送信ユニット
91 クライアントソフトウェア
92 サーバ
93 資格証明書検証エンドデバイス
621 受信モジュール
622 処理モジュール
631 割り当てモジュール
632 第1の署名モジュール
633 取得モジュール
634 第2の署名モジュール
721 受信モジュール
722 記憶モジュール
723 第1の署名検証モジュール
741 第1の署名モジュール
742 第2の署名モジュール
751 設定モジュール
752 生成モジュール
810 第2の取得ユニット
811 第4の検証ユニット
831 取得モジュール
832 第1の署名検証モジュール
833 受信モジュール
834 記憶モジュール
835 第2の検証モジュール

Claims (14)

  1. サービス要求を処理するためのコンピュータで実行される方法であって、前記コンピュータで実行される方法は、
    1つまたは複数のプロセッサによって、クライアントから電子資格証明書取得要求を受信するステップであって、前記電子資格証明書取得要求が、ユーザ識別子を含むステップと、
    前記1つまたは複数のプロセッサによって、前記ユーザ識別子に対応する電子資格証明書を受信するステップと、
    前記1つまたは複数のプロセッサによって、サーバ署名情報を生成するステップであって、前記サーバ署名情報が、前記電子資格証明書、および前記クライアントのユーザ公開鍵を含み、前記電子資格証明書および前記ユーザ公開鍵が、所定の期間内にサーバ秘密鍵を使用して署名される、ステップと、
    前記1つまたは複数のプロセッサによって、前記サーバ署名情報を前記クライアントに送信するステップであって、前記クライアントが、前記所定の期間内に前記サーバ署名情報を暗号により検証するとともに、前記電子資格証明書に基づいて二次元バーコードを生成するように構成され、前記二次元バーコードに含まれる前記電子資格証明書が、資格証明書検証デバイスによって、検証されるように構成され、前記資格証明書検証デバイスが、前記ユーザ識別子に基づいて、前記電子資格証明書を生成するように構成される、ステップとを含む、
    コンピュータで実行される方法。
  2. 前記サーバ秘密鍵を使用して前記電子資格証明書に署名することが、
    ユーザ署名鍵を前記電子資格証明書に割り当てるとともに、前記サーバ秘密鍵を使用することによって、前記電子資格証明書および第1のユーザ公開鍵に署名することであって、前記ユーザ署名鍵が、前記第1のユーザ公開鍵を含む、こと、または、
    クライアントソフトウェアによって送信された第2のユーザ公開鍵を取得するとともに、前記サーバ秘密鍵を使用することによって、前記電子資格証明書および前記第2のユーザ公開鍵に署名することを含む、
    請求項1に記載のコンピュータで実行される方法。
  3. 前記ユーザ署名鍵が、非対称鍵である、
    請求項2に記載のコンピュータで実行される方法。
  4. 前記第1のユーザ公開鍵が、前記サーバ秘密鍵を使用することによって署名され、
    前記サーバ署名情報および前記電子資格証明書を前記クライアントソフトウェアに送信することが、
    前記割り当てられたユーザ署名鍵、前記サーバ署名情報、および前記電子資格証明書を、前記クライアントソフトウェアに送信することを含む
    請求項2に記載のコンピュータで実行される方法。
  5. 前記ユーザ識別子に対応する前記電子資格証明書を取得する前に、前記方法は、
    前記電子資格証明書取得要求を構文解析するステップと、
    前記電子資格証明書取得要求内に含まれるサービス有効時間を取得するステップと、
    前記サービス有効時間がサービス仕様に準拠しているかどうかを検証するステップとをさらに含む、
    請求項1に記載のコンピュータで実行される方法。
  6. 前記ユーザ識別子に対応する前記電子資格証明書を取得することが、
    前記サービス有効時間が前記サービス仕様に準拠しているかどうかを判定することと、
    前記サービス有効時間が前記サービス仕様に準拠しているとの判定に応答して、前記ユーザ識別子に対応する前記電子資格証明書を取得することとを含む、
    請求項5に記載のコンピュータで実行される方法。
  7. 前記ユーザ識別子に対応する前記電子資格証明書を取得することが、
    前記資格証明書検証デバイスによって同期された前記電子資格証明書を受信すること、または、
    電子資格証明書を取得するために、前記ユーザ識別子に基づいて前記資格証明書検証デバイスに、前記電子資格証明書を取得するための要求情報を送信することを含む、
    請求項6に記載のコンピュータで実行される方法。
  8. 前記方法は、
    前記サーバ秘密鍵に対応する公開鍵をブロードキャストするステップであって、クライアントソフトウェアおよび前記資格証明書検証デバイスが、サーバ公開鍵に基づいて前記サーバ署名情報を検証するステップとをさらに含む、
    請求項6に記載のコンピュータで実行される方法。
  9. 前記二次元バーコードが、以下の動作を実行することによって生成され、前記動作が、
    所定のセキュリティ情報の有効期間を設定することと、
    前記所定のセキュリティ情報、クライアントソフトウェア署名情報、前記サーバ署名情報、前記電子資格証明書、前記ユーザ公開鍵、前記所定のセキュリティ情報の前記有効期間、および前記ユーザ識別子に基づいて、前記二次元バーコードを生成することとを含む、
    請求項1に記載のコンピュータで実行される方法。
  10. 前記ユーザ識別子に基づいて、前記電子資格証明書をサーバに同期させるステップであって、前記サーバが前記電子資格証明書をクライアントソフトウェアに送信するステップをさらに含む
    請求項1に記載のコンピュータで実行される方法。
  11. 所定のセキュリティ情報の有効期間が、前記電子資格証明書のタイプに基づく、
    請求項1に記載のコンピュータで実行される方法。
  12. 前記電子資格証明書が、航空券、バスチケット、列車チケット、コンサートチケット、銀行カード、アクセス制御カード、パーク入場チケット、身分証明書、マーチャントクーポン、会員証、運転免許証、運転免許証アクセス制御カード、またはバスカードを含む、
    請求項1に記載のコンピュータで実行される方法。
  13. 前記電子資格証明書および前記ユーザ公開鍵を署名することが、
    ハッシュ値を得るためにハッシュアルゴリズムを使用することによって、前記ユーザ公開鍵および前記電子資格証明書に対してハッシュ演算を実行することと、
    前記サーバ署名情報を取得するために、前記サーバ秘密鍵を使用することによって、前記ハッシュ値に署名することとを含む、
    請求項1に記載のコンピュータで実行される方法。
  14. 二次元バーコードを処理するシステムであって、前記システムが、請求項1〜13のいずれか一項に記載のコンピュータで実行される方法を実行するように構成された複数のモジュールを含む、
    システム。
JP2019532002A 2016-12-14 2017-12-04 2次元バーコード処理方法、デバイス、およびシステム Active JP6768960B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201611154671.9 2016-12-14
CN201611154671.9A CN106899570B (zh) 2016-12-14 2016-12-14 二维码的处理方法、装置及系统
PCT/CN2017/114382 WO2018107988A1 (zh) 2016-12-14 2017-12-04 二维码的处理方法、装置及系统

Publications (3)

Publication Number Publication Date
JP2020502674A JP2020502674A (ja) 2020-01-23
JP2020502674A5 JP2020502674A5 (ja) 2020-09-03
JP6768960B2 true JP6768960B2 (ja) 2020-10-14

Family

ID=59197788

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019532002A Active JP6768960B2 (ja) 2016-12-14 2017-12-04 2次元バーコード処理方法、デバイス、およびシステム

Country Status (18)

Country Link
US (4) US10581597B2 (ja)
EP (1) EP3557831B1 (ja)
JP (1) JP6768960B2 (ja)
KR (1) KR102220087B1 (ja)
CN (1) CN106899570B (ja)
AU (1) AU2017376036B2 (ja)
BR (1) BR112019012149A2 (ja)
CA (1) CA3046858C (ja)
ES (1) ES2841724T3 (ja)
MX (1) MX2019006968A (ja)
MY (1) MY189760A (ja)
PH (1) PH12019501375A1 (ja)
PL (1) PL3557831T3 (ja)
RU (1) RU2726831C1 (ja)
SG (1) SG10202100196WA (ja)
TW (2) TWI749577B (ja)
WO (1) WO2018107988A1 (ja)
ZA (1) ZA201904592B (ja)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106899570B (zh) 2016-12-14 2019-11-05 阿里巴巴集团控股有限公司 二维码的处理方法、装置及系统
CN107247553A (zh) * 2017-06-30 2017-10-13 联想(北京)有限公司 选择对象的方法和电子设备
CN107451643B (zh) * 2017-08-15 2019-08-20 北京航空航天大学 动态二维码的生成、识别方法和装置
CN107451902A (zh) * 2017-08-17 2017-12-08 郑州云海信息技术有限公司 车票的管理方法和装置
CN109495268B (zh) * 2017-09-12 2020-12-29 中国移动通信集团公司 一种二维码认证方法、装置及计算机可读存储介质
CN109922029A (zh) * 2017-12-13 2019-06-21 航天信息股份有限公司 电子凭据验证方法及装置
KR102530441B1 (ko) * 2018-01-29 2023-05-09 삼성전자주식회사 전자 장치와 외부 전자 장치 및 이를 포함하는 시스템
EP3531362A1 (en) * 2018-02-22 2019-08-28 Banco Bilbao Vizcaya Argentaria, S.A. Method for validating a voucher
CN110247882B (zh) * 2018-03-09 2022-04-08 阿里巴巴集团控股有限公司 通信方法及系统、数据处理方法
CN108696510B (zh) * 2018-04-17 2021-08-03 新大陆(福建)公共服务有限公司 一种基于云端多渠道协同生产二维码方法以及系统
CN108734615A (zh) * 2018-04-17 2018-11-02 新大陆(福建)公共服务有限公司 基于动态二维码取代证件的业务处理方法及计算机设备
CN108900302A (zh) * 2018-06-19 2018-11-27 广州佳都数据服务有限公司 二维码生成、认证方法、生成终端及认证设备
CN108876375B (zh) * 2018-06-29 2020-09-08 全链通有限公司 区块链实名参与方法和系统
US10778444B2 (en) 2018-07-11 2020-09-15 Verizon Patent And Licensing Inc. Devices and methods for application attestation
CN109379181A (zh) * 2018-08-10 2019-02-22 航天信息股份有限公司 生成、验证二维码的方法和装置,存储介质和电子设备
CN109102291B (zh) * 2018-08-15 2020-04-07 阿里巴巴集团控股有限公司 一种二维码支付的安全控制方法和装置
CN111881386B (zh) * 2018-08-31 2024-03-12 创新先进技术有限公司 一种基于扫码操作的页面访问方法、装置及系统
CN111061885A (zh) * 2018-10-17 2020-04-24 联易软件有限公司 电子文书制作方法和系统
CN111242248B (zh) * 2018-11-09 2023-07-21 中移(杭州)信息技术有限公司 一种人员信息监控的方法、装置及计算机存储介质
CN109492434A (zh) * 2018-11-12 2019-03-19 北京立思辰新技术有限公司 一种电子凭据的安全操作方法和系统
CN109684801B (zh) * 2018-11-16 2023-06-16 创新先进技术有限公司 电子证件的生成、签发和验证方法及装置
WO2020142994A1 (zh) * 2019-01-10 2020-07-16 环球雅途集团有限公司 一种控制方法、售票规则服务器、检票规则服务器及装置
WO2020142993A1 (zh) * 2019-01-10 2020-07-16 环球雅途集团有限公司 一种控制方法、售检票系统及存储介质
CN109815660B (zh) * 2019-01-11 2023-05-12 公安部第三研究所 身份电子证照信息获取验证系统及方法
CN109992976A (zh) * 2019-02-27 2019-07-09 平安科技(深圳)有限公司 访问凭证验证方法、装置、计算机设备及存储介质
CN110046687A (zh) * 2019-03-01 2019-07-23 阿里巴巴集团控股有限公司 条码展示方法、设备以及装置
CN110138835A (zh) * 2019-04-15 2019-08-16 阿里巴巴集团控股有限公司 特殊凭证发放方法和装置
US11503072B2 (en) * 2019-07-01 2022-11-15 Mimecast Israel Ltd. Identifying, reporting and mitigating unauthorized use of web code
CN116578962A (zh) * 2019-07-24 2023-08-11 创新先进技术有限公司 一种身份验证方法、装置及设备
CN111181909B (zh) * 2019-08-07 2022-02-15 腾讯科技(深圳)有限公司 一种身份信息的获取方法及相关装置
CN110430054B (zh) * 2019-08-09 2022-10-21 北京智汇信元科技有限公司 一种身份管理方法及系统
CN110519294B (zh) * 2019-09-12 2021-08-31 创新先进技术有限公司 身份认证方法、装置、设备及系统
CN110955917B (zh) * 2019-10-28 2024-02-02 航天信息股份有限公司 一种对涉及多个参与方的电子凭据进行验证的方法及系统
CN111144531B (zh) * 2019-12-10 2023-11-17 深圳左邻永佳科技有限公司 二维码生成方法和装置、电子设备、计算机可读存储介质
TWI736280B (zh) * 2020-05-22 2021-08-11 國立虎尾科技大學 基於生物特徵的身分驗證方法
US11811776B2 (en) * 2020-06-30 2023-11-07 Western Digital Technologies, Inc. Accessing shared pariiiions on a storage drive of a remote device
CN111932692A (zh) * 2020-08-19 2020-11-13 中国银行股份有限公司 车票校验系统及方法
CN111932262B (zh) * 2020-09-27 2021-01-15 南京吉拉福网络科技有限公司 识别关于消费凭证的交易风险的方法、计算设备和介质
CN112258257A (zh) * 2020-12-23 2021-01-22 深圳市思乐数据技术有限公司 一种数据处理方法、终端设备、服务器及存储介质
CN113407748A (zh) * 2021-05-11 2021-09-17 银雁科技服务集团股份有限公司 重要空白凭证管理方法及装置
US11765166B1 (en) * 2021-05-25 2023-09-19 United Services Automobile Association (Usaa) Systems and methods for secure data transfer
US11880479B2 (en) * 2021-08-05 2024-01-23 Bank Of America Corporation Access control for updating documents in a digital document repository
CN114679276B (zh) * 2022-02-18 2024-04-23 支付宝(杭州)信息技术有限公司 基于时间的一次性密码算法的身份认证方法和装置
CN115150126B (zh) * 2022-05-24 2024-04-19 从法信息科技有限公司 一种法律服务远程处理方法、装置和电子设备
CN114863597B (zh) * 2022-07-04 2022-10-11 成都桐领智能科技有限公司 一种基于可信条码的出入管理方法、系统和装置
CN115243243B (zh) * 2022-09-22 2022-11-29 上海纬百科技有限公司 健康状态电子凭证核验方法、生成方法、设备及介质

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6381696B1 (en) * 1998-09-22 2002-04-30 Proofspace, Inc. Method and system for transient key digital time stamps
RU2195021C1 (ru) * 2001-03-27 2002-12-20 Дочернее Государственное Унитарное Предприятие Научно-Технический Центр "Атлас-Северо-Запад" Система защитной маркировки и верификации документов
JP2003223493A (ja) * 2002-01-30 2003-08-08 Nec Corp ロジスティックpkiサービスシステム、携帯端末及びそれに用いるロジスティックpkiサービス方法
JP4343567B2 (ja) * 2003-03-27 2009-10-14 みずほ情報総研株式会社 チケット管理方法及び電子チケットシステム
JP2006039728A (ja) * 2004-07-23 2006-02-09 Nec Corp 認証システム及び認証方法
CN1744135A (zh) * 2005-09-06 2006-03-08 北京魅力之旅商业管理有限公司 一种电子凭证实现方法和实现装置
CN101030278A (zh) * 2007-04-04 2007-09-05 王忠杰 一种基于互联网服务的纸质票据支付系统
BRPI0802251A2 (pt) * 2008-07-07 2011-08-23 Tacito Pereira Nobre sistema, método e dispositivo para autenticação em relacionamentos por meios eletrÈnicos
US8707404B2 (en) * 2009-08-28 2014-04-22 Adobe Systems Incorporated System and method for transparently authenticating a user to a digital rights management entity
MX2012004397A (es) * 2009-10-13 2012-08-15 Square Inc Sistemas y metodos para transaccion financiera a traves de lector de tarjeta miniaturizado.
US20120308003A1 (en) * 2011-05-31 2012-12-06 Verisign, Inc. Authentic barcodes using digital signatures
CN102842081A (zh) * 2011-06-23 2012-12-26 上海易悠通信息科技有限公司 一种移动电话生成二维码并实现移动支付的方法
US8984276B2 (en) * 2012-01-10 2015-03-17 Jpmorgan Chase Bank, N.A. System and method for device registration and authentication
US20150288670A1 (en) * 2012-09-28 2015-10-08 Hewlett-Packard Development Company, L.P. Qr code utilization in self-registration in a network
CN103812837B (zh) * 2012-11-12 2017-12-12 腾讯科技(深圳)有限公司 一种电子凭证发送方法
US20140254796A1 (en) * 2013-03-08 2014-09-11 The Chinese University Of Hong Kong Method and apparatus for generating and/or processing 2d barcode
US9646150B2 (en) * 2013-10-01 2017-05-09 Kalman Csaba Toth Electronic identity and credentialing system
US9923879B1 (en) 2014-01-16 2018-03-20 Microstrategy Incorporated Sharing keys
CN104836776A (zh) * 2014-02-10 2015-08-12 阿里巴巴集团控股有限公司 数据交互方法和装置
CN103854061A (zh) * 2014-03-27 2014-06-11 腾讯科技(深圳)有限公司 电子票应用、生成、验证方法和系统
TWI529641B (zh) * 2014-07-17 2016-04-11 捷碼數位科技股份有限公司 驗證行動端動態顯示之資料之系統及其方法
JP6296938B2 (ja) * 2014-08-07 2018-03-20 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation モバイルデバイス上で二次元コードを利用した認証
US10008057B2 (en) * 2014-08-08 2018-06-26 Live Nation Entertainment, Inc. Short-range device communications for secured resource access
KR101666374B1 (ko) * 2015-02-13 2016-10-14 크루셜텍 (주) 사용자 인증서 발급과 사용자 인증을 위한 방법, 장치 및 컴퓨터 프로그램
CN105530099A (zh) * 2015-12-11 2016-04-27 捷德(中国)信息科技有限公司 基于ibc的防伪验证方法、装置、系统和防伪凭证
US10645068B2 (en) 2015-12-28 2020-05-05 United States Postal Service Methods and systems for secure digital credentials
CN105515783B (zh) * 2016-02-05 2019-02-15 中金金融认证中心有限公司 身份认证方法、服务器及认证终端
GB2547472A (en) * 2016-02-19 2017-08-23 Intercede Ltd Method and system for authentication
CN105763323A (zh) * 2016-03-04 2016-07-13 韦业明 一种电子凭证生成和存储的系统和方法
CN105978688B (zh) * 2016-05-30 2019-04-16 葛峰 一种基于信息分离管理的跨网域安全认证方法
CN106899570B (zh) * 2016-12-14 2019-11-05 阿里巴巴集团控股有限公司 二维码的处理方法、装置及系统
GB2546459B (en) * 2017-05-10 2018-02-28 Tomlinson Martin Data verification
US11316897B2 (en) * 2017-05-19 2022-04-26 Vmware, Inc. Applying device policies using a management token
US11750385B2 (en) * 2017-11-16 2023-09-05 Prisec Innovation Limited System and method for authenticating a user
US11057366B2 (en) * 2018-08-21 2021-07-06 HYPR Corp. Federated identity management with decentralized computing platforms
US10601828B2 (en) 2018-08-21 2020-03-24 HYPR Corp. Out-of-band authentication based on secure channel to trusted execution environment on client device

Also Published As

Publication number Publication date
AU2017376036A1 (en) 2019-06-27
MY189760A (en) 2022-03-03
AU2017376036B2 (en) 2020-05-21
BR112019012149A2 (pt) 2019-12-17
EP3557831A4 (en) 2019-10-30
US11032070B2 (en) 2021-06-08
US20210028930A1 (en) 2021-01-28
TWI749577B (zh) 2021-12-11
CA3046858C (en) 2021-08-31
TW202117603A (zh) 2021-05-01
ZA201904592B (en) 2020-07-29
EP3557831B1 (en) 2020-09-30
US10581597B2 (en) 2020-03-03
US11336435B2 (en) 2022-05-17
PL3557831T3 (pl) 2021-06-14
SG10202100196WA (en) 2021-02-25
TW201822072A (zh) 2018-06-16
CN106899570B (zh) 2019-11-05
PH12019501375A1 (en) 2020-02-24
WO2018107988A1 (zh) 2018-06-21
KR102220087B1 (ko) 2021-03-02
EP3557831A1 (en) 2019-10-23
KR20190093640A (ko) 2019-08-09
ES2841724T3 (es) 2021-07-09
US10790970B2 (en) 2020-09-29
US20200204359A1 (en) 2020-06-25
RU2726831C1 (ru) 2020-07-15
US20190245684A1 (en) 2019-08-08
TWI697842B (zh) 2020-07-01
JP2020502674A (ja) 2020-01-23
CN106899570A (zh) 2017-06-27
US20210297247A1 (en) 2021-09-23
MX2019006968A (es) 2019-09-06
CA3046858A1 (en) 2018-06-21

Similar Documents

Publication Publication Date Title
JP6768960B2 (ja) 2次元バーコード処理方法、デバイス、およびシステム
US11018869B2 (en) Blockchain-based digital identity management (DIM) system
US11139976B2 (en) System and method, which using blockchain and mobile devices, provides the validated and authenticated identity of an individual to a valid and authenticated requestor
US10171476B2 (en) System and method for protecting the privacy of identity and financial information of the consumer conducting online business
JP7083892B2 (ja) デジタル証明書のモバイル認証相互運用性
KR101858653B1 (ko) 블록체인 데이터베이스 및 이와 연동하는 머클 트리 구조를 통해 모바일 아이디를 이용하여 사용자를 인증하는 방법, 단말 및 이를 이용한 서버
JP6504639B1 (ja) サービス提供システムおよびサービス提供方法
JP2015194879A (ja) 認証システム、方法、及び提供装置
CN114666168A (zh) 去中心化身份凭证验证方法、装置,以及,电子设备
US11171781B2 (en) System and method which using blockchain protects the privacy of access code and the identity of an individual seeking online access
US20240048395A1 (en) Method and system for authentication credential
US8804158B2 (en) Token generation from a printer
EP3518132A1 (en) Method and apparatus for improving website security

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190809

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200722

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200722

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200826

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200914

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200923

R150 Certificate of patent or registration of utility model

Ref document number: 6768960

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250