JP7236006B2 - 番号管理システム、番号管理方法、番号管理装置および番号管理プログラム - Google Patents

番号管理システム、番号管理方法、番号管理装置および番号管理プログラム Download PDF

Info

Publication number
JP7236006B2
JP7236006B2 JP2021529556A JP2021529556A JP7236006B2 JP 7236006 B2 JP7236006 B2 JP 7236006B2 JP 2021529556 A JP2021529556 A JP 2021529556A JP 2021529556 A JP2021529556 A JP 2021529556A JP 7236006 B2 JP7236006 B2 JP 7236006B2
Authority
JP
Japan
Prior art keywords
inquiry
information
block
hashed
connection destination
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
JP2021529556A
Other languages
English (en)
Other versions
JPWO2021001875A1 (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2021001875A1 publication Critical patent/JPWO2021001875A1/ja
Application granted granted Critical
Publication of JP7236006B2 publication Critical patent/JP7236006B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/4228Systems providing special services or facilities to subscribers in networks
    • H04M3/42297Systems providing special services or facilities to subscribers in networks with number portability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/65Telephone numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/60Aspects of automatic or semi-automatic exchanges related to security aspects in telephonic communication systems
    • H04M2203/6009Personal information, e.g. profiles or personal directories being only provided to authorised persons

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Description

本発明は、電話回線網における番号ポータビリティを実現するために、ブロックチェーン技術を活用した、番号管理システム、番号管理方法、番号管理装置および番号管理プログラムに関する。
従来、IP(Internet Protocol)網において、通信事業者網内の装置(SIP(Session Initiation Protocol)サーバ等)が電話番号とURI(Uniform Resource Identifier)との対応付けを行う仕組みとしてENUM(E.164 Number Mapping)システムが提案されている。このENUMシステムでは、通信事業者のネットワーク内に設置されたSIPサーバが、接続先となる端末(IP電話等)の電話番号についての接続先の情報(IPアドレスや、ドメイン名等)をENUMサーバに問い合わせて、その接続先の情報に基づいてルーチングを行う(非特許文献1参照)。
また、PSTN(Public Switched Telephone Network:公衆電話交換回線網)からIP網への移行に伴い、IP網において固定電話番号を通信事業者間で自由に持ち回れる番号ポータビリティの方式が検討されている(非特許文献2参照)。
非特許文献2に記載の番号ポータビリティの方式では、各通信事業者の番号ポータビリティ情報を集中管理する番号データベース(番号DB)を、上記のENUMサーバ(ENUM権威サーバ)に備え、各通信事業者のSIPサーバは、自身が属する通信事業者のENUMサーバにアクセスすることにより、各電話番号が他網へ移転(ポートアウト)しているか否かを解決し、接続先の情報(接続先情報)を取得して通信を行う。
具体的には、図11に示すように、ENUMシステム1000において、SIPサーバからの要求に付された電話番号(着信番号)が、自網が管理する電話番号に対する問い合わせの場合、ENUMサーバは、自身の番号DBから接続先情報を回答する(図11の符号α参照)。一方、要求に付された電話番号が、他網のENUMサーバが管理する電話番号の場合には、その電話番号を管理する他網のENUMサーバに要求を行い、得られた接続先情報を要求元に回答する(図12の符号β参照)。
このように、現状の日本の電話回線網では、番号ポータビリティを実現するためにENUMシステムを採用し、その具体的な仕組みとして、ルーチング方式では「発側DB参照方式」、つまり、他の事業者のDB(番号データベース)を参照しても、あくまでも発信元の事業者が呼の接続を実現する方式を採用する。また、データベース方式では「自社保有型個別DB方式」、つまり、各社が自社の番号DBを保有する方式を採用する。
「キャリアENUMの相互接続 共通インタフェース」、TTC JJ-90.31、[online]、一般社団法人情報通信技術委員会、2018年8月29日、[令和1年6月13日検索]、インターネット<URL:https://www.ttc.or.jp/application/files/4715/5418/5873/JJ-90.31v4.pdf> 「番号ポータビリティの扱いについて」、[online]、総務省総合通信基盤局、2016年7月28日、[令和1年6月13日検索]、インターネット<URL:http://www.soumu.go.jp/main_content/000433169.pdf>
上記のように、従来のENUMシステムでは、ルーチング方式として「発側DB参照方式」を採用し、データベース方式として「自社保有型個別DB方式」を採用している。しかしながら、このENUMシステムを採用した番号ポータビリティの方式では、ある通信事業者のENUMサーバが故障すると、その通信事業者が管理する番号帯に対する番号解決ができなくなる問題がある。
また、現状では、大規模な通信事業者(大規模事業者)のみがENUMサーバを保持し、小規模な通信事業者(小規模事業者)は、大規模事業者のENUMに、各電話番号に対応する接続先情報(以下「番号情報」と称する。)を管理してもらう形態をとっており、以下のような問題もある。
(1)ENUMシステムを構築するには高い信頼性が要求される。そのため、大きなコストがかかり、小規模事業者にとっては負担が大きい。
(2)小規模事業者側がデータの更新を行いたいときに、大規模事業者へ依頼し変更してもらう必要がある。そのため、リアルタイムに更新できる保証がない。
(3)通信事業者が撤退すると、その通信事業者が管理している番号のポータビリティ先の解決ができなくなるおそれがある。
また、上記問題を解決させるため、何らかの方法ですべての事業者にデータベースを保有させた場合、各通信事業者が自身のデータベースを参照するだけで各電話番号契約者がどの事業者と契約しているかを容易に取得できてしまったり、各通信事業者が保有するストレージデバイスの紛失、盗難などによる情報流出のリスクが高まるという問題もある。
このような背景を鑑みて本発明がなされたのであり、本発明は、ENUMシステムで利用する番号ポータビリティ情報の可用性および機密性を向上させることを課題とする。
本発明に係る番号管理システムは、電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムであって、複数の前記番号管理装置それぞれは、前記番号ポータビリティ情報をブロックチェーンとして管理する番号管理部と、問い合わせ電話番号に対応する前記接続先情報を回答する番号解決部と、を有し、前記番号管理部は、前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付部と、前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成部と、複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、前記ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案部と、前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認部と、を備え、前記番号解決部は、前記問い合わせ電話番号を含む問い合わせ要求を受け付ける問い合わせ受付部と、前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算部と、前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理部と、を備え、前記トランザクション生成部は、予め設定した複数のハッシュ関数のうちの1つを選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、前記選択したハッシュ関数を識別するバージョン番号と、前記接続先情報とを含むトランザクションを生成し、前記ハッシュ演算部は、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、前記データ管理部は、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記バージョン番号を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記バージョン番号で識別されるハッシュ関数が、前記ハッシュ演算部で用いたハッシュ関数と一致する前記接続先情報を選択して回答することを特徴とする。
本発明によれば、ENUMシステムで利用する番号ポータビリティ情報の可用性および機密性を向上させることができる。
本実施形態に係る番号管理システムの全体構成を示す図である。 本実施形態に係る番号管理装置の機能を実現するコンピュータのハードウェア構成の一例を示すブロック図である。 本実施形態に係る番号管理装置の機能的構成を示すブロック図である。 各番号管理装置の記憶部にブロックチェーンとして記憶されるブロックを示す図である。 各番号管理装置の記憶部にブロックチェーンとして記憶されるブロックを示す図である。 本実施形態に係る番号管理部の処理の流れを示すシーケンス図である。 本実施形態に係る番号解決部の処理の流れを示すシーケンス図である。 各番号管理装置の記憶部にブロックチェーンとして記憶されるブロックを示す図である。 本実施形態の変形例3に係る番号管理システムを含むENUMシステムの全体構成を示す図である。 本実施形態の変形例3に係る番号管理システムを含むENUMシステムの処理の流れを示すシーケンス図である。 従来のENUMシステムにおける番号解決処理(自網の番号)の概要を示す図である。 従来のENUMシステムにおける番号解決処理(他網への問い合わせ)の概要を示す図である。
次に、本発明を実施するための形態(以下、本実施形態と称する。)における、番号管理システム1等について説明する。
図1は、本実施形態に係る番号管理システム1の全体構成を示す図である。
図1に示すように、番号管理システム1は、各通信事業者(各図では「事業者」と記載する。)が備えるブロックチェーン構成装置としての番号管理装置10それぞれが、互いに通信接続されて構成される。図1では、例として、通信事業者Aが備える番号管理装置(ブロックチェーン構成装置)10Aと、通信事業者Bが備える番号管理装置(ブロックチェーン構成装置)10Bと、通信事業者Cが備える番号管理装置(ブロックチェーン構成装置)10Cとを示しているが、番号管理装置10の数はこれに限定されず、複数台の番号管理装置(ブロックチェーン構成装置)10が互いに通信接続されていればよい。
この番号管理システム1において管理する情報は、番号ポータビリティの情報(以下、「番号ポータビリティ情報」と称する。)である。番号ポータビリティは、ユーザが利用している通信事業者を変更しても電話番号はそのままで、変更後の通信事業者のサービスを利用できる仕組みである。各通信事業者は、自社の番号情報(電話番号と、その電話番号に対応する接続先情報)における接続先情報を、他社宛ての接続先情報に更新した情報として、番号ポータビリティ情報を保持することにより番号解決を行う。
本実施形態では、各通信事業者の番号管理装置10は、ブロックチェーンに参加する通信事業者すべての番号ポータビリティ情報をブロックチェーンとして番号データベース(DB)13に記憶する。また、番号管理装置10は、SIPサーバ等からの接続先情報の問い合わせ(リクエスト)に対し応答する機能(番号解決機能)を備える。すなわち、番号管理装置10は、電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報をブロックチェーンとして管理する番号管理部11と、任意の問い合わせ電話番号に対応する接続先の問い合わせに対して当該問い合わせ電話番号に対応する接続先情報を提供する番号解決部12とを備える。
なお、本実施形態において、ブロックチェーンに参加する番号管理装置10は、金融取引で採用されるような誰でも参加できる公開型のブロックチェーンではなく、限定されたメンバ内でブロックチェーンを用いたサービスを利用するPermissioned型のブロックチェーンを前提としている。例えば、ブロックチェーンに参加するメンバは、総務省から電話番号が払い出されている通信事業者である。ただし、このような特定の通信事業者に限定されず、後記する変形例5で示すような特定の個人が含まれてもよい。
<番号管理装置>
次に、本実施形態に係る番号管理装置10について説明する。
番号管理装置10は、ブロックチェーンに参加するメンバ(各通信事業者)の番号ポータビリティ情報を管理するブロックチェーン構成装置である。この番号管理装置10は、ブロックチェーンに参加する他の通信事業者の番号管理装置10と接続されるとともに、通信事業者のシステム(例えば、事業者端末)に接続される。なお、各番号管理装置10(10A,10B,10C)は、以下に説明する同じ機能を備えるものである。
図2は、本実施形態に係る番号管理装置10の機能を実現するコンピュータ900の一例を示すハードウェア構成図である。コンピュータ900は、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903、HDD(Hard Disk Drive)904、入出力I/F(Interface)905、通信I/F906およびメディアI/F907を有する。
CPU901は、ROM902またHDD904に記憶されたプログラムに基づき作動し、図1の各部(番号管理部11、番号解決部12)による制御を行う。ROM902は、コンピュータ900の起動時にCPU901により実行されるブートプログラムや、コンピュータ900のハードウェアに係るプログラム等を記憶する。
CPU901は、入出力I/F905を介して、マウスやキーボード等の入力装置910、および、ディスプレイやプリンタ等の出力装置911を制御する。CPU901は、入出力I/F905を介して、入力装置910からデータを取得するともに、生成したデータを出力装置911へ出力する。
HDD904(記憶装置)は、CPU901により実行されるプログラムおよび当該プログラムによって使用されるデータ(番号データベース13等)を記憶する。通信I/F906は、通信網(例えば、ネットワーク(NW)5)を介して図示せぬ他の装置(例えば、他の番号管理装置10やSIPサーバ30等)からデータを受信してCPU901へ出力し、また、CPU901が生成したデータを、通信網を介して他の装置へ送信する。
メディアI/F907は、記録媒体912に格納されたプログラムまたはデータを読み取り、RAM903を介してCPU901へ出力する。CPU901は、目的の処理に係るプログラムを、メディアI/F907を介して記録媒体912からRAM903上にロードし、ロードしたプログラムを実行する。記録媒体912は、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto Optical disk)等の光磁気記録媒体、磁気記録媒体、導体メモリテープ媒体又は半導体メモリ等である。
例えば、コンピュータ900が実施形態に係る番号管理装置10として機能する場合、コンピュータ900のCPU901は、RAM903上にロードされたプログラムを実行することにより、番号管理装置10の番号管理部11および番号解決部12の機能を実現する。また、HDD904には、RAM903内のデータが記憶される。CPU901は、目的の処理に係るプログラムを記録媒体912から読み取って実行する。この他、CPU901は、他の装置から通信網(ネットワーク5)を介して目的の処理に係るプログラムを読み込んでもよい。
<番号管理部>
図3は、番号管理装置10の機能的構成を示すブロック図である。図3に示すように、番号管理装置10は、番号管理部11、番号解決部12、番号データベース13を含んで構成される。
さらに番号管理部11は、要求受付部111、トランザクション生成部112、ブロック提案部113、ブロック承認部114を含んで構成される。
要求受付部111は、通信事業者(事業者端末)等から入出力部を介し、番号更新要求を受け付ける。この番号更新要求には、番号ポータビリティの対象となる電話番号(例:0312345678)と、その番号の変更先となる他の通信事業者の接続先情報(以下、「収容事業者情報」と称する場合がある。)(例:0312345678@abc.ne.jp)とが含まれる。番号ポータビリティ情報は、この電話番号とその変更先の接続先情報である収容事業者情報とを含んで構成される(図4~図6参照)。
要求受付部111は、番号更新要求を受け付けると、その電話番号と収容事業者情報とを含む番号更新提案を生成し、トランザクション生成部112に出力する。
また、要求受付部111は、トランザクション生成部112が生成したトランザクション(番号ポータビリティ情報をブロックチェーンで管理・記憶する情報として生成したもの)を受け取ると、ブロックチェーンを構成する各番号管理装置10のうち、所定のロジック(ブロック提案部選択ロジック)に基づき決定した番号管理装置10のブロック提案部113に、受け取ったトランザクションを含む番号更新指示を送信する。ここで、所定のロジックは、例えば、予め任意(処理性能が高い、距離的に隣接する等)の番号管理装置10を設定しておいてもよいし、ランダムに番号管理装置10を決定してしてもよい。また、自身のブロック提案部113を決定する候補に含めるようにしてもよい。
トランザクション生成部112は、番号更新提案を受信すると、その番号更新提案の提案内容である、電話番号とその変更先の接続先情報である収容事業者情報との情報(番号ポータビリティ情報)について、正常性を確認する。
トランザクション生成部112が行う正常性の確認とは、例えば、電話番号が規定上のフォーマット(桁数等)になっているか、収容事業者情報が規定のフォーマットになっているか等の検証を行うことである。
トランザクション生成部112は、正常性の確認ができた場合に、その番号ポータビリティ情報について、ブロックチェーンで管理・記憶されるトランザクションを生成する。そして、トランザクション生成部112は、生成したトランザクションを含む番号更新提案応答を要求受付部111に出力する。
ここで、トランザクション生成部112は、番号ポータビリティ情報のうち電話番号について、所定のハッシュ関数でハッシュ化した上でトランザクションを生成する。すなわち、トランザクション生成部112は、電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報(ハッシュ値)と、接続先情報とを含むトランザクション(図4参照)を生成する。トランザクション生成部112で用いるハッシュ関数は、後述する番号解決部12のハッシュ演算部122にも共有されている。このように電話番号をハッシュ化することによって、トランザクションを一見しても電話番号と接続先情報との対応を把握することができなくなる。
なお、トランザクション生成部112は、生成したトランザクションを要求受付部111に出力せず、所定のロジック(ブロック提案部選択ロジック)に基づき、ブロックチェーンを構成する各番号管理装置10のうちのいずれかの番号管理装置10のブロック提案部113を決定し、その決定したブロック提案部113に、生成したトランザクションを含む番号更新指示を送信するようにしてもよい。
ブロック提案部113は、ブロックチェーンを構成する各番号管理装置10から受信した番号更新指示を集約し、複数のトランザクション(以下、「トランザクション群」と称する。)を含むブロックを生成する。このブロックには、集約したトランザクション(トランザクション群)と、番号データベース13にブロックチェーンとして記憶されているブロックのうち、現時点で最新のブロックのトランザクション群を用いて計算したハッシュ値(後記する「前ブロックのハッシュ値」)とを含める。
図4は、各番号管理装置10の記憶部にブロックチェーンとして記憶されるブロックを示す図である。
各ブロックには、トランザクション群の情報と、「前ブロックのハッシュ値」の情報が格納される。図4に示す例では、現時点で最新の(最後に繋げられた)ブロックaは、その直前に繋がるブロックであるブロックa-1のトランザクション群についてハッシュ関数を用いて算出した値であるハッシュ値(前ブロックのハッシュ値)と、その時点で最新のトランザクション群の情報が格納される。
ブロック提案部113は、提案するブロックを生成する際に、ハッシュ関数を用いて、最新のブロック(ブロックa)についてのトランザクション群のハッシュ値を計算する。そして、ブロック提案部113は、提案するブロック(ブロックa+1)として、計算したハッシュ値(前ブロックのハッシュ値)と新たに集約したトランザクション群とを含むブロックを生成する。
ブロック提案部113は、新たに提案するブロック(ブロックa+1)を生成すると、そのブロックを含む番号更新承認依頼を、ブロックチェーンを構成する各番号管理装置10のブロック承認部114に送信する。
図3に戻り、ブロック承認部114は、番号更新承認依頼を受信すると、その番号更新承認依頼に含まれるブロックの正常性を確認する。この正常性の確認は、例えば、次のように行う。ブロック承認部114は、その番号管理装置10の記憶部に記憶したブロックチェーンの最新のブロック(ブロックa)において、そのトランザクション群を用いてハッシュ値を計算する。そして、ブロック承認部114は、番号更新承認依頼において新たに提案されたブロックa+1に含まれる前ブロックのハッシュ値と、計算したハッシュ値とが一致するか否かを判定する。そして、ブロック承認部114は、ハッシュ値同士が一致する場合には、正常なブロックであるとしてそのブロックを承認し、ブロックチェーンにおける次のブロック(ブロックa+1)としてブロックaに繋げて記憶する(図5参照)。
ブロックチェーンを構成する各番号管理装置10のブロック承認部114で、提案されたブロックが承認される(正常性が確認される)ことにより、すべての番号管理装置10の番号データベース13に、同じトランザクション(番号ポータビリティ情報)が格納されることになる。
<番号解決部>
図3に戻り、番号解決部12について説明する。番号解決部12は、ENUMシステムにおいて、SIPサーバ等からの接続先情報に関する問い合わせ(リクエスト)に対し応答する機能(ENUMサーバの番号解決機能)を実現する。
図3に示すように、番号解決部12は、問い合わせ受付部121、ハッシュ演算部122、データ管理部123を含んで構成される。
問い合わせ受付部121は、SIPサーバ等から任意の電話番号の接続先情報(収容事業者情報)を要求する問い合わせ要求を受信する。この問い合わせ要求には、今回の問い合わせ対象となる電話番号(以下、「問い合わせ電話番号」という)が含まれている。また、問い合わせ受付部121は、データ管理部123から受信した接続先情報を、問い合わせ元であるSIPサーバ等に、問い合わせ応答として送信する。
ハッシュ演算部122は、問い合わせ電話番号を所定のハッシュ関数でハッシュ化する。以下、ハッシュ化された問い合わせ電話番号を「ハッシュ化問い合わせ情報」という。所定のハッシュ関数とは、トランザクション生成部112で電話番号のハッシュ化に用いた(ハッシュ化電話番号の生成に用いた)ハッシュ関数である。
データ管理部123は、ハッシュ演算部122で生成されたハッシュ化問い合わせ情報をキーとしてブロックチェーン内のトランザクションを検索し、問い合わせ電話番号に対応する接続先情報を回答する。すなわち、データ管理部123は、番号データベース13に記録された各ブロックのトランザクションのハッシュ化番号情報を検索し、ハッシュ化番号情報とハッシュ化問い合わせ情報とが一致するトランザクションを抽出する。そして、データ管理部123は、抽出したトランザクションの接続先情報を問い合わせ受付部121に出力する。
<番号管理部の処理>
次に、本実施形態に係る番号管理部11の処理流れについて説明する。
図6は、本実施形態に係る番号管理部11の処理の流れを示すシーケンス図である。
まず、番号管理システム1を構成する番号管理装置10のうちの一つ(例えば、番号管理装置10A)が、通信事業者(通信事業者端末)等から、番号更新要求を受け付ける(ステップS1)。この番号更新要求には、対象とする電話番号(例えば、「0312345678」)と、その電話番号について変更先となる他の通信事業者の接続先情報(収容事業者情報)(例えば、「0312345678@abc.ne.jp」)とから構成される番号ポータビリティ情報が含まれる。
なお、通信事業者(通信事業者端末)等は、自身に属する番号管理装置10に番号更新要求を送信してもよいし、ブロックチェーンを構成し他の通信事業者に属する番号管理装置10に番号更新要求を送信してもよい。よって、例えば、通信事業者Aの事業者端末Aから通信事業者Bの番号管理装置10Bに番号更新要求を送信しても構わない。
次に、番号更新要求を受け取った番号管理装置10の要求受付部111は、その番号更新要求に含まれる番号ポータビリティ情報(電話番号と変更先となる収容事業者情報)を抽出し、その番号ポータビリティ情報を含む番号更新提案を、自装置のトランザクション生成部112に出力する(ステップS2)。
トランザクション生成部112は、番号更新提案を受信すると、その番号更新提案の提案内容である、電話番号とその変更先である収容事業者情報との情報(番号ポータビリティ情報)について、所定の規格(形式)に合致するか否か等の正常性の確認をする(ステップS3)。
トランザクション生成部112は、正常性が確認できた場合に、その番号ポータビリティ情報のうち電話番号をハッシュ化してハッシュ化番号情報を生成し、ハッシュ化番号情報と接続先情報とを含むトランザクションを生成する(ステップS4)。そして、トランザクション生成部112は、生成したトランザクションを含む番号更新提案応答を、要求受付部111に出力する(ステップS5)。
なお、トランザクション生成部112は、正常性が確認できない場合には、処理を終了する。その際、トランザクション生成部112は、正常性が確認できない旨を、要求受付部111を介して、番号更新要求を送信してきた通信事業者(通信事業者端末)等に返信するようにしてもよい。
続いて、要求受付部111は、番号更新提案応答に含まれるトランザクションを取得し、ブロックチェーンを構成する各番号管理装置10のうち、所定のロジック(ブロック提案部選択ロジック)に基づき決定した番号管理装置10(例えば、番号管理装置10B)のブロック提案部113に、取得したトランザクションを含む番号更新指示を送信する(ステップS6)。
番号更新指示を受信した番号管理装置10のブロック提案部113は、受信した番号更新指示に含まれるトランザクション、および、それ以外に受信した他の番号更新指示に含まれるトランザクションを集約し、複数のトランザクション(トランザクション群)を含むブロック(提案するブロック)を生成する(ステップS7)。この際、ブロック提案部113は、最新のブロック(図4のブロックa)についてのトランザクション群のハッシュ値を計算し、その計算したハッシュ値を「前ブロックのハッシュ値」として、生成したブロックに含める。
そして、ブロック提案部113は、生成したブロック(提案するブロック)を含む番号更新承認依頼を、ブロックチェーンを構成する各番号管理装置10(10A,10C)のブロック承認部114に送信する(ステップS8)。なお、この際、ブロック提案部113は、自装置(番号管理装置10B)のブロック承認部114にも出力する。
各番号管理装置10のブロック承認部114は、番号更新承認依頼を受信すると、その番号更新承認依頼に含まれるブロックの正常性を確認することにより、そのブロックを承認する(ステップS9)。そして、ブロック承認部114は、その承認されたブロックを、自装置に記憶されたブロックチェーンの次のブロック(図5のブロックa+1)としてブロックaに繋げて番号データベース13に記憶し、処理を終了する。
なお、ブロック承認部114は、この正常性の確認を、例えば、ブロックに含まれる「前ブロックのハッシュ値」と、自装置の記憶部に記憶された最新のブロック(図4のブロックa)のトランザクション群を用いて計算したハッシュ値との値が一致するか否かを判定し、一致する場合に改ざん等がなく正常であると確認することにより行う。
<番号解決部の処理>
次に、本実施形態に係る番号解決部12の処理流れについて説明する。
図7は、本実施形態に係る番号解決部12の処理の流れを示すシーケンス図である。
まず、番号管理システム1を構成する番号管理装置10のうちの一つ(例えば、番号管理装置10A)が、SIPサーバ等から接続先情報の問い合わせ要求を受け付ける(ステップS21)。この問い合わせ要求には、問い合わせ対象となる電話番号(問い合わせ電話番号)が含まれる。次に、問い合わせ要求を受けた番号管理装置10の問い合わせ受付部121は、その問い合わせ要求に含まれる問い合わせ電話番号を抽出し、問い合わせ電話番号のハッシュ化を要求するハッシュ解決要求を、自装置のハッシュ演算部122に出力する(ステップS22)。
ハッシュ演算部122は、問い合わせ受付部121からハッシュ解決要求を受信すると、所定のハッシュ関数(番号管理システム1で共有されているハッシュ関数)で問い合わせ電話番号をハッシュ化し(ハッシュ演算)、ハッシュ化問い合わせ情報を生成する(ステップS23)。続いて、ハッシュ演算部122は、生成したハッシュ化問い合わせ情報(ハッシュ値)を含むハッシュ値応答を問い合わせ受付部121に送信する(ステップS24)。
問い合わせ受付部121は、ハッシュ化問い合わせ情報を含む収容事業者情報取得要求をデータ管理部123に送信する(ステップS25)。データ管理部123は、番号データベース13内の各ブロックのトランザクションをハッシュ化問い合わせ情報をキーとして検索し、ハッシュ化問い合わせ情報と一致するハッシュ化電話番号を有するトランザクションを抽出する(ステップS26)。そして、データ管理部123は、抽出したトランザクションの接続先情報を含む収容事業者情報応答を問い合わせ受付部121に送信する(ステップS27)。
そして、問い合わせ受付部121は、問い合わせ電話番号に対応する接続先情報を含む問い合わせ応答を問い合わせ元であるSIPサーバ等に送信する(ステップS28)。
このように、本実施形態に係る番号管理システム1の各番号管理装置(ブロックチェーン構成装置)10は、自身が管理する電話番号に関する番号ポータビリティ情報だけでなく、ブロックチェーンに参加するすべてのメンバ(通信事業者等)の番号ポータビリティ情報を記憶することができる。よって、例えば、ある通信事業者の番号管理装置10が故障した場合でも、他の通信事業者の番号管理装置10に、ブロックチェーンに参加するすべてのメンバ(通信事業者)の番号ポータビリティ情報が記憶されていることにより、番号解決を継続することができる。したがって、ENUMシステムで利用する番号ポータビリティ情報の可用性を向上させることができる。
また、各番号管理装置10にENUMサーバの機能を与えることによって、番号管理装置10のうちのいずれかが故障しても、他の番号管理装置10にブロックチェーンに参加するすべてのメンバの番号ポータビリティ情報が記憶されているため、個々のENUMサーバの機能を備えた番号管理装置10については、従来のENUMシステムのENUMサーバに比べ信頼性の程度を高くする必要をなくすことができる。よって、コストを削減することができる。また、番号ポータビリティ情報の更新に際し、小規模事業者は、ブロックチェーンを構成する複数の番号管理装置10のうちのいずかに番号更新要求を送信すればよいため、特定の大規模事業者に依頼し変更してもらう必要をなくすことができる。よって、小規模事業者の電話回線網サービスへの参入障壁を下げることができる。
また、本実施形態のように、番号ポータビリティ情報の一部(電話番号)をハッシュ化してブロックチェーンに記録することにより、番号ポータビリティ情報の機密性を高めることができる。
例えば番号ポータビリティ情報をハッシュ化しない場合、各事業者の保持するすべての番号情報(電話番号および当該電話番号の収容事業者情報)が平文(暗号化されていない状態のデータ)で、ブロックチェーンで接続されるすべての事業者に流通されることになる。このため、各事業者が自身のブロックチェーン(番号データベース13)のデータを参照するだけで、各電話番号契約者がどの事業者と契約しているかを容易に取得できてしまう。番号ポータビリティというサービスの性質上、電話の発着信時に着信先の事業者情報を参照するためにブロックチェーンのデータを参照することは許容されているものの、そのデータを電話の発着信先の解決以外の用途、例えば他事業者に収容されているユーザの勧誘目的で利用することは本来の番号ポータビリティの意図とは合致しておらず、問題である。本実施形態のように、番号ポータビリティ情報の一部をハッシュ化することによって、各電話番号契約者がどの事業者と契約しているかを各事業者が容易に把握できないようにすることができる。
また、例えば番号ポータビリティ情報をハッシュ化しない場合、ブロックチェーン(番号データベース13)内のデータが、ブロック情報の事業者間での交換時や各事業者が保有するストレージデバイスの紛失、盗難などにより第三者に流出してしまった場合に、番号情報が悪用されてしまうおそれがある。本実施形態のように、番号ポータビリティ情報の一部をハッシュ化することによって、ブロックチェーン内のデータが流出したとしても、電話番号のハッシュ化に用いたハッシュ関数が特定されなければ、番号ポータビリティ情報が第三者に漏洩する恐れがなくなる。
≪変形例1≫
次に、本実施形態に係る番号管理システム1の変形例1について説明する。
上述した説明では、電話番号のハッシュ化に用いるハッシュ関数が固定されているものとしたが、このハッシュ関数を任意のタイミングで変更してもよい。すなわち、トランザクション生成部112が、電話番号のハッシュ化に用いるハッシュ関数を任意のタイミングで変更してもよい。
具体的には、例えば複数のハッシュ関数を用意しておき、トランザクション生成部112(図3)が、それぞれのトランザクション生成時にランダムに今回用いるハッシュ関数を選択する。この時、例えば図8に示すように、今回用いたハッシュ関数を識別する情報(図8の例では「バージョン情報」)をトランザクション内に含めてもよい。電話番号のハッシュ化に用いられる可能性のあるハッシュ関数は、すべての番号管理装置10で共有しておく。また、ハッシュ関数の識別情報(バージョン情報)がどのようなハッシュ関数と対応しているかを示す情報(例えば対応表)は、各番号管理装置10で保持していてもよいし、装置外部にあるデータベースなどから必要に応じて取得するようにしてもよい。
番号解決時には、ハッシュ演算部122(図3)は、ハッシュ化に用いられる可能性のあるすべてのハッシュ関数をそれぞれ用いて問い合わせ番号をハッシュ化し、複数のハッシュ化問い合わせ情報を生成する。
データ管理部123は、複数のハッシュ化問い合わせ情報をそれぞれキーとしてブロックチェーン内のトランザクションを検索する。通常、複数のハッシュ化問い合わせ情報をキーとして検索しても、トランザクション内のハッシュ化番号情報と一致するものは1つであると考えられる。この場合、データ管理部123は、そのまま当該トランザクションの接続先情報を問い合わせ受付部121に出力し、問い合わせ受付部121は、その接続先情報を問い合わせ元であるSIPサーバ等に送信する。
一方で、異なる電話番号を異なるハッシュ関数でハッシュ化した結果が同一値となる可能性はゼロではなく、この場合、データ管理部123(図3)は、複数のトランザクションを抽出することになる。データ管理部123は、抽出した複数のトランザクションの接続先情報とともに、バージョン情報を問い合わせ受付部121に出力する。問い合わせ受付部121は、各トランザクションに含まれるハッシュ関数のバージョン情報を照合し、問い合わせ電話番号に対応するトランザクションを特定し、そのトランザクションの接続先情報を問い合わせ元であるSIPサーバ等に送信する。
また、トランザクション生成部112(図3)は、例えばトランザクションが格納されるブロック毎に(または所定数のブロック毎に)、ハッシュ化に用いるハッシュ関数を変更してもよい。この場合、ブロックの識別子と、当該ブロックのトランザクション(電話番号)のハッシュ化に用いたハッシュ関数の識別子との対応関係を、すべての番号管理装置10で共有しておく。
番号解決時の処理は、上述したランダムにハッシュ関数を変更する場合と同様であるが、データ管理部123で複数のトランザクションを抽出した場合、抽出した複数のトランザクションの接続先情報とともに、そのトランザクションが含まれていたブロックの識別子を問い合わせ受付部121に出力する。問い合わせ受付部121は、各トランザクションのブロック識別子を照合し、トランザクションのハッシュ化に用いられたハッシュ関数を特定し、問い合わせ電話番号に対応するトランザクションを特定する。その後の処理は上述したランダムにハッシュ関数を変更する場合と同様である。
このように、電話番号のハッシュ化に用いるハッシュ関数を任意のタイミングで変更することにより、番号ポータビリティ情報の機密性をより向上させることができる。例えば番号ポータビリティ情報が流出したとしても、情報取得者が複数のハッシュ関数すべてを把握していなければ、その一部のみしか解析することができず、情報の利用を困難にすることができる。
≪変形例2≫
次に、本実施形態に係る番号管理システム1の変形例2について説明する。
上述した説明では、電話番号をそのままハッシュ化してハッシュ化電話番号を生成しているが、電話番号に対して任意の文字列を付加した上でハッシュ化してハッシュ化電話番号を生成してもよい。具体的には、例えばabcdef..などのランダムな文字列や、tel:やtelephone:といった任意の文字列などを複数パターン用意し、トランザクションを生成する際にいずれかの文字列をランダムに選択して接頭辞として電話番号に付加し、ハッシュ化する(例えば、電話番号が"0422591234"の場合、"tel:0422591234"という文字列に対してハッシュ演算を行う)。すなわち、トランザクション生成部112(図3)は、複数の候補文字列の中から選択した文字列を電話番号に付加してハッシュ化し、ハッシュ化番号情報を生成する。なお、電話番号に付加される可能性のある文字列(候補文字列)は、すべての番号管理装置10で共有する。
番号解決時には、ハッシュ演算部122(図3)は、問い合わせ電話番号にすべての候補文字列をそれぞれ付加してハッシュ化し、複数のハッシュ化問い合わせ情報を生成する。
データ管理部123は、複数のハッシュ化問い合わせ情報をそれぞれキーとしてブロックチェーン内のトランザクションを検索する。通常、複数のハッシュ化問い合わせ情報をキーとして検索しても、トランザクション内のハッシュ化番号情報と一致するものは1つであると考えられる。データ管理部123は、検索でヒットしたトランザクションの接続先情報を問い合わせ受付部121に出力し、問い合わせ受付部121は、その接続先情報を問い合わせ元であるSIPサーバ等に送信する。
このようにすることで、例えばすべての電話番号のハッシュ値を予め計算することで、電話番号と接続先情報の関係を割り出すといった逆解析を困難にし、番号ポータビリティ情報の機密性をより向上させることができる。
≪変形例3≫
次に、本実施形態に係る番号管理システム1の変形例3について説明する。
図1に示した本実施形態に係る番号管理システム1では、SIPサーバ等からの接続先情報の問い合わせ(リクエスト)に対し応答する機能(番号解決部12の機能)を各番号管理装置10が備えることによりENUMシステムを実現した。
これに対し、ENUMシステムを実現するにあたり、本実施形態の変形例3に係る番号管理システム1aでは、SIPサーバ等からの接続先情報の問い合わせ(リクエスト)への応答する機能(番号解決部12の機能)を、番号管理装置10とは別の装置(ENUMサーバ)で実行することを特徴とする。
図9は、本実施形態の変形例3に係る番号管理システム1aを含むENUMシステムの全体構成を示す図である。
図9に示すように、番号管理システム1aを構成する各番号管理装置10(10A,10B,10C)は、それぞれの通信事業者が設置するENUMサーバ20(20A,20B,20C)と接続される。ENUMサーバ20は、図1および図3に示す番号解決部12の構成および番号データベース13に加え、データ更新部14を備える。また、番号管理装置10は、図1に示した番号管理部11の構成に加え、番号ポータビリティ情報送信部115を備える。なお、図1および図3に示した番号管理装置10と同じ機能を有する構成については、同一の符号と名称を付し、説明を省略する。
番号ポータビリティ情報送信部115は、ブロック承認部114が提案されたブロックを承認することにより、新たなブロックをブロックチェーンに繋げて記憶した場合に、その新たに記憶されたブロックに含まれる各トランザクションの情報である番号ポータビリティ情報を抽出し、その番号ポータビリティ情報を含む番号情報更新要求を、自身が属する通信事業者のENUMサーバ20に送信する。また、番号ポータビリティ情報送信部115は、ENUMサーバ20から、番号情報更新要求に対する応答であり、送信した番号ポータビリティ情報を用いて番号データベースを更新した旨を示す番号情報更新応答を受信する。
<ENUMサーバ>
ENUMサーバ20は、SIPサーバ等から接続先となる端末の電話番号についての接続先情報の問い合わせ(リクエスト)を受け付け、応答する装置(番号解決装置)である。このENUMサーバ20は、番号解決部12と、データ更新部14と、番号データベース(DB)13とを備える。
番号解決部12は、SIPサーバ等からの問い合わせを受け付け、その問い合わせで示される電話番号に対応する接続先情報を、番号データベース13を参照して抽出し、SIPサーバ等に返信する。
データ更新部14は、自身と接続する番号管理装置10から、番号情報更新要求を受信し、その番号情報更新要求に含まれる各番号ポータビリティ情報を用いて、番号データベース13を更新する。そして、データ更新部14は、番号データベース13の更新が完了すると、その旨を示す番号情報更新応答を番号管理装置10に送信する。
図10は、本実施形態の変形例3に係る番号管理システム1aを含むENUMシステムの処理の流れを示すシーケンス図である。
図6で示した、番号管理システム1の処理(ステップS1~S9)は、同じであるため説明は省略する。
各番号管理装置10(10A,10B,10C)のブロック承認部114(図3)が提案されたブロックを承認すると(ステップS9)、番号ポータビリティ情報送信部115(図10で図示省略)は、ブロックチェーンに新たに記憶されたブロックに含まれる各トランザクションの情報である番号ポータビリティ情報を抽出する。そして、番号ポータビリティ情報送信部115は、その抽出した各番号ポータビリティ情報を含む番号情報更新要求を生成し、自身が属する通信事業者のENUMサーバ20に送信する(ステップS10)。
続いて、各ENUMサーバ20のデータ更新部14は、番号情報更新要求を受信すると、その番号情報更新要求に含まれる各番号ポータビリティ情報を用いて、番号データベース13を更新する(ステップS11)。
次に、各ENUMサーバ20のデータ更新部14は、番号データベース13の更新が完了すると、その旨を示す番号情報更新応答を番号管理装置10に送信する(ステップS12)。
なお、番号解決時の処理は、図7に示すシーケンスと同様のため、説明を省略する。
このようにすることにより、番号管理システム1aの各番号管理装置10は、更新された番号ポータビリティ情報を、自身が属する通信事業者のENUMサーバ20の番号データベース13に反映させることができる。
なお、ENUMサーバ20のデータ更新部14(図9)が、番号管理装置10からの番号更新要求を受信するのではなく、データ更新部14側から、所定の時間間隔で、更新された番号ポータビリティ情報の取得要求を送信することにより、各番号ポータビリティ情報を、番号管理装置10の番号ポータビリティ情報送信部115から取得し、番号データベース13を更新するようにしてもよい。
≪変形例4≫
図1に示す番号管理システム1では、ブロックチェーンを構成するすべての番号管理装置10にブロック提案部113(図3)を設けていたが、変形例4では、ブロックチェーンを構成する番号管理装置10のうちの1つを、代表(リーダー)の番号管理装置10として設定する。そして、その代表の番号管理装置10(例えば10A)にブロック提案部113を備えるようにし、他の番号管理装置10(10B,10C)には、ブロック提案部113を備えない構成とする。
本実施形態に係る各番号管理装置10のトランザクション生成部112(図3)では、要求受付部111から番号更新提案を受信し、番号ポータビリティ情報についてトランザクションを生成する。その後、要求受付部111(若しくはトランザクション生成部112)が、所定のロジック(ブロック提案部選択ロジック)に基づき決定された、ブロックチェーンを構成するいずれかの番号管理装置10のブロック提案部113に番号更新指示を送信していた。
これに対し、本実施形態の変形例4に係る番号管理装置10では、各番号管理装置10(10B,10C)の要求受付部111(若しくはトランザクション生成部112)は、代表の番号管理装置10(10A)のブロック提案部113に番号更新指示を送信することを特徴とする。そして、代表の番号管理装置10(10A)のブロック提案部113が、受信した番号更新指示を集約し、複数のトランザクションを含むブロックを生成する。続いて、ブロック提案部113は、生成したブロックを含む番号更新承認依頼を、ブロックチェーンを構成する各番号管理装置10のブロック承認部114に送信する。
各番号管理装置10のブロック承認部114は、番号更新依頼に含まれるブロックの正常性を確認する際に、送信元が代表の番号管理装置10(10A)であることも含めて正常性の確認するようにしてもよい。
このようにすることによっても、本実施形態の変形例4に係る番号管理システム1の各番号管理装置(ブロックチェーン構成装置)10は、自身が管理する電話番号に関する番号ポータビリティ情報だけでなく、ブロックチェーンに参加するすべてのメンバ(通信事業者等)の番号ポータビリティ情報を記憶することができる。よって、ENUMシステムで利用する番号ポータビリティ情報の可用性を向上させることができる。また、例えば、ブロック提案部113がブロックチェーンに複数存在する場合に生じる、分散システムの合意形成の問題(順序性、一貫性、原子性)を扱わずにすむため、システム全体としての処理負荷、通信負荷を低減することができる。
≪変形例5≫
次に、本実施形態に係る番号管理システム1の変形例5について説明する。
本実施形態に係る番号管理システム1(図1参照)においては、誰でも参加できる公開型のブロックチェーンではなく、限定されたメンバ内でブロックチェーンを用いたサービスを利用するPermissioned型のブロックチェーンを前提としている。この場合、番号管理装置10に番号更新要求を送信することができるメンバは、総務省から電話番号が払い出されている通信事業者が想定される。しかしながら、将来的には、総務省が直接ユーザに番号を払い出すケースも考えられる。その場合、「Permissiond」の対象を、総務省が番号を払い出したユーザを含めるようにしてもよい。
よって、変形例5に係る番号管理システムでは、通信事業者だけでなく、特定のユーザ(ユーザ端末)も、番号管理装置10に番号更新要求を送ることができる構成とする。また、番号管理装置10が、ENUMサーバとしての機能を備える場合には、通信事業者のSIPサーバを介さずに、ユーザ端末から直接、電話番号に対応する接続先情報の問い合わせを受け付け、番号解決するようにしてもよい。
<効果>
以上説明したように、本発明の番号管理システムは、電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置10を備える番号管理システム1であって、複数の番号管理装置10それぞれは、番号ポータビリティ情報をブロックチェーンとして管理する番号管理部11と、問い合わせ電話番号に対応する接続先情報を回答する番号解決部12と、を有し、番号管理部11は、番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付部111と、電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、接続先情報とを含むトランザクションを生成するトランザクション生成部112と、複数の番号更新要求に応じて生成されたトランザクションそれぞれを取得し、取得した複数のトランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した提案するブロックを、ブロックチェーンを構成する複数の番号管理装置それぞれに送信するブロック提案部113と、提案するブロックを受信し、提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部にブロックチェーンとして記憶しているブロックに繋げて提案するブロックを記憶するブロック承認部114と、を備え、番号解決部12は、問い合わせ電話番号を含む問い合わせ要求を受け付ける問い合わせ受付部121と、問い合わせ電話番号をハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算部122と、ハッシュ化問い合わせ情報をキーとしてブロックチェーン内のトランザクションを検索し、問い合わせ電話番号に対応する接続先情報を回答するデータ管理部123と、を備えることを特徴とする。
このようにすることで、番号管理システム1の各番号管理装置(ブロックチェーン構成装置)10は、自身が管理する電話番号に関する番号ポータビリティ情報だけでなく、ブロックチェーンに参加するすべてのメンバ(通信事業者等)の番号ポータビリティ情報を記憶することができる。よって、ENUMシステムで利用する番号ポータビリティ情報の可用性を向上させることができる。
また、番号管理システム1によれば、番号ポータビリティ情報の一部(電話番号)をハッシュ化してブロックチェーンに記録することにより、番号ポータビリティ情報の機密性を高めることができ、すべてのメンバ(通信事業者等)で番号ポータビリティ情報を共有することにより高まる情報漏洩のリスクを低減することができる。
また、番号管理システム1において、トランザクション生成部112は、予め設定した複数のハッシュ関数のうちの1つを選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、選択したハッシュ関数を識別するバージョン番号と、接続先情報とを含むトランザクションを生成し、ハッシュ演算部122は、問い合わせ電話番号を、予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、データ管理部123は、複数生成したハッシュ化問い合わせ情報をキーとしてブロックチェーン内のトランザクションを検索し、問い合わせ電話番号に対応する接続先情報およびバージョン番号を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、バージョン番号で識別されるハッシュ関数が、ハッシュ演算部122で用いたハッシュ関数と一致する接続先情報を選択して回答することを特徴とする。
このように複数のハッシュ関数を用いることで、ハッシュ化に用いられたハッシュ関数の特定が困難となり、番号ポータビリティ情報の機密性をより向上させることができる。例えば番号ポータビリティ情報が流出したとしても、情報取得者が複数のハッシュ関数すべてを把握していなければ、その一部のみしか解析することができず、情報の利用を困難にすることができる。
また、番号管理システム1において、トランザクション生成部112は、予め設定した複数のハッシュ関数のうちの1つをブロック毎に選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、当該ハッシュ化番号情報を含むトランザクションが格納されるブロックの識別子と、接続先情報とを含むトランザクションを生成し、ハッシュ演算部122は、問い合わせ電話番号を、予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、データ管理部123は、複数生成したハッシュ化問い合わせ情報をキーとしてブロックチェーン内のトランザクションを検索し、問い合わせ電話番号に対応する接続先情報およびブロックの識別子を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、ブロックの識別子で識別されるハッシュ関数が、トランザクション生成部112においてブロック毎に選択したハッシュ関数と一致する接続先情報を選択して回答することを特徴とする。
このようにブロック毎に異なるハッシュ関数を用いることで、ハッシュ化に用いられたハッシュ関数の特定が困難となり、番号ポータビリティ情報の機密性をより向上させることができる。例えば番号ポータビリティ情報が流出したとしても、情報取得者が複数のハッシュ関数すべてを把握していなければ、その一部のみしか解析することができず、情報の利用を困難にすることができる。
また、番号管理システム1において、トランザクション生成部112は、複数の候補文字列の中から選択した文字列を電話番号に付加しハッシュ化してハッシュ化番号情報を生成し、ハッシュ演算部122は、問い合わせ電話番号に複数の候補文字列をそれぞれ付加してハッシュ化したハッシュ化問い合わせ情報を複数生成し、データ管理部123は、複数生成したハッシュ化問い合わせ情報をキーとしてブロックチェーン内のトランザクションを検索し、ハッシュ化問い合わせ情報に対応する接続先情報を回答することを特徴とする。
このようにすることで、例えばすべての電話番号のハッシュ値を予め計算することで、電話番号と接続先情報の関係を割り出すといった逆解析を困難にし、番号ポータビリティ情報の機密性をより向上させることができる。
なお、本発明に係る番号管理システム1、番号管理方法および番号管理装置10は、以上説明した実施形態や変形例に限定されず、その趣旨を逸脱しない範囲で変更実施が可能である。
例えば、本実施形態では、番号ポータビリティ情報を、電話番号と変更後の接続先情報(収容事業者情報)との組として説明した。これ以外にも、例えば、電話番号と、変更前の収容事業者情報と、変更後の収容事業者情報との組として、番号ポータビリティ情報を構成してもよい。この場合でも、本実施形態と同様の効果を奏することができる。
1,1a 番号管理システム
10(10A,10B,10C) 番号管理装置
11 番号管理部
12 番号解決部
13 番号データベース
14 データ更新部
20 ENUMサーバ
111 要求受付部
112 トランザクション生成部
113 ブロック提案部
114 ブロック承認部
115 番号ポータビリティ情報送信部
121 問い合わせ受付部
122 ハッシュ演算部
123 データ管理部

Claims (12)

  1. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムであって、
    複数の前記番号管理装置それぞれは、前記番号ポータビリティ情報をブロックチェーンとして管理する番号管理部と、問い合わせ電話番号に対応する前記接続先情報を回答する番号解決部と、を有し、
    前記番号管理部は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付部と、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成部と、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、前記ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案部と、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認部と、を備え、
    前記番号解決部は、
    前記問い合わせ電話番号を含む問い合わせ要求を受け付ける問い合わせ受付部と、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算部と、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理部と、を備え
    前記トランザクション生成部は、予め設定した複数のハッシュ関数のうちの1つを選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、前記選択したハッシュ関数を識別するバージョン番号と、前記接続先情報とを含むトランザクションを生成し、
    前記ハッシュ演算部は、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、
    前記データ管理部は、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記バージョン番号を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記バージョン番号で識別されるハッシュ関数が、前記ハッシュ演算部で用いたハッシュ関数と一致する前記接続先情報を選択して回答する
    ことを特徴とする番号管理システム。
  2. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムであって、
    複数の前記番号管理装置それぞれは、前記番号ポータビリティ情報をブロックチェーンとして管理する番号管理部と、問い合わせ電話番号に対応する前記接続先情報を回答する番号解決部と、を有し、
    前記番号管理部は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付部と、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成部と、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、前記ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案部と、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認部と、を備え、
    前記番号解決部は、
    前記問い合わせ電話番号を含む問い合わせ要求を受け付ける問い合わせ受付部と、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算部と、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理部と、を備え
    前記トランザクション生成部は、予め設定した複数のハッシュ関数のうちの1つを前記ブロック毎に選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、当該ハッシュ化番号情報を含むトランザクションが格納されるブロックの識別子と、前記接続先情報とを含むトランザクションを生成し、
    前記ハッシュ演算部は、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、
    前記データ管理部は、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記ブロックの識別子を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記ブロックの識別子で識別されるハッシュ関数が、前記トランザクション生成部においてブロック毎に選択したハッシュ関数と一致する前記接続先情報を選択して回答する
    ことを特徴とする番号管理システム。
  3. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムであって、
    複数の前記番号管理装置それぞれは、前記番号ポータビリティ情報をブロックチェーンとして管理する番号管理部と、問い合わせ電話番号に対応する前記接続先情報を回答する番号解決部と、を有し、
    前記番号管理部は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付部と、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成部と、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、前記ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案部と、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認部と、を備え、
    前記番号解決部は、
    前記問い合わせ電話番号を含む問い合わせ要求を受け付ける問い合わせ受付部と、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算部と、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理部と、を備え
    前記トランザクション生成部は、複数の候補文字列の中から選択した文字列を前記電話番号に付加しハッシュ化して前記ハッシュ化番号情報を生成し、
    前記ハッシュ演算部は、前記問い合わせ電話番号に複数の前記候補文字列をそれぞれ付加してハッシュ化した前記ハッシュ化問い合わせ情報を複数生成し、
    前記データ管理部は、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記ハッシュ化問い合わせ情報に対応する前記接続先情報を回答する
    ことを特徴とする番号管理システム。
  4. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムの番号管理方法であって、
    前記番号管理装置は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付ステップと、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成ステップと、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案ステップと、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認ステップと、を実行し、
    問い合わせ電話番号に対応する前記接続先情報を要求する問い合わせ要求を受け付ける問い合わせ受付ステップと、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算ステップと、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理ステップと、を実行し、
    前記トランザクション生成ステップにおいて、予め設定した複数のハッシュ関数のうちの1つを選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、前記選択したハッシュ関数を識別するバージョン番号と、前記接続先情報とを含むトランザクションを生成し、
    前記ハッシュ演算ステップにおいて、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、
    前記データ管理ステップにおいて、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記バージョン番号を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記バージョン番号で識別されるハッシュ関数が、前記ハッシュ演算ステップで用いたハッシュ関数と一致する前記接続先情報を選択して回答する
    ことを特徴とする番号管理方法。
  5. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムの番号管理方法であって、
    前記番号管理装置は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付ステップと、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成ステップと、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案ステップと、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認ステップと、を実行し、
    問い合わせ電話番号に対応する前記接続先情報を要求する問い合わせ要求を受け付ける問い合わせ受付ステップと、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算ステップと、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理ステップと、を実行し、
    前記トランザクション生成ステップにおいて、予め設定した複数のハッシュ関数のうちの1つを前記ブロック毎に選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、当該ハッシュ化番号情報を含むトランザクションが格納されるブロックの識別子と、前記接続先情報とを含むトランザクションを生成し、
    前記ハッシュ演算ステップにおいて、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、
    前記データ管理ステップにおいて、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記ブロックの識別子を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記ブロックの識別子で識別されるハッシュ関数が、前記トランザクション生成ステップにおいてブロック毎に選択したハッシュ関数と一致する前記接続先情報を選択して回答する
    ことを特徴とする番号管理方法。
  6. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムの番号管理方法であって、
    前記番号管理装置は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付ステップと、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成ステップと、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案ステップと、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認ステップと、を実行し、
    問い合わせ電話番号に対応する前記接続先情報を要求する問い合わせ要求を受け付ける問い合わせ受付ステップと、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算ステップと、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理ステップと、を実行し、
    前記トランザクション生成ステップにおいて、複数の候補文字列の中から選択した文字列を前記電話番号に付加しハッシュ化して前記ハッシュ化番号情報を生成し、
    前記ハッシュ演算ステップにおいて、前記問い合わせ電話番号に複数の前記候補文字列をそれぞれ付加してハッシュ化した前記ハッシュ化問い合わせ情報を複数生成し、
    前記データ管理ステップにおいて、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記ハッシュ化問い合わせ情報に対応する前記接続先情報を回答する
    ことを特徴とする番号管理方法。
  7. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムの前記番号管理装置であって、
    前記番号管理装置は、前記番号ポータビリティ情報をブロックチェーンとして管理する番号管理部と、問い合わせ電話番号に対応する前記接続先情報を回答する番号解決部と、を有し、
    前記番号管理部は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付部と、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成部と、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、前記ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案部と、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認部と、を備え、
    前記番号解決部は、
    前記問い合わせ電話番号を含む問い合わせ要求を受け付ける問い合わせ受付部と、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算部と、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理部と、を備え
    前記トランザクション生成部は、予め設定した複数のハッシュ関数のうちの1つを選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、前記選択したハッシュ関数を識別するバージョン番号と、前記接続先情報とを含むトランザクションを生成し、
    前記ハッシュ演算部は、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、
    前記データ管理部は、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記バージョン番号を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記バージョン番号で識別されるハッシュ関数が、前記ハッシュ演算部で用いたハッシュ関数と一致する前記接続先情報を選択して回答する
    ことを特徴とする番号管理装置。
  8. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムの前記番号管理装置であって、
    前記番号管理装置は、前記番号ポータビリティ情報をブロックチェーンとして管理する番号管理部と、問い合わせ電話番号に対応する前記接続先情報を回答する番号解決部と、を有し、
    前記番号管理部は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付部と、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成部と、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、前記ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案部と、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認部と、を備え、
    前記番号解決部は、
    前記問い合わせ電話番号を含む問い合わせ要求を受け付ける問い合わせ受付部と、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算部と、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理部と、を備え
    前記トランザクション生成部は、予め設定した複数のハッシュ関数のうちの1つを前記ブロック毎に選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、当該ハッシュ化番号情報を含むトランザクションが格納されるブロックの識別子と、前記接続先情報とを含むトランザクションを生成し、
    前記ハッシュ演算部は、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、
    前記データ管理部は、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記ブロックの識別子を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記ブロックの識別子で識別されるハッシュ関数が、前記トランザクション生成部においてブロック毎に選択したハッシュ関数と一致する前記接続先情報を選択して回答する
    ことを特徴とする番号管理装置。
  9. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する複数の番号管理装置を備える番号管理システムの前記番号管理装置であって、
    前記番号管理装置は、前記番号ポータビリティ情報をブロックチェーンとして管理する番号管理部と、問い合わせ電話番号に対応する前記接続先情報を回答する番号解決部と、を有し、
    前記番号管理部は、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付部と、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成部と、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、前記ブロックチェーンを構成する前記複数の番号管理装置それぞれに送信するブロック提案部と、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶部に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認部と、を備え、
    前記番号解決部は、
    前記問い合わせ電話番号を含む問い合わせ要求を受け付ける問い合わせ受付部と、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算部と、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理部と、を備え
    前記トランザクション生成部は、複数の候補文字列の中から選択した文字列を前記電話番号に付加しハッシュ化して前記ハッシュ化番号情報を生成し、
    前記ハッシュ演算部は、前記問い合わせ電話番号に複数の前記候補文字列をそれぞれ付加してハッシュ化した前記ハッシュ化問い合わせ情報を複数生成し、
    前記データ管理部は、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記ハッシュ化問い合わせ情報に対応する前記接続先情報を回答する
    ことを特徴とする番号管理装置。
  10. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する番号管理装置としてのコンピュータに、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付手順、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成手順、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、ブロックチェーンを構成する複数の番号管理装置それぞれに送信するブロック提案手順、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶装置に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認手順、
    を実行させ、
    問い合わせ電話番号に対応する前記接続先情報を要求する問い合わせ要求を受け付ける問い合わせ受付手順、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算手順、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理手順、
    を実行させ
    前記トランザクション生成手順において、予め設定した複数のハッシュ関数のうちの1つを選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、前記選択したハッシュ関数を識別するバージョン番号と、前記接続先情報とを含むトランザクションを生成し、
    前記ハッシュ演算手順において、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、
    前記データ管理手順において、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記バージョン番号を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記バージョン番号で識別されるハッシュ関数が、前記ハッシュ演算手順で用いたハッシュ関数と一致する前記接続先情報を選択して回答すること
    を実行させるための番号管理プログラム。
  11. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する番号管理装置としてのコンピュータに、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付手順、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成手順、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、ブロックチェーンを構成する複数の番号管理装置それぞれに送信するブロック提案手順、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶装置に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認手順、
    を実行させ、
    問い合わせ電話番号に対応する前記接続先情報を要求する問い合わせ要求を受け付ける問い合わせ受付手順、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算手順、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理手順、
    を実行させ
    前記トランザクション生成手順において、予め設定した複数のハッシュ関数のうちの1つを前記ブロック毎に選択し、選択したハッシュ関数でハッシュ化したハッシュ化番号情報と、当該ハッシュ化番号情報を含むトランザクションが格納されるブロックの識別子と、前記接続先情報とを含むトランザクションを生成し、
    前記ハッシュ演算手順において、前記問い合わせ電話番号を、前記予め設定した複数のハッシュ関数それぞれでハッシュ化してハッシュ化問い合わせ情報を複数生成し、
    前記データ管理手順において、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報および前記ブロックの識別子を抽出し、抽出した接続先情報が1つであった場合に、当該接続先情報を回答し、抽出した接続先情報が複数あった場合に、前記ブロックの識別子で識別されるハッシュ関数が、前記トランザクション生成手順においてブロック毎に選択したハッシュ関数と一致する前記接続先情報を選択して回答すること
    を実行させるための番号管理プログラム。
  12. 電話番号と当該電話番号の接続先情報とを含む番号ポータビリティ情報を管理する番号管理装置としてのコンピュータに、
    前記番号ポータビリティ情報を含む番号更新要求を受け付ける要求受付手順、
    前記電話番号を所定のハッシュ関数でハッシュ化したハッシュ化番号情報と、前記接続先情報とを含むトランザクションを生成するトランザクション生成手順、
    複数の前記番号更新要求に応じて生成された前記トランザクションそれぞれを取得し、取得した複数の前記トランザクションを集約したトランザクション群を含む新たに提案するブロックを生成し、生成した前記提案するブロックを、ブロックチェーンを構成する複数の番号管理装置それぞれに送信するブロック提案手順、
    前記提案するブロックを受信し、前記提案するブロックの所定の正常性を確認することにより当該提案するブロックを承認し、記憶装置に前記ブロックチェーンとして記憶しているブロックに繋げて前記提案するブロックを記憶するブロック承認手順、
    を実行させ、
    問い合わせ電話番号に対応する前記接続先情報を要求する問い合わせ要求を受け付ける問い合わせ受付手順、
    前記問い合わせ電話番号を前記ハッシュ関数でハッシュ化してハッシュ化問い合わせ情報を生成するハッシュ演算手順、
    前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記問い合わせ電話番号に対応する前記接続先情報を回答するデータ管理手順、
    を実行させ
    前記トランザクション生成手順において、複数の候補文字列の中から選択した文字列を前記電話番号に付加しハッシュ化して前記ハッシュ化番号情報を生成し、
    前記ハッシュ演算手順において、前記問い合わせ電話番号に複数の前記候補文字列をそれぞれ付加してハッシュ化した前記ハッシュ化問い合わせ情報を複数生成し、
    前記データ管理手順において、複数生成した前記ハッシュ化問い合わせ情報をキーとして前記ブロックチェーン内のトランザクションを検索し、前記ハッシュ化問い合わせ情報に対応する前記接続先情報を回答すること
    を実行させるための番号管理プログラム。
JP2021529556A 2019-07-01 2019-07-01 番号管理システム、番号管理方法、番号管理装置および番号管理プログラム Active JP7236006B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/026048 WO2021001875A1 (ja) 2019-07-01 2019-07-01 番号管理システム、番号管理方法、番号管理装置および番号管理プログラム

Publications (2)

Publication Number Publication Date
JPWO2021001875A1 JPWO2021001875A1 (ja) 2021-01-07
JP7236006B2 true JP7236006B2 (ja) 2023-03-09

Family

ID=74100634

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021529556A Active JP7236006B2 (ja) 2019-07-01 2019-07-01 番号管理システム、番号管理方法、番号管理装置および番号管理プログラム

Country Status (3)

Country Link
US (1) US11683413B2 (ja)
JP (1) JP7236006B2 (ja)
WO (1) WO2021001875A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114867007B (zh) * 2022-04-15 2023-05-23 中国联合网络通信集团有限公司 携号转网方法、系统、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017200196A (ja) 2017-06-01 2017-11-02 株式会社bitFlyer プライベートノード、プライベートノードにおける処理方法、及びそのためのプログラム
WO2018020943A1 (ja) 2016-07-28 2018-02-01 日本電気株式会社 番号ポータビリティ情報管理システム
US10171992B1 (en) 2018-06-22 2019-01-01 International Business Machines Corporation Switching mobile service provider using blockchain
CN109241181A (zh) 2018-08-08 2019-01-18 北京百度网讯科技有限公司 数据库操作方法和装置
JP2019016024A (ja) 2017-07-04 2019-01-31 株式会社日立製作所 取引管理方法、取引管理システム、取引管理装置、および、取引管理プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090058339A (ko) * 2007-12-04 2009-06-09 서울통신기술 주식회사 음성 사서함 시스템 및 음성 사서함 시스템에서의 호 처리방법
US10638310B2 (en) * 2018-02-22 2020-04-28 Hewlett Packard Enterprise Development Lp Number or subscriber porting

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018020943A1 (ja) 2016-07-28 2018-02-01 日本電気株式会社 番号ポータビリティ情報管理システム
JP2017200196A (ja) 2017-06-01 2017-11-02 株式会社bitFlyer プライベートノード、プライベートノードにおける処理方法、及びそのためのプログラム
JP2019016024A (ja) 2017-07-04 2019-01-31 株式会社日立製作所 取引管理方法、取引管理システム、取引管理装置、および、取引管理プログラム
US10171992B1 (en) 2018-06-22 2019-01-01 International Business Machines Corporation Switching mobile service provider using blockchain
CN109241181A (zh) 2018-08-08 2019-01-18 北京百度网讯科技有限公司 数据库操作方法和装置

Also Published As

Publication number Publication date
WO2021001875A1 (ja) 2021-01-07
US20220232125A1 (en) 2022-07-21
JPWO2021001875A1 (ja) 2021-01-07
US11683413B2 (en) 2023-06-20

Similar Documents

Publication Publication Date Title
KR102112459B1 (ko) 블록체인 시스템들에서의 크로스 체인 인터랙션들을 위한 도메인 네임 체계
CN109246211B (zh) 一种区块链中的资源上传和资源请求方法
US11050607B2 (en) Proxy with a function as a service (FAAS) support
RU2273107C2 (ru) Способ, система и компьютерное устройство для предоставления услуг связи между ресурсами в сетях связи и интернет с целью проведения транзакций
US8327144B2 (en) Authentication method, system, and apparatus thereof for inter-domain information communication
US12003615B2 (en) Lifecycle administration of domain name blockchain addresses
US20190182341A1 (en) Global provisioning of millions of users with deployment units
CN101188643A (zh) 联系目的地信息登记方法及程序、网络系统和节点
CN105530324A (zh) 基于类别请求路由
JP2022528710A (ja) 分散台帳のためのエイリアスに基づくアドレッシングを実施する、コンピュータにより実施されるシステム及び方法
CN113422733A (zh) 区块链的业务处理方法、装置、计算机设备及存储介质
JP7236007B2 (ja) 番号管理システム、番号管理方法、番号管理装置および番号管理プログラム
JP7236006B2 (ja) 番号管理システム、番号管理方法、番号管理装置および番号管理プログラム
JP7063142B2 (ja) 番号管理システム、番号管理方法および番号管理装置
JP7188592B2 (ja) 番号管理システム、番号管理方法、番号管理装置および番号管理プログラム
US8989371B2 (en) Community telephony brokerage system and techniques
JP6535298B2 (ja) Enumサーバ、enumデータ登録・回答方法およびプログラム
JP4653147B2 (ja) 情報機能提供システム、情報機能提供装置、情報機能提供方法および情報機能提供プログラム
JP2016149652A (ja) 呼制御サーバ、端末登録方法、端末登録プログラム、及び通信システム
Theoder et al. Securing Domain Name Systems with Blockchain
JP6798737B1 (ja) 個人情報管理システム及び個人情報管理方法
JP5735359B2 (ja) 情報配信装置、管理システム、及び情報配信方法
CN106549995B (zh) 对等网络中信息缓存与推送的方法、装置及系统
JP6285884B2 (ja) Enumサーバ、および、特異アクセス判定方法
KR101906601B1 (ko) 조직정보에 기반한 부가서비스 제공시스템, 그 조직정보관리서버, 디렉토리관리서버, 통신서비스서버 및 그 부가서비스 제공방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221227

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230206

R150 Certificate of patent or registration of utility model

Ref document number: 7236006

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150