(57)【要約】      （修正有）【課題】暗号化して管理する情報の安全性を向上させるデータ生成装置を提供する。【解決手段】データ生成装置１０は、それぞれが第１項目および第２項目を有する複数のレコードを含む第１ファイル１を取得する。次にデータ生成装置１０は、第１項目に対応した第１符号化辞書２ａおよび第２項目に対応した第２符号化辞書２ｂを生成しながら、複数のレコードそれぞれを符号化した符号化ファイル３ａを生成する。さらにデータ生成装置１０は、第１符号化辞書２ａを暗号化した暗号化辞書３ｂを生成する。そしてデータ生成装置１０は、符号化ファイル３ａ、および、暗号化辞書３ｂを結合した結合データ３を生成する。【選択図】図１
2018160129.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
それぞれが第１項目および第２項目を有する複数のレコードを含む第１ファイルを取得し、
前記第１項目に対応した第１符号化辞書および前記第２項目に対応した第２符号化辞書を生成しながら、前記複数のレコードそれぞれを符号化した符号化ファイルを生成し、
前記第１符号化辞書を暗号化した暗号化辞書を生成し、
前記符号化ファイル、および、前記暗号化辞書を結合した結合データを生成する、
処理を実行させるデータ生成プログラム。
【請求項２】
前記コンピュータに、さらに、
前記第２項目と同種のデータが設定された第３項目を有する複数の第２レコードを含む第２ファイルを取得し、
前記符号化ファイル内の符号化された前記複数のレコードに含まれる前記第２項目の符号を、前記第２符号化辞書に基づいて復号し、復号して得られた復号データと同じデータが前記第３項目に設定されている第２レコードに、前記復号データに対応する前記第１項目の符号が設定された第４項目を追加する、
処理を実行させる請求項１記載のデータ生成プログラム。
【請求項３】
前記コンピュータに、さらに、
前記第４項目追加後の前記第２ファイルと前記暗号化辞書とを含む第３ファイルを生成する、
処理を実行させる請求項２記載のデータ生成プログラム。
【請求項４】
前記コンピュータに、さらに、
前記暗号化辞書と前記第４項目追加後の前記第２ファイルとを、別々のサーバに保持させる、
処理を実行させる請求項２記載のデータ生成プログラム。
【請求項５】
コンピュータが、
それぞれが第１項目および第２項目を有する複数のレコードを含む第１ファイルを取得し、
前記第１項目に対応した第１符号化辞書および前記第２項目に対応した第２符号化辞書を生成しながら、前記複数のレコードそれぞれを符号化した符号化ファイルを生成し、
前記第１符号化辞書を暗号化した暗号化辞書を生成し、
前記符号化ファイル、および、前記暗号化辞書を結合した結合データを生成する、
データ生成方法。
【請求項６】
それぞれが第１項目および第２項目を有する複数のレコードを含む第１ファイルを記憶する記憶部と、
前記第１ファイルを取得し、前記第１項目に対応した第１符号化辞書および前記第２項目に対応した第２符号化辞書を生成しながら、前記複数のレコードそれぞれを符号化した符号化ファイルを生成し、前記第１符号化辞書を暗号化した暗号化辞書を生成し、前記符号化ファイル、および、前記暗号化辞書を結合した結合データを生成する処理部と、
を有するデータ生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ生成プログラム、データ生成方法、およびデータ生成装置に関する。
【背景技術】
【０００２】
コンピュータで管理する個人情報には、特に機密性の高い情報がある。例えば国は、国民一人ひとりに番号を割り振り、社会保障や納税に関する情報を一元的に管理する。国民一人ひとりに割り振られた番号はマイナンバー（登録商標）と呼ばれる。企業は、従業者の所得税の源泉徴収などのために、従業員のマイナンバーを利用する。多くの企業では、コンピュータを用いて従業員のマイナンバーを管理している。
【０００３】
ただし、コンピュータ内にマイナンバーを保存すると、マイナンバーが外部に漏洩する危険性が高くなる。マイナンバーは個人を一意に特定することができ、悪意のある者にマイナンバーが漏洩すると、そのマイナンバーが詐欺などに悪用されるおそれがある。そこで法律により、マイナンバーを内容に含む個人情報は特定個人情報とされ、特定個人情報に関して、暗号化の実施やアクセスログの保存などの安全管理が義務づけられている。
【０００４】
情報を暗号化して管理する技術としては、例えば平文状態の文書を作成することなく、所望の部分だけ暗号化した暗号化文書を生成する暗号化文書生成装置が考えられている。また、個人情報を秘匿したまま名寄せ処理を可能にする名寄せ処理方法も考えられている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−０４３２４２号公報
【特許文献２】特開２０１３−１４９０５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
機密性の高い情報を利用するとき、機密性の高い情報とそれ以外の情報との混成させた情報（混成情報）を生成する場合がある。例えば企業などの組織でマイナンバーを利用した帳票を作成する場合、マイナンバー以外の個人情報とマイナンバーとを結合して、混成情報である帳票が生成される。帳票を生成する場合、マイナンバーは暗号化されたファイル内に保存されているため、まずコンピュータでそのファイルを復号して、特定の個人のマイナンバーを抽出する。そしてコンピュータが、抽出したマイナンバーを再度暗号化して、他の個人情報と結合して帳票を生成する。
【０００７】
しかし、従来技術では、帳票などの混成情報を生成する際にマイナンバーを含む暗号化ファイルを復号するため、マイナンバーの安全性が低下する。これは、マイナンバーに限らず、暗号化して管理するが、他の情報と結合して利用することがある情報に共通の問題点である。
【０００８】
１つの側面では、本件は、暗号化して管理される情報が他の情報と混成された場合の、暗号化して管理される情報の安全性を向上させることを目的とする。
【課題を解決するための手段】
【０００９】
１つの案では、以下の処理をコンピュータに実行させるデータ生成プログラムが提供される。
データ生成プログラムに基づき、コンピュータは、まず、それぞれが第１項目および第２項目を有する複数のレコードを含む第１ファイルを取得する。次にコンピュータは、第１項目に対応した第１符号化辞書および第２項目に対応した第２符号化辞書を生成しながら、複数のレコードそれぞれを符号化した符号化ファイルを生成する。さらにコンピュータは、第１符号化辞書を暗号化した暗号化辞書を生成する。そしてコンピュータは、符号化ファイル、および、暗号化辞書を結合した結合データを生成する。
【発明の効果】
【００１０】
１態様によれば、暗号化して管理する情報の安全性を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態に係るデータ生成装置の機能構成例を示す図である。
【図２】第２の実施の形態に用いるコンピュータのハードウェアの一構成例を示す図である。
【図３】コンピュータの帳票管理機能を示すブロック図である。
【図４】帳票生成手順の一例を示すフローチャートである。
【図５】マイナンバーを暗号化して保持するまでの処理の一例を示す図である。
【図６】非特定個人情報ファイルへのマイナンバーの符号追加処理の一例を示す図である。
【図７】全個人情報ファイルの生成例を示す図である。
【図８】従業員番号を符号化しない部分暗号化ファイルの例を示す図である。
【図９】第３の実施の形態のシステム構成例を示す図である。
【図１０】第３の実施の形態の機能を示すブロック図である。
【図１１】第３の実施の形態における帳票印刷処理の手順の一例を示すシーケンス図である。
【図１２】帳票印刷処理の具体例を示す図である。
【図１３】印刷される帳票の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第１の実施の形態〕
まず第１の実施の形態について説明する。
【００１３】
図１は、第１の実施の形態に係るデータ生成装置の機能構成例を示す図である。データ生成装置１０は、記憶部１１と処理部１２とを有する。
記憶部１１は、それぞれが第１項目および第２項目を有する複数のレコードを含む第１ファイル１を記憶する。第１ファイル１は、例えばデリミタにより区切られた第１項目と第２項目とを含む第１レコードを有するテキスト形式のファイルである。なおデリミタとは、複数の要素を列挙する際に、要素の区切りとなる記号や特殊文字である。例えば、ＣＳＶ（Comma-Separated Values）形式のテキストデータでは、項目を区切るカンマがデリミタである。
【００１４】
第１ファイル１に含まれる第１レコードにおいて、第１項目に設定されているデータを第１データ、第２項目に設定されているデータを第２データとする。第１データとしては、機密性の高いデータが設定される。図１の例では、属性が「マイナンバー」の項目が第１項目であり、属性が「従業員番号」の項目が第２項目である。そして各従業員のマイナンバーが第１データであり、各従業員の従業員番号が第２データである。
【００１５】
処理部１２は、記憶部１１から第１ファイル１を取得する。次に処理部１２は、第１符号化辞書２ａを生成すると共に、第１レコード内の第１データ（例えばマイナンバー）を、生成した第１符号化辞書２ａ用いて符号化する。第１符号化辞書２ａは、第１データと符号との対応関係を示している。図１の例では、マイナンバー「１２３４５６７８９０１２」に対応する符号が「ｂ０」、マイナンバー「４５６７８９０１２３４５」に対応する符号が「ｂ１」であることが、第１符号化辞書２ａに示されている。
【００１６】
また処理部１２は、第２符号化辞書２ｂを生成すると共に、第１レコード内の第２データ（例えば従業員番号）を、第２符号化辞書２ｂを用いて符号化する。第２符号化辞書２ｂは、第２データと符号との対応関係を示している。図１の例では、従業員番号「１２３４５６」に対応する符号が「ａ０」、従業員番号「４５６７８９」に対応する符号が「ａ１」であることが、第２符号化辞書２ｂに示されている。
【００１７】
そして処理部１２は、第１データの符号と第２データとの符号とを対応付けた符号化ファイル３ａを生成する。生成される符号化ファイル３ａは、例えばＣＳＶ形式のテキストデータである。
【００１８】
符号化ファイル３ａを生成後、処理部１２は、第１符号化辞書２ａ内の第１データを暗号化した暗号化辞書３ｂを生成する。暗号化辞書３ｂには、暗号化されていない第２符号化辞書２ｂを含めてもよい。これにより、マイナンバーのような機密性の高いデータが暗号化して保持される。処理部１２は、生成した暗号化辞書３ｂと符号化ファイル３ａとを結合し、結合データ３を生成する。結合データ３は、例えばＣＳＶ形式のテキストファイルである。結合データ３は、例えばデータ生成装置１０内のメモリまたはストレージ装置に格納される。
【００１９】
その後、処理部１２は、マイナンバーのような機密性の高い第１データと他のデータとの混成情報を生成する際に、他のデータを含む第２ファイル４を取得する。第２ファイル４は、第２項目と同種のデータ（例えば従業員番号）が設定された第３項目を含む第２レコードを有する。第２レコードには、第３項目以外にも、複数の項目が含まれている。図１の例では、従業員の氏名、住所などの項目が第２レコードに含まれる。
【００２０】
第２ファイル４を取得した処理部１２は、符号化ファイル３ａ内の符号化された複数のレコードに含まれる第２項目の符号を、第２符号化辞書２ｂに基づいて復号する。そして処理部１２は、復号して得られた復号データと同じデータが第３項目に設定されている第２レコードに、復号データに対応する第１項目の符号が設定された第４項目を追加する。その結果、第４項目を追加した第２ファイル５ａが生成される。第２ファイル５ａは、例えばＣＳＶ形式のテキストファイルである。
【００２１】
例えば第２ファイル４の先頭の第２レコードの第３項目に設定されているデータは「１２３４５６」である。符号化ファイル３ａにおいて第３項目のデータ「１２３４５６」に対応付けられている符号は「ｂ０」である。そこで第２ファイル５ａには、第２ファイル４の先頭のレコードに、第４項目としてマイナンバーの符号「ｂ０」を結合したレコードが設定される。処理部１２は、生成した第２ファイル５ａと暗号化辞書５ｂとを第３ファイル５にまとめてもよい。第３ファイル５は、例えばＣＳＶ形式のテキストファイルである。
【００２２】
処理部１２は、第３ファイル５に基づいて、第２ファイル５ａ内のデータを組み合わせた情報を生成して出力する。例えば特定の従業員の帳票６の出力要求を受け付けた処理部１２は、指定された従業員のレコードを第２ファイル５ａから抽出する。そして処理部１２１４は、帳票６のフォームに合わせ、抽出したレコード内のデータを含む文書を生成し、出力する。この際、機密性の高い第１データ（例えばマイナンバー）そのものは帳票６に含まれず、第１データの符号のみが帳票６に含まれる。なおマイナンバーを参照する権限を有するユーザであれば、暗号化辞書５ｂ内の第１データを平文に復号することができる。復号により第１符号化辞書２ａが得られ、第１符号化辞書２ａを用いて、帳票６内のマイナンバーの符号を元のデータに戻すことができる。
【００２３】
このようなデータ生成装置１０によれば、暗号化されたデータと、それ以外の一般データとを分けて管理しておき、それらのデータの混成情報を生成する際に、暗号化されたデータを復号せずに、混成情報を生成できる。その結果、混成情報生成時の機密性の高いデータの安全性の低下を抑止することができる。
【００２４】
しかも、機密性の高いデータの安全性を高めるためには高度な暗号化技術が用いられる。高度な暗号化は処理も複雑であり、暗号データの復号や再暗号化を行うと、処理負荷も高くなる。第１の実施の形態では、混成情報生成時に暗号データの復号や再暗号化を行わずにすみ、処理効率が向上する。
【００２５】
なお、第１の実施の形態では、第１ファイル１内の第２項目に設定されている従業員番号を符号化している。これにより、符号化ファイル３ａのデータ量を削減することができる。
【００２６】
さらに、第１の実施の形態では、機密性の高いデータが暗号化辞書５ｂに集約されているため、機密性の高いデータのみをより安全なサーバで管理させることが容易である。例えばデータ生成装置１０は、暗号化辞書３ｂと第２ファイル５ａとを、別々のサーバに保持させることができる。例えばデータ生成装置１０は、生成した暗号化辞書５ｂを、システム管理者などの高い権限を有するユーザしか使用できないサーバ（管理サーバ）に送信し、そのサーバで管理させる。またデータ生成装置１０は、第２ファイル５ａを、帳票作成などの業務を遂行するユーザが使用するサーバ（業務サーバ）に送信し、そのサーバに管理させる。このとき、データ生成装置１０は、管理サーバまたは業務サーバのいずれかに含まれていてもよい。このように、暗号化辞書３ｂと第２ファイル５ａとを別々のサーバに管理させることで、機密性の高いデータの安全性を高めることができる。
【００２７】
なお、記憶部１１は、例えばデータ生成装置１０が有するメモリまたはストレージ装置により実現することができる。処理部１２は、例えばデータ生成装置１０が有するプロセッサにより実現することができる。
【００２８】
〔第２の実施の形態〕
次に第２の実施の形態について説明する。第２の実施の形態は、従業員の個人情報を、マイナンバーのような機密性の高い特定個人情報と、それ以外の非特定個人情報とに分けて、コンピュータで安全に管理するものである。また第２の実施の形態に係るコンピュータは、非特定個人情報についても符号化することで、データ量を削減する。
【００２９】
図２は、第２の実施の形態に用いるコンピュータのハードウェアの一構成例を示す図である。コンピュータ１００は、プロセッサ１０１によって装置全体が制御されている。プロセッサ１０１には、バス１０９を介してメモリ１０２と複数の周辺機器が接続されている。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、またはＤＳＰ（Digital Signal Processor）である。プロセッサ１０１がプログラムを実行することで実現する機能の少なくとも一部を、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）などの電子回路で実現してもよい。
【００３０】
メモリ１０２は、コンピュータ１００の主記憶装置として使用される。メモリ１０２には、プロセッサ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ１０２には、プロセッサ１０１による処理に必要な各種データが格納される。メモリ１０２としては、例えばＲＡＭ（Random Access Memory）などの揮発性の半導体記憶装置が使用される。
【００３１】
バス１０９に接続されている周辺機器としては、ストレージ装置１０３、グラフィック処理装置１０４、入力インタフェース１０５、光学ドライブ装置１０６、機器接続インタフェース１０７およびネットワークインタフェース１０８がある。
【００３２】
ストレージ装置１０３は、内蔵した記録媒体に対して、電気的または磁気的にデータの書き込みおよび読み出しを行う。ストレージ装置１０３は、コンピュータの補助記憶装置として使用される。ストレージ装置１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。なお、ストレージ装置１０３としては、例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）を使用することができる。
【００３３】
グラフィック処理装置１０４には、モニタ２１が接続されている。グラフィック処理装置１０４は、プロセッサ１０１からの命令に従って、画像をモニタ２１の画面に表示させる。モニタ２１としては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置などがある。
【００３４】
入力インタフェース１０５には、キーボード２２とマウス２３とが接続されている。入力インタフェース１０５は、キーボード２２やマウス２３から送られてくる信号をプロセッサ１０１に送信する。なお、マウス２３は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００３５】
光学ドライブ装置１０６は、レーザ光などを利用して、光ディスク２４に記録されたデータの読み取りを行う。光ディスク２４は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク２４には、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。
【００３６】
機器接続インタフェース１０７は、コンピュータ１００に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース１０７には、メモリ装置２５やメモリリーダライタ２６を接続することができる。メモリ装置２５は、機器接続インタフェース１０７との通信機能を搭載した記録媒体である。メモリリーダライタ２６は、メモリカード２７へのデータの書き込み、またはメモリカード２７からのデータの読み出しを行う装置である。メモリカード２７は、カード型の記録媒体である。
【００３７】
ネットワークインタフェース１０８は、ネットワーク２０に接続されている。ネットワークインタフェース１０８は、ネットワーク２０を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００３８】
以上のようなハードウェア構成によって、第２の実施の形態の処理機能を実現することができる。なお、第１の実施の形態に示したデータ生成装置１０も、図２に示したコンピュータ１００と同様のハードウェアにより実現することができる。
【００３９】
コンピュータ１００は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第２の実施の形態の処理機能を実現する。コンピュータ１００に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、コンピュータ１００に実行させるプログラムをストレージ装置１０３に格納しておくことができる。プロセッサ１０１は、ストレージ装置１０３内のプログラムの少なくとも一部をメモリ１０２にロードし、プログラムを実行する。またコンピュータ１００に実行させるプログラムを、光ディスク２４、メモリ装置２５、メモリカード２７などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ１０１からの制御により、ストレージ装置１０３にインストールされた後、実行可能となる。またプロセッサ１０１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００４０】
次にコンピュータ１００における帳票管理機能について説明する。
図３は、コンピュータの帳票管理機能を示すブロック図である。コンピュータ１００は、圧縮部１１０、暗号化部１２０、特定個人情報記憶部１３０、非特定個人情報記憶部１４０、併合部１５０、全個人情報記憶部１６０、および帳票出力部１７０を有する。
【００４１】
圧縮部１１０は、特定個人情報であるマイナンバーと、そのマイナンバーに対応する個人をシステム内で特定する識別子とを関連付ける。そして圧縮部１１０は、マイナンバーと識別子との対応関係が設定されたファイルを圧縮する。以下、このファイルを特定個人情報ファイルと呼ぶ。特定個人情報ファイルは、例えばＣＳＶ形式のテキストファイルである。個人をシステム内で特定する識別子は、例えばマイナンバーに対応する個人の従業員番号である。
【００４２】
例えば圧縮部１１０は、従業員番号とマイナンバーとを、元よりも短いデータ長の符号に符号化することで、特定個人情報ファイルを圧縮する。以下、圧縮後のファイルを、圧縮ファイルと呼ぶ。なお、圧縮ファイルには、符号化前の従業員番号またはマイナンバーと符号化後の符号との対応関係を示す符号化辞書が含まれる。
【００４３】
暗号化部１２０は、圧縮ファイルのうち、符号化されていないマイナンバーの部分を暗号化する。例えば暗号化部１２０は、符号化辞書において符号に対応付けて登録されているマイナンバーを暗号化する。暗号化部１２０は、マイナンバーの部分が暗号化されたファイルを、特定個人情報記憶部１３０に格納する。以下、マイナンバーの部分が暗号化されたファイルを、部分暗号化ファイルと呼ぶ。
【００４４】
特定個人情報記憶部１３０は、マイナンバーを含む部分暗号化ファイルを記憶する。特定個人情報記憶部１３０としては、例えばメモリ１０２またはストレージ装置１０３の記憶領域の一部が使用される。
【００４５】
非特定個人情報記憶部１４０は、マイナンバーのような特定個人情報以外の個人情報である非特定個人情報が設定されたファイルを記憶する。以下、非特定個人情報が設定されたファイルを、非特定個人情報ファイルと呼ぶ。非特定個人情報記憶部１４０としては、例えばメモリ１０２またはストレージ装置１０３の記憶領域の一部が使用される。
【００４６】
併合部１５０は、非特定個人情報ファイルと部分暗号化ファイルとを、１つのファイルに併合する。以下、併合後のファイルを、全個人情報ファイルと呼ぶ。なお、併合部１５０は、併合する際に非個人情報ファイル内の情報を圧縮する。併合部１５０は、全個人情報ファイルを、全個人情報記憶部１６０に格納する。
【００４７】
全個人情報記憶部１６０は、併合部１５０により併合された全個人情報ファイルを記憶する。全個人情報記憶部１６０としては、例えばメモリ１０２またはストレージ装置１０３の記憶領域の一部が使用される。
【００４８】
帳票出力部１７０は、全個人情報記憶部１６０に格納された全個人情報ファイルに基づいて帳票を作成し、作成した帳票を出力する。
このような機能を有するコンピュータ１００により、暗号化されたマイナンバーを復号せずに、マイナンバーと非特定個人情報との両方を含む全個人情報ファイルを作成できる。全個人情報ファイルから、特定の従業員の個人情報を抽出すれば、その従業員の帳票を作成できる。すなわち、暗号化して非特定個人情報とは別に管理されているマイナンバーを復号せずに、任意の従業員についての帳票を作成できる。
【００４９】
なお、図３に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。また、図３に示した各要素の機能は、例えば、その要素に対応するプログラムモジュールをコンピュータに実行させることで実現することができる。
【００５０】
次に、帳票生成処理の手順について説明する。
図４は、帳票生成手順の一例を示すフローチャートである。以下、図４に示す処理をステップ番号に沿って説明する。
【００５１】
［ステップＳ１０１］圧縮部１１０は、特定個人情報ファイルが入力されると、マイナンバーと、そのマイナンバーに対応する個人の識別子（例えば従業員番号）を関連付ける。例えば圧縮部１１０は、従業員番号に対応するマイナンバーの入力を受け付け、入力されたマイナンバーをその従業員番号に関連付ける。そして圧縮部１１０は、関連付けたマイナンバーと従業員番号との組が設定された特定個人情報ファイルを生成する。
【００５２】
［ステップＳ１０２］圧縮部１１０は、特定個人情報ファイルに示されているマイナンバーを符号化する。この際、圧縮部１１０は、マイナンバーと従業員番号との両方を符号化してもよい。例えば圧縮部１１０は、マイナンバーや従業員番号を表す数値と、符号との対応関係を示す符号化辞書を生成する。圧縮部１１０は、符号化辞書に基づいて、マイナンバーと従業員番号とを符号に変換する。そして圧縮部１１０は、マイナンバーと従業員番号との符号、および暗号化辞書を含む圧縮ファイルを生成する。
【００５３】
［ステップＳ１０３］暗号化部１２０は、圧縮ファイルのうち、マイナンバーを示す情報をＡＥＳ（Advanced Encryption Standard）により暗号化する。例えば暗号化部１２０は、符号化辞書において符号に対応付けて設定されているマイナンバーを暗号化する。そして暗号化部１２０は、圧縮ファイルの一部を暗号化することで生成された暗号ファイルを、特定個人情報記憶部１３０に格納する。
【００５４】
［ステップＳ１０４］併合部１５０は、非特定個人情報記憶部１４０から非特定個人情報ファイルを抽出し、非特定個人情報ファイルにマイナンバーの符号を追加する。例えば併合部１５０は、非特定個人情報ファイルに含まれる従業員番号に関連付けて、その従業員番号に関連するマイナンバーの符号を設定する。
【００５５】
［ステップＳ１０５］併合部１５０は、非特定個人情報ファイルを圧縮する。例えば併合部１５０は、非特定個人情報ファイル内の非特定個人情報の部分を符号化する。そして併合部１５０は、圧縮した全個人情報ファイルを生成する。この際、併合部１５０は、特定個人情報ファイル内の符号化辞書に非特定個人情報と符号との対応関係を追加し、その符号化辞書を全個人情報ファイルに追加する。併合部１５０は、生成した全個人情報ファイルを、全個人情報記憶部１６０に格納する。
【００５６】
［ステップＳ１０６］帳票出力部１７０は、ユーザからの入力に応じて、全個人情報ファイル内の個人情報を参照し、帳票を出力する。例えば帳票出力部１７０は、ユーザから指定された従業員の個人情報を全個人情報ファイルから抽出し、符号化辞書を用いて復号する。そして帳票出力部１７０は、復号した個人情報を含む所定のフォーマットの帳票ファイルを生成し、その帳票ファイルを出力する。この際、ユーザがマイナンバーを参照する権限を有している場合、帳票出力部１７０は、暗号化されたマイナンバーを平文に復号して、帳票ファイルに含めてもよい。
【００５７】
このような手順で帳票が生成される。以下、図５〜図８を参照し、帳票の生成例を具体的に説明する。
図５は、マイナンバーを暗号化して保持するまでの処理の一例を示す図である。まず圧縮部１１０は、従業員番号にマイナンバーを関連付けた特定個人情報ファイル３１を生成する。例えば特定個人情報ファイル３１は、従業員番号とマイナンバーとを項目とするＣＳＶ形式のテキストファイルである。特定個人情報ファイル３１が圧縮部１１０により圧縮され、圧縮ファイル３２が生成される。
【００５８】
圧縮ファイル３２には、符号化辞書３２ａと符号化ファイル３２ｂとが含まれる。符号化辞書３２ａには、従業員番号またはマイナンバーと符号との対応関係が示されている。図５の例では、１バイトの符号の上位４ビットの値を符号化辞書３２ａの列のラベルとし、下位４ビットの値を符号化辞書３２ａの行のラベルとしている。そして符号化辞書３２ａ内の従業員番号またはマイナンバーが設定されている位置の列のラベルと行のラベルの組とにより、その従業員番号またはマイナンバーの符号が示されている。例えば従業員番号「１２３４５６」に対応する符号は「ａ０」である。またマイナンバー「１２３４５６７８９０１２」に対応する符号は「ｂ０」である。符号化ファイル３２ｂには、従業員番号とマイナンバーとの符号を含むレコードが、例えばＣＳＶ形式で設定されている。
【００５９】
圧縮ファイル３２は、暗号化部１２０に渡される。そして暗号化部１２０により、マイナンバーの部分を暗号化した部分暗号化ファイル３３が生成される。部分暗号化ファイル３３の暗号化辞書３３ａは、マイナンバーの設定領域のみが暗号化されている。例えば暗号化部１２０は、複数のマイナンバーを纏めてバッファに格納し、そのバッファ内の情報を暗号化する。部分暗号化ファイル３３内の符号化ファイル３３ｂは、圧縮ファイル３２の符号化ファイル３２ｂと同じである。
【００６０】
部分暗号化ファイル３３は、特定個人情報記憶部１３０に格納される。これにより、特に機密性の高いマイナンバーが、非特定個人情報とは別に管理される。なお、部分暗号化ファイル３３の暗号化辞書３３ａは、第１の実施の形態における結合データ３（図１参照）の一例である。
【００６１】
図６は、非特定個人情報ファイルへのマイナンバーの符号追加処理の一例を示す図である。併合部１５０は、部分暗号化ファイル３３内のマイナンバーの符号と、非特定個人情報ファイル３４内の特定の個人のレコードとを、従業員番号を介して対応付ける。そして併合部１５０は、非特定個人情報ファイル３４内のレコードに対して、そのレコードに示される個人の従業員番号に対応するマイナンバーの符号を追加する。
【００６２】
例えば併合部１５０は、非特定個人情報ファイル３４からレコードを１つずつ選択する。次に併合部１５０は、暗号化辞書３３ａから、選択したレコ−ドの従業員番号に対応する符号を取得する。次に併合部１５０は、符号化ファイル３３ｂから、取得した従業員番号の符号に対応付けられているマイナンバーの符号を取得する。そして併合部１５０は、取得したマイナンバーの符号を、選択したレコードのマイナンバーとして追加する。
【００６３】
例えば併合部１５０が従業員番号「１２３４５６」のレコードを選択した場合、暗号化辞書３３ａから、その従業員番号の符号「ａ０」が抽出される。次に符号化ファイル３３ｂから従業員番号の符号「ａ０」に対応付けられたマイナンバーの符号「ｂ０」が抽出される。そして非特定個人情報ファイル３４内の従業員番号「１２３４５６」のレコードに、マイナンバーの符号「ｂ０」が追加される。
【００６４】
このようなマイナンバーの符号の追加処理が、非特定個人情報ファイル３４内のすべてのレコ−ドに対して実行される。その結果、符号化されたマイナンバーが追加された非特定個人情報ファイル３４ａが生成される。次に、符号化されたマイナンバーが追加された非特定個人情報ファイル３４ａ内の符号化されていない情報が符号化される。これにより、全体のデータ量を圧縮した全個人情報ファイルが生成される。
【００６５】
図７は、全個人情報ファイルの生成例を示す図である。併合部１５０により、非特定個人情報ファイル３４ａの各レコードに含まれる文字や数値に対応する符号が決定され、部分暗号化ファイル３３の暗号化辞書３３ａに追加される。その結果、非特定個人情報と符号との対応関係を含む暗号化辞書３５ａが生成される。併合部１５０は、生成した暗号化辞書３５ａに基づいて、非特定個人情報ファイル３４ａ内の文字や数値を符号に変換し、非特定個人情報ファイル３４ａに対応する符号化ファイル３５ｂを生成する。
【００６６】
符号化ファイル３５ｂを生成する際、併合部１５０は、特定個人情報や非特定個人情報の検索に用いるインデックス３５ｃを生成してもよい。例えばインデックス３５ｃには、非特定個人情報ファイル３４ａに含まれる各文字の、非特定個人情報ファイル３４ａ内での出現位置が示される。また併合部１５０は、インデックス３５ｃの生成に合わせて、各ユーザに対して、符号化ファイル３５ｂ内の各項目に対する検索権限の有無を設定することもできる。ユーザごとの検索権限が設定された場合、帳票出力部１７０は、帳票の出力要求を入力したユーザが検索権限を有する項目の情報のみを、符号化ファイル３５ｂから抽出し、復号する。
【００６７】
さらに併合部１５０は、生成した暗号化辞書３５ａ、符号化ファイル３５ｂ、およびインデックス３５ｃを纏めた全個人情報ファイル３５を生成し、生成した全個人情報ファイル３５を全個人情報記憶部１６０に格納する。帳票出力部１７０は、全個人情報記憶部１６０内の全個人情報ファイル３５に基づいて、ユーザが指定する形式の帳票を作成し、出力する。
【００６８】
このように、第２の実施の形態では、コンピュータ１００は、マイナンバーと対応付けられる項目と符号化されたマイナンバーを紐付け、マイナンバーを符号化し、符号化辞書３２ａを生成する。さらにコンピュータ１００は、マイナンバーを暗号化した暗号化辞書３３ａを生成し、符号化されたマイナンバーをマイナンバー以外の非特定個人情報と結合する。これにより、圧縮によりデータサイズを小さく保ち、暗号化によりセキュアであるという帳票の要件を満たしつつ、高速な結合処理が可能となる。
【００６９】
なお全個人情報ファイル３５内の一部のレコードのみを使用する用途がある場合、その一部のレコードを全個人情報ファイル３５内の符号化ファイル３５ｂから抽出し、別のファイルを生成してもよい。このように一部のレコードのみを含むファイルを生成し、保持しておくことで、特定の用途での帳票作成時のレコードの検索時間を短縮し、処理の効率化が可能となる。
【００７０】
また図５に示した例では、部分暗号化ファイル３３において従業員番号が符号化されているが、従業員番号は符号化しなくてもよい。
図８は、従業員番号を符号化しない部分暗号化ファイルの例を示す図である。従業員番号を符号化しない部分暗号化ファイル３６には、図８に示すような暗号化辞書３６ａと符号化ファイル３６ｂとが含まれる。暗号化辞書３６ａには、マイナンバーと、そのマイナンバーの符号との対応関係が示される。なお暗号化辞書３６ａにおいて、マイナンバーは暗号化されている。符号化ファイル３６ｂには、従業員番号とマイナンバーの符号との対応関係が設定されている。
【００７１】
〔第３の実施の形態〕
次に第３の実施の形態について説明する。第３の実施の形態は、第２の実施の形態のコンピュータ１００で生成した全個人情報ファイル３５を、複数のサーバに分離して管理するものである。例えば第３の実施の形態では、帳票を管理するサーバが有するデータには特定個人情報を含めず、二次利用（印刷・検索など）において、そのサーバが特定個人情報を併合するものである。
【００７２】
図９は、第３の実施の形態のシステム構成例を示す図である。第３の実施の形態では、帳票管理サーバ２００とマイナンバー管理サーバ３００とがネットワーク４０を介して接続されている。またネットワーク４０にはプリンタ４１が接続されている。
【００７３】
帳票管理サーバ２００は、ユーザからの要求に応じて、非特定個人情報と、特定個人情報であるマイナンバーとを結合させて、帳票を作成する。例えば帳票管理サーバ２００は、非特定個人情報を保持しており、ユーザからの要求に応じて、マイナンバー管理サーバ３００からマイナンバーを取得する。そして帳票管理サーバ２００は、非特定個人情報とマイナンバーとを組み合わせた帳票を作成し、その帳票の印刷要求をプリンタ４１に対して送信する。プリンタ４１から帳票が印刷されると、帳票管理サーバ２００は、作成された帳票を削除する。
【００７４】
マイナンバー管理サーバ３００は、個人のマイナンバーを暗号化して管理する。例えば、マイナンバー管理サーバ３００は、従業員の従業員番号に対応付けて、その従業員のマイナンバーを暗号化した状態で保持する。
【００７５】
なお、帳票管理サーバ２００とマイナンバー管理サーバ３００とは、図２に示したコンピュータ１００のハードウェアと同様のハードウェアで実現できる。
図１０は、第３の実施の形態の機能を示すブロック図である。帳票管理サーバ２００は、非特定個人情報記憶部２１０と帳票管理部２２０とを有する。
【００７６】
非特定個人情報記憶部２１０は、非特定個人情報ファイル５１を記憶する。非特定個人情報ファイル５１には、符号化辞書５１ａと符号化ファイル５１ｂとが含まれる。符号化辞書５１ａには、非特定個人情報に含まれる文字や数値と符号との対応関係が示される。符号化ファイル５１ｂは、非特定個人情報を符号化することで得られる符号の配列である。符号化ファイル５１ｂには、例えば氏名、従業員番号、住所、マイナンバーなどの符号が含まれる。
【００７７】
なお非特定個人情報ファイル５１の符号化辞書５１ａは、第２の実施の形態における全個人情報ファイル３５内の暗号化辞書３５ａ（図７参照）から、マイナンバーに関する部分を削除したものである。また符号化ファイル５１ｂは、第２の実施の形態における全個人情報ファイル３５内の符号化ファイル３５ｂ（図７参照）と同じである。従って非特定個人情報ファイル５１は、第２の実施の形態のコンピュータ１００が作成した全個人情報ファイル３５から、暗号化辞書３５ａのマイナンバーの部分を削除することで作成できる。
【００７８】
なお非特定個人情報ファイル５１の作成機能は、帳票管理サーバ２００が有していてもよく、マイナンバー管理サーバ３００が有していてもよい。非特定個人情報ファイル５１の作成機能を有するサーバは、図３に示した第２の実施の形態のコンピュータ１００が有する機能に加え、全個人情報ファイル３５から、暗号化辞書３５ａのマイナンバーの部分を削除する機能を有する。
【００７９】
帳票管理部２２０は、ユーザからの帳票作成要求に応じて、帳票を作成する。例えば帳票管理部２２０は、従業員番号を指定した帳票作成要求を受け付けると、その従業員番号を含むマイナンバー要求をマイナンバー管理サーバ３００に送信する。帳票管理部２２０は、マイナンバー管理サーバ３００から、指定された従業員番号に対応するマイナンバーに関する情報を含む応答を受信する。帳票管理部２２０は、応答内に暗号化されたマイナンバーが含まれている場合、マイナンバーを復号する。そして、帳票管理部２２０は、取得したマイナンバーと非特定個人情報を結合した帳票を作成し、その帳票のプリント要求をプリンタ４１に送信する。その後、帳票管理部２２０は、作成した帳票を削除する。
【００８０】
マイナンバー管理サーバ３００は、特定個人情報記憶部３１０とマイナンバー管理部３２０とを有する。
特定個人情報記憶部３１０は、部分暗号化ファイル５２を記憶する。部分暗号化ファイル５２には、暗号化辞書５２ａと符号化ファイル５２ｂとが含まれる。暗号化辞書５２ａには、マイナンバーとそのマイナンバーの符号との対応関係が示されている。暗号化辞書５２ａのマイナンバーの情報は、例えば番号化されている。符号化ファイル５２ｂには、従業員番号と、その従業員番号に対応するマイナンバーの符号との対応関係が示されている。
【００８１】
なお部分暗号化ファイル５２は、図８に示した第２の実施の形態における部分暗号化ファイル３６と同様であり、第２の実施の形態に示したコンピュータ１００を用いて生成できる。
【００８２】
マイナンバー管理部３２０は、帳票管理サーバ２００からのマイナンバー要求に応じて、そのマイナンバー要求で指定された従業員番号に対応するマイナンバーに関する情報を抽出する。例えばマイナンバー管理部３２０は、符号化ファイル５２ｂを参照し、指定された従業員番号に対応するマイナンバーの符号を取得する。そしてマイナンバー管理部３２０は、取得した符号と暗号化辞書５２ａとを含む応答を、帳票管理サーバ２００に送信する。
【００８３】
図１１は、第３の実施の形態における帳票印刷処理の手順の一例を示すシーケンス図である。帳票管理サーバ２００は、帳票作成要求が入力されると、マイナンバー要求をマイナンバー管理サーバ３００に送信する（ステップＳ２０１）。マイナンバー管理サーバ３００は、マイナンバー要求に示される従業員番号に対応するマイナンバーの符号を、符号化ファイル５２ｂから抽出する（ステップＳ２０２）。次にマイナンバー管理サーバ３００は、抽出したマイナンバーの符号を、マイナンバー要求に示された従業員番号の順番に合わせてソートする（ステップＳ２０３）。そしてマイナンバー管理サーバ３００は、マイナンバーの符号と、マイナンバー用の暗号化辞書５２ａとを含む応答を、帳票管理サーバ２００に送信する（ステップＳ２０４）。
【００８４】
帳票管理サーバ２００は、符号化して保持している非特定個人情報を復号する（ステップＳ２０５）。次に、帳票管理サーバ２００は、マイナンバー管理サーバ３００からの応答に基づいて、マイナンバーを復号する（ステップＳ２０６）。次に帳票管理サーバ２００は、非特定個人情報とマイナンバーとを結合して、帳票を作成する（ステップＳ２０７）。次に帳票管理サーバ２００は、作成した帳票の印刷要求をプリンタ４１に送信することで、帳票を印刷する（ステップＳ２０８）。そして帳票管理サーバ２００は、作成した帳票をメモリから削除し、処理を終了する（ステップＳ２０９）。
【００８５】
このような手順により帳票印刷が行われる。
図１２は、帳票印刷処理の具体例を示す図である。図１２の例では、帳票管理サーバ２００は、従業員番号「４５６７８９」、「１２３４５６」を含むマイナンバー要求５３をマイナンバー管理サーバ３００に送信している。
【００８６】
マイナンバー管理サーバ３００は、符号化ファイル５２ｂを参照し、マイナンバー要求５３に含まれる従業員番号に対応するマイナンバーの符号「ｂ０」、「ｂ１」を取得する。そしてマイナンバー管理サーバ３００は、取得した符号「ｂ０」、「ｂ１」を、マイナンバー要求５３における従業員番号「４５６７８９」、「１２３４５６」の順番にソートする。すなわち、マイナンバー管理サーバ３００は、従業員番号「４５６７８９」に対応する符号「ｂ１」の次に従業員番号「１２３４５６」に対応する符号「ｂ０」になるように、符号を並べ替える。そしてマイナンバー管理サーバ３００は、ソート後の符号群５４ａと、暗号化辞書５２ａとを含む応答５４を、帳票管理サーバ２００に送信する。
【００８７】
帳票管理サーバ２００は、マイナンバー用の暗号化辞書５２ａを用いて、符号群５４ａに示される各符号に対応するマイナンバーを復号する。例えば帳票管理サーバ２００は、マイナンバー復号用の鍵を有しており、その鍵を用いて、暗号化辞書５２ａ内のマイナンバーの情報を平文に復号する。そして帳票管理サーバ２００は、符号群５４ａに対応するマイナンバーを、復号後の暗号化辞書５２ａから抽出する。
【００８８】
また帳票管理サーバ２００は、符号化ファイル５１ｂ内の従業員番号「４５６７８９」、「１２３４５６」に対応するレコードに含まれる文字や数値を、符号化辞書５１ａを用いて復号する。そして帳票管理サーバ２００は、非特定個人情報とマイナンバーとを含む帳票を作成し、その帳票のプリント要求をプリンタ４１に送信する。するとプリンタ４１により帳票６０が印刷される。
【００８９】
図１３は、印刷される帳票の一例を示す図である。図１３には、給与所得の源泉徴収票を示す帳票６０の印刷例を示している。帳票６０には、従業員およびその従業員の家族の、氏名、住所、マイナンバーなどが含まれる。
【００９０】
帳票６０の印刷後、帳票管理サーバ２００では、帳票６０のデータがメモリから削除される。また帳票管理サーバ２００では、応答５４としてマイナンバー管理サーバ３００から受信した符号群５４ａや暗号化辞書５２ａも、プリント要求送信後にメモリから削除される。
【００９１】
このように第３の実施の形態では、非特定個人情報とマイナンバーとの対応関係を示す符号化ファイル５２ｂ、およびマイナンバー復号用の暗号化辞書５２ａを、帳票管理サーバ２００とは別のマイナンバー管理サーバ３００で管理している。また帳票管理サーバ２００では、帳票管理サーバ２００が有する符号化ファイル５１ｂにおけるマイナンバーの部分を、マイナンバーの符号に置き換えて管理している。そして帳票管理サーバ２００は、帳票印刷などの二次利用時にマイナンバー管理サーバ３００からにマイナンバー用の暗号化辞書５２ａを取得してマイナンバーを復号して、非特定個人情報に結合する。
【００９２】
これにより、マイナンバーを専用のサーバで管理し、マイナンバーの安全性を高めることができる。しかも、マイナンバー用の暗号化辞書５２ａは、一時的に帳票管理サーバ２００に送られるが、帳票印刷などの所定の処理が完了すると、帳票管理サーバ２００内から削除される。その結果、マイナンバーの機密性の低下を抑止することができる。
【００９３】
なお、第３の実施の形態では、符号化ファイル５２ｂにおいて従業員番号は符号化されていないが、従業員番号を符号化することもできる。その場合、暗号化辞書５２ａには、第２の実施の形態の暗号化辞書３３ａのように、従業員番号を符号化する際に使用した符号化辞書が含められる。
【００９４】
〔その他の実施の形態〕
上記の説明では、特に機密性の高い特定個人情報がマイナンバーの場合の例を示したが、他の情報を特定個人情報とすることもできる。例えばクレジット番号や、各種パスワードなどを特定個人情報として、安全に管理できる。
【００９５】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【符号の説明】
【００９６】
１  第１ファイル
２ａ  第１符号化辞書
２ｂ  第２符号化辞書
３  結合データ
３ａ  符号化ファイル
３ｂ  暗号化辞書
４  第２ファイル
５  第３ファイル
５ａ  第２ファイル
５ｂ  暗号化辞書
６  帳票
１０  データ生成装置
１１  記憶部
１２  処理部
【図１】
2018160129.tif 000003
【図２】
2018160129.tif 000004
【図３】
2018160129.tif 000005
【図４】
2018160129.tif 000006
【図５】
2018160129.tif 000007
【図６】
2018160129.tif 000008
【図７】
2018160129.tif 000009
【図８】
2018160129.tif 000010
【図９】
2018160129.tif 000011
【図１０】
2018160129.tif 000012
【図１１】
2018160129.tif 000013
【図１２】
2018160129.tif 000014
【図１３】
2018160129.tif 000015