(57)【要約】【課題】指名確認者リング署名において、署名した通報者の要請により、署名の匿名性を解除して通報者を特定する。【解決手段】指名確認者リング署名プロトコルの実行中に、匿名の通報メッセージMに対する電子署名SRから一方向性関数により生成される署名ダイジェストh(M‖h(SR))を確認者装置５００に送信しておく。そして、指名確認者リング署名プロトコルの実行後に、署名ダイジェストの元となる電子署名SRを確認者装置５００に送信することにより、この電子署名SRから一方向性関数により同じ署名ダイジェストh(M‖h(SR))を生成できることを確認者装置５００が確認して匿名性を解除する。【選択図】      図１
2008103937.tif 000002
【特許請求の範囲】
【請求項１】
匿名の通報メッセージに対する指名確認者リング署名プロトコルを互いに実行可能な署名者端末及び確認者装置を備えた公益通報システムであって、
前記署名者端末は、
前記指名確認者リング署名プロトコルの実行中に、前記匿名の通報メッセージに対する署名者の電子署名から一方向性関数により生成した署名ダイジェストを前記確認者装置に送信する手段と、
前記指名確認者リング署名プロトコルの実行後、前記署名者の操作により、前記匿名の通報メッセージから匿名性を解除するとき、前記電子署名を前記確認者装置に送信する手段とを備え、
前記確認者装置は、
前記署名者端末から受けた署名ダイジェストが記憶される署名ダイジェスト記憶手段と、
前記署名者端末から電子署名を受けると、この電子署名から一方向性関数により生成した値と前記署名ダイジェスト記憶手段内の署名ダイジェストとが互いに一致するか否かを判定する手段と、
前記判定の結果、両者が一致したとき、前記匿名の通報メッセージに対する匿名性解除通知を前記署名者端末に返信する手段と
を備えたことを特徴とする公益通報システム。
【請求項２】
匿名の通報メッセージに対する指名確認者リング署名プロトコルを確認者装置との間で実行可能な署名者端末であって、
「公開鍵Pkrcを含む公開鍵証明書」及び「前記公開鍵Pkrcに対応する秘密鍵Skrc」を記憶する記憶手段と、
前記指名確認者リング署名プロトコルの実行中に、「前記匿名の通報メッセージM及び前記秘密鍵Skrcに基づいて生成した電子署名SR(＝SIG(Skrc, M))に一方向性関数を施した値h(SR)と当該通報メッセージMとを連接した値M‖h(SR)に一方向性関数を施して得られた署名ダイジェストhq(M‖h(SR))」及び「当該通報メッセージM」を前記確認者装置に送信する手段と、
前記指名確認者リング署名プロトコルの実行後、前記署名者の操作により、前記匿名の通報メッセージMから匿名性を解除するとき、当該匿名の通報メッセージM及び前記秘密鍵Skrcに基づいて電子署名SRを生成し、当該電子署名SR及び前記公開鍵証明書を確認者装置に送信する手段と、
前記確認者装置が「前記送信された署名ダイジェストhq(M‖h(SR))及び通報メッセージMを記憶しておき、前記電子署名SR及び公開鍵証明書を受信したときに、当該公開鍵証明書を検証し、前記公開鍵証明書内の公開鍵Pkrcに基づいて、前記電子署名SRを検証し、両検証結果が真のとき、前記電子署名SRに一方向性関数を施して得られた値h(SR)を前記通報メッセージMに連接し、この連接値M‖h(SR)に一方向性関数を施した値hq(M‖h(SR))を計算し、この計算により得られた値hq(M‖h(SR))と前記署名ダイジェストhq(M‖h(SR))とが互いに一致するか否かを判定し、両者が一致したとき、前記匿名の通報メッセージに対する匿名性解除通知を返信」することにより、前記匿名の通報メッセージに対する匿名性解除通知を前記確認者装置から受信する手段と
を備えたことを特徴とする署名者端末。
【請求項３】
匿名の通報メッセージに対する指名確認者リング署名プロトコルを署名者端末との間で実行可能な確認者装置であって、
前記指名確認者リング署名プロトコルの実行中に、前記署名者端末から受けた「前記匿名の通報メッセージMと前記署名者端末の秘密鍵Skrcとに基づいて生成された電子署名SR(＝SIG(Skrc, M))に一方向性関数を施した値h(SR)と当該通報メッセージMとを連接した値M‖h(SR)に一方向性関数を施して得られた署名ダイジェストhq(M‖h(SR))」及び「当該通報メッセージM」が記憶される記憶手段と、
前記指名確認者リング署名プロトコルの実行後に、前記署名者端末から「前記秘密鍵Skrcに対応する公開鍵Pkrcを含む公開鍵証明書」及び「前記電子署名SR」を受信すると、当該公開鍵証明書を検証する手段と、
前記公開鍵証明書内の公開鍵Pkrcに基づいて、前記電子署名SRを検証する手段と、
両検証結果が真のとき、前記電子署名SRに一方向性関数を施して得られた値h(SR)を前記記憶手段内の通報メッセージMに連接し、この連接値M‖h(SR)に一方向性関数を施した値hq(M‖h(SR))を計算する計算手段と、
この計算手段により得られた値hq(M‖h(SR))と前記記憶手段内の署名ダイジェストhq(M‖h(SR))とが互いに一致するか否かを判定する手段と、
前記判定の結果、両者が一致したとき、前記匿名の通報メッセージに対する匿名性解除通知を前記署名者端末に返信する手段と
を備えたことを特徴とする確認者装置。
【請求項４】
匿名の通報メッセージに対する指名確認者リング署名プロトコルを確認者装置との間で実行可能な署名者端末コンピュータに用いられるプログラムであって、
前記署名者端末コンピュータを、
「公開鍵Pkrcを含む公開鍵証明書」及び「前記公開鍵Pkrcに対応する秘密鍵Skrc」を前記署名者端末コンピュータのメモリに書き込む手段、
前記指名確認者リング署名プロトコルの実行中に、「前記匿名の通報メッセージM及び前記秘密鍵Skrcに基づいて生成した電子署名SR(＝SIG(Skrc, M))に一方向性関数を施した値h(SR)と当該通報メッセージMとを連接した値M‖h(SR)に一方向性関数を施して得られた署名ダイジェストhq(M‖h(SR))」及び「当該通報メッセージM」を前記確認者装置に送信する手段、
前記指名確認者リング署名プロトコルの実行後、前記署名者の操作により、前記匿名の通報メッセージMから匿名性を解除するとき、当該匿名の通報メッセージM及び前記秘密鍵Skrcに基づいて電子署名SRを生成し、当該電子署名SR及び前記公開鍵証明書を確認者装置に送信する手段、
前記確認者装置が「前記送信された署名ダイジェストhq(M‖h(SR))及び通報メッセージMを記憶しておき、前記電子署名SR及び公開鍵証明書を受信したときに、当該公開鍵証明書を検証し、前記公開鍵証明書内の公開鍵Pkrcに基づいて、前記電子署名SRを検証し、両検証結果が真のとき、前記電子署名SRに一方向性関数を施して得られた値h(SR)を前記通報メッセージMに連接し、この連接値M‖h(SR)に一方向性関数を施した値hq(M‖h(SR))を計算し、この計算により得られた値hq(M‖h(SR))と前記署名ダイジェストhq(M‖h(SR))とが互いに一致するか否かを判定し、両者が一致したとき、前記匿名の通報メッセージに対する匿名性解除通知を返信」することにより、前記匿名の通報メッセージに対する匿名性解除通知を前記確認者装置から受信する手段、
として機能させるためのプログラム。
【請求項５】
匿名の通報メッセージに対する指名確認者リング署名プロトコルを署名者端末との間で実行可能な確認者装置コンピュータに用いられるプログラムであって、
前記確認者装置コンピュータを、
前記指名確認者リング署名プロトコルの実行中に、前記署名者端末から受けた「前記匿名の通報メッセージMと前記署名者端末の秘密鍵Skrcとに基づいて生成された電子署名SR(＝SIG(Skrc, M))に一方向性関数を施した値h(SR)と当該通報メッセージMとを連接した値M‖h(SR)に一方向性関数を施して得られた署名ダイジェストhq(M‖h(SR))」及び「当該通報メッセージM」を前記確認者装置コンピュータのメモリに書き込む手段、
前記指名確認者リング署名プロトコルの実行後に、前記署名者端末から「前記秘密鍵Skrcに対応する公開鍵Pkrcを含む公開鍵証明書」及び「前記電子署名SR」を受信すると、当該公開鍵証明書を検証する手段、
前記公開鍵証明書内の公開鍵Pkrcに基づいて、前記電子署名SRを検証する手段、
両検証結果が真のとき、前記電子署名SRに一方向性関数を施して得られた値h(SR)を前記記憶手段内の通報メッセージMに連接し、この連接値M‖h(SR)に一方向性関数を施した値hq(M‖h(SR))を計算する計算手段、
この計算手段により得られた値hq(M‖h(SR))と前記記憶手段内の署名ダイジェストhq(M‖h(SR))とが互いに一致するか否かを判定する手段、
前記判定の結果、両者が一致したとき、前記匿名の通報メッセージに対する匿名性解除通知を前記署名者端末に返信する手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、公益通報者を保護するための公益通報システム、装置及びプログラムに係り、例えば、指名確認者リング署名において、署名した通報者の要請により、署名の匿名性を解除して通報者を特定し得る公益通報システム、装置及びプログラムに関する。
【背景技術】
【０００２】
アメリカでは、エンロンやワールドコムに代表される不正会計問題が１９９０年代末から２０００年代初めにかけて頻発した。この不正会計問題に対処するため、２００２年７月に上場企業会計改革および投資家保護法（Public Company Accounting Reform and Investor Protection Act of 2002）が大統領署名により法律として承認された。この法律は、通称、法案を提出した人達の名前から、ＳＯＸ法（Sarbanes−Oxley法）またはＳ−Ｏ法と呼ばれる。
【０００３】
このＳＯＸ法は、企業会計や財務報告の透明性・正確性を高めるために、コーポレートガバナンス（企業統括：株主が企業経営を厳しく監査すること）の在り方と監査制度を抜本的に改革するとともに、投資家に対する企業経営者の責任と義務・罰則を定めた米国連邦法である。ＳＯＸ法は、１９３３年の連邦証券法並びに１９３４年の証券取引所法の制定以来、最も大きな変更といわれ、いわゆる内部統制が強化されたものである。
【０００４】
わが国でも、昨今の不正会計問題の多発により、会計監査制度の充実と企業の内部統制強化が求められており、日本版ＳＯＸ法と呼ばれる制度作りが金融庁主導で進められている。日本版ＳＯＸ法としては、第１６４回国会に提出され、証券取引法を抜本改正する「金融商品取引法」がある。
【０００５】
一方、日本版ＳＯＸ法による内部統制の法制化に先駆け、２００４年６月の第１５９回国会に「公益通報者保護法」が成立し、２００６年４月１日には、内部告発を一定の要件下で保護し、解雇などの不利益な取り扱いを禁止する公益通報者保護法が施行された。
【０００６】
この公益通報者保護法の解釈などの詳細は、例えば非特許文献１，２等に記載があるので、説明を省略する。ここでは、公益通報者保護法に関し、匿名の通報者を保護するためのデジタル署名関連技術について説明する。係る技術は、例えば法律違反事実（通報対象事実）を知った労働者が公益通報する場合に、その労働者（以下、通報者ともいう）を保護する観点から、次の(1)〜(3)の条件を満たすことが求められる。
【０００７】
(1)通報内容に示される組織に通報者が所属している旨を証明できる。  
(2)通報者が匿名を解除しない場合（保護を求めない場合）には匿名の公益通報から通報者を特定できない。  
(3)通報者が匿名を解除した場合（保護を求めた場合）には匿名の公益通報から通報者を特定できる。
【０００８】
なお、非特許文献２によれば、上記(2)に対応する匿名の公益通報の場合でも、特定された通報対象事実に基づいて調査が可能であれば、速やかに調査を開始し、通報者が特定された際に受理通知や調査開始の通知を行うことが望ましい。なお、「速やかに…調査開始の通知を行う」ことは、公益通報者保護法第三条第三号ニの基となる“公益通報をした日から二十日以内に調査開始の通知を行わなければならない”という趣旨に対応する。
【０００９】
補足すると、匿名の公益通報では、一般に調査開始を通知できないが、内容により通報者を特定できる場合や、通報者が匿名を解除した場合（保護を求めた場合）には、速やかな調査開始とその通知を行うことが好ましい。
【００１０】
係る公益通報に関する公知技術としては、非特許文献３及び特許文献１に記載の技術がある。非特許文献３及び特許文献１に記載の技術によれば、通報者を保護するために、オニオンルーティングと呼ばれる匿名通信路を用いて通報者の特定を防ぎつつ、通報内容の真正性を高めるために、グループ署名を用いて署名者（通報者）を特定せずにグループのメンバーが署名したことを検証可能としている。
【００１１】
しかしながら、組織内の通報においては、通常の場合、通報を処理する部門とシステムを管理する部門とが分かれているので、匿名通信路を用いるまでもないと考えられる。
【００１２】
また、署名者を追跡し得るグループ署名を用いた場合、グループ秘密鍵を管理する技術が問題となる。例えば、特許文献１記載の技術では、グループ秘密鍵を秘密分散して管理することにより、分散管理者が結託しない限り署名者を特定できない。そして、通報者（署名者）が保護を求めた場合にはグループ秘密鍵を復元して通報者を特定する。ここで、復元したグループ秘密鍵を漏えいさせずに管理する技術が必要となるが、特許文献１記載の技術は、この管理技術を含まないので、有効性に疑問がある。
【００１３】
また、グループ署名は署名鍵の無効化が困難である、という問題がある。例えばグループを抜けたメンバーの署名鍵を無効化した場合、次の(i),(ii)の条件が必要である。
【００１４】
(i)   署名鍵を無効化した後に生成されたグループ署名に対し、その無効化された署名鍵で生成されていないことを確認可能である。
【００１５】
(ii)  署名鍵を無効化する前に生成されたグループ署名に対し、その無効化された署名鍵で生成されたか否かを確認不可能である。
【００１６】
そして、グループ署名方式では、(i),(ii)の条件を満たすアルゴリズムが必要である。しかしながら、このようなアルゴリズムは、ただでさえグループ署名の計算負荷が高い上に、非常に複雑な手順となることから、実用化が困難である。従って、前述した通り、グループ署名は、署名鍵の無効化が困難であるという問題がある。
【００１７】
一方、グループ署名の問題を解決する観点から、リング署名と呼ばれる電子署名を用いることが考えられる。リング署名は、署名者を特定できないので、内部告発に用いることが可能である（例えば、非特許文献４参照）。但し、リング署名は、署名の検証者が制限されないので、署名者の意図しない第三者が勝手に検証する、いわゆる電子署名の一人歩きの心配がある。
【００１８】
この心配を解消する観点から、特定の確認者しか電子署名を検証できない指名確認者リング署名が考えられている（例えば、非特許文献５参照）。しかしながら、本発明者の検討によれば、指名確認者リング署名は、署名者の匿名性を解除できないことから、通報者が保護を求めたい場合（通報者の意思で匿名性を解除したい場合）に対応できない点で改良の余地があると考えられる。
【非特許文献１】内部告発  その論理と指針，(社)日本技術士会  訳編，橋本  道哉  監編，丸善株式会社
【非特許文献２】コンプライアンスのための内部通報制度，國廣正  五味裕子  青木正賢  芝昭彦  著，日本経済新聞社
【非特許文献３】内部告発制度の法制化を考慮した匿名情報提供方式，藤村／鈴木／森田，Information Network Law Review Vol.2，2003
【特許文献１】特開２００６−７２６３０号公報
【非特許文献４】”How to leak a secret.”，R.Rivest / A. Shamir / Y. Tauman，Advance in Cryptography − ASIACRYPT 2001，LNCS，vol.2248，pp.552-565，2001
【非特許文献５】”指名確認者リング署名”，多田 / 岡田，2005年 暗号と情報セキュリティシンポジウム 予稿集 vol.IV, pp.1777 - 1782，2005
【発明の開示】
【発明が解決しようとする課題】
【００１９】
以上説明したように、指名確認者リング署名において、通報者の意思に基づき、匿名性を解除し得ることが望まれている。
【００２０】
本発明は上記実情を考慮してなされたもので、指名確認者リング署名において、署名した通報者の要請により、署名の匿名性を解除して通報者を特定し得る公益通報システム、装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２１】
第１の発明は、匿名の通報メッセージに対する指名確認者リング署名プロトコルを互いに実行可能な署名者端末及び確認者装置を備えた公益通報システムであって、前記署名者端末としては、前記指名確認者リング署名プロトコルの実行中に、前記匿名の通報メッセージに対する署名者の電子署名から一方向性関数により生成した署名ダイジェストを前記確認者装置に送信する手段と、前記指名確認者リング署名プロトコルの実行後、前記署名者の操作により、前記匿名の通報メッセージから匿名性を解除するとき、前記電子署名を前記確認者装置に送信する手段とを備え、前記確認者装置としては、前記署名者端末から受けた署名ダイジェストが記憶される署名ダイジェスト記憶手段と、前記署名者端末から電子署名を受けると、この電子署名から一方向性関数により生成した値と前記署名ダイジェスト記憶手段内の署名ダイジェストとが互いに一致するか否かを判定する手段と、前記判定の結果、両者が一致したとき、前記匿名の通報メッセージに対する匿名性解除通知を前記署名者端末に返信する手段とを備えた公益通報システムである。
【００２２】
第２の発明は、匿名の通報メッセージに対する指名確認者リング署名プロトコルを確認者装置との間で実行可能な署名者端末であって、「公開鍵Pkrcを含む公開鍵証明書」及び「前記公開鍵Pkrcに対応する秘密鍵Skrc」を記憶する記憶手段と、前記指名確認者リング署名プロトコルの実行中に、「前記匿名の通報メッセージM及び前記秘密鍵Skrcに基づいて生成した電子署名SR(＝SIG(Skrc, M))に一方向性関数を施した値h(SR)と当該通報メッセージMとを連接した値M‖h(SR)に一方向性関数を施して得られた署名ダイジェストhq(M‖h(SR))」及び「当該通報メッセージM」を前記確認者装置に送信する手段と、前記指名確認者リング署名プロトコルの実行後、前記署名者の操作により、前記匿名の通報メッセージMから匿名性を解除するとき、当該匿名の通報メッセージM及び前記秘密鍵Skrcに基づいて電子署名SRを生成し、当該電子署名SR及び前記公開鍵証明書を確認者装置に送信する手段と、前記確認者装置が「前記送信された署名ダイジェストhq(M‖h(SR))及び通報メッセージMを記憶しておき、前記電子署名SR及び公開鍵証明書を受信したときに、当該公開鍵証明書を検証し、前記公開鍵証明書内の公開鍵Pkrcに基づいて、前記電子署名SRを検証し、両検証結果が真のとき、前記電子署名SRに一方向性関数を施して得られた値h(SR)を前記通報メッセージMに連接し、この連接値M‖h(SR)に一方向性関数を施した値hq(M‖h(SR))を計算し、この計算により得られた値hq(M‖h(SR))と前記署名ダイジェストhq(M‖h(SR))とが互いに一致するか否かを判定し、両者が一致したとき、前記匿名の通報メッセージに対する匿名性解除通知を返信」することにより、前記匿名の通報メッセージに対する匿名性解除通知を前記確認者装置から受信する手段とを備えた署名者端末である。
【００２３】
第３の発明は、匿名の通報メッセージに対する指名確認者リング署名プロトコルを署名者端末との間で実行可能な確認者装置であって、前記指名確認者リング署名プロトコルの実行中に、前記署名者端末から受けた「前記匿名の通報メッセージMと前記署名者端末の秘密鍵Skrcとに基づいて生成された電子署名SR(＝SIG(Skrc, M))に一方向性関数を施した値h(SR)と当該通報メッセージMとを連接した値M‖h(SR)に一方向性関数を施して得られた署名ダイジェストhq(M‖h(SR))」及び「当該通報メッセージM」が記憶される記憶手段と、前記指名確認者リング署名プロトコルの実行後に、前記署名者端末から「前記秘密鍵Skrcに対応する公開鍵Pkrcを含む公開鍵証明書」及び「前記電子署名SR」を受信すると、当該公開鍵証明書を検証する手段と、前記公開鍵証明書内の公開鍵Pkrcに基づいて、前記電子署名SRを検証する手段と、両検証結果が真のとき、前記電子署名SRに一方向性関数を施して得られた値h(SR)を前記記憶手段内の通報メッセージMに連接し、この連接値M‖h(SR)に一方向性関数を施した値hq(M‖h(SR))を計算する計算手段と、この計算手段により得られた値hq(M‖h(SR))と前記記憶手段内の署名ダイジェストhq(M‖h(SR))とが互いに一致するか否かを判定する手段と、前記判定の結果、両者が一致したとき、前記匿名の通報メッセージに対する匿名性解除通知を前記署名者端末に返信する手段とを備えた確認者装置である。
【００２４】
（作用）
従って、第１乃至第３の発明によれば、指名確認者リング署名プロトコルの実行中に、匿名の通報メッセージに対する電子署名から一方向性関数により生成される署名ダイジェストを確認者装置に送信しておき、指名確認者リング署名プロトコルの実行後に、署名ダイジェストの元となる電子署名を確認者装置に送信することにより、この電子署名から一方向性関数により同じ署名ダイジェストを生成できることを確認者装置が確認して匿名性を解除する構成としたので、指名確認者リング署名において、署名した通報者の要請により、署名の匿名性を解除して通報者を特定することができる。
【発明の効果】
【００２５】
以上説明したように本発明によれば、指名確認者リング署名において、署名した通報者の要請により、署名の匿名性を解除して通報者を特定できる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の各実施形態について図面を用いて説明する。なお、以下の各装置は、それぞれハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。
【００２７】
図１は本発明の一実施形態に係る公益通報システムの構成を示す模式図である。この公益通報システムは、クライアント端末（署名者端末）１００、社員情報管理装置２００、通報掲示板装置３００、ＲＳＡ公開鍵証明書発行装置４００及び確認者装置５００が互いにネットワーク６００を介して通信可能となっている。なお、ネットワーク６００は、インターネットの様な誰もが使えるオープンなネットワークではなく、組織内ＬＡＮの様なクローズドなネットワークを想定している。インターネットの様なオープンなネットワークを想定する場合は、各装置１００〜５００の間で通信を行う際に、ＳＳＬ(Secure Socket Layer)の様な暗号通信を用いることが望ましい。
【００２８】
本実施形態では、組織として会社を想定し、社員が社内のヘルプラインと呼ぶ公益通報を受け付ける部門へ通報する場合を想定する。
【００２９】
クライアント端末１００は、社員が所有するパーソナルコンピュータ（以下、ＰＣ）などの汎用計算機である。社員情報管理装置２００、通報掲示板装置３００、ＲＳＡ公開鍵証明書発行装置４００及び確認者装置５００は、Ｗｉｎｄｏｗｓ（登録商標）サーバやＵＮＩＸ（登録商標）といったオペレーションシステム（以下、ＯＳ）が稼動するサーバ型の汎用計算機（以下、サーバ装置２００〜５００ともいう）である。
【００３０】
ここで、クライアント端末１００は、図２に示すように、通信部１０１、制御部１０２、鍵情報生成部１０３、署名生成部１０４、鍵情報格納部１０５、メモリ部１０６、メッセージ作成部１０７、通報署名生成部１０８、ＲＳＡ鍵情報生成部１１０、ＲＳＡ署名生成部１１１及びＲＳＡ鍵情報格納部１１２を備えている。
【００３１】
通信部１０１は、制御部１０２に制御され、ネットワーク６００を介してサーバ装置２００〜５００と通信を行うための通信装置である。
【００３２】
制御部１０２は、公益通報を行うように各部１０１，１０３〜１１２を制御する機能を有し、具体的には図１２、図１５、図１７〜図１９、図２１に示すクライアント端末１００の動作を実行するように、各部１０１，１０３〜１１２を制御している。
【００３３】
例えば制御部１０２は、「公開鍵Pkrcを含む公開鍵証明書」及び「公開鍵Pkrcに対応する秘密鍵Skrc」をメモリ部１０５に書き込む機能と、指名確認者リング署名プロトコルの実行中に、「匿名の通報メッセージM及び秘密鍵Skrcに基づいて生成した電子署名SR(＝SIG(Skrc, M))に一方向性関数を施した値h(SR)と当該通報メッセージMとを連接した値M‖h(SR)に一方向性関数を施して得られた署名ダイジェストhq(M‖h(SR))」及び「当該通報メッセージM」を通報掲示板装置３００を介して確認者装置５００に送信する機能と、指名確認者リング署名プロトコルの実行後、署名者の操作により、匿名の通報メッセージMから匿名性を解除するとき、当該匿名の通報メッセージM及び秘密鍵Skrcに基づいて電子署名SRを生成し、当該電子署名SR及び公開鍵証明書を確認者装置５００に送信する機能と、確認者装置５００から匿名の通報メッセージMに対する匿名性解除通知を確認者装置５００から受信する機能とをもっている。
【００３４】
鍵情報生成部１０３は、公益通報に必要な鍵情報を生成するものであり、具体的には自端末１００用の互いに対応する公開鍵Pksと秘密鍵Sksとのペア（公開鍵ペア）を生成する機能をもっている。
【００３５】
署名生成部１０４は、鍵情報生成部１０３により生成された公開鍵ペアに基づいて、電子署名を生成する機能をもっている。
【００３６】
鍵情報格納部１０５は、鍵情報生成部１０３により生成された鍵情報や、生成された公開鍵証明書をメモリ部１０６に格納管理する機能をもっている。ここで、公開鍵証明書の様式には、例えばＩＴＵ−Ｔ（国際電気通信連合―電気通信標準化部門）が定めたX.509という規格に沿ったものがあり、図３に示すX.509 バージョン３の様な標準フォーマットで良い。図３のそれぞれのフィールドに表示される情報について述べる。
【００３７】
“version”は X.509 のバージョンで、このフィールドはオプショナルであり、省略された場合は v1 を表す。“serialNumber”は認証局がユニークに割り当てるシリアル番号が入る。“signature”は公開鍵証明書の署名方式が入る。“issuer”は公開鍵証明書の発行者である認証局の X.500 識別名が入る。“validity”は公開鍵の有効期限（開始日時と終了日時）が入る。“subject”は本証明書内に含まれる公開鍵に対応する秘密鍵の所有者の X.500 識別名が入る。“subjectPublicKeyInfo”は証明する公開鍵が入る。“issuerUniqueIdentifier”及び“subjectUniqueIdentifier”は v2 から追加されたオプショナルなフィールドであり、それぞれ認証局の固有識別子，所有者の固有識別子が入る。
【００３８】
“extensions”は v3 で追加されたオプショナルなフィールドであり、拡張型 (extnId)、拡張値 (extnValue) 及びクリティカルビット (critical) の３つ組の集合が入る。X.509 で定められた拡張型には “keyUsage”(公開鍵の利用目的), “subjectAltName”(所有者の別名), “basicConstrains”(認証局かどうかを記入) などがある。v3 拡張フィールドは X.509 で定められた標準の拡張型だけでなく、独自の新しい拡張型も組み込むことが可能である。そのため v3 拡張型をどう認識するかはアプリケーション側に依存することとなる。クリティカルビットはその拡張型が必須であるかまたは無視可能かを表わすものである。
【００３９】
メモリ部１０６は、鍵情報格納部１０５又はＲＳＡ鍵情報格納部１１２から読出／書込可能な記憶装置であり、署名鍵や公開鍵証明書、作成したメッセージや生成した通報署名、ならびに通信ログ、ＲＳＡ署名鍵やＲＳＡ公開鍵証明書、が格納されるものである。
【００４０】
メッセージ作成部１０７は、操作者の操作により、通報メッセージを作成する機能をもっている。
【００４１】
通報署名生成部１０８は、メッセージ作成部１０７により作成された通報メッセージに対する電子署名を生成する機能をもっている。
【００４２】
ＲＳＡ鍵情報生成部１１０は、公益通報に必要なＲＳＡ公開鍵情報を生成するものであり、具体的には自端末１００用の互いに対応するＲＳＡ公開鍵(e, n)とＲＳＡ署名鍵（秘密鍵）d（または、p、q）とのペア（ＲＳＡ公開鍵ペア）を生成する機能をもっている。
【００４３】
ＲＳＡ署名生成部１１１は、ＲＳＡ鍵情報生成部１１０により生成されたＲＳＡ公開鍵ペアに基づいて、電子署名を生成する機能をもっている。
【００４４】
ＲＳＡ鍵情報格納部１１２は、生成されたＲＳＡ署名鍵や生成された公開鍵証明書をＲＳＡ公開鍵証明書シリアルナンバーと関連付けてメモリ部１０６に格納管理する機能をもっている。
【００４５】
社員情報管理装置２００は、図４に示すように、通信部２０１、社員情報登録部２０２、乱数生成部２０３、署名検証部２０４、公開鍵証明書生成部２０５、公開鍵証明書管理部２０６、メモリ部２０７及びＲＳＡ署名検証部２０８を備えている。各部２０１〜２０８は、図示しない制御部により、図１１、図１２及び図１７に示す社員情報管理装置２００の動作を実行するように制御される。
【００４６】
通信部２０１は、クライアント端末や他サーバ装置３００〜５００とネットワーク６００を介して通信する機能をもっている。
【００４７】
社員情報登録部２０２は、操作者の操作により、社員の属性情報をメモリ部２０７に書き込む機能をもっている。社員の属性情報としては、例えば“従業員番号”、“姓”、“名”、“部”、“課”、“アドレス”及び“内線”が互いに関連付けられたものである。
【００４８】
乱数生成部２０３は、確認者装置５００又はクライアント端末１００における電子署名生成に用いられる乱数を生成する機能をもっている。
【００４９】
署名検証部２０４は、確認者装置５００又はクライアント端末１００から電子署名(ｒ, s)と公開鍵Pkcを受けると、この電子署名を検証する機能をもっている。
【００５０】
公開鍵証明書生成部２０５は、署名検証部２０４による検証結果が正当のとき、社員から送られた公開鍵に対して公開鍵証明書を生成する機能をもっている。
【００５１】
公開鍵証明書管理部２０６は、確認者装置５００から受理確認を受けたとき、公開鍵証明書生成部２０５により生成された公開鍵証明書を社員情報に関連付けてメモリ部２０７に書き込む機能と、メモリ部２０７内の公開鍵証明書を管理する機能とをもっている。
【００５２】
メモリ部２０７は、社員情報登録部２０２及び公開鍵証明書管理部２０６により読出／書込み可能な記憶装置であり、図５又は図６に示すように、社員情報を格納管理するものである。ここで、社員情報は、社員の属性情報（“従業員番号”、“姓”、“名”、“部”、“課”、“アドレス”、“内線”）及び“公開鍵証明書”などのデータが互いに関連付けられたものである。
【００５３】
ＲＳＡ署名検証部２０８は、クライアント端末１００からＲＳＡ署名とＲＳＡ公開鍵とを受けると、このＲＳＡ公開鍵に基づいてＲＳＡ署名を検証する機能と、ＲＳＡ公開鍵証明書発行装置４００から受けたＲＳＡ公開鍵証明書を自装置４００のＲＳＡ公開鍵により検証する機能とをもっている。
【００５４】
通報掲示板装置３００は、図７に示すように、通信部３０１、メッセージ登録部３０２、通報署名検証部３０３、通報署名管理部３０４、第１メモリ部３０５ａ、第２メモリ部３０５ｂ及び公開鍵証明書管理部３０６を備えている。各部３０１〜３０６は、図示しない制御部により、図１５、図１８〜図２０に示す通報掲示板装置３００の動作を実行するように制御される。
【００５５】
通信部３０１は、ネットワーク６００を介してクライアント端末１００と通信を行う機能をもっている。
【００５６】
メッセージ登録部３０２は、クライアント端末１００から通報メッセージを登録する機能をもっている。
【００５７】
通報署名検証部３０３は、クライアント端末１００から通報メッセージと共に送られる通報署名を検証する機能と、検証結果が正当のとき、通報メッセージを通報掲示板（公開されたWebページ等）に掲載する機能をもっている。
【００５８】
通報署名管理部３０４は、通報署名検証部３０３による検証結果が正当のとき、通報メッセージや通報署名を第１メモリに書き込んで管理する機能をもっている。
【００５９】
第１メモリ部３０５ａは、通報署名管理部３０４から読出／書込可能な記憶装置であり、通報メッセージや通報署名を格納する機能をもっている。
【００６０】
第２メモリ部３０５ｂは、公開鍵証明書管理部３０６から読出／書込み可能な記憶装置であり、社員の公開鍵証明書を格納する機能をもっている。
【００６１】
公開鍵証明書管理部３０６は、社員の公開鍵証明書を管理するものであり、クライアント端末１００から受けた公開鍵証明書要求及び公開鍵証明書シリアルナンバーに基づいて、第２メモリ部３０５ｂ内の公開鍵証明書を読み出す機能をもっている。
【００６２】
ＲＳＡ公開鍵証明書発行装置４００は、図８に示すように、通信部４０１、ＲＳＡ公開鍵証明書生成部４０２、ＲＳＡ公開鍵証明書管理部４０３及びメモリ部４０４を備えている。各部４０１〜４０４は、図示しない制御部により、図１７に示すＲＳＡ公開鍵証明書発行装置４００の動作を実行するように制御される。
【００６３】
通信部４０１は、クライアント端末や他サーバ装置２００、３００、５００とネットワーク６００を介して通信するものである。
【００６４】
ＲＳＡ公開鍵証明書生成部４０２は、社員情報管理装置２００からＲＳＡ公開鍵(e, n)を受けると、自装置４００のＲＳＡ署名鍵により、ＲＳＡ公開鍵証明書を生成する機能をもっている。なお、ＲＳＡ公開鍵証明書のフォーマットは例えば、図３に示すX.509の標準フォーマットに従って発行されるものとする。
【００６５】
ＲＳＡ公開鍵証明書管理部４０３は、ＲＳＡ公開鍵証明書生成部４０２により生成されたＲＳＡ公開鍵証明書とＲＳＡ公開鍵証明書シリアルナンバーや署名（秘密）鍵をメモリ部４０４に格納・管理する機能をもっている。
【００６６】
メモリ部４０４は、ＲＳＡ公開鍵証明書管理部４０３に読出／書込可能に制御され、ＲＳＡ公開鍵証明書を格納しておく機能をもっている。
【００６７】
確認者装置５００は、図９に示すように、通信部５０１、公開鍵ペア生成部５０２、署名生成部５０３、鍵情報格納部５０４、メモリ部５０５、対話証明部５０６及び匿名性解除部５０７を備えている。各部５０１〜５０７は、図示しない制御部により、図１１、図１９〜図２１に示す確認者装置５００の動作を実行するように制御される。
【００６８】
通信部５０１は、クライアント端末や他サーバ装置２００〜４００とネットワーク６００を介して通信する通信装置である。
【００６９】
公開鍵ペア生成部５０２は、公開鍵証明書生成要求が社員情報管理装置２００に送信されることにより、公開鍵ペアを生成する機能をもっている。
【００７０】
署名生成部５０３は、公開鍵ペア生成部５０２により生成された公開鍵ペア及び社員情報管理装置から受けた乱数kに基づいて、電子署名(r, s)を生成する機能をもっている。
【００７１】
鍵情報格納部５０４は、社員情報管理装置２００から受けた公開鍵証明書の検証結果が真のとき、公開鍵証明書をメモリ部５０５に格納・管理する機能と、自装置５００の署名（秘密）鍵を格納・管理する機能とをもっている。
【００７２】
メモリ部５０５は、鍵情報格納部５０４、対話証明部５０６及び匿名性解除部５０７から読出／書込可能な記憶装置であり、鍵情報格納部５０４から書き込まれた公開鍵証明書及び署名（秘密）鍵や、対話証明に必要なパラメータを格納しておく機能をもっている。
【００７３】
また、メモリ部５０５は、対話証明部５０６による指名確認者リング署名プロトコルの実行中に、クライアント端末１００から受けた「匿名の通報メッセージMとクライアント端末１００の秘密鍵Skrcとに基づいて生成された電子署名SR(＝SIG(Skrc, M))に一方向性関数を施した値h(SR)と当該通報メッセージMとを連接した値M‖h(SR)に一方向性関数を施して得られた署名ダイジェストhq(M‖h(SR))」及び「当該通報メッセージM」を記憶する機能と、指名確認者リング署名プロトコルの実行後に、匿名性解除部５０７から秘密鍵Skrc、署名ダイジェストhq(M‖h(SR))」及び通報メッセージMが読み出される機能をもっている。
【００７４】
対話証明部５０６は、通報掲示板装置３００と対話証明を行うものであり、具体的には図２０に示す確認者リング署名プロトコルを実行する機能をもっている。なお、リング署名プロトコルは、図２０中のステップＳＴ１０８の手順に限らず、図１９中のステップＳＴ１０６〜ＳＴ１０８を含む手順が該当する。
【００７５】
匿名性解除部５０７は、対話証明部５０６による指名確認者リング署名プロトコルの実行後に、クライアント端末１００から「秘密鍵Skrcに対応する公開鍵Pkrcを含む公開鍵証明書」及び「電子署名SR」を通信部５０１を介して受信すると、当該公開鍵証明書を検証する機能と、公開鍵証明書内の公開鍵Pkrcに基づいて、電子署名SRを検証する機能と、両検証結果が真のとき、電子署名SRに一方向性関数を施して得られた値h(SR)をメモリ部５０５内の通報メッセージMに連接し、この連接値M‖h(SR)に一方向性関数を施した値hq(M‖h(SR))を計算する機能と、この計算により得られた値(M‖h(SR))とメモリ部５０５内の署名ダイジェストhq(M‖h(SR))とが互いに一致するか否かを判定する機能と、この判定の結果、両者が一致したとき、匿名の通報メッセージに対する匿名性解除通知をクライアント端末１００に通信部５０１を介して返信する機能とをもっている。
【００７６】
次に、以上のように構成された公益通報システムの動作について図１０乃至図２１を用いて説明する。なお、以下の説明は、事前準備（図１０乃至図１２）、通報の全体像（図１３及び図１４）、実名通報１の処理（図１５）、実名通報２の処理（図１６乃至図１８）、匿名通報の処理（図１９及び図２０）、匿名を解除する処理（図２１）の順に行う。
【００７７】
（事前準備）
図１０は事前準備の動作に関連する構成を示す模式図である。クライアント端末１００では、通信部１０１、制御部１０２、鍵情報生成部１０３、署名生成部１０４、鍵情報格納部１０５及びメモリ部１０６が用いられる。
【００７８】
社員情報管理装置２００では、通信部２０１、社員情報登録部２０２、乱数生成部２０３、署名検証部２０４、公開鍵証明書生成部２０５、公開鍵証明書管理部２０６及びメモリ部２０７が用いられる。
【００７９】
確認者装置５００では、通信部５０１、公開鍵ペア生成部５０２、署名生成部５０３、鍵情報格納部５０４及びメモリ部５０５が用いられる。
【００８０】
図１１は、事前準備の動作を説明するためのシーケンス図であり、確認者装置５００に対して公開鍵証明書を発行する際の処理の流れを示している。
【００８１】
始めに、確認者装置５００は、公開鍵証明書生成要求を社員情報管理装置２００に送信する（ＳＴ１）。公開鍵証明書生成要求の送信後、確認者装置５００では、公開鍵ペア生成部５０２が公開鍵ペアを生成する（ＳＴ２）。公開鍵ペアは以下の手順により生成される。
【００８２】
pとqをq｜p−1となる大きな素数とし、位数がqであるpの部分群の生成元をgとする。ここで、公開鍵ペア生成部５０２は、Skc∈ZqとなるSkcを署名鍵（秘密鍵）とし、次式に示すPkcを確認者装置５００の公開鍵として生成する。
【数１】
2008103937.tif 000003
【００８３】
なお、公開鍵ペアの生成は、確認者装置５００の公開鍵ペア生成部５０２が行う構成に限定されない。例えば、確認者装置５００から公開鍵ペアの生成要求を電子メールにて社員情報管理者装置２００へ出し、社員情報管理者装置２００から返される電子メール本文に記述されたＵＲＬ(Uniform Resource Locator)にアクセスし、ウェブ・ブラウザから受けた公開鍵ペア生成プログラム（例えば、アプレット）を動作させることにより、公開鍵ペアを生成させてもよい。
【００８４】
公開鍵ペアである(Pkc, Skc)の生成と並行して、社員情報管理装置２００では、乱数生成部２０３にて乱数kを生成し（ＳＴ３）、確認者装置５００へ送信する（ＳＴ４）。
【００８５】
確認者装置５００は、この乱数kに基づいて、署名生成部５０３にて電子署名(r, s)を次式に示すように生成する（ＳＴ５）。
【００８６】
r ＝ gk mod p
s ＝ (h(Pkc)−Skcr) ／ k mod (p−1)
但し、ｈ（＊）は、情報＊に対する一方向性関数を表す。
【００８７】
確認者装置５００は、生成した電子署名(r, s)と公開鍵Pkcを社員情報管理装置２００へ送信する（ＳＴ６）。
【００８８】
社員情報管理装置２００は、電子署名(ｒ, s)と公開鍵Pkcを受けると、署名検証部２０４にて署名検証を行う（ＳＴ７）。
【００８９】
署名検証は、以下の手順により行われる。まず、
【数２】
2008103937.tif 000004
【００９０】
を計算し、Pkcr rs mod p を計算する。この二つの計算結果が一致すれば正しく公開鍵ペア(Pkc, Skc)が生成されたものと判断し、公開鍵証明書生成部２０５により公開鍵証明書を生成する（ＳＴ８）。
【００９１】
しかる後、社員情報管理装置２００は、確認者装置５００へ公開鍵証明書を送信する（ＳＴ９）。
【００９２】
確認者装置５００は、受信した公開鍵証明書を社員情報管理装置２００の公開鍵で検証し、結果が真であれば正しく公開鍵証明書が生成されたものとして鍵情報格納部５０４にてメモリ部５０５に秘密鍵Skcと共に格納する（ＳＴ１０）。
【００９３】
確認者装置５００は、格納処理の完了を示す受理確認（ａｃｋ）を社員情報管理装置２００へ送る（ＳＴ１１）。社員情報管理装置２００は、受理確認を受けると、生成した確認者装置５００の公開鍵証明書を公開鍵証明書管理部２０６にてメモリ部２０７へ格納する（ＳＴ１２）。
【００９４】
図１２は、事前準備の動作を説明するためのシーケンス図であり、社員情報を登録する際の処理の流れを示している。
【００９５】
例えば、新規に社員が配属された場合に、社員情報を社員情報登録部２０２にて入力し（ＳＴ２１）、この社員に対する公開鍵証明書を生成するため、乱数生成部２０３にて乱数を生成する（ＳＴ２２）。しかる後、社員情報管理装置２００は、ネットワーク６００を通じて該当する社員のクライアント端末１００へ公開鍵ペア生成要求と乱数を送る（ＳＴ２３）。
【００９６】
公開鍵ペア生成要求の具体例としては、前述同様に、公開鍵ペア生成プログラムをクライアント端末に取得・実行させるためのＵＲＬを記述した電子メールを用いてもよい。
【００９７】
さて、クライアント端末１００においては、鍵情報生成部１０３が公開鍵ペアを以下の手順により生成する（ＳＴ２４）。
【００９８】
pとqをq｜p−1となる大きな素数とし、位数がqであるpの部分群の生成元をgとする。ここで、鍵情報生成部１０３は、Sks∈ZqとなるSksを署名鍵（秘密鍵）とし、次式に示すようにPksを計算してクライアント端末１００の公開鍵とする。
【数３】
2008103937.tif 000005
【００９９】
なお、公開鍵ペア(Pks, Sks)は、社員一人一人に対して異なる値となる。
【０１００】
クライアント端末１００は、生成した公開鍵ペア(Pks, Sks)と受けた乱数kとから、署名生成部１０４にて電子署名を(r, s)を次式に示すように生成する（ＳＴ２５）。
【０１０１】
r ＝ gk mod p
s ＝ (h(Pks)−Sksr) ／ k mod (p−1) 
但し、ｈ（＊）は、情報＊に対する一方向性関数を表す。
【０１０２】
クライアント端末１００は、生成した電子署名(r, s)と公開鍵Pksを社員情報管理装置２００へ送信する（ＳＴ２６）。
【０１０３】
社員情報管理装置２００は、電子署名(ｒ, s)と公開鍵Pksを受けると、署名検証部２０４にて署名検証を行う（ＳＴ２７）。
【０１０４】
署名検証は、以下の手順により行われる。まず、
【数４】
2008103937.tif 000006
【０１０５】
を計算し、次にPksr rs mod p を計算する。この二つの計算結果が一致すれば正しく公開鍵ペア(Pks, Sks)が生成されたものと判断し、公開鍵証明書生成部２０５により公開鍵証明書を生成する（ＳＴ２８）。この公開鍵証明書の様式には、例えば図３に示すX.509 バージョン３の様な標準フォーマットで良い。
【０１０６】
しかる後、社員情報管理装置２００は、クライアント端末１００へ公開鍵証明書を送信する（ＳＴ２９）。
【０１０７】
クライアント端末１００は、受信した公開鍵証明書を社員情報管理装置２００の公開鍵で検証し、結果が真であれば正しく公開鍵証明書が生成されたものとして鍵情報格納部１０５にてメモリ部１０６に秘密鍵Skcと共に格納する（ＳＴ３０）。
【０１０８】
クライアント端末１００は、格納処理の完了を示す受理確認（ａｃｋ）を社員情報管理装置２００へ送る（ＳＴ３１）。
【０１０９】
社員情報管理装置２００は、受理確認を受けると、生成したクライアント端末１００の公開鍵証明書を公開鍵証明書管理部２０６にて登録した社員情報と共にメモリ部２０７へ格納する（ＳＴ３２）。
【０１１０】
以上のように、クライアント端末１００や確認者装置５００についての公開鍵ペアの生成、公開鍵証明書の発行および格納が終了したら、クライアント端末１００から通報掲示板装置３００へ公益通報を行うことが可能となる。
【０１１１】
（通報の全体像）
図１３は、公益通報の動作に関連する構成を示す模式図である。  
通報する場合、クライアント端末１００では、通信部１０１、メッセージ作成部１０７、通報署名生成部１０８及びメモリ部１０６が用いられる。
【０１１２】
通報掲示板装置３００では、通信部３０１、メッセージ登録部３０２、通報署名検証部３０３、通報署名管理部３０４、第１メモリ部３０５ａ、公開鍵証明書管理部３０６及び第２メモリ部３０５ｂが用いられる。
【０１１３】
この通報掲示板装置３００は、一般にインターネットで掲示板サービスが行われているが、それらで用いられている匿名掲示板サーバ装置を用いて実現できるものである。
【０１１４】
確認者装置５００では、通信部５０１、対話証明部５０６及びメモリ部５０５が用いられる。
【０１１５】
図１４は、公益通報の全体動作を説明するためのフローチャートである。  
クライアント端末１００は、操作者の操作により、通報掲示板装置３００にアクセスすると通報内容の閲覧又は書込を選択する（ＳＴ４１）。閲覧の場合は、通報掲示板に書き込まれた通報内容を閲覧して終了する（ＳＴ４２）。
【０１１６】
通報内容の書込みを選択した場合（ＳＴ４３）、クライアント端末１００は、操作者の操作により、メッセージ作成部１０７にて通報メッセージを作成する。具体的には例えば、メッセージの書込ページに移動して書き込む方法がある。
【０１１７】
クライアント端末１００は、通報を書き込むと、操作者の操作により、実名で通報するか匿名で通報するかを選択する（ＳＴ４４）。
【０１１８】
実名通報を選択した場合、クライアント端末１００は、操作者の操作により、通報メッセージに対する電子署名を生成し（ＳＴ４５）、実名通報を公開するか否かを選択し（ＳＴ４６）、公開を選択した場合には通報を通報掲示板装置３００に書き込んで公開し（ＳＴ４７）、非公開を選択した場合には通報を管理者のみに通報する（ＳＴ４８）。
【０１１９】
一方、匿名通報を選択した場合、クライアント端末１００は、操作者の操作により、通報電子署名を生成し（ＳＴ４９）、匿名通報を公開するか否かを選択し（ＳＴ５０）、公開を選択した場合には通報を通報掲示板装置３００に書き込んで公開し（ＳＴ５１）、非公開を選択した場合には通報を管理者のみに通報する（ＳＴ５２）。
【０１２０】
続いて、これらの実名通報、匿名通報の動作を詳細に説明する。なお、実名通報については二通りの動作を実名通報１，２として述べる。匿名通報については詳細を述べた後、匿名性を解除する場合の動作をも説明する。
【０１２１】
（実名通報１の処理）
図１５は、実名通報１の動作を説明するためのシーケンス図である。  
クライアント端末１００は、操作者の操作により、メッセージ作成部１０７にて通報メッセージを作成する（ＳＴ６１）。実名で通報することを選択した場合は、通報メッセージに対する通報者の電子署名（通報署名）を生成する（ＳＴ６２）。
【０１２２】
この通報者の電子署名の生成では、前述の電子署名の生成と同じように、通報メッセージをMとした場合、乱数kを生成し、次式に示すようにr, sを計算し、計算された(r, s)を電子署名としてメッセージ登録部３０２へ送り登録する方法がある（ＳＴ６３）。
【０１２３】
r ＝ gk mod p  
s ＝ (h(M)−Sksr) ／ k mod (p−1)  
通報掲示板装置３００は、通報メッセージ、電子署名、公開鍵証明書を受け取ると、通報署名検証部３０３にて通報者の電子署名を検証する（ＳＴ６４）。
【０１２４】
検証の手順は、ｇh(M)を計算し、 Pksr rs mod p を計算し、この二つの計算結果の一致を確認すればよい。両計算結果が一致した場合、通報署名検証部３０３は、通報者が通報メッセージMに対して電子署名を行ったものと判断し、通報メッセージを通報掲示板に掲載する（ＳＴ６５）。
【０１２５】
そして、通報署名管理部３０４は、通報メッセージ、電子署名、公開鍵証明書を第１メモリ部３０５ａに格納し管理する（ＳＴ６６）。
【０１２６】
（実名通報２の処理）
他に、予めＲＳＡ電子署名を生成できるように公開鍵ペアを作って公開鍵証明書をクライアント端末１００に与えておき、実名での通報の場合にはＲＳＡ電子署名を付与して通報掲示板装置３００へ、通報メッセージ、電子署名、ＲＳＡ公開鍵証明書を送信する方法がある。この電子署名の検証は、送信された通報メッセージ、電子署名、ＲＳＡ公開鍵証明書を用いて通報者が作成したものであることが検証できる。
【０１２７】
このＲＳＡ電子署名による通報の仕組みは、インターネットなどで汎用的に使われているＰＫＩ(Public Key Infrastructure：公開鍵暗号基盤)を用いて実現できる。
【０１２８】
それでは実名での通報の場合について、図１６乃至図１８を用いて説明する。
【０１２９】
ＰＫＩの枠組みを用いるためには、公開鍵証明書を発行する認証局ＣＡ(Certificate Authority)が必要になる。実運用上は、利用者を登録するための登録局ＲＡ(Registration Authority)も必要となるが、本実施形態では組織内、例えば会社の社員やサーバに対して公開鍵証明書を発行することを想定しているため、登録局ＲＡを省略して説明する。
【０１３０】
図１６は、ＲＳＡ署名を用いた実名通報２の動作に関連する構成を示す模式図である。
【０１３１】
クライアント端末１００では、通信部１０１、制御部１０２、ＲＳＡ鍵情報生成部１１０、ＲＳＡ署名生成部１１１、ＲＳＡ鍵情報格納部１１２及びメモリ部１０６が用いられる。
【０１３２】
社員情報管理装置２００では、通信部２０１、社員情報登録部２０２、公開鍵証明書管理部２０６、メモリ部２０７及びＲＳＡ署名検証部２０８が用いられる。
【０１３３】
通報掲示板装置３００では、通信部３０１、メッセージ登録部３０２、通報署名検証部３０３、通報署名管理部３０４及び第１メモリ部３０５ａが用いられる。
【０１３４】
ＲＳＡ公開鍵証明書発行装置４００では、通信部４０１、ＲＳＡ公開鍵証明書生成部４０２、ＲＳＡ公開鍵証明書管理部４０３及びメモリ部４０４が用いられる。
【０１３５】
社員情報は、図６に示すように、ＲＳＡ方式に関するものが用いられる。
【０１３６】
図１７は、実名通報２の動作を説明するためのシーケンス図であり、クライアント端末１００にＲＳＡ公開鍵証明書が発行される処理を示している。
【０１３７】
なお、ＲＳＡ公開鍵証明書については、一般的なＰＫＩによる仕組みが適用でき実際にサービスが提供されているものを適用できる。
【０１３８】
本実施形態では、説明を簡略にするために、ＲＳＡ公開鍵方式による電子署名について、文献（現代暗号，岡本龍明／山本博資  著，産業図書、p.175-176参照）に記載されているＲＳＡ署名を例にして説明する。
【０１３９】
社員情報管理装置２００では、例えば新入社員の社員情報などといった未登録の社員情報が入力されるとする（ＳＴ７１）。社員情報管理装置２００は、新たに登録される社員のクライアント端末１００に、ＲＳＡ公開鍵ペア生成要求と乱数を送る（ＳＴ７２）。ＲＳＡ公開鍵ペア生成要求の例としては、前述同様に、公開鍵ペア生成プログラムのＵＲＬを記述した電子メールを用いてもよい。
【０１４０】
クライアント端末１００は、ＲＳＡ公開鍵ペア生成要求と乱数を受けると、ＲＳＡ鍵情報生成部１１０が以下の手順でＲＳＡ公開鍵ペアを生成する。すなわち、ＲＳＡ鍵情報生成部１１０は、｜p｜と｜q｜がほぼ同じとなる素数p，qを生成し、
n ＝ pq
λ(n) ＝ LCM(p−1, q−1)
適当なe∈Zλ(n) について、GCD(e, λ(n))＝1となるeについて
d ＝ 1／e mod λ(n)
を計算する（ＳＴ７３）。
【０１４１】
生成されたd（または、p、q）をＲＳＡ秘密鍵とし、ＲＳＡ公開鍵を(e, n)とする。
【０１４２】
そして、ＲＳＡ署名生成部１１１は、送られた乱数をRとしたとき、このRに対してＲＳＡ署名sを、次式を用いて生成する（ＳＴ７４）。
【０１４３】
s ＝ h(R)d mod n
計算されたsをＲＳＡ署名とし、ＲＳＡ公開鍵(e, n)と共に社員情報管理装置２００へ送る（ＳＴ７５）。
【０１４４】
社員情報管理装置２００は、ＲＳＡ署名ｓ、ＲＳＡ公開鍵(e, n)を受けると、ＲＳＡ署名ｓを次式のように検証する（ＳＴ７６）。
【０１４５】
h(R) ＝ se mod n
検証結果が真であれば、社員情報管理装置２００は、ＲＳＡ公開鍵(e, n)をＲＳＡ公開鍵証明書発行装置４００へ送信し（ＳＴ７７）、ＲＳＡ公開鍵(e, n)に対するＲＳＡ公開鍵証明書の発行を依頼する。検証結果が偽であれば、その旨をクライアント端末１００へ送り、処理を止める。
【０１４６】
ＲＳＡ公開鍵証明書発行装置４００は、ＲＳＡ公開鍵(e, n)を受けると、ＲＳＡ公開鍵証明書生成部４０２にて自装置４００のＲＳＡ署名鍵によりＲＳＡ公開鍵証明書を生成する（ＳＴ７８）。
【０１４７】
ＲＳＡ公開鍵証明書管理部４０３は、生成されたＲＳＡ公開鍵証明書とＲＳＡ公開鍵証明書シリアルナンバーとを互いに関連付けてメモリ部４０４に格納する（ＳＴ７９）。
【０１４８】
そして、ＲＳＡ公開鍵証明書発行装置４００は、ＲＳＡ公開鍵証明書を社員情報管理装置２００へ送る（ＳＴ８０）。
【０１４９】
社員情報管理装置２００では、ＲＳＡ署名検証部２０８が、受信したＲＳＡ公開鍵証明書をＲＳＡ公開鍵証明書発行装置４００のＲＳＡ公開鍵にて検証する（ＳＴ８１）。
【０１５０】
検証結果が真であれば、ＲＳＡ公開鍵証明書のデータを公開鍵証明書管理部２０６に送り、社員情報としてメモリ部２０７に格納する（ＳＴ８２）。検証結果が偽であれば、その旨をＲＳＡ公開鍵証明書発行装置４００へ送り、検証結果が真になるまでステップＳＴ７７からＳＴ８１の処理を繰り返す。
【０１５１】
ステップＳＴ８２の後、社員情報管理装置２００は、発行されたＲＳＡ公開鍵証明書を、クライアント端末１００へ送る（ＳＴ８３）。
【０１５２】
クライアント端末１００は、ＲＳＡ鍵情報格納部１１２が、このＲＳＡ公開鍵証明書をＲＳＡ公開鍵証明書発行装置４００のＲＳＡ公開鍵にて検証する（ＳＴ８４）。この検証結果が真であれば、ＲＳＡ鍵情報格納部１１２は、生成したＲＳＡ署名鍵、ＲＳＡ公開鍵証明書、ＲＳＡ公開鍵証明書シリアルナンバーを互いに関連付けてメモリ部１０６に格納する（ＳＴ８５）。なお、格納に際して、ＲＳＡ署名鍵は、第三者が勝手に使えないよう暗号化しパスワードなどでアクセス制御されて格納されることが望ましい。
【０１５３】
ステップＳＴ８４の検証結果が偽であれば、クライアント端末１００は、その旨を社員情報管理装置２００へ通知し、新たに生成したＲＳＡ公開鍵ペアについて、ＲＳＡ公開鍵証明書の発行動作を再実行する。
【０１５４】
ＲＳＡ公開鍵証明書の発行完了後、社員情報の登録された社員によりクライアント端末１００を用いて実名通報２を実行する際の動作を図１８を用いて説明する。
【０１５５】
クライアント端末１００は、社員の操作により、メッセージ作成部１０７が通報メッセージを作成する（ＳＴ９１）。作成した通報メッセージMに対して、ＲＳＡ署名生成部１１１にて次式のようにＲＳＡ署名swを生成する（ＳＴ９２）。
【０１５６】
sw ＝ h(M)d mod n
クライアント端末１００は、生成されたswを通報ＲＳＡ署名とし、通報メッセージ、ＲＳＡ公開鍵証明書と共に通報掲示板装置３００へ送信する（ＳＴ９３）。
【０１５７】
通報掲示板装置３００では、通報署名検証部３０３が、受信したＲＳＡ公開鍵証明書を検証し（ＳＴ９４）、検証結果が偽であればその旨をクライアント端末へ送り処理を中止する。検証結果が真であれば、通報ＲＳＡ署名を次式により検証する（ＳＴ９５）。
【０１５８】
h(M) ＝ swe mod n
検証結果が偽であれば処理を中止し、検証結果が真であれば通報メッセージを通報者の名前と共に掲載し（ＳＴ９６）、通報日時、通報メッセージ、通報ＲＳＡ署名、ＲＳＡ公開鍵証明書シリアルナンバーを互いに関連付けて第１メモリ部３０５ａに格納する（ＳＴ９７）。なお、検索を容易にするため、通報メッセージに通し番号を付与して一緒に格納しても良い。
【０１５９】
通報メッセージを非公開にする場合、通報掲示板装置３００は、通報メッセージMを通報掲示板に掲載せずに通報メッセージと電子署名を、公益通報を管理する管理者装置（図示せず）のみに送信し、通報メッセージ、電子署名、公開鍵証明書を通報署名管理部３０４にて格納・管理する。
【０１６０】
管理者は、図示しない管理者装置により、前述と同様な手順により電子署名を検証し、通報者により通報メッセージが作成されたものであることを確認し、改ざんが行われていないことを確認する。
【０１６１】
（匿名通報の処理）
次に、匿名通報を選択した場合の動作について図１９を用いて説明する。
【０１６２】
クライアント端末１００は、操作者の操作により、メッセージ作成部１０７にて通報メッセージを作成する（ＳＴ１０１）。例えば、クライアント端末１００は、通報掲示板装置３００にアクセスした後、操作者の操作により、通報の書込みを選択した場合に、メッセージの書込みページに移動して通報メッセージを書き込む。
【０１６３】
次に、以下の手順を用いてリング署名を生成する。
【０１６４】
クライアント端末１００は、通報掲示板装置３００へリング署名に用いる公開鍵を選択し、公開鍵証明書要求及び公開鍵証明書シリアルナンバーを通報掲示板装置３００に送信する（ＳＴ１０２）。
【０１６５】
通報掲示板装置３００は、公開鍵証明書管理部３０６にて第２メモリ部３０５ｂに格納されている指定された公開鍵証明書を読出し（ＳＴ１０３）、この公開鍵証明書をクライアント端末１００へ送信する（ＳＴ１０４）。
【０１６６】
クライアント端末１００は、通報掲示板装置３００から受信した公開鍵証明書について、有効期限や公開鍵証明書の正当性を社員情報管理装置２００の公開鍵を用いて検証する（ＳＴ１０５）。検証結果が偽の公開鍵証明書があれば、その公開鍵証明書を廃棄して別の公開鍵証明書を要求し、取得した後に検証を行う。検証結果が真であれば、その公開鍵証明書内の公開鍵を用いて以下の計算を実行しリング署名を生成する（ＳＴ１０６）。なお、ステップＳＴ１０６〜ＳＴ１０８の処理は、指名確認者リング署名プロトコルに該当する。
【０１６７】
なお、用いる公開鍵をPKs,j ( j＝1, …,n： nは社員数であり、公開鍵証明書数)とし、対となる秘密鍵をSKs,jとする。
【０１６８】
まず第１のステップとして、次式を計算する。なお、α，k∈R Zqなる乱数αとｋを選んでおく。なお、数式中にあるh(＊)、hq(＊)は一方向性関数で、Mは通報メッセージを示す。
【０１６９】
また、クライアント端末１００に格納されているＲＳＡ公開鍵をPkrc、ＲＳＡ署名（秘密）鍵をSkrcとし、メッセージMに対するＲＳＡ署名の生成をSIG(Skrc, M)とする。なおＲＳＡ署名の際にメッセージMは、一方向性関数h(＊)により固定ビット長に縮められる。即ち実際には、SIG(Skrc, h(M))となる。
【０１７０】
クライアント端末１００では、通報メッセージMをメッセージ作成部１０７にて作成すると、メッセージMに対するクライアント端末１００によるＲＳＡ署名、即ち通報者自身によるＲＳＡ署名を生成する。ここで、クライアント端末１００が生成するＲＳＡ署名をSR ＝ SIG(Skrc, M)とする。
【数５】
2008103937.tif 000007
【０１７１】
を計算し、通報メッセージMに対するリング署名σ(M)として、σ(M) ＝ (c1, s1, …, sn, d1, d2)を出力する。
【０１７２】
そして、通報メッセージMとリング署名σ(M)、ならびにリング署名に用いた公開鍵証明書のシリアルナンバー、一方向性関数を施したＲＳＡ署名ダイジェストh(M‖SR)を通報掲示板装置３００へ送る（ＳＴ１０７）。
【０１７３】
通報掲示板装置３００は、通報メッセージ、リング署名、公開鍵証明書シリアルナンバーをメッセージ登録部３０２にて受けると、通報署名検証部３０３にてリング署名を検証する（ＳＴ１０８）。リング署名の検証は、以下の手順により実行する。
【０１７４】
まず、1≦j≦nのjについて、以下の計算を繰り返す。
【数６】
2008103937.tif 000008
【０１７５】
c1 ＝ cn+1となるか検証することで、コミットメントに対するリング署名の正当性を検証する。
【０１７６】
次に通報掲示板装置３００は、リング署名σ(M)が次式を満足するか、確認者装置５００との対話証明により検証する。次式の対数の検証式は直接には計算されずに成り立つことは、対話証明により確認される。図２０に対話証明の動作を示す。
【数７】
2008103937.tif 000009
【０１７７】
通報掲示板装置３００は、u, v∈Zqなる乱数u,vを選び（ＳＴ１０８−１）、コミットメントa ＝ guPkcvを計算し（ＳＴ１０８−２）、コミットメントaを確認者装置５００へ送信する（ＳＴ１０８−３）。
【０１７８】
確認者装置５００は、対話証明部５０６にて乱数t, t’, wを選んで（ＳＴ１０８−４）、次式のようにべき乗値r1,r2, r1’,r2’を計算する（ＳＴ１０８−５）。
【０１７９】
r1 ＝ gt 
r2 ＝ d1t 
r1’ ＝ gt’ 
r2’ ＝ d1t’ 
そして、べき乗値r1,r2, r1’,r2’を通報掲示板装置３００へ送る（ＳＴ１０８−６）。
【０１８０】
通報掲示板装置３００は、乱数u，vを確認者装置５００へ送信し（ＳＴ１０８−７）、コミットメントaを開示する。即ち、確認者装置５００では、送られた乱数u，vからコミットメントaを計算し、ＳＴ１０８−３で送られたコミットメントaと一致するか確認する（ＳＴ１０８−８）。一致しなければ処理を中断する。一致した場合は、次の値s, s’を計算し（ＳＴ１０８−９）、得られた値s, s’ を通報掲示板装置３００へ送信する（ＳＴ１０８−１０）。
【０１８１】
s ＝ t−(v＋w)Skc 
s’ ＝ t’−(v＋w)t  
通報掲示板装置３００は、次式が成り立つか確認する。すなわち、
【数８】
2008103937.tif 000010
【０１８２】
であることが検証できたら、通報掲示板装置３００はクライアント端末１００からの通報メッセージならびに通報署名であるリング署名を受理する（ＳＴ１０９）。
【０１８３】
そして、通報メッセージの公開を希望している場合は、通報メッセージを匿名として掲示板に掲載し（ＳＴ１１０）、公開を希望しない場合は掲示板に掲載しない。
【０１８４】
そして、送られた日時、通報メッセージ、リング署名、署名に使用した公開鍵証明書のシリアルナンバーを格納する（ＳＴ１１１）。なお、検索を容易にするために通報メッセージに通し番号を付与し、一緒に格納しても良い。
【０１８５】
ここで、通報掲示板装置３００がリング署名を検証する場合について説明したが、組織内のクライアント端末１００においても同様の処理が可能であることは自明である。
【０１８６】
なお、本実施形態で用いている指名確認者リング署名では、確認者装置単独でリング署名の検証が非特許文献５に記載された処理により可能である。しかし本発明の目的は、第三者による勝手な署名検証の防止を目的としているため説明を省略する。
【０１８７】
（匿名を解除する処理）
クライアント端末１００で、匿名で通報メッセージを送った通報者が、保護を求めるため匿名を解除する動作について図２１を用いて説明する。
【０１８８】
通報メッセージMの通報者は、所有するクライアント端末１００によりＲＳＡ署名SR(＝SIG(Skrc, M))を生成し（ＳＴ１２１）、クライアント端末１００に格納してあるＲＳＡ公開鍵証明書もしくはＲＳＡ公開鍵証明書シリアルナンバーを確認者装置５００へ送信する（ＳＴ１２２）。
【０１８９】
確認者装置５００では、クライアント端末１００から送られたＲＳＡ署名とＲＳＡ公開鍵証明書とを用いて、まずＲＳＡ公開鍵証明書が正しいかを検証し（ＳＴ１２３）、続いてＲＳＡ署名を検証する（ＳＴ１２４）。検証結果が真であれば、確認者装置５００においては、匿名性解除部５０７により、通報メッセージMとＲＳＡ署名sRとを連接した値M‖h(SR)を一方向性関数hq(＊)に施した値hq(M‖h(SR))を計算し、この計算により得られた値hq(M‖h(SR))とメモリ部５０５内の署名ダイジェストhq(M‖h(SR))とが互いに一致するか否かを判定する（ＳＴ１２５）。
【０１９０】
この判定の結果、両者が一致すれば、通報メッセージMの作成者が、クライアント端末１００からＲＳＡ署名とＲＳＡ公開鍵証明書を送った者であるとし、確認者装置５００は、匿名性解除部５０７が、匿名性が解除できたとして通信部５０１を介して匿名性解除通知を送る（ＳＴ１２６）。検証結果が偽であれば、その旨を含む匿名性否解除通知をクライアント端末１００に送り、処理を中断する。
【０１９１】
上述したように本実施形態によれば、指名確認者リング署名プロトコルの実行中に、匿名の通報メッセージMに対する電子署名SRから一方向性関数により生成される署名ダイジェストh(M‖h(SR))を確認者装置５００に送信しておき、指名確認者リング署名プロトコルの実行後に、署名ダイジェストの元となる電子署名SRを確認者装置５００に送信することにより、この電子署名SRから一方向性関数により同じ署名ダイジェストh(M‖h(SR))を生成できることを確認者装置５００が確認して匿名性を解除する構成としたので、指名確認者リング署名において、署名した通報者の要請により、署名の匿名性を解除して通報者を特定することができる。
【０１９２】
また、本実施形態によれば、社内からの公益通報に対して指名確認者リング署名を用いた際に、社員が安心して通報できるように匿名での通報を行えるようにし、かつその通報内容について確かに社員の一人が通報したことが指名確認者により検証でき、必要に応じて通報者の匿名性を解除し保護対象とでき、かつ無効化された鍵で署名がされていないことを容易に検証することができる。
【０１９３】
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０１９４】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【０１９５】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が上記実施形態を実現するための各処理の一部を実行しても良い。
【０１９６】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０１９７】
また、記憶媒体は１つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０１９８】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０１９９】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０２００】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【０２０１】
【図１】本発明の一実施形態に係る公益通報システムの構成を示す模式図。
【図２】同実施形態におけるクライアント端末の構成を示す模式図。
【図３】一般的な公開鍵証明書のX.509フォーマットを示した図。
【図４】同実施形態における社員情報管理装置の構成を示す模式図。
【図５】同社員情報管理装置のメモリ部の構成を示す模式図。
【図６】同社員情報管理装置のメモリ部の構成を示す模式図。
【図７】同実施形態における通報掲示板装置の構成を示す模式図。
【図８】同実施形態におけるＲＳＡ公開鍵証明書発行装置の構成を示す模式図。
【図９】同実施形態における確認者装置の構成を示す模式図。
【図１０】同実施形態における事前準備の動作に関連する構成を示す模式図。
【図１１】同実施形態における事前準備の動作を説明するためのシーケンス図。
【図１２】同実施形態における事前準備の動作を説明するためのシーケンス図。
【図１３】同実施形態における公益通報の動作に関連する構成を示す模式図。
【図１４】同実施形態における公益通報の全体動作を説明するフローチャート。
【図１５】同実施形態における実名通報１の動作を説明するためのシーケンス図。
【図１６】同実施形態における実名通報２の動作に関連する構成を示す模式図。
【図１７】同実施形態における実名通報２の動作を説明するためのシーケンス図。
【図１８】同実施形態における実名通報２の動作を説明するためのシーケンス図。
【図１９】同実施形態における匿名通報の動作を説明するためのシーケンス図。
【図２０】同実施形態における対話証明の動作を説明するためのシーケンス図。
【図２１】同実施形態における匿名性の解除の動作を説明するためのシーケンス図。
【符号の説明】
【０２０２】
１００…クライアント端末、１０１…通信部、１０２…制御部、１０３…鍵情報生成部、１０４…署名生成部、１０５…鍵情報格納部、１０６…メモリ部、１０７…メッセージ作成部、１０８…通報署名生成部、１１０…ＲＳＡ鍵情報生成部、１１１…ＲＳＡ署名生成部、１１２…ＲＳＡ鍵情報格納部、２００…社員情報管理装置、２０１…通信部、２０２…社員情報登録部、２０３…乱数生成部、２０４…署名検証部、２０５…公開鍵証明書生成部、２０６…公開鍵証明書管理部、２０７…メモリ部、２０８…ＲＳＡ署名検証部、３００…通報掲示板装置、３０１…通信部、３０２…メッセージ登録部、３０３…通報署名検証部、３０４…通報署名管理部、３０５ａ，３０５ｂ…メモリ部、３０６…公開鍵証明書管理部、４００…ＲＳＡ公開鍵証明書発行装置、４０１…通信部、４０２…ＲＳＡ公開鍵証明書生成部、４０３…ＲＳＡ公開鍵証明書管理部、４０４…メモリ部、５００…確認者装置、５０１…通信部、５０２…公開鍵ペア生成部、５０３…署名生成部、５０４…鍵情報格納部、５０５…メモリ部、５０６…対話証明部、５０７…匿名性解除部、６００…ネットワーク。
【図１】
2008103937.tif 000011
【図２】
2008103937.tif 000012
【図３】
2008103937.tif 000013
【図４】
2008103937.tif 000014
【図５】
2008103937.tif 000015
【図６】
2008103937.tif 000016
【図７】
2008103937.tif 000017
【図８】
2008103937.tif 000018
【図９】
2008103937.tif 000019
【図１０】
2008103937.tif 000020
【図１１】
2008103937.tif 000021
【図１２】
2008103937.tif 000022
【図１３】
2008103937.tif 000023
【図１４】
2008103937.tif 000024
【図１５】
2008103937.tif 000025
【図１６】
2008103937.tif 000026
【図１７】
2008103937.tif 000027
【図１８】
2008103937.tif 000028
【図１９】
2008103937.tif 000029
【図２０】
2008103937.tif 000030
【図２１】
2008103937.tif 000031