JP2018516027A - サーバとクライアントの動作方法、サーバ、及びクライアント装置 - Google Patents

サーバとクライアントの動作方法、サーバ、及びクライアント装置 Download PDF

Info

Publication number
JP2018516027A
JP2018516027A JP2018503451A JP2018503451A JP2018516027A JP 2018516027 A JP2018516027 A JP 2018516027A JP 2018503451 A JP2018503451 A JP 2018503451A JP 2018503451 A JP2018503451 A JP 2018503451A JP 2018516027 A JP2018516027 A JP 2018516027A
Authority
JP
Japan
Prior art keywords
client
identifier
key
server
partner
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.)
Granted
Application number
JP2018503451A
Other languages
English (en)
Other versions
JP6510137B2 (ja
Inventor
テ ジョン キム
テ ジョン キム
カン ヒョン チョ、
カン ヒョン チョ、
Original Assignee
ツーアイピー カンパニー リミテッド
ツーアイピー カンパニー リミテッド
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
Priority claimed from KR1020150172151A external-priority patent/KR101785382B1/ko
Priority claimed from KR1020160041490A external-priority patent/KR101771992B1/ko
Application filed by ツーアイピー カンパニー リミテッド, ツーアイピー カンパニー リミテッド filed Critical ツーアイピー カンパニー リミテッド
Priority claimed from PCT/KR2016/003763 external-priority patent/WO2016163836A1/ko
Publication of JP2018516027A publication Critical patent/JP2018516027A/ja
Application granted granted Critical
Publication of JP6510137B2 publication Critical patent/JP6510137B2/ja
Expired - Fee Related 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

ピアツーピア通信をサポートするサーバの動作方法が開示される。一実施形態はクライアントから受信された公開キー(public key)要求に対応して公開キーを発行し、前記クライアントで前記公開キーを送信し、前記クライアントから個人キーを受信し、前記公開キー及び前記個人キーをキーペア(key pair)にマッピングし、前記クライアントから前記クライアントの1つ以上の固有情報を含む識別子生成要求を受信し、前記識別子生成要求に対応して前記クライアントに対応する識別子を生成し、前記固有情報を用いてセキュリティキーを生成し、前記識別子及び前記セキュリティキーを前記クライアントに送信し、前記クライアントから前記識別子及び前記セキュリティキーを含む認証要求を受信し、前記認証要求に対応して前記クライアントを認証し、認証結果を前記クライアントに送信するステップを含む。

Description

以下の実施形態は、サーバ及びクライアントの動作に関する。
現在の通信方式はユーザの個人情報(例えば、電話番号又はEメールなど)を用いてユーザが認証されたり識別された場合、ユーザに通信サービスを提供する。
関連する先行技術として、韓民国公開特許第10−2015−0035143号(発明の名称:移動通信サービス提供方法及びそのための装置、出願人:SKテレコム)がある。前記大韓民国公開特許第公報には、移動性管理装置からユーザ装置に対する位置登録要求を受信し、前記ユーザ装置の加入者プロファイル情報を参照して特定の移動通信サービス加入の有無を確認し、前記ユーザ装置が特定の移動通信サービスに加入している場合、前記ユーザ装置に対して登録されたアクセスポイントネーム(Access Point Name)情報を特定の移動通信サービス用に更新し、前記更新されたアクセスポイントネーム情報を含んでいる加入者プロファイル情報を前記移動性管理装置に提供する加入者情報管理装置が開示されている。
一側面に係るサーバの動作方法は、クライアントから受信された公開キー要求に対応して公開キーを発行し、前記クライアントに前記公開キーを送信するステップと、前記クライアントから個人キーを受信し、前記公開キー及び前記個人キーをキーペアにマッピングするステップと、前記クライアントから前記クライアントの1つ以上の固有情報を含む識別子生成要求を受信するステップと、前記識別子生成要求に対応して前記クライアントに対応する識別子を生成し、前記固有情報を用いてセキュリティキーを生成し、前記識別子及び前記セキュリティキーを前記クライアントに送信するステップと、前記クライアントから前記識別子及び前記セキュリティキーを含む認証要求を受信するステップと、前記認証要求に対応して前記クライアントを認証し、認証結果を前記クライアントに送信するステップとを含み、前記クライアントは、前記認証結果に応じて他のクライアントと通信可能な状態に遷移する。
前記一つ以上の固有情報は、前記クライアントの物理的装置に対応する装置固有キー及び前記クライアントに対応する製造キーを含み得る。
前記セキュリティキーは、前記装置固有キー及び製造キーのうち少なくとも1つに対応して生成され得る。
前記識別子は、n個の区別情報に基づいたn桁のランダム値(n^n)のいずれか1つであり得る。
前記識別子は、ハッシュインデックスが埋め込まれる。
前記クライアントには、前記サーバの認証された1つ以上の他のクライアントのリストが表示され、前記クライアントは、前記他のクライアントと前記セキュリティキーを用いて暗号化されたパケットを送受信し得る。
前記マッピングされたキーペアは、前記サーバ及び前記クライアントのうちの1つ以上に格納され得る。
一実施形態に係るクライアントの動作方法は、サーバに公開キー要求を送信するステップと、前記サーバから前記公開キー要求に対応する公開キーを受信し、個人キーを生成するステップと、前記個人キーをサーバに送信し、前記サーバから前記公開キー及び前記個人キーに対するキーペア生成完了情報を受信するステップと、前記サーバに、前記クライアントの1つ以上の固有情報を含む識別子生成要求を送信するステップと、前記サーバから、前記識別子生成要求に対応した識別子及びセキュリティキーを受信するステップと、前記サーバに前記識別子及び前記セキュリティキーを含む認証要求を送信するステップと、前記サーバから、前記認証要求に対応した認証結果を受信するステップと、前記認証結果に応じて他のクライアントと通信可能な状態に遷移するステップとを含む。
前記一つ以上の固有情報は、前記クライアントの物理的装置に対応する装置固有キー及び前記クライアントで駆動される通信ソフトウェアに対応する製造キーを含み得る。
前記セキュリティキーは、前記装置固有キー及び製造キーのうち少なくとも1つに対応して生成され得る。
前記識別子は、n個の区別情報に基づいたn桁のランダム値(n^n)のいずれか1つであり得る。
前記識別子は、ハッシュインデックスが埋め込まれたものであり得る。
前記クライアントには、前記サーバの認証された1つ以上の他のクライアントのリストが表示され、前記クライアントは、前記他のクライアントと前記セキュリティキーを用いて暗号化されたパケットを送受信し得る。
前記公開キー及び前記個人キーのキーペアは、前記サーバ及び前記クライアントのうちの1つ以上に格納され得る。
一実施形態に係るサーバば、クライアントと通信する通信インターフェースと、コントローラとを含み、前記コントローラは、前記クライアントから受信された公開キー要求に対応して公開キーを発行し、前記通信インターフェースを用いて前記クライアントで前記公開キーを送信し、前記通信インターフェースを用いて個人キーを受信し、前記公開キー及び前記個人キーをキーペアにマッピングし、前記通信インターフェースを用いて前記クライアントの1つ以上の固有情報を含む識別子生成要求を受信し、前記識別子生成要求に対応して、前記クライアントに対応する識別子を生成し、前記固有情報を用いてセキュリティキーを生成し、前記通信インターフェースを用いて前記識別子及び前記セキュリティキーを前記クライアントに送信し、前記通信インターフェースを用いて前記識別子及び前記セキュリティキーを含む認証要求を受信し、前記認証要求に対応して前記クライアントを認証し、前記通信インターフェースを用いて認証結果を前記クライアントに送信し、前記クライアントは、前記認証結果に応じて他のクライアントと通信可能な状態に遷移する。
前記一つ以上の固有情報は、前記クライアントの物理的装置に対応する装置固有キー及び前記クライアントに対応する製造キーを含み得る。
前記セキュリティキーは、前記装置固有キー及び製造キーのうち少なくとも1つに対応して生成され得る。
前記識別子は、n個の区別情報に基づいたn桁のランダム値(n^n)のいずれか1つであり得る。
前記識別子は、ハッシュインデックスが埋め込まれたものであり得る。
前記クライアントには、前記サーバの認証された1つ以上の他のクライアントのリストが表示され、前記クライアントは、前記他のクライアントと前記セキュリティキーを用いて暗号化されたパケットを送受信し得る。
前記マッピングされたキーペアは、前記サーバ及び前記クライアントのうちの1つ以上に格納され得る。
他の実施形態に係るクライアントの動作方法は、連絡先を追加するための連絡先要求データ及び前記クライアントの識別子をサーバに送信するステップと、前記連絡先要求データに対応して生成されたキーを前記サーバから受信するステップ(前記キーは前記クライアントの識別子とマッピングされる)と、相手クライアントが前記キーを取得するように予め決定したキー伝達プロセスを行うステップと、前記サーバから前記相手クライアントの識別子を受信するステップと、前記相手クライアントの識別子を連絡先レジストリに登録するステップとを含み、前記サーバは、前記相手クライアントから前記相手クライアントの識別子及び前記キーを受信し、前記相手クライアントの識別子を前記クライアントに送信する。
前記予め決定したキー伝達プロセスを行うステップは、前記キーに対応する視覚的コードを生成して表示するステップを含み得る。
前記クライアントの識別子、前記相手クライアントの識別子、第三者の識別子、及び前記相手クライアントと前記第三者との間の友人接続のための友人接続要求データを前記サーバに送信するステップをさらに含み得る。
前記の友人接続要求データは、前記相手クライアント及び前記第三者に送信され、前記相手クライアント及び前記第三者が前記の友人接続要求データに対する承認入力を行う場合、前記相手クライアントの識別子は前記第三者に送信され、前記第三者の識別子は前記相手クライアントに送信され得る。
前記クライアントと第三者との間の友人接続のための友人接続要求データを前記サーバから受信するステップと、前記の友人接続要求データに対する承認の有無を示す応答データを前記サーバに送信するステップと、前記の友人接続要求データに対する承認入力をし、前記第三者が前記の友人接続要求データに対する承認入力を行う場合、前記サーバから前記第三者の識別子を受信するステップと、前記第三者の識別子を連絡先レジストリに登録するステップとをさらに含み得る。
前記相手クライアントの識別子が前記連絡先レジストリから削除された場合、前記相手クライアントの連絡先レジストリに登録された前記クライアントの識別子に対する通信接続をディスエイブルするためのディスエイブル要求データを前記サーバに送信するステップをさらに含み得る。
前記ディスエイブル要求データに対応する、前記相手クライアントに送信される識別子制御命令は、前記クライアントの識別子を削除するための第1命令語、前記クライアントの識別子が視覚的に表示されないための第2命令語、及び前記クライアントと前記相手クライアントとの間の通信が実行されないようにする第3命令語のうち少なくとも1つを含み得る。
前記サーバから前記相手クライアントの識別子を制御するための識別子制御命令を受信するステップをさらに含み得る。
前記識別子制御命令は、前記相手クライアントの識別子を削除するための第1命令語、前記相手クライアントの識別子が視覚的に表示されないための第2命令語、及び前記クライアントと前記相手クライアントとの間の通信が実行されないようにする第3命令語のうち少なくとも1つを含み得る。
前記連絡先レジストリに登録された少なくとも1つの識別子を含む連絡先データを前記サーバにバックアップするための連絡先格納要求データを前記サーバに送信するステップと、前記連絡先格納要求データに対応して生成された識別コード及び暗号キーを前記サーバから受信するステップと、前記暗号キーを用いて連絡先データを暗号化するステップと、前記識別コード及び前記暗号するように暗号化された連絡先データを前記サーバに送信するステップとをさらに含み、前記識別コード及び前記暗号化された連絡先データは、前記サーバ内にマッピングされて格納され得る。
前記相手クライアントのアップデートされた状態情報を前記サーバから受信するステップをさらに含み、前記アップデートされた状態情報は、前記相手クライアントが通信セッションを介して接続可能であることを示す。
更なる一実施形態に係るクライアントの動作方法は、相手クライアントの識別子とマッピングされるキーを取得するステップと、前記キー及び前記クライアントの識別子をサーバに送信するステップと、前記サーバから前記相手クライアントの識別子を受信するステップと、前記相手クライアントの識別子を連絡先レジストリに登録するステップとを含み、前記キーは、前記相手クライアントが連絡先を追加するための連絡先要求データ及び前記相手クライアントの識別子をサーバに送信した場合、前記サーバによって生成される。
前記キーを取得するステップは、前記相手クライアントによって生成された視覚的コードをキャプチャーするステップと、前記視覚的コードを復号化して前記キーを取得するステップとを含み得る。
他の一実施形態に係るサーバの動作方法は、連絡先を追加するための連絡先要求データ及びクライアントの識別子を前記クライアントから受信するステップと、前記連絡先要求データに対応してキーを生成し、前記キーを前記クライアントの識別子とマッピングするステップと、前記キーを前記クライアントに送信するステップと、前記クライアントの予め決定したキー伝達プロセスを介して前記キーを取得した相手クライアントから、前記キー及び前記相手クライアントの識別子を受信するステップと、前記キーとマッピングされる識別子を検索するステップと、検索結果に基づいて前記クライアント及び前記相手クライアントの連絡先を管理するステップとを含む。
前記検索結果に前記クライアントの識別子が含まれた場合、前記キーの使用可能な回数に基づいて前記キーが有効であるかを確認するステップをさらに含み得る。
前記キーが有効である場合に前記キーの使用可能な回数をアップデートし、前記キーが有効でない場合に前記クライアントの識別子を伝達できないことを示すメッセージを前記相手クライアントに送信するステップを含み得る。
前記管理するステップは、前記クライアントの識別子を前記相手クライアントに送信し、前記相手クライアントの識別子を前記クライアントに送信するステップを含み得る。
前記管理するステップは、前記クライアントと前記相手クライアントとの間の友人接続を記録するステップを含み得る。
前記クライアントの識別子、前記相手クライアントの識別子、第三者の識別子、及び前記相手クライアントと前記第三者との間の友人接続のための友人接続要求データを前記クライアントから受信するステップと、前記の友人接続要求データを前記第三者及び前記相手クライアントに送信するステップと、前記の友人接続要求データに対する承認の有無を示す応答データを前記第三者及び前記相手クライアントから受信するステップと、前記応答データに基づいて前記第三者及び前記相手クライアントの連絡先を管理するステップとをさらに含み得る。
前記相手クライアントに登録された前記クライアントの識別子に対する通信接続をディスエイブルするためのディスエイブル要求データを前記クライアントから受信するステップと、前記ディスエイブル要求データに対応する連絡先制御命令を生成するステップと、前記連絡先制御命令を前記相手クライアントに送信するステップとをさらに含み得る。
前記連絡先制御命令は、前記クライアントの識別子を削除するための第1命令語、前記相手クライアントが前記クライアントの識別子を視覚的に表示しないようにする第2命令語、及び前記クライアントと前記相手クライアントとの間の通信が実行されないようにする第3命令語のうち少なくとも1つを含み得る。
前記クライアントの連絡先レジストリに登録された少なくとも1つの識別子を含む連絡先データをバックアップするための連絡先格納要求データを前記クライアントから受信するステップと、前記連絡先格納要求データに対応して識別コード及び前記連絡先データを暗号化するために用いられる暗号キーを生成するステップと、前記識別コード及び前記暗号キーを前記クライアントに送信するステップと、前記クライアントから前記識別コード及び前記暗号するように暗号化された連絡先データを受信するステップと、前記識別コード及び前記暗号化された連絡先データをマッピングして格納するステップとをさらに含み得る。
前記クライアントと他のクライアントから前記識別コード及び連絡先復元要求データを受信するステップと、前記識別コードとマッピングされる連絡先データを検索するステップと、検索結果に基づいて前記暗号化された連絡先データを前記他のクライアントに送信するステップと、前記他のクライアントから前記暗号キーで復号化された連絡先データを登録するための登録要求データを受信するステップと、前記他の識別子に対応して前記復号化された連絡先を登録するステップとを含み得る。
前記相手クライアントが前記サーバに接続する場合、前記相手クライアントの状態情報をアップデートするステップと、前記クライアントに前記アップデートされた状態情報を送信するステップとをさらに含み、前記アップデートされた状態情報は、前記相手クライアントが通信セッションを介して接続可能であることを示す。
実施形態は、ユーザの個人情報の入力を受けることなく、通信可能な識別子を付与できるセキュリティー通信プラットフォームを提供することができる。また、実施形態は、通信ソフトウェア(又は、ファームウェア)に識別子を割り当てて電話番号基盤の通信サービスではない識別子基盤の通信サービスを提供することができる。
一実施形態に係るクライアント及びサーバの動作を説明するためのフローチャートである。 一実施形態に係る識別子割当及びクライアント認証のためのプロセスの一例を説明するためのフローチャートである。 一実施形態に係る連絡先追加の一例を説明するためのフローチャートである。 一実施形態に係る連絡先追加の更なる一例を説明するためのフローチャートである。 一実施形態に係る連絡先ディスエイブルの一例を説明するためのフローチャートである。 一実施形態に係る連絡先バックアップの一例を説明するためのフローチャートである。 一実施形態に係る連絡先の復元の一例を説明するためのフローチャートである。 一実施形態に係るセキュリティー通話ドングルの一例を説明するための図である。 一実施形態に係るクライアントの動作方法の一例を説明するためのフローチャートである。 一実施形態に係るクライアントの動作方法の更なる一例を説明するためのフローチャートである。 一実施形態に係るサーバの動作方法を説明するためのフローチャートである。 一実施形態に係るクライアント装置の一例を説明するためのブロック図である。 一実施形態に係るクライアント装置の更なる一例を説明するためのブロック図である。 一実施形態に係るサーバの一例を説明するためのブロック図である。 一実施形態に係るクライアントの動作方法のまた更なる一例を説明するためのフローチャートである。 一実施形態に係るサーバの更なる一例を説明するためのブロック図である。
以下、実施形態を添付する図面を参照しながら詳細に説明する。
以下で説明する実施形態には様々な変更が加えられることができる。下記に説明する実施形態は実施形態に対して限定しようとするためのものではなく、これに対する全ての変更、均等物ないし代替物を含むものとして理解しれなければならない。
本実施形態で用いた用語は、単に特定の実施形態を説明するために用いられるものであって、本発明を限定しようとする意図はない。単数の表現は、文脈上、明白に異なる意味をもたない限り複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は明細書上に記載した特徴、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものが存在することを示すものであって、1つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、又はこれを組み合わせたものなどの存在又は付加の可能性を予め排除しないものとして理解しなければならない。
異なる定義さがれない限り、技術的であるか又は科学的な用語を含むここで用いる全ての用語は、本実施形態が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有する。一般的に用いられる予め定義された用語は、関連技術の文脈上で有する意味と一致する意味を有するものと解釈すべきであって、本明細書で明白に定義しない限り、理想的又は過度に形式的な意味として解釈されることはない。
また、添付図面を参照して説明することにおいて、図面符号に関係なく同じ構成要素は同じ参照符号を付与し、これに対する重複する説明は省略することにする。実施形態の説明において関連する公知技術に対する具体的な説明が実施形態の要旨を不要に曖昧にすると判断される場合、その詳細な説明は省略する。
図1は、一実施形態に係るクライアント及びサーバの動作を説明するためのフローチャートである。
クライアントは、例えば、通信サービスを可能にする通信アプリケーションである。通信サービスは、他のクライアントとのP2P(Peer To Peer)通信を含む。
クライアントが端末に最初にインストールされて実行される場合、クライアントは識別子が割り当てられているかを確認する(110)。例えば、クライアントは、メモリに識別子が格納されているかを確認する。
識別子が割り当てられた場合、クライアントはサーバに接続する(120)。クライアントは、サーバに接続するために自身の識別子及びIP(Internet Protocol)アドレスをサーバに送信する。
クライアントがサーバに接続した場合、サーバは、クライアントの状態情報をアップデートする(130)。例えば、サーバはクライアントの状態情報を「オンライン状態」に変更する。相違に表現すると、サーバは識別子に対する状態情報を「オフライン状態」から「オンライン状態」に変更し得る。サーバは、クライアントのアップデートされた状態情報を他のクライアントに送信する。他のクライアントは、クライアントがオンライン状態にあるとディスプレイに表示し得る。言い換えれば、他のクライアントは、クライアントの識別子の状態情報がオンライン状態ということをディスプレイに表示できる。
図1に図示していないが、クライアントの実行が終了すれば(例えば、ユーザがクライアントの実行を中断させた場合など)、クライアントは実行が終了したことを示す終了データをサーバに送信する。ここで、クライアントは、終了データと共に自身の識別子をサーバに送信できる。
サーバは終了データを受信する場合、クライアントの状態情報をアップデートする。例えば、サーバは、クライアントの状態情報を「オンライン状態」から「オフライン状態」に変更し得る。サーバは、クライアントと友人接続された他のクライアントにクライアントのアップデートされた状態情報を送信する。そのため、他のクライアントは、クライアントがオフライン状態にあるとディスプレイに表示することができる。
従来における通話関連のアプリケーションとは異なって、クライアントは、ユーザの個人情報の入力なしでユーザに通話のような通信サービスを提供できる。また、クライアントは、ユーザの個人情報を用いたユーザ認証の手続なしにユーザに通話サービスを提供できる。また、電話番号がなければ通話できなかった従来の通信サービスとは異なって、クライアントに識別子が割り当てられれば、ユーザはクライアントを介して相手側と通話したり、又はメッセージのやり取りできる。ここで、通話パケットなどは、クライアントと他のクライアントとの間に設定された通信セッション(P2P通信セッション)を介して送受信される。
識別子が割り当てられていない場合、クライアントは、サーバと識別子割当のためのプロセスを行う(140)。また、図1に示していないが、クライアントは識別子を割り当てられた後、クライアント認証のためのプロセスを行ってもよい。以下、図2を参照しながら識別子割当及びクライアント認証のためのプロセスについて説明する。
<識別子割当及びクライアント認証>
図2は、一実施形態に係る識別子割当及びクライアント認証のためのプロセスの一例を説明するためのフローチャートである。
図2を参照すると、クライアントは、サーバに公開キー(public key)要求データを送信する(211)。サーバは、公開キーを発行する(221)。公開キーのサイズは、例えば、64バイト、すなわち、512ビットであってもよい。サーバはクライアントに公開キーを送信する(222)。
クライアントは公開キーを格納し、個人キー(private key)を生成する(212)。個人キーのサイズは、例えば、64バイトであってもよい。クライアントは個人キーをサーバに送信する(213)。クライアントは、公開キーを用いて個人キーを暗号化し、暗号化された個人キーをサーバに送信する。サーバは公開キーを有しているため、公開キーを用いて暗号化された個人キーを復号する。
サーバは、公開キー及び個人キーをキーペア(key pair)にマッピングする(223)。サーバはマッピングされたキーペアをサーバに格納する(224)。サーバは、キーペアの生成を示すメッセージをクライアントに送信する(225)。サーバは、個人キーを用いてメッセージを暗号化する。
クライアントは、メッセージを介してキーペアの生成を確認できる。そのため、クライアントは個人キー及び公開キーをキーペアにマッピングし、キーペアを格納する(214)。
図2に示された例の場合、キーペアは、クライアント及びサーバに格納される。しかし、キーペアが格納される個所は一実施形態に係る例示的な事項に過ぎず、キーペアが格納される個所は前述した事項に限定されない。例えば、キーペアは、クライアント及びサーバのいずれか1つに格納されてもよい。
クライアントは、識別子生成要求データをサーバに送信する(215)。識別子生成要求データは、個人キーを用いて暗号化される。また、クライアントは、識別子生成要求データと共に固有情報をサーバに送信する。具現に応じて、固有情報は識別子生成要求データに含まれてもよい。
固有情報は、例えば、クライアントの物理的装置又はオペレーティングシステム(Operating System:OS)に対応する装置固有キー及びクライアントに対応する製造キーのうち少なくとも1つを含む。
クライアントの物理的装置は、例えば、CPU及びMPU(Micro Processor Unit)のうち少なくとも1つを含む。装置固有キーは、CPUの識別情報又はMPUの識別情報から取得される。クライアントのオペレーティングシステムは、他のオペレーティングシステムと区別する固有情報を有する。そのため、クライアントは、オペレーティングシステムの固有情報から装置固有キーを取得できる。
製造キーは、サイトキー、メーカーキー、及び製品キーを含む。サイトキーはサイト情報に対応する。サイト情報は、例えば、サイトIPアドレスを基礎にする情報を示す。メーカーキーはメーカー情報に対応する。メーカー情報は、例えば、クライアントを生成したメーカーの識別情報を示す。製品キーはクライアントのバージョン情報に対応する。
装置固有キー及び製造キーは、予め決定したサイズを有する。例えば、装置固有キーのサイズは128ビットであり、製造キーのサイズは208ビットである。同様に、サイトキー、メーカーキー、及び製品キーは、予め決定したサイズを有してもよい。例えば、サイトキーのサイズは80ビットであってもよく、メーカーキーのサイズは64ビットであってもよく、製品キーのサイズは64ビットであってもよい。
製造キーは、サイトキー、メーカーキー、及び製品キーの順に構成されてもよい。サイトキー、メーカーキー、及び製品キーの順は例示的な事項に過ぎず、サイトキー、メーカーキー、及び製品キーの順は前述した事項に限定されない。
サーバは識別子生成要求データを受信した場合、セキュリティキー及び識別子を生成する(226)。一実施形態において、サーバは、クライアントの固有情報に対応するセキュリティキーを生成する。例えば、サーバがクライアントから装置固有キー及び製造キーを受信した場合、サーバは、装置固有キー及び製造キーを変形してセキュリティキーを生成する。サーバは、128ビットの装置固有キー及び208ビットの製造キー基づいて256ビットのセキュリティキーを生成する。後述するが、クライアントが認証される場合、クライアントは、他のクライアントと通信セッションを設定して通信できる。セキュリティー通信のためにクライアントは、セキュリティキーを用いてパケットを暗号化する。すなわち、セキュリティキーは、通信セッションを介して交換されるパケットを暗号化するために使用される。
サーバ120は識別子をランダムに生成し、クライアントに割り当てる。識別子は、n個の区別情報に基づいたn桁のランダム値n^nのうちのいずれか1つである。例えば、1バイトの区別情報が64個である場合、識別子は、64桁を有する64^64個のランダム値のうちいずれか1つであり得る。サーバは、64個の区別情報をランダムに配列して識別子を生成する。サーバは、識別子が異なる識別子と重複するかを確認し、重複しない場合は識別子をクライアントに割り当てる。そのため、識別子は、クライアントごとにユニークである。
識別子にはハッシュインデックス(Hash index)が埋め込まれる。ハッシュインデックスのサイズは、例えば、64ビットであってもよい。サーバは、変換ロジックを用いて識別子にハッシュインデックスを埋め込む。例えば、識別子のサイズが64バイトであると仮定する。サーバは、最初のバイト内に含まれた特定ビットに変換ロジックを適用する。場合に応じて、特定ビットに変換ロジックが適用されても、特定ビットは他のビットに変更されないこともある。特定ビットが第1論理値を有する場合、特定ビットに変換ロジックによって第2論理値に変更されたり第1論理値を保持する。特定ビットは、例えば、1つであってもよい。サーバは、残りのバイト内に含まれた特定ビットに変換ロジックを適用する。そのため、識別子のストリング(string)のうちの一部は変更されてもよく、ハッシュインデックスが識別子に埋め込まれてもよい。例えば、識別子がABCDのストリングである場合、ABCDは、変換ロジックによってAZDDになり、AZDDにハッシュインデックスが埋め込まれる。
サーバが識別子及びセキュリティキーを生成した場合、サーバは識別子及びセキュリティキーをクライアントに送信する(227)。識別子及びセキュリティキーは個人キーを用いて暗号化される。
クライアントは、個人キーを用いて識別子及びセキュリティキーを復号する。
クライアントは、識別子及びセキュリティキーをメモリに格納する(216)。
ここまでが識別子割当のためのプロセスである。クライアントは、識別子基盤の通信ができるように認証プロセスをサーバと行うことができる。以下、認証プロセスについて説明する。
クライアントは、認証要求データをサーバに送信する(217)。また、クライアントは、認証要求データと共に識別子及びセキュリティキーをサーバに送信する。認証要求データ、識別子、及びセキュリティキーは、個人キーを用いて暗号化される。具現に応じて、識別子及びセキュリティキーは認証要求データに含まれてもよい。
サーバは、クライアントから受信された識別子及びセキュリティキーを確認する。より具体的に、サーバは、クライアントから受信された識別子及びセキュリティキーがステップ226で生成された識別子及びセキュリティキーと同一であるか否かを確認する。
サーバは、クライアントから受信された識別子及びセキュリティキーに基づいてクライアントを認証し(228)、認証結果データをクライアントに送信する(229)。認証結果データは個人キーを用いて暗号化される。クライアントが認証される場合、上記で説明したサーバに接続して通信サービスを可能にする。
一実施形態によれば、識別子は、クライアントに割り当てられた固有情報であるため、クライアントが端末から削除され、端末に新しいクライアントがインストールされる場合、新しいクライアントはクライアントの識別子を自身の識別子として利用できない。そのため、新しいクライアントは、サーバと図2に示す識別子割当プロセスを行って自身の識別子が割当てられ、サーバと認証プロセスを行う。
<連絡先追加>
図3は、一実施形態に係る連絡先追加の一例を説明するためのフローチャートである。
図3を参照すると、クライアントAは、連絡先を追加するための連絡先要求データ及び識別子Aをサーバに送信する(310)。識別子Aは、クライアントAに割り当てられた識別子である。具現に応じて、識別子Aは、連絡先要求データに含まれてサーバに送信される。
サーバは、連絡先要求データに対応してキーを生成する(311)。また、サーバはキーと識別子Aをマッピングする(312)。サーバは、識別子Aをキーとマッピングして格納する。サーバはキーをクライアントAに送信する(313)。
クライアントAがキーを受信する場合、クライアントAは、クライアントBがキーを取得するようにキー伝達プロセスを行う(314)。例えば、クライアントAは、キーをエンコーディングしてキーに対応する視覚的コードを生成し、視覚的コードをディスプレイに表示する。視覚的コードは、クライアントBが光学的手段(例えば、カメラ)を介して情報を取得できる形態のコードとして、例えば、1Dバーコード、2Dバーコード、及び/又は3Dバーコードであり得る。2Dバーコードは、QR(Quick Response)コード、データマトリックスコード(DataMatrix code)、マキシコード(Maxi Code)などを含む。他の例として、クライアントAは、サーバを介して視覚的コードをクライアントBに送信する。
クライアントBは、キー伝達プロセスを介してキーを取得する(315)。例えば、クライアントBは、クライアントAのディスプレイに表示された視覚的コードをキャプチャーし、視覚的コードを復号化してキーを取得できる。
クライアントBは、キー及び識別子Bをサーバに送信する(316)。ここで、識別子Bは、クライアントBに割り当てられた識別子であり得る。
サーバは、キーとマッピングされる識別子を検索する(317)。図3に示された例として、識別子Aがキーとマッピングされているため、検索結果に識別子Aが含まれる。
サーバは、キーが有効であるかを確認する(318)。例えば、サーバはキーの使用可能な回数に基づいてキーが有効であるかを確認する。
一実施形態によれば、キーの使用可能な回数は、クライアントAのユーザによって設定される。キーの使用可能な回数が1と設定された場合、当該のキーは1回性である。すなわち、サーバは、連絡先要求データを受信するごとにキーを生成する。これは、セキュリティー程度が高いことを意味する。キーの使用可能な回数が複数回設定された場合、当該キーはクライアントAの他の要求がない限り複数回用いられる。この場合、サーバは、クライアントAの最初の連絡先要求データを受信するときキーを生成し、その後連絡先要求データを受信するときはキーを生成しない。また、キーの使用可能な回数は無制限に設定されてもよい。この場合、クライアントAの他の要求がない限り、キーは永久的に使用される。これは、セキュリティー程度が極めて低いことを意味する。
ステップ318において、キーの使用可能な回数が0であれば、キーは有効ではない。これは、クライアントAが使用可能な回数を超過して連絡先要求データを送信したことを意味する。この場合、サーバは、識別子AをクライアントBに送信できないことを示す、失敗メッセージをクライアントBに送信する(319)。図3に図示していないが、サーバは、クライアントAにステップ310を再び実行しろとのメッセージを送信する。クライアントAは、メッセージにより連絡先要求データ及び識別子Aをサーバに再び送信し、サーバはキーを生成し得る。
ステップ318において、キーの使用可能な回数が0でなければ、キーは有効である。この場合、サーバはキーの使用可能な回数をアップデートする(320)。例えば、サーバは、使用可能な回数から1を差し引く。
サーバは、クライアントA及びクライアントBの連絡先を管理する。例えば、サーバは、キーが有効である場合、識別子BをクライアントAに送信し(321)、識別子AをクライアントBに送信する(322)。また、サーバは、クライアントA及びクライアントBの間の友人接続を記録する。相違に表現すれば、サーバは、識別子A及び識別子Bの間の友人接続を記録する。
クライアントAは識別子Bを受信する場合、連絡先レジストリに識別子Bを登録する(323)。
クライアントBは識別子Aを受信する場合、連絡先レジストリに識別子Aを登録する(324)。
図4は、一実施形態に係る連絡先追加の更なる一例を説明するためのフローチャートである。
識別子B及び識別子CがクライアントAの連絡先レジストリに登録されており、識別子Bは、クライアントCの連絡先レジストリに登録されず、識別子Cは、クライアントBの連絡先レジストリに登録されていないと仮定する。すなわち、クライアントAは、クライアントB及びCそれぞれと友人として接続されており、クライアントB及びCは互いに友人として接続されていない。この場合、クライアントAは、クライアントB及びCが友人に接続されるようにできる。
クライアントAは、連絡先リストから識別子Bを選択し、識別子Bを受信するクライアントCを選択する。また、クライアントAは、サーバに送信するメッセージを生成する。ここで、メッセージは、クライアントA、B、及びCそれぞれのユーザの名前を含んでいる。以下、図4を参照しながら、連絡先追加の更なる一例を説明する。
図4を参照すると、クライアントAは、識別子BがクライアントにCに送信されるための友人接続要求データをサーバに送信する(410)。相違に表現すれば、友人接続要求データは、クライアントBとクライアントCの間の友人接続のためのクライアントAの要求データである。友人接続要求データは、クライアントAが生成したメッセージを含む。
クライアントAは、友人接続要求データと共に識別子A、識別子B、及び識別子Cをサーバに送信する。具現に応じて、識別子A、識別子B、及び識別子Cは、友人接続要求データに含まれてサーバに送信される。
サーバは、友人接続要求データをクライアントBに送信する(411)。
クライアントBは、友人接続要求データに対する承認の有無を示す応答データをサーバに送信する(412)。応答データは、例えば、クライアントBの承認入力又は拒絶入力を含む。承認入力は、識別子Bの送信(ここで、識別子Bの受信対象はクライアントCである)に対する承認を示し、拒絶入力は、識別子Bの送信に対する拒絶を示す。相違に表現すれば、承認入力は、クライアントBがクライアントCとの友人接続を承認したことを示し、拒絶入力は、クライアントBがクライアントCとの友人接続を断ったことを示す。
サーバは、応答データを用いてクライアントBが友人接続要求データを承認したか否かを確認する(413)。ここで、クライアントBが友人接続要求データを承認していない場合、サーバは、友人接続要求データに対する拒絶メッセージをクライアントAに送信する(414)。
クライアントBが友人接続要求データを承認した場合、サーバは、友人接続要求データをクライアントCに送信する(415)。
クライアントCは、友人接続要求データに対する承認の有無を示す応答データをサーバに送信する(416)。応答データは、例えば、クライアントCの承認入力又は拒絶入力を含む。承認入力は、識別子Cの送信(ここで、識別子Cの受信対象はクライアントBである)に対する承認を示し、拒絶入力は、識別子Cの送信に対する拒絶を示す。相違に表現すれば、承認入力は、クライアントCがクライアントBとの友人接続を承認したことを示し、拒絶入力は、クライアントCがクライアントBとの友人接続を断ったことを示す。
サーバは、応答データを用いてクライアントCが友人接続要求データを承認したか否かを確認する(417)。ここで、クライアントCが友人接続要求データを承認していない場合、サーバは、友人接続要求データに対する拒絶メッセージをクライアントAに送信する(418)。
クライアントCが友人接続要求データを承認した場合、サーバは、クライアントB及びCの連絡先を管理する。例えば、サーバは、識別子CをクライアントBに送信し(419)、識別子BをクライアントCに送信する(420)。また、サーバは、クライアントB及びクライアントCの間の友人接続を記録する。
クライアントBは、自身の連絡先レジストリに識別子Cを登録し(421)、クライアントCは、自身の連絡先レジストリに識別子Bを登録する(422)。
図4に示す例の場合、ステップ415は、ステップ413の結果に依存する。すなわち、図4の例の場合、サーバがクライアントCに友人接続要求データを送信することは、クライアントBが友人接続要求データを承認したかに依存する。これは、一実施形態に係る例示的な事項に過ぎず、ステップ415はステップ413の結果に依存することなく実行されてもい。例えば、サーバは、友人接続要求データを同時にクライアントB及びCに送信する。ここで、サーバは、2つのいずれか1つから拒絶入力を含んでいる応答メッセージを受信すると、クライアントB及びCを友人接続できないことがある。クライアントB及びCが友人接続要求データを承認した場合、サーバは識別子CをクライアントBに送信し、識別子BをクライアントCに送信する。
<連絡先ディスエイブル>
図5は、一実施形態に係る連絡先ディスエイブルの一例を説明するためのフローチャートである。
図5を参照すると、クライアントAの連絡先レジストリから識別子Bが削除された場合、クライアントAはディスエイブル要求データをサーバに送信する(510)。ここで、ディスエイブル要求データは、クライアントBの連絡先レジストリに登録された識別子Aに対する通信接続(例えば、P2P通信接続)をディスエイブルするためのデータである。また、クライアントAは、ディスエイブル要求データと共に識別子A及び識別子Bをサーバに送信する。具現に応じて、識別子A及び識別子Bは、ディスエイブル要求データに含まれてサーバに送信される。
サーバは、ディスエイブル要求データを受信する場合、クライアントAとクライアントBの間の友人接続に対する記録を削除してもよい。
また、サーバは、ディスエイブル要求データに対応する識別子制御命令を生成する(511)。識別子制御命令は、例えば、識別子Aを削除するための第1命令語、識別子Aが視覚的に表示されないための第2命令語、及びクライアントAとクライアントBの間の通信(例えば、P2P通信)が実行されないようにする第3命令語のうち少なくとも1つを含む。
サーバは、識別子制御命令をクライアントBに送信する(512)。
クライアントBは、識別子制御命令により識別子Aを制御する(513)。例えば、クライアントBは、第1命令語に応じて連絡先レジストリから識別子Aを削除してもよい。異なる一例として、クライアントBは、第2命令語に応じて識別子Aを表示しなくてもよい。この場合、連絡先リストから他の識別子は表示されるものの、識別子Aは表示されない。更なる一例として、クライアントBは、第3命令語に応じて識別子Aの状態情報をオフライン状態として定義する。この場合、クライアントAがサーバに接続してオンライン状態であっても、クライアントBは、クライアントAがオフライン状態にあるとディスプレイに表示してもよい。連絡先リストに識別子Aが表示されるがオフライン状態に表示され得る。
<連絡先バックアップ(back up)>
図6は、一実施形態に係る連絡先バックアップの一例を説明するためのフローチャートである。
図6を参照すると、クライアントAは、連絡先格納要求データをサーバに送信する(610)。ここで、連絡先格納要求データは、クライアントAの連絡先レジストリに登録された少なくとも1つの識別子を含む連絡先データをバックアップするための要求データである。
サーバは、連絡先格納要求データに対応して識別コード及び暗号キーを生成する(620)。サーバは、識別コード及び暗号キーをクライアントAに送信する(630)。
クライアントAは、端末のメモリに識別コード及び暗号キーを格納する。また、クライアントAは、識別コード及び暗号キーを物理的格納装置に格納する。物理的格納装置は、例えば、図8に示すセキュリティー通話ドングルを含む。また、クライアントAは、識別コード及び暗号キーそれぞれを互いに異なる格納装置に格納する。例えば、クライアントAは、識別コードをメモリに格納して暗号キーをセキュリティー通話ドングルに格納する。
クライアントAは、暗号キーを用いて連絡先データを暗号化する(640)。
クライアントAは、暗号化された連絡先データをサーバに送信する(650)。
サーバは、暗号化された連絡先データを識別コードとマッピングして格納する(660)。システム政策によってサーバは、暗号キーを格納できないことがある。そのため、サーバがハッキングされて暗号化された連絡先データが流出されても、暗号化された連絡先データを復号できる暗号キーは流出されないため、連絡先データは安全である。
<連絡先の復元>
図7は、一実施形態に係る連絡先の復元の一例を説明するためのフローチャートである。
図6に示すクライアントAが端末から削除されてもよい。この場合、クライアントAの連絡先データは削除されるが、識別コード及び暗号キーは削除されないことがある。その後、新しいクライアントであるクライアントDが端末にインストールされる。ここで、クライアントDの識別子は割り当てられないため、クライアントDは、上記で説明した図2に示す識別子割当プロセス及び認証プロセッサをサーバと行うことができる。
端末のユーザは、クライアントDを介して連絡先を復元する。以下、図7を参照しながら連絡先の復元について説明する。
図7を参照すると、クライアントDは、連絡先復元要求データをサーバに送信する(710)。ここで、クライアントDは、連絡先復元要求データと共に識別コードをサーバに送信する。具現に応じて、識別コードは、連絡先復元要求データに含まれてサーバに送信される。
サーバは、識別コードとマッピングされる連絡先データを検索する(720)。図6に示すクライアントAの連絡先データが識別コードとマッピングされるため、検索結果にクライアントAの連絡先データが含まれる。
サーバは、検索された連絡先データをクライアントDに送信する(730)。
クライアントDは、暗号キーを用いて連絡先データを復号する(740)。
クライアントDは、連絡先データを格納する(750)。そのため、クライアントAが削除されてもクライアントAの連絡先データは復元される。
図7に図示していないが、サーバには、クライアントDの連絡先に対する記録がない。クライアントDは、連絡先登録要求をサーバに送信する。この場合、サーバは、識別子Dを識別子Aと同じものと見なして連絡先登録要求を処理する。
図8は、一実施形態に係るセキュリティー通話ドングルの一例を説明するための図である。
図8を参照すると、端末800及びセキュリティー通話ドングル810の一例が示されている。
セキュリティー通話ドングル810は、端末800の入出力インターフェースに着脱可能な形態に設計されている。このような入出力インターフェースは、マイクロUSBポート、Apple(登録商標)のライトニングポートなどがある。また、セキュリティー通話ドングル800は、今後開発される様々な入出力インターフェースに互換されるように設計され得る。
セキュリティー通話ドングル810と端末800は、物理的な接触なしに近距離無線通信を介して接続される。近距離無線通信の例として、ブルートゥース(登録商標)、NFC、又はWi−Fiなどがある。近距離無線通信は前述した例に限定されない。
セキュリティー通話ドングル810は、一定容量のメモリを含んでいる。メモリには、クライアント、クライアントの連絡先レジストリ、通話記録、又は、メッセージング履歴のうち少なくとも1つ又はその組合せが格納される。
セキュリティー通話ドングル810は、一定容量のバッテリを含む。端末800のバッテリが足りない場合、セキュリティー通話ドングル810は、一定時間以上の通話可能な程度の電力を端末800に供給する。
セキュリティー通話ドングル810が端末800に接続された場合、クライアントがディスプレイに視覚的に表示される。異なる一例として、セキュリティー通話ドングル810が端末800に接続された場合、クライアントが実行される。
セキュリティー通話ドングル810が端末800に接続された場合、図3に示す連絡先の追加機能が実行される。
識別子が格納されたメモリを含んでいるセキュリティー通話ドングル810が配布される。端末800にクライアントがインストールされ、セキュリティー通話ドングル810が端末800に接続される場合、セキュリティー通話に必要な識別子がクライアントに割り当てられる。
図9は、一実施形態に係るクライアントの動作方法の一例を説明するためのフローチャートである。
図9に示すクライアントは、図3ないし図7に示すクライアントAに対応する。しかし、図9に示すクライアントがこれに制限されることはない。
図9を参照すると、クライアントは、連絡先を追加するための連絡先要求データ及びクライアントの識別子を通信インターフェースを介してサーバに送信する(910)。
クライアントは、連絡先要求データに対応して生成されたキーをサーバから通信インターフェースを介して受信する(920)。ここで、キーは、クライアントの識別子とマッピングされる。
クライアントは、相手クライアントがキーを取得するように予め決定したキー伝達プロセスを行う(930)。相手クライアントがキーを取得した場合、相手クライアントは、キー及び自身の識別子をサーバに送信する。
クライアントは、サーバから相手クライアントの識別子を通信インターフェースを介して受信する(940)。
クライアントは、相手クライアントの識別子を連絡先レジストリに登録する(950)。
図1ないし図8を参照して記述された事項は、図9を参照して記述された事項に適用され得るため、その詳細な説明は省略する。
図10は、一実施形態に係るクライアントの動作方法の更なる一例を説明するためのフローチャートである。
図10を参照すると、クライアントは、相手クライアントの識別子とマッピングされるキーを取得する(1010)。
クライアントは、キー及びクライアントの識別子を通信インターフェースを介してサーバに送信する(1020)。
クライアントは、サーバから通信インターフェースを介して相手クライアントの識別子を受信する(1030)。
クライアントは、相手クライアントの識別子を連絡先レジストリに登録する(1040)。
図1ないし図8を参照して記述された事項は、図10を参照して記述された事項に適用され得るため、その詳細な説明は省略する。
図11は、一実施形態に係るサーバの動作方法を説明するためのフローチャートである。
図11を参照すると、サーバは、連絡先を追加するための連絡先要求データ及びクライアントの識別子をクライアントから受信する(1110)。
サーバは、連絡先要求データに対応してキーを生成し、キーを前記クライアントの識別子とマッピングする(1120)。
サーバは、キーを前記クライアントに送信する(1130)。
サーバは、クライアントの予め決定したキー伝達プロセスを介してキーを取得した相手クライアントから、キー及び相手クライアントの識別子を受信する(1140)。
サーバは、キーとマッピングされる識別子を検索する(1150)。
サーバは、検索結果に基づいてクライアント及び相手クライアントの連絡先を管理する(1160)。
図1ないし図8を参照して記述された事項は、図11を参照して記述された事項に適用され得るため、その詳細な説明は省略する。
図12は、一実施形態に係るクライアント装置の一例を説明するための図である。
図12を参照すると、クライアント装置1200は、コントローラ1210及び通信インターフェース1220を含む。
通信インターフェース1220は、サーバと通信する。例えば、通信インターフェースは、WWAN(Wireless Wide Area Network)又はWLAN(Wireless Local Area Network)のためのインターフェースを含む。WWANは、CDMA(Code Division Multiple Access)ネットワークTDMA(Time Division Multiple Access)ネットワーク、FDMA(Frequency Division Multiple Access)ネットワーク、OFDMA(Orthogonal Frequency Division Multiple Access)ネットワーク、及び/又はSC−FDMA(Single−Carrier Frequency Division Multiple Access)ネットワークのいずれか1つ又はその組合せを含む。WLANは、IEEE802.11xネットワークを含む。また、通信インターフェースは、ブルートゥース(Bluetooth)(登録商標)、RFID(Radio Frequency Identification)、赤外線通信(Infrared Data Association;IrDA)、UWB(Ultra Wideband)、ZigBee(登録商標)、NFC(Near Field Communication)、又はZ−waveなどが可能なインターフェースを含む。
コントローラ1210は、連絡先を追加するための連絡先要求データ及びクライアントの識別子を通信インターフェース1220を介してサーバに送信する。ここで、クライアントは、クライアント装置1200に格納された通信アプリケーションを示す。
コントローラ1210は、連絡先要求データに対応して生成されたキーを通信インターフェース1220を介してサーバから受信する。
コントローラ1210は、相手クライアントがキーを取得するように予め決定したキー伝達プロセスを行う。
コントローラ1210は、サーバから相手クライアントの識別子を通信インターフェース1212を介して受信する。
コントローラ1210は、相手クライアントの識別子を連絡先レジストリに登録する。
図1〜図8を参照して記述された事項は、図12を参照して記述された事項に適用され得るため、その詳細な説明は省略する。
図13は、一実施形態に係るクライアント装置の更なる一例を説明するためのブロック図である。
図13を参照すると、クライアント装置1300は、コントローラ1310及び通信インターフェース1320を含む。
通信インターフェース1320は、サーバと通信する。通信インターフェースの種類は図12を参照して説明したため、その詳しい説明を省略する。
コントローラ1310は、相手クライアントの識別子とマッピングされるキーを取得する。
コントローラ1310は、キー及びクライアントの識別子を通信インターフェース1320を介してサーバに送信する。
コントローラ1310は、サーバから相手クライアントの識別子を通信インターフェース1320を介して受信する。
コントローラ1310は、相手クライアントの識別子を連絡先レジストリに登録する。
図1から図8を参照して記述された事項は、図13を参照して記述された事項に適用され得るため、その詳細な説明は省略する。
図14は、一実施形態に係るサーバの一例を説明するためのブロック図である。
図14を参照すると、サーバ1400は、通信インターフェース1410及びコントローラ1420を含む。
通信インターフェース1410は、クライアント及び相手クライアントと通信する。
コントローラ1420は、連絡先を追加するための連絡先要求データ及びクライアントの識別子を通信インターフェース1410を介してクライアントから受信する。
コントローラ1420は、連絡先要求データに対応してキーを生成し、キーを前記クライアントの識別子とマッピングする。
コントローラ1420は、キーを通信インターフェース1410を介してクライアントに送信する。相手クライアントは、クライアントの予め決定したキー伝達プロセスを介してキーを取得する。
コントローラ1420は、相手クライアントからキー及び相手クライアントの識別子を通信インターフェース1410を介して受信する。
コントローラ1420は、キーとマッピングされる識別子を検索し、検索結果に基づいてクライアント及び相手クライアントの連絡先を管理する。
図1ないし図8を参照して記述された事項は、図14を参照して記述された事項に適用され得るため、その詳細な説明は省略する。
図15は、一実施形態に係るクライアントの動作方法のまた更なる一例を説明するためのフローチャートである。
図15を参照すると、サーバはクライアントAを認証する(1510)。認証結果は個人キーを用いて暗号化される。サーバは、認証結果をクライアントAに送信する(1520)。
クライアントAは、個人キーを用いて認証結果を復号する。クライアントAが認証された場合、クライアントAは、通信可能な状態に遷移される(1530)。クライアントAはP2P通信可能な状態に遷移される。
サーバは、クライアントBを認証する(1540)。サーバは、認証結果をクライアントBに送信する(1550)。
クライアントBが認証された場合、クライアントBは、通信可能な状態に遷移される。クライアントBはP2P通信可能な状態に遷移される。
クライアントAは、クライアントBとP2P通信するための要求をサーバに送信する。サーバは、クライアントBを探し(find)、クライアントBにクライアントAのP2P通信要求を送信する。そのため、クライアントAとクライアントBは直接接続して直接通信する。すなわち、クライアントAとクライアントBはP2P通信する。この場合、クライアントAとクライアントBは、セキュリティキーを用いて暗号化されたパケットを送受信する(1570)。
図1ないし図14を参照して記述された事項は、図15を参照して記述された事項に適用され得るため、その詳細な説明は省略する。
図16は、一実施形態に係るサーバの更なる一例を説明するためのブロック図である。
図16を参照すると、サーバ1600は、通信インターフェース1610、コントローラ1620、及びメモリ1630を含む。
通信インターフェース1610は、クライアントと通信する。
一実施形態に係るサーバ1600は、クライアントのピアツーピア通信をサポートする。以下、クライアントのピアツーピア通信をサポートするためのサーバ1600の動作について説明する。
コントローラ1620は、クライアントから受信された公開キー要求に対応して公開キーを発行し、通信インターフェース1610はクライアントに公開キーを送信する。
通信インターフェース1610はクライアントから個人キーを受信し、コントローラ1620は、公開キー及び個人キーをキーペアにマッピングする。一実施形態において、コントローラ1620はキーペアをメモリ1630に格納する。
通信インターフェース1610はキーペア生成メッセージをクライアントに送信し、クライアントはキーペアの生成を確認する。
クライアントは、クライアントの1つ以上の固有情報を含む識別子生成要求をサーバ1600に送信する。
通信インターフェース1610は識別子生成要求を受信し、コントローラ1620は、識別子生成要求に対応してクライアントに対応する識別子を生成する。また、コントローラ1620は、識別子生成要求に含まれた固有情報を用いてセキュリティキーを生成する。通信インターフェース1610は、識別子及びセキュリティキーをクライアントに送信する。
クライアントは、識別子及びセキュリティキーを含む認証要求をサーバ1600に送信し、通信インターフェース1610は認証要求を受信する。
コントローラ1620は認証要求に対応してクライアントを認証し、通信インターフェース1610は、認証結果をクライアントに送信する。クライアントが認証された場合、クライアントは他のクライアントと通信可能な状態に遷移する。クライアント及び他のクライアントが認証された場合、クライアント及び他のクライアントは互いにP2P通信又は直接通信が可能な動作モードに進入する。
一実施形態において、サーバ1600は、クライアントにUDPセッション保持のためのクエスチョン(question)を生成する。サーバ1600は、クエスチョンにハッシュインデックスを埋め込んでもよい。サーバ1600はクエスチョンをクライアントに送信する。
クライアントがクエスチョンを受信する場合、クライアントは答え(answer)を生成する。ここで、答えがクエスチョンに対応する場合、UDPセッションは保持され、答えがクエスチョンに対応しない場合にUDPセッションは保持されず解除される。
生成された答えにはハッシュインデックスが埋め込まれる。クライアントは、ハッシュインデックスが埋め込まれた答えをサーバ1600に送信する。
サーバ1600は、クライアントの答えを確認する。サーバ1600は、答えからハッシュインデックスを取得する。例えば、サーバ1600は、答えに含まれたバイトをXOR演算してハッシュインデックスを取得する。UDPセッションを保持するためにサーバ1600は、クライアントの識別子を確認する。サーバは、ハッシュインデックスを取得したため、ハッシュインデックスを用いて識別子が格納されたデータベースにアクセスする。データベースは、ハッシュインデックスに対応する識別子をサーバ1600に送信する。そのため、サーバ1600は、クライアントから識別子を受信せず、ハッシュインデックスに基づくクエリに対する応答を介してクライアントを識別し、より迅速にクライアントを識別することができる。そのため、UDPセッションのvalidationがより迅速に確認され、UDPセッションが保持される。また、クライアントのIPアドレスが変更されても、サーバ1600は、ハッシュインデックスを用いてクライアントを迅速に識別できる。そのため、P2P通信のようにIPが変化する環境でも、UDPセッションのvalidationが確認され、UDPセッションを保持できる。
図1ないし図15を参照して記述された事項は、図16を参照して記述された事項に適用され得るため、その詳細な説明は省略する。
以上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、又はハードウェア構成要素及びソフトウェア構成要素の組合せで具現される。例えば、実施形態で説明した装置及び構成要素は、例えば、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ(digital signal processor)、マイクロコンピュータ、FPA(field programmable array)、PLU(programmable logic unit)、マイクロプロセッサー、又は命令(instruction)を実行して応答する異なる装置のように、1つ以上の汎用コンピュータ又は特殊目的コンピュータを用いて具現される。処理装置は、オペレーティングシステム(OS)及びオペレーティングシステム上で実行される1つ以上のソフトウェアアプリケーションを実行する。また、処理装置は、ソフトウェアの実行に応答してデータをアクセス、格納、操作、処理、及び生成する。理解の便宜のために、処理装置は1つが使用されるものとして説明する場合もあるが、当該技術分野で通常の知識を有する者は、処理装置が複数の処理要素(processing element)及び/又は複数類型の処理要素を含むことが分かる。例えば、処理装置は、複数のプロセッサ又は1つのプロセッサ及び1つのコントローラを含む。また、並列プロセッサ(parallel processor)のような、他の処理構成も可能である。
ソフトウェアは、コンピュータプログラム、コード、命令、又はこれらのうちの1つ以上の組合せを含み、希望通りに動作するように処理装置を構成し、独立的又は結合的に処理装置に命令する。ソフトウェア及び/又はデータは、処理装置によって解釈され、処理装置に命令又はデータを提供するためのあらゆる類型の機械、構成要素、物理的装置、仮想装置、コンピュータ格納媒体又は装置、或いは送信される信号波を介して永久的又は一時的に具現化される。ソフトウェアは、ネットワークに接続されたコンピュータシステム上に分散され、分散された方法で格納されるか又は実行される。ソフトウェア及びデータは1つ以上のコンピュータ読み取り可能な記録媒体に格納される。
本実施形態による方法は、多様なコンピュータ手段を介して実施されるプログラム命令の形態で具現され、コンピュータ読み取り可能な記録媒体に記録される。記録媒体は、プログラム命令、データファイル、データ構造などを単独又は組合せて含む。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり、使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、フロプティカルディスクのような磁気−光媒体、及びROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含む。ハードウェア装置は、本発明の動作を実行するために1つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
上述したように実施形態をたとえ限定された図面によって説明したが、当技の術分野で通常の知識を有する者であれば、前記に基づいて様々な技術的な修正及び変形を適用することができる。例えば、説明された技術が説明された方法と異なる順序で実行されたり、及び/又は説明されたシステム、構造、装置、回路などの構成要素が説明された方法と異なる形態で結合又は組合わせられたり、他の構成要素又は均等物によって置き換えたり置換されても適切な結果を達成することができる。
したがって、他の具現、他の実施形態、及び請求範囲と均等なものも後述する請求範囲の範囲に属する。

Claims (42)

  1. ピアツーピア通信をサポートするサーバの動作方法において、
    クライアントから受信された公開キー要求に対応して公開キーを発行し、前記クライアントに前記公開キーを送信するステップと、
    前記クライアントから個人キーを受信し、前記公開キー及び前記個人キーをキーペアにマッピングするステップと、
    前記クライアントから前記クライアントの1つ以上の固有情報を含む識別子生成要求を受信するステップと、
    前記識別子生成要求に対応して前記クライアントに対応する識別子を生成し、前記固有情報を用いてセキュリティキーを生成し、前記識別子及び前記セキュリティキーを前記クライアントに送信するステップと、
    前記クライアントから前記識別子及び前記セキュリティキーを含む認証要求を受信するステップと、
    前記認証要求に対応して前記クライアントを認証し、認証結果を前記クライアントに送信するステップと、
    を含み、
    前記クライアントは、前記認証結果に応じて他のクライアントと通信可能な状態に遷移する、サーバの動作方法。
  2. 前記一つ以上の固有情報は、前記クライアントの物理的装置に対応する装置固有キー及び前記クライアントに対応する製造キーを含む、請求項1に記載のサーバの動作方法。
  3. 前記セキュリティキーは、前記装置固有キー及び製造キーのうち少なくとも1つに対応して生成される、請求項2に記載のサーバの動作方法。
  4. 前記識別子は、n個の区別情報に基づいたn桁のランダム値(n^n)のいずれか1つである、請求項1に記載のサーバの動作方法。
  5. 前記識別子は、ハッシュインデックスが埋め込まれた、請求項1に記載のサーバの動作方法。
  6. 前記クライアントには、前記サーバの認証された1つ以上の他のクライアントのリストが表示され、前記クライアントは、前記他のクライアントと前記セキュリティキーを用いて暗号化されたパケットを送受信する、請求項1に記載のサーバの動作方法。
  7. 前記マッピングされたキーペアは、前記サーバ及び前記クライアントのうちの1つ以上に格納される、請求項1に記載のサーバの動作方法。
  8. ピアツーピア通信をサポートするクライアントの動作方法において、
    サーバに公開キー要求を送信するステップと、
    前記サーバから前記公開キー要求に対応する公開キーを受信し、個人キーを生成するステップと、
    前記個人キーをサーバに送信し、前記サーバから前記公開キー及び前記個人キーに対するキーペア生成完了情報を受信するステップと、
    前記サーバに、前記クライアントの1つ以上の固有情報を含む識別子生成要求を送信するステップと、
    前記サーバから、前記識別子生成要求に対応した識別子及びセキュリティキーを受信するステップと、
    前記サーバに前記識別子及び前記セキュリティキーを含む認証要求を送信するステップと、
    前記サーバから、前記認証要求に対応した認証結果を受信するステップと、
    前記認証結果に応じて他のクライアントと通信可能な状態に遷移するステップと、
    を含む、クライアントの動作方法。
  9. 前記一つ以上の固有情報は、前記クライアントの物理的装置に対応する装置固有キー及び前記クライアントで駆動される通信ソフトウェアに対応する製造キーを含む、請求項8に記載のクライアントの動作方法。
  10. 前記セキュリティキーは、前記装置固有キー及び製造キーのうち少なくとも1つに対応して生成される、請求項9に記載のクライアントの動作方法。
  11. 前記識別子は、n個の区別情報に基づいたn桁のランダム値(n^n)のいずれか1つである、請求項8に記載のクライアントの動作方法。
  12. 前記識別子は、ハッシュインデックスが埋め込まれたものである、請求項8に記載のクライアントの動作方法。
  13. 前記クライアントで駆動される通信ソフトウェアには、前記サーバの認証された1つ以上の他のクライアントのリストが表示され、前記クライアントは、前記他のクライアントと前記セキュリティキーを用いて暗号化されたパケットを送受信する、請求項8に記載のクライアントの動作方法。
  14. 前記公開キー及び前記個人キーのキーペアは、前記サーバ及び前記クライアントのうちの1つ以上に格納される、請求項8に記載のクライアントの動作方法。
  15. ピアツーピア通信をサポートするサーバにおいて、
    クライアントと通信する通信インターフェースと、
    コントローラと、
    を含み、
    前記コントローラは、
    前記クライアントから受信された公開キー要求に対応して公開キーを発行し、前記通信インターフェースを用いて前記クライアントで前記公開キーを送信し、
    前記通信インターフェースを用いて個人キーを受信し、前記公開キー及び前記個人キーをキーペアにマッピングし、
    前記通信インターフェースを用いて前記クライアントの1つ以上の固有情報を含む識別子生成要求を受信し、
    前記識別子生成要求に対応して、前記クライアントに対応する識別子を生成し、前記固有情報を用いてセキュリティキーを生成し、前記通信インターフェースを用いて前記識別子及び前記セキュリティキーを前記クライアントに送信し、
    前記通信インターフェースを用いて前記識別子及び前記セキュリティキーを含む認証要求を受信し、
    前記認証要求に対応して前記クライアントを認証し、前記通信インターフェースを用いて認証結果を前記クライアントに送信し、
    前記クライアントは、前記認証結果に応じて他のクライアントと通信可能な状態に遷移する、サーバ。
  16. クライアントの動作方法において、
    連絡先を追加するための連絡先要求データ及び前記クライアントの識別子をサーバに送信するステップと、
    前記連絡先要求データに対応して生成されたキーを前記サーバから受信するステップ(前記キーは前記クライアントの識別子とマッピングされる)と、
    相手クライアントが前記キーを取得するように予め決定したキー伝達プロセスを行うステップと、
    前記サーバから前記相手クライアントの識別子を受信するステップと、
    前記相手クライアントの識別子を連絡先レジストリに登録するステップと、
    を含み、
    前記サーバは、前記相手クライアントから前記相手クライアントの識別子及び前記キーを受信し、前記相手クライアントの識別子を前記クライアントに送信する、クライアントの動作方法。
  17. 前記予め決定したキー伝達プロセスを行うステップは、前記キーに対応する視覚的コードを生成して表示するステップを含む、請求項16に記載のクライアントの動作方法。
  18. 前記クライアントの識別子、前記相手クライアントの識別子、第三者の識別子、及び前記相手クライアントと前記第三者との間の友人接続のための友人接続要求データを前記サーバに送信するステップをさらに含む、請求項16に記載のクライアントの動作方法。
  19. 前記の友人接続要求データは、前記相手クライアント及び前記第三者に送信され、
    前記相手クライアント及び前記第三者が前記の友人接続要求データに対する承認入力を行う場合、前記相手クライアントの識別子は前記第三者に送信され、前記第三者の識別子は前記相手クライアントに送信される、請求項18に記載のクライアントの動作方法。
  20. 前記クライアントと第三者との間の友人接続のための友人接続要求データを前記サーバから受信するステップと、
    前記の友人接続要求データに対する承認の有無を示す応答データを前記サーバに送信するステップと、
    前記の友人接続要求データに対する承認入力をし、前記第三者が前記の友人接続要求データに対する承認入力を行う場合、前記サーバから前記第三者の識別子を受信するステップと、
    前記第三者の識別子を連絡先レジストリに登録するステップと、
    をさらに含む、請求項16に記載のクライアントの動作方法。
  21. 前記相手クライアントの識別子が前記連絡先レジストリから削除された場合、前記相手クライアントの連絡先レジストリに登録された前記クライアントの識別子に対する通信接続をディスエイブルするためのディスエイブル要求データを前記サーバに送信するステップをさらに含む、請求項16に記載のクライアントの動作方法。
  22. 前記ディスエイブル要求データに対応する、前記相手クライアントに送信される識別子制御命令は、
    前記クライアントの識別子を削除するための第1命令語、前記クライアントの識別子が視覚的に表示されないための第2命令語、及び前記クライアントと前記相手クライアントとの間の通信が実行されないようにする第3命令語のうち少なくとも1つを含む、請求項21に記載のクライアントの動作方法。
  23. 前記サーバから前記相手クライアントの識別子を制御するための識別子制御命令を受信するステップをさらに含む、請求項16に記載のクライアントの動作方法。
  24. 前記識別子制御命令は、前記相手クライアントの識別子を削除するための第1命令語、前記相手クライアントの識別子が視覚的に表示されないための第2命令語、及び前記クライアントと前記相手クライアントとの間の通信が実行されないようにする第3命令語のうち少なくとも1つを含む、請求項23に記載のクライアントの動作方法。
  25. 前記連絡先レジストリに登録された少なくとも1つの識別子を含む連絡先データを前記サーバにバックアップするための連絡先格納要求データを前記サーバに送信するステップと、
    前記連絡先格納要求データに対応して生成された識別コード及び暗号キーを前記サーバから受信するステップと、
    前記暗号キーを用いて連絡先データを暗号化するステップと、
    前記識別コード及び前記暗号するように暗号化された連絡先データを前記サーバに送信するステップと、
    をさらに含み、
    前記識別コード及び前記暗号化された連絡先データは、前記サーバ内にマッピングされて格納される、請求項16に記載のクライアントの動作方法。
  26. 前記相手クライアントのアップデートされた状態情報を前記サーバから受信するステップをさらに含み、
    前記アップデートされた状態情報は、前記相手クライアントが通信セッションを介して接続可能であることを示す、請求項16に記載のクライアントの動作方法。
  27. クライアントの動作方法において、
    相手クライアントの識別子とマッピングされるキーを取得するステップと、
    前記キー及び前記クライアントの識別子をサーバに送信するステップと、
    前記サーバから前記相手クライアントの識別子を受信するステップと、
    前記相手クライアントの識別子を連絡先レジストリに登録するステップと、
    を含み、
    前記キーは、前記相手クライアントが連絡先を追加するための連絡先要求データ及び前記相手クライアントの識別子をサーバに送信した場合、前記サーバによって生成される、クライアントの動作方法。
  28. 前記キーを取得するステップは、
    前記相手クライアントによって生成された視覚的コードをキャプチャーするステップと、
    前記視覚的コードを復号化して前記キーを取得するステップと、
    を含む、請求項27に記載のクライアントの動作方法。
  29. サーバの動作方法において、
    連絡先を追加するための連絡先要求データ及びクライアントの識別子を前記クライアントから受信するステップと、
    前記連絡先要求データに対応してキーを生成し、前記キーを前記クライアントの識別子とマッピングするステップと、
    前記キーを前記クライアントに送信するステップと、
    前記クライアントの予め決定したキー伝達プロセスを介して前記キーを取得した相手クライアントから、前記キー及び前記相手クライアントの識別子を受信するステップと、
    前記キーとマッピングされる識別子を検索するステップと、
    検索結果に基づいて前記クライアント及び前記相手クライアントの連絡先を管理するステップと、
    を含む、サーバの動作方法。
  30. 前記検索結果に前記クライアントの識別子が含まれた場合、前記キーの使用可能な回数に基づいて前記キーが有効であるかを確認するステップをさらに含む、請求項29に記載のサーバの動作方法。
  31. 前記キーが有効である場合に前記キーの使用可能な回数をアップデートし、前記キーが有効でない場合に前記クライアントの識別子を伝達できないことを示すメッセージを前記相手クライアントに送信するステップを含む、請求項30に記載のサーバの動作方法。
  32. 前記管理するステップは、前記クライアントの識別子を前記相手クライアントに送信し、前記相手クライアントの識別子を前記クライアントに送信するステップを含む、請求項29に記載のサーバの動作方法。
  33. 前記管理するステップは、前記クライアントと前記相手クライアントとの間の友人接続を記録するステップを含む、請求項29に記載のサーバの動作方法。
  34. 前記クライアントの識別子、前記相手クライアントの識別子、第三者の識別子、及び前記相手クライアントと前記第三者との間の友人接続のための友人接続要求データを前記クライアントから受信するステップと、
    前記の友人接続要求データを前記第三者及び前記相手クライアントに送信するステップと、
    前記の友人接続要求データに対する承認の有無を示す応答データを前記第三者及び前記相手クライアントから受信するステップと、
    前記応答データに基づいて前記第三者及び前記相手クライアントの連絡先を管理するステップと、
    をさらに含む、請求項29に記載のサーバの動作方法。
  35. 前記相手クライアントに登録された前記クライアントの識別子に対する通信接続をディスエイブルするためのディスエイブル要求データを前記クライアントから受信するステップと、
    前記ディスエイブル要求データに対応する連絡先制御命令を生成するステップと、
    前記連絡先制御命令を前記相手クライアントに送信するステップと、
    をさらに含む、請求項29に記載のサーバの動作方法。
  36. 前記連絡先制御命令は、前記クライアントの識別子を削除するための第1命令語、前記相手クライアントが前記クライアントの識別子を視覚的に表示しないようにする第2命令語、及び前記クライアントと前記相手クライアントとの間の通信が実行されないようにする第3命令語のうち少なくとも1つを含む、請求項35に記載のサーバの動作方法。
  37. 前記クライアントの連絡先レジストリに登録された少なくとも1つの識別子を含む連絡先データをバックアップするための連絡先格納要求データを前記クライアントから受信するステップと、
    前記連絡先格納要求データに対応して識別コード及び前記連絡先データを暗号化するために用いられる暗号キーを生成するステップと、
    前記識別コード及び前記暗号キーを前記クライアントに送信するステップと、
    前記クライアントから前記識別コード及び前記暗号するように暗号化された連絡先データを受信するステップと、
    前記識別コード及び前記暗号化された連絡先データをマッピングして格納するステップと、
    をさらに含む、請求項29に記載のサーバの動作方法。
  38. 前記クライアントと他のクライアントから前記識別コード及び連絡先復元要求データを受信するステップと、
    前記識別コードとマッピングされる連絡先データを検索するステップと、
    検索結果に基づいて前記暗号化された連絡先データを前記他のクライアントに送信するステップと、
    前記他のクライアントから前記暗号キーで復号化された連絡先データを登録するための登録要求データを受信するステップと、
    前記他の識別子に対応して前記復号化された連絡先を登録するステップと、
    を含む、請求項37に記載のサーバの動作方法。
  39. 前記相手クライアントが前記サーバに接続する場合、前記相手クライアントの状態情報をアップデートするステップと、
    前記クライアントに前記アップデートされた状態情報を送信するステップと、
    をさらに含み、
    前記アップデートされた状態情報は、前記相手クライアントが通信セッションを介して接続可能であることを示す、請求項29に記載のサーバの動作方法。
  40. サーバと通信する通信インターフェースと、
    連絡先を追加するための連絡先要求データ及びクライアントの識別子を前記通信インターフェースを介して前記サーバに送信し、前記連絡先要求データに対応して生成されたキーを前記通信インターフェースを介して前記サーバから受信し(前記キーは前記クライアントの識別子とマッピングされる)、相手クライアントが前記キーを取得するように予め決定したキー伝達プロセスを行い、前記サーバから前記相手クライアントの識別子を前記通信インターフェースを介して受信し、前記相手クライアントの識別子を連絡先レジストリに登録するコントローラと、
    を含み、
    前記サーバは、前記相手クライアントから前記相手クライアントの識別子及び前記キーを受信する、クライアント装置。
  41. サーバと通信する通信インターフェースと、
    相手クライアントの識別子とマッピングされるキーを取得し、前記キー及び前記クライアントの識別子を前記通信インターフェースを介して前記サーバに送信し、前記サーバから前記相手クライアントの識別子を前記通信インターフェースを介して受信し、前記相手クライアントの識別子を連絡先レジストリに登録するコントローラと、
    を含み、
    前記キーは、前記相手クライアントが連絡先を追加するための連絡先要求データ及び前記相手クライアントの識別子を前記サーバに送信した場合、前記サーバによって生成される、クライアント装置。
  42. クライアント及び相手クライアントと通信する通信インターフェースと、
    連絡先を追加するための連絡先要求データ及び前記クライアントの識別子を前記通信インターフェースを介して前記クライアントから受信し、前記連絡先要求データに対応してキーを生成し、前記キーを前記クライアントの識別子とマッピングし、前記キーを前記通信インターフェースを介して前記クライアントに送信し、前記クライアントの予め決定したキー伝達プロセスを介して前記キーを取得した相手クライアントから前記キー及び前記相手クライアントの識別子を前記通信インターフェースを介して受信し、前記キーとマッピングされる識別子を検索し、検索結果に基づいて前記クライアント及び前記相手クライアントの連絡先を管理するコントローラと、
    を含む、サーバ。
JP2018503451A 2015-04-10 2016-04-11 サーバとクライアントの動作方法、サーバ、及びクライアント装置 Expired - Fee Related JP6510137B2 (ja)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
KR10-2015-0051073 2015-04-10
KR20150051073 2015-04-10
KR10-2015-0105571 2015-07-27
KR20150105571 2015-07-27
KR10-2015-0172151 2015-12-04
KR1020150172151A KR101785382B1 (ko) 2015-07-27 2015-12-04 클라이언트 인증 방법, 클라이언트의 동작 방법, 서버, 및 통신 소프트웨어
KR1020160041490A KR101771992B1 (ko) 2015-04-10 2016-04-05 서버와 클라이언트의 동작 방법, 서버, 및 클라이언트 장치
KR10-2016-0041490 2016-04-05
PCT/KR2016/003763 WO2016163836A1 (ko) 2015-04-10 2016-04-11 서버와 클라이언트의 동작 방법, 서버, 및 클라이언트 장치

Publications (2)

Publication Number Publication Date
JP2018516027A true JP2018516027A (ja) 2018-06-14
JP6510137B2 JP6510137B2 (ja) 2019-05-08

Family

ID=60458903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018503451A Expired - Fee Related JP6510137B2 (ja) 2015-04-10 2016-04-11 サーバとクライアントの動作方法、サーバ、及びクライアント装置

Country Status (4)

Country Link
US (1) US20180083938A1 (ja)
EP (1) EP3282639B1 (ja)
JP (1) JP6510137B2 (ja)
CN (1) CN107438977A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11074997B2 (en) * 2018-01-23 2021-07-27 Statum Systems Inc. Multi-modal encrypted messaging system
US11349646B1 (en) * 2018-05-03 2022-05-31 Berryville Holdings, LLC Method of providing secure communications to multiple devices and multiple parties
KR102121390B1 (ko) * 2018-11-30 2020-06-11 주식회사 티에스시 식별자기반통신시스템
CN110278080B (zh) * 2019-07-11 2020-10-02 珠海格力电器股份有限公司 数据传输的方法、系统及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003244124A (ja) * 2002-02-15 2003-08-29 Promenade:Kk セキュリティ管理システム
JP2012191270A (ja) * 2011-03-08 2012-10-04 Kddi Corp 認証システム、端末装置、認証サーバ、およびプログラム
US20140047238A1 (en) * 2012-08-10 2014-02-13 Netauthority, Inc. Device identification using synthetic device keys

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529933B2 (en) * 2002-05-30 2009-05-05 Microsoft Corporation TLS tunneling
US7206934B2 (en) * 2002-09-26 2007-04-17 Sun Microsystems, Inc. Distributed indexing of identity information in a peer-to-peer network
US8646049B2 (en) * 2008-05-02 2014-02-04 Toposis Corporation Systems and methods for secure management of presence information for communication services
US8196186B2 (en) * 2008-05-20 2012-06-05 Microsoft Corporation Security architecture for peer-to-peer storage system
US8627424B1 (en) * 2010-06-30 2014-01-07 Emc Corporation Device bound OTP generation
CA3179622A1 (en) * 2010-10-08 2012-04-12 Brian Lee Moffat Private data sharing system
CN103428069B (zh) * 2012-05-15 2015-07-01 腾讯科技(深圳)有限公司 社交网络中加好友的方法和装置
WO2015161521A1 (zh) * 2014-04-26 2015-10-29 华为技术有限公司 一种建立通信方法、设备及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003244124A (ja) * 2002-02-15 2003-08-29 Promenade:Kk セキュリティ管理システム
JP2012191270A (ja) * 2011-03-08 2012-10-04 Kddi Corp 認証システム、端末装置、認証サーバ、およびプログラム
US20140047238A1 (en) * 2012-08-10 2014-02-13 Netauthority, Inc. Device identification using synthetic device keys

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谷口功, 入門ビジュアルテクノロジー よくわかる暗号化技術 初版, JPN6018044052, 30 September 2000 (2000-09-30), pages 40 - 41 *

Also Published As

Publication number Publication date
EP3282639A4 (en) 2018-12-05
CN107438977A (zh) 2017-12-05
US20180083938A1 (en) 2018-03-22
EP3282639B1 (en) 2020-02-12
EP3282639A1 (en) 2018-02-14
JP6510137B2 (ja) 2019-05-08

Similar Documents

Publication Publication Date Title
US11438176B2 (en) Mutually authenticated ECDHE key exchange for a device and a network using multiple PKI key pairs
JP7086327B2 (ja) アプリケーション間でユーザ情報を安全に転送すること
EP3075096B1 (en) Method and system for encrypted communications
US20220014524A1 (en) Secure Communication Using Device-Identity Information Linked To Cloud-Based Certificates
EP2648397B1 (en) Method, system and apparatus for managing persona-based notifications at a communication device
EP3526721A1 (en) Method, device and system for validating sensitive user data transactions within trusted circle
JP2016540462A (ja) 鍵コンフィギュレーション方法、システム、および装置
WO2019182835A1 (en) Cloud authenticated offline file sharing
US20170149748A1 (en) Secure Group Messaging and Data Steaming
US11367065B1 (en) Distributed ledger system for electronic transactions
JP6510137B2 (ja) サーバとクライアントの動作方法、サーバ、及びクライアント装置
KR101952329B1 (ko) 블록체인 기반 암호화폐의 트랜잭션에 이용되는 주소 정보 생성 방법, 전자 장치 및 컴퓨터 판독 가능한 기록 매체
KR20170012161A (ko) IoT 디바이스의 통신 클라이언트의 동작 방법 및 상기 통신 클라이언트를 포함하는 IoT 디바이스
JP6056970B2 (ja) 情報処理装置、端末機、情報処理システム及び情報処理方法
WO2014201783A1 (zh) 一种自组网的加密鉴权方法、系统及终端
CN112751664B (zh) 一种物联网组网方法、装置和计算机可读存储介质
KR101785382B1 (ko) 클라이언트 인증 방법, 클라이언트의 동작 방법, 서버, 및 통신 소프트웨어
KR101771992B1 (ko) 서버와 클라이언트의 동작 방법, 서버, 및 클라이언트 장치
KR20190111748A (ko) 블록체인 기반 암호화폐의 트랜잭션에 이용되는 주소 정보 생성 방법, 전자 장치 및 컴퓨터 판독 가능한 기록 매체
US11979380B2 (en) Secure connections between servers in a virtual private network
JP2016045619A (ja) 認証制御システム、制御サーバ、認証制御方法、プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180912

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190213

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: 20190305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190403

R150 Certificate of patent or registration of utility model

Ref document number: 6510137

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees