(57)【要約】      （修正有）【課題】情報処理装置がプログラムを実行しようとするときに、該プログラムを実行すべきか否か、実行すべきであるとしたら機能の一部または全部を含めて実行すべきか否かを判断するプログラム及び情報処理システムを提供する。【解決手段】プログラムは、条件Ｂを満たしたときＳ２１、条件Ａを満たすか判断するＳ２２。条件Ａを満たす場合Ｓ２２：ＹＥＳ、その時点における現在時刻を記憶部１２に記憶しＳ２３、動作Ｄを実行しないＳ２４。条件Ａを満たさない場合Ｓ２２：ＮＯ、最後に条件Ａを満たした時刻が記憶されているか確認する。最後に条件Ａを満たした時刻が記憶されていない場合、動作Ｄを実行する。最後に条件Ａを満たした時刻が記憶されている場合、記憶された時刻は条件Ｃを満たすか判断するＳ２７。条件Ｃを満たさない場合Ｓ２７：ＮＯ、動作Ｄを実行する。条件Ｃを満たす場合Ｓ２７：ＹＥＳ、動作Ｄを実行しない。【選択図】図２
2019101763.tif 000002
【特許請求の範囲】
【請求項１】
条件を満たさない状態が一定の時間以上継続したときに、
プログラムの動作の有無または内容の少なくともいずれかを変更することを特徴とするプログラム。
【請求項２】
請求項１に記載の条件とは「条件Ａを満たした状態で条件Ｂを満たす」ことであることを特徴とするプログラム。
【請求項３】
請求項１に記載の「条件Ａ」とは、「インターネットに接続していること」、
請求項１に記載の「条件Ｂ」とは、「そのソフトウェア自身を起動すること」、
であることの、少なくとも1個を満たすプログラム。
【請求項４】
請求項１に記載の「プログラムの動作の有無または内容の少なくともいずれかを変更する」とは、
体験版モードであることを特徴とするプログラム。
【請求項５】
ソフトウェアＡを特定のソフトウェアと同時に起動させないことを特徴とするプログラム。
【請求項６】
請求項５に記載の「特定のソフトウェア」の指定を、請求項５に記載のソフトウェアＡを記憶した情報処理装置の内部または外部の少なくともいずれかから受け付けることを特徴とするプログラム。
【請求項７】
ソフトウェアを特定の情報処理装置では起動させないことを特徴とするプログラム。
【請求項８】
請求項５に記載の「特定の情報処理装置」の指定を、請求項５に記載のソフトウェアを記憶した情報処理装置の内部または外部の少なくともいずれかから受け付けることを特徴とするプログラム。
【請求項９】
請求項１、請求項５、請求項７に記載の処理の少なくともいずれかを行い、
ソフトウェアを起動すべきか否か、
ソフトウェアを起動すべきである場合は実行できる機能を変更すべきか否か、
の少なくともいずれかを判断することを特徴とするプログラム。
【請求項１０】
請求項９に記載の「実行できる機能を変更すべきか否か」にて「変更すべき」と判断された場合は、
当該ソフトウェアの機能の一部が制限されること、
当該ソフトウェアが実行できる機能が変更された状態で動作している旨であることをユーザに知らせること、
の少なくともいずれかが行われることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置がプログラムを実行しようとするときに、該プログラムを実行すべきか否か、実行すべきであるとしたら機能の一部または全部を含めて実行すべきか否かを判断するプログラム及び情報処理システムに関する。
【背景技術】
【０００２】
従来、ソフトライセンス管理方法、通信ネットワークシステム及びソフトライセンス管理プログラムが知られている。（例えば、特許文献１参照）
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特願２００９−５１１９２５
【発明の概要】
【０００４】
しかし、特許文献１に開示された技術では、ライセンスキーの発行がいまだ行われていないソフトウェアの使用権を管理することが難しいという課題がある。
【発明が解決しようとする課題】
【０００５】
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、情報処理装置がプログラムを実行しようとするときに、該プログラムを実行すべきか否か、実行すべきであるとしたら機能の一部または全部を含めて実行すべきか否かを判断するプログラム及び情報処理システムを提供するところにある。
【課題を解決するための手段】
【０００６】
本発明の一態様のプログラムは、下記の少なくともいずれかである。
【０００７】
・条件を満たさない状態が一定の時間以上継続したときに、プログラムの動作の有無または内容の少なくともいずれかを変更する処理を情報処理装置に実行させる。
・ソフトウェアＡを特定のソフトウェアと同時に起動させない処理を情報処理装置に実行させる。
・ソフトウェアを特定の情報処理装置では起動させない処理を情報処理装置に実行させる。
・ソフトウェアを起動すべきか否か、ソフトウェアを起動すべきである場合は実行できる機能を変更すべきか否か、の少なくともいずれかを判断する処理を情報処理装置に実行させる。
【発明の効果】
【０００８】
本発明の一側面によれば、下記の通りである。
【０００９】
情報処理装置がプログラムを実行しようとするときに、該プログラムを実行すべきか否か、実行すべきであるとしたら機能の一部または全部を含めて実行すべきか否かを判断ことが可能となる。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係る情報処理装置を示すブロック図。
【図２】実施の形態１に係る情報処理装置が、実施の形態１に係る処理の手順を示すフローチャート。
【図３】実施の形態２に係る情報処理システムの構成を示すブロック図。
【図４】実施の形態２に係る情報処理装置が、実施の形態２に係る処理の手順を示すフローチャート。
【図５】実施の形態３に係る情報処理装置が、実施の形態３に係るＰＣ命名の手順を示すフローチャート。
【図６】実施の形態３に係る情報処理装置が、実施の形態３に係る処理の手順を示すフローチャート。
【図７】実施の形態４に係る情報処理装置が、実施の形態４に係る処理の手順を示すフローチャート。
【発明を実施するための形態】
【００１１】
＜実施の形態１＞
本実施の形態では、条件を満たさない状態が一定の時間以上継続したときに、プログラムの動作の有無または内容の少なくともいずれかを変更すること方法を説明する。
【００１２】
本実施の形態に係る情報処理装置1の構成は＜ハードウェア構成１＞にて後述する。
【００１３】
本実施形態では、「条件Ａを満たすときに条件Ｂを満たす」ことが、条件Ｃの通りに発生しなかったとき、情報処理装置は動作Ｄを実行する。
例として、条件Ａは「インターネットに接続されている」、条件Ｂは「そのソフトウェア自身が起動される」、条件Ｃは「36時間以内である」、条件Ｄは「ソフトウェアは、体験版モードで動作する」であるとする。これ以外の条件や動作を設定していてもよい。
【００１４】
体験版モードとは、ソフトウェアの機能の一部または全部が制限されたモードである。ただし、体験版モードである旨をユーザに知らせるなど、体験版モードではないときは動作しない機能が動作するものとしている場合がある。
【００１５】
＜＜☆ソフトウェアの例
前記条件Ａは「インターネットに接続されている」、前記条件Ｂは「ソフトウェアが起動される」、前記条件Ｃは「前回、条件Ａと条件Ｂを満たした日時から36時間以内である」、前記動作Ｄは「ソフトウェアを、体験版モードで実行する」である場合を例に説明する。
【００１６】
ソフトウェアが起動された（条件Ｂ）とき、情報処理装置のＣＰＵ１１は、プログラム１２Ｐに基づき，インターネットに接続されている（条件Ａ）か否かを確認する。
【００１７】
前記条件Ａを満たすとき、その時点における現在時刻を所定の位置、例えば記憶部１２に記憶する。
【００１８】
インターネットに接続されているか否かを確認する方法は、例えばインターネットに接続されていないと実行できない行為、例えば特定のウェブサイトにアクセスする、特定のファイルをダウンロードするなどを試みて成功すればインターネットに接続されている、失敗すればインターネットに接続されていないとみなすことが考えられる。
また、インターネットに接続していても、処理の一部または全部が失敗したときは、インターネットに接続されていないとみなす、あるいはその時点でインターネットとの接続が遮断されたとみなすこととしてもよい。
【００１９】
＜＜＜☆現在時刻の記憶
このとき、該記憶は暗号化されており、かつ、当該暗号をソルト等の処理を施したうえでハッシュ値を作成し、該ハッシュ値を含めて記憶することが望ましい。なぜならば、該暗号が改ざんされた場合、情報処理装置が該改ざんの存在を見破ることができるからである。ただし、自必要に応じて、この処理の一部または全部を省略することとしてもよい。
現在時刻の記憶ここまで☆＞＞＞
【００２０】
前記条件Ａを満たさないときであって、前記条件Ａを満たしたときの時刻が前記所定の位置に記憶されている場合は、情報処理装置１は、該記憶に記録された時刻と他の時刻（例えば現在時刻）を比較し、条件Ｃを満たさない（前回「インターネットに接続した状態でソフトウェアを起動した」日時からの経過時間が36時間以内ではない）場合、該ソフトウェアは、動作Ｄ（体験版モードで実行）を実行する。
【００２１】
前記条件Ａを満たさないときであって、前記条件Ａを満たしたときの時刻が前記所定の位置に記憶されていない場合は、前記所定の位置に記憶させることをしないで、該ソフトウェアは、動作Ｄ（体験版モードで実行）を実行する。
【００２２】
つまり、ソフトウェアを起動した（条件Ｂ）ときに、インターネットにつながっでいる（条件Ａ）か、インターネットにつないでいなかったとしても、前回「条件Ａを満たしたときに条件Ｂを満たした」時刻から36時間以内である（条件Ｃ）場合は、ソフトウェアを体験版モードにしないで起動し、それ以外の場合はソフトウェアを体験版モードとして起動する。
ソフトウェアの例ここまで☆＞＞
【００２３】
図２は、実施の形態１に係る情報処理装置が、実施の形態１に係る処理の手順を示すフローチャートである。
図２に示す処理の手順は、プログラム１２Ｐに基づいてＣＰＵ１１が行う処理の一例である。図２では、「現在時刻を記憶部１２に記憶する」としているが、記憶する時刻は例えばソフトウェア起動時における時刻など、現在時刻ではない時刻としてもよいし、記憶先は、記憶部１２でなくてもかまわない。また、前記記憶先に記憶する際は、暗号化・ハッシュ値の作成などの加工が行われていてもよい。
【００２４】
ＣＰＵ１１は、プログラム１２Ｐに基づき、条件Ｂを満たしたとき、条件Ａを満たしているかを判断する。条件Ａを満たしている（Ｓ２２：ＹＥＳ）場合は、その時点における現在時刻を記憶部１２に記憶し（Ｓ２３）、動作Ｄを実行しない（Ｓ２４）。
条件Ａを満たさないとき（Ｓ２２：ＮＯ）は、ＣＰＵ１１は、「最後に条件Ａを満たした時刻」が記憶されているかを確認する（Ｓ２５）
「最後に条件Ａを満たした時刻」が記憶されていない場合（Ｓ２５：ＮＯ）は、条件Ｄを実行する（Ｓ２６）
条件Ａを満たすとき（Ｓ２２：ＹＥＳ）は、「最後に条件Ａを満たした時刻」が、条件Ｃを満たすかどうかを判断（Ｓ２７）し、条件Ｃを満たさないとき（Ｓ２７：ＮＯ）は、動作Ｄを実行（Ｓ２８）し、条件Ｃを満たすとき（Ｓ２７：ＹＥＳ）は、動作Ｄを実行しない（Ｓ２９）。
＜☆実施の形態１ここまで＞
【００２５】
＜実施の形態２＞
本実施の形態では、ソフトウェアを特定のソフトウェアと同時に起動させない方法を説明する。
本実施の形態に係る情報処理装置1の構成は＜ハードウェア構成２＞にて後述する。
【００２６】
本実施形態では、ソフトウェアと同時に起動させてはならないソフトウェアの一覧を作成し、記憶装置３にアップロードする。このアップロードに使用される情報処理装置は、図示しない情報処理装置を用いるが、情報処理装置１を使用するものであってもよい。
【００２７】
データファイル３２１は、前述した「ソフトウェアと同時に起動させてはならないソフトウェアの一覧」が記憶装置３にアップロードされたとき、該記憶装置３に記憶されるデータである。前記データファイル３２１のファイル形式や記録内容は、種々の方式が考えられるが、例えば前記「起動させてはならないソフトウェア」が生成するプロセスを示す文字列をハッシュ値したものであることが考えられるが、これに限られない。
【００２８】
情報処理装置１は、記憶装置３に記憶されたデータファイル３２１をダウンロードし、情報勝利装置１が起動しているソフトウェアに、ダウンロードされたファイルに記載されたソフトウェアが同時に起動している場合、少なくともいずれかのソフトウェアの起動を中止する。
【００２９】
例えば、本実施形態に係るプログラムが「あいうえお」というソフトウェアに存在し、該プログラムによって、記憶装置３に記憶されたデータファイル３２１をダウンロードしたとする。情報処理装置は、「ああああ」「いいいい」「うううう」という名称のソフトウェアを同時に起動しており、ダウンロードされたファイルには「うううう」を同時に起動してはならない旨が書き込まれているとする。その場合、情報処理装置１は、「あいうえお」「うううう」の少なき友いずれを終了する。
【００３０】
図４は、実施の形態２に係る情報処理装置が、実施の形態２に係る処理の手順を示すフローチャートである。
図４に示す処理の手順は、プログラム１２Ｐに基づいてＣＰＵ１１が行う処理の一例である。
この一例では、データファイル３２１は、ソフトウェアと同時に起動してはならないソフトウェアが生成するプロセスを示す文字列に一定のルールに従ってソルト・ハッシュ化などの処理を施した文字列が記憶されており、前記「一定のルール」は、情報処理装置にも記憶されているものとして説明する。
【００３１】
ＣＰＵ１１は、プログラム１２Ｐに基づき、記憶装置３に記憶されたデータファイルをダウンロード（Ｓ４１）する。情報処理装置が起動しているプログラムが何であるかを特定する（Ｓ４２）。このとき、情報処理装置が起動しているプログラムが生成するプロセスを示す文字列に一定のルールに従ってソルト・ハッシュ化などの処理を施した文字列を作成し、該文字列は配列に記憶されるものとして説明する。
【００３２】
例えば、本実施の形態に係るプログラムが存在するソフトウェアが「Ａ」であって、これ以外に「Ｂ」「Ｃ」というソフトウェアが起動しているとき、それぞれのソフトウェアは「aaaa」「bbbb」「cccc」というプロセスを作成しているとする。これらのプロセスをソルト・ハッシュ化すると「aaaa’」「bbbb‘」「cccc’」という文字列が得られるものとして説明する。
【００３３】
ステップＳ４１とステップＳ４２は、同時に処理する、順番を逆転するといった、他の順序で処理してもよい。
【００３４】
情報処理装置１は、ステップＳ４１にてダウンロードされたデータファイルに記憶された内容と、ステップＳ４２によって作成されたデータを比較する（Ｓ４３）。この比較によって、ステップＳ４２によって作成されたデータの中にステップＳ４１が存在する場合（Ｓ４３：ＹＥＳ）の場合は、ソフトウェアの起動を中止（Ｓ４４）し処理を終了する。
【００３５】
例えば、ステップＳ４１にてダウンロードされたデータに「bbbb‘」「eeee’」「ffff‘」が記憶されている場合は、ステップＳ４２で特定した「同時に起動しているソフトウェア」が作成したプロセスをソルト・ハッシュ化して得られる文字列に「bbbb’」があり、該プロセスを作成したソフトウェアが「Ｂ」であることから、情報処理装置は、「Ａ」「Ｂ」の少なくともいずれかの起動を中止する（Ｓ４４）。
＜☆実施の形態２ここまで＞
【００３６】
＜実施の形態３＞
本実施の形態では、特定の情報処理装置では起動させない方法を説明する。
【００３７】
本実施の形態に係る情報処理装置の構成は＜ハードウェア構成１＞＜ハードウェア構成２＞にて後述する。
【００３８】
ＣＰＵ１１は、プログラム１２Ｐに基づき、情報処理装置の所定の位置（例えば記憶部１２）に所定の文字列が記憶されていない場合は、所定の文字列を作成し、これを記憶する。前記所定の文字列が記憶されていれば、前記所定の文字列を読み込む。以後、この操作を「ＰＣ命名」と呼称する。
【００３９】
「所定の文字列を作成し」と述べたが、前記「所定の文字列」は、下記の方法で作成するため、他の情報処理装置と重複する可能性が、下記の理由によりほとんどない。
【００４０】
例えば、０〜４２兆９４９６万７２９５の間の整数を各要素にランダムに入れた要素数nの配列を作成し、各要素に格納された数値を１６進数に変換すると、０、１，２，３，４，５，６，７，８，９、Ａ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆをランダムに組み合わせた最大８文字の文字列が得られる。仮にｎ＝１６とすれば、４２兆９４９６万７２９５の１６乗だけ作成される文字列の候補が存在するため、作成された文字列が他の情報処理装置と偶然に重複する可能性は低い。前記作成された文字列を構成する各々の文字列は、所定の記号（例えばハイフン）を挟むなどの手段によっても区別される。
【００４１】
また、文字列を作成するにあたり、「ffffffff」など隣接する文字と同じ文字が出現した、あるいは「0」などのように文字の数が少ない場合など、特定の条件を満たす部分が作成された文字列に存在する場合は、その部分を、ランダムに別の文字を追加ないし置き換えすることとしてもよい。たとえば、ＰＣ命名を実行した情報処理装置は、前記所定の文字列を作成するとすれば、「FFRRRJFF-PABGMR-FFPBPEDP-RNLSHE-FFPASHHS-PDDFKJ-PCPFSJ-RHMBJR-FFPCDGCF-FFPDDNHD-JTDM」などの文字列をランダムに生成する。
【００４２】
例えば「ffffff」→「fzqprv」、「0」→「0gojpd」のように文字列の一部または全部を変更することとすれば、作成された文字列が他の情報処理装置と偶然に重複する可能性をさらに下げることができる。
【００４３】
「他の情報処理装置と重複する可能性が、下記の理由によりほとんどない」と述べたが、情報処理装置にＰＣ命名を行った際、該ＰＣ命名によって定義された文字列を、図示しないサーバに蓄積し、他の情報処理装置がＰＣ命名を実行しようとするときに、前記サーバと通信を行い、他の情報処理装置に対してすでにＰＣ命名されている文字列を使用しないこととしてもよい。
【００４４】
図５は、実施の形態３に係る情報処理装置が、実施の形態３に係るＰＣ命名の手順を示すフローチャートである。
図５に示す処理の手順は、プログラム１２Ｐに基づいてＣＰＵ１１がＰＣ命名を行う処理の一例である。
【００４５】
ＣＰＵ１１は、プログラム１２Ｐに基づき、情報処理装置の所定の位置（例えば記憶部１２）に、所定の文字列が記憶されているかを判断するステップ（ステップＳ５１）を実行する。所定の位置に所定の文字列が記憶されていないとき（Ｓ５１：ＮＯ）は、ランダムな文字列を作成するステップ（Ｓ５２）、該ステップＳ５２によって作成された文字列を所定の位置に記憶するステップ（Ｓ５３）を実行する。Ｓ５１の判断内容にかかわらず、所定の位置に記憶された文字列を読み込むステップ（Ｓ５４）を実行し、該ステップＳ５４によって取得された文字列は、例えばＲＡＭ１３に記憶され、処理を終了する。
【００４６】
ただし、ステップＳ５４は、図５に示す処理を再帰呼び出しすることによって実行してもよい。
【００４７】
図６は、実施の形態３に係る情報処理装置が、実施の形態３に係る処理の手順を示すフローチャートである。
図６に示す処理の手順は、ソフトウェアを起動するときに実行する場合における、プログラム１２Ｐに基づいてＣＰＵ１１が行う処理の一例である。
【００４８】
ＣＰＵ１１は、プログラム１２Ｐに基づき、ＰＣ命名を実行し（ステップＳ６１）文字列を取得し、記憶装置３に記憶されたデータファイルをダウンロードする（ステップＳ６２）。その後、Ｓ６２によってダウンロードされたファイルに起動してはならない情報処理装置としてＳ６１にて取得された文字列を示すデータが存在する場合は（Ｓ６３：ＹＥＳ）は、情報処理装置はソフトウェアの起動を中止する（Ｓ６４）、その他の場合は、情報処理装置はソフトウェアの起動を中止しない（Ｓ６５）で、処理を終了する。
ステップＳ６１とステップＳ６２は、他の順序、例えば同時に実行する、順番を逆にするなどであってもよい。
【００４９】
例えば、ＰＣ命名をして「aabbcc」という文字列が取得される情報処理装置では、ソフトウェアを起動させたくないとする。その場合、記憶装置３に、「aabbcc」をソルト・ハッシュ化して得られた文字列（仮に「aabbcc’」とする）を記憶したデータファイルを記憶させ、ＰＣ命名をして「aabbcc」という文字列が取得される情報処理装置が実施の形態３に係る処理を実行したとする。この場合、ステップＳ６３では、ステップＳ６１にて取得した文字列をソルト・ハッシュ化して得られた文字列「aabbcc’」と、ステップＳ６２にてダウンロードされたデータに記憶された内容を比較するため、「aabbcc’」が双方に存在することから、前記情報処理装置では前記ソフトウェアを起動してはならない旨の判断をＣＰＵ１１が行い、起動を中止する。
＜☆実施の形態３ここまで＞
【００５０】
＜実施の形態４＞
本実施の形態では、ソフトウェアを起動すべきか否か、ソフトウェアを起動すべきである場合は実行できる機能を変更すべきか否か、の少なくともいずれかを判断する方法を説明する。
【００５１】
本実施の形態に係る情報処理装置の構成は＜ハードウェア構成１＞＜ハードウェア構成２＞にて後述する。
【００５２】
情報処理装置は、実施の形態１に係る情報処理を、実施の形態２に係る情報処理、実施の形態３に係る情報処理を実行する。ただし、順序はこの通りでなくてもかまわない。
【００５３】
本実施の形態では、実施の形態１に係る情報処理は、「インターネットに接続した状態（条件Ａ）でソフトウェアを起動する（条件Ｂ）ことが、前回条件Ａおよび条件Ｂを満たしてから３６時間以内（条件Ｃ）であることを満たさないとき、体験版モードを実行（動作Ｄ）する場合を例に説明する。
【００５４】
本実施の形態では、実施の形態２に係る情報処理は、ソフトウェアの起動を中止すべきか否かを判断するために実行する場合を例に説明する。
【００５５】
本実施の形態では、実施の形態３に係る情報処理は、ソフトウェアの起動を中止すべきか否かを判断するために実行する場合を例に説明する。
【００５６】
図７は、実施の形態４に係る情報処理装置が、実施の形態４に係る処理の手順を示すフローチャートである。
図７に示す処理の手順は、ソフトウェアを起動するときに実行する場合における、プログラム１２Ｐに基づいてＣＰＵ１１が行う処理の一例である。この一例は、ソフトウェアを起動するときに実行する場合を例示している。
【００５７】
ＣＰＵ１１は、プログラム１２Ｐに基づき、実施の形態１に係る処理を行うステップ（Ｓ７０１）を実行し、該実施の形態における動作Ｄを実行すべきと判断した（Ｓ７０１：ＮＯ）ときは、体験版モードで起動（Ｓ７１１）して処理を終了する。ステップＳ７０１がＹＥＳである場合は、実施の形態２に係る処理を行うステップ（Ｓ７０２）を実行する。ソフトウェアの起動を中止すべきと判断したとき（Ｓ７０２：ＮＯ）は、ソフトウェアの起動を中止（Ｓ７２１）して処理を終了する。ステップＳ７０２がＹＥＳであるときは、実施の形態３に係るステップ（Ｓ７０２）を実行する。ソフトウェアの起動を中止すべきと判断したとき（Ｓ７０３：ＮＯ）は、ソフトウェアの起動を中止（Ｓ７３１）して処理を終了する。それ以外の場合（Ｓ７０３：ＹＥＳ）は、ソフトウェアの起動を続行（Ｓ７０４）する。
【００５８】
図７では、実施の形態１→実施の形態２→実施の形態３の順で実行する場合を例に説明したが、これ以外の順序で実行してもよい。また、本実施の形態の任意の位置に、他の処理が存在していてもよい。
＜☆実施の形態４ここまで＞
【００５９】
＜ハードウェア構成１＞
ハードウェア構成の一例を、図面を参照して説明する。
【００６０】
図１は実施の形態１に係る情報処理装置を示すブロック図である。情報処理装置１はインターネット、ＬＡＮ(Local Area Network)又は携帯電話網等の通信網Ｎにより他の情報処理装置と相互に接続されている。情報処理装置１は、例えばサーバ装置、パーソナルコンピュータ又はスマートフォン等である。情報処理装置１は、ＣＰＵ(Central Processing Unit)１１、記憶部１２、ＲＡＭ（Random Access Memory）１３、入力部１４、出力部１５、通信部１６及びドライブ部１７を備える。
【００６１】
ＣＰＵ１１は、バスを介してハードウェア各部と接続されている。ＣＰＵ１１は例えば一もしくは複数のＣＰＵ又はマルチコアＣＰＵ等を備える。ＣＰＵ１１は、記憶部１２に記憶されたプログラム１２Ｐに従いハードウェアの各部を制御する。
【００６２】
記憶部１２は例えばハードディスク又は大容量メモリ等である。ドライブ部１７は、光ディスク等の記録媒体１０から情報を読み取る。記憶部１２にはＣＰＵ１１が処理を行う際に必要とする種々のデータ及びプログラム１２Ｐを格納する。ＣＰＵ１１は、記録媒体１０に記録されたプログラム１２Ｐをドライブ部１７に読み取らせ、読み取ったプログラム１２Ｐを記憶部１２に記憶させる。ＣＰＵ１１は、必要に応じてプログラム１２Ｐを記憶部１２からＲＡＭ１３へロードし、ロードしたプログラム１２Ｐに従って、各種の処理を実行する。なお、プログラム１２Ｐは、情報処理装置１の外部からダウンロードされてもよく、予め記憶部１２に記憶されていてもよい。この場合、情報処理装置１は、ドライブ部１７を備えていない形態であってもよい。
【００６３】
ＲＡＭ１３は例えばＳＲＡＭ（Static Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）、フラッシュメモリ等である。ＲＡＭ１３は、記憶部としても機能し、ＣＰＵ１１による各種プログラムの実行時に発生する種々のデータを一時的に記憶する。
入力部１４はマウス又はキーボード等の入力デバイスであり、受け付けた操作情報をＣＰＵ１１へ送信する。出力部１５は例えばＣＰＵ１１から送信された画像データを表示する液晶ディスプレイ、ＣＰＵ１１から送信された画像または文字を印刷するプリンタなどの、ユーザが認識できる方式によってＣＰＵ１１から送信された情報をユーザに提供する装置である。通信部１６は、例えば無線ＬＡＮカード又は携帯電話用通信モジュール等であり、通信網Ｎを介して各種情報を送受信する。
【００６４】
各々の構成は、図示しない他のプログラムや装置を介するものであってもよい。たとえば、出力部１５に出力すべき文字を、墨字（点字ではない文字のこと）を解さない者によって情報処理装置が使用させる場合などは、前記出力すべき文字を、例えば、点字、音声など、該ユーザが認識できる方式に変換するプログラムや装置を介して出力するものであってもよい。
【００６５】
＜ハードウェア構成２＞
ハードウェア構成の一例を、図面を参照して説明する。
【００６６】
図３は、実施の形態２に係る情報処理システムの構成を示すブロック図である。
情報処理システムは、情報処理装置（第１情報処理装置）１及び記憶装置３を備える。情報処理装置１及びの構成は、実施の形態１と同様である。図３に示すように、情報処理装置１、及び記憶装置３は、通信網Ｎに接続されている。
【００６７】
記憶装置３は、サーバ装置等のコンピュータである。記憶装置３は、ＣＰＵ３１、記憶部３２、ＲＡＭ３３及び通信部３４を備える。記憶部３２は例えばハードディスク又は大容量メモリ等である。ＣＰＵ３１は、記憶部３２に記憶されたプログラム３２Ｐに従いハードウェアの各部を制御する。通信部３４は、通信網Ｎを介して各種情報を送受信する。
【００６８】
＜備考＞
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。また、各実施の形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【００６９】
今回開示された実施の形態は、暗号化やソルト・ハッシュ化（文字列を付加してからハッシュ化することをいう）など、データの内容を変更させるものが含まれる。暗号化やソルト・ハッシュ化については、該操作の一部または全部を省略する、あるいはストレッチングなど、暗号化前、暗号化後の文字列をさらに変更を加えるものであってもよい。例えば「あああ」をソルト・ハッシュ化するために「あああいい」に変更してから該文字列をハッシュ化し「アアアイイ」という文字列が得られたとする。該文字列に変更を加え「アアアイイウウ」などとしてもよい。暗号化の場合も同様である。
【００７０】
今回開示された実施の形態は特定のシチュエーションを例示して説明している場合がある。ただし、該当する説明は、当該特定のシチュエーションに限定して使用することを意味するものでも示唆するものでもない。
【００７１】
インターネットからダウンロードするとは、例えばハードウェア構成２を例に説明すると、通信網Ｎを介して情報を取得する事である。このとき、インターネットからダウンロードされたデータのみを使用することはもちろん、予め情報処理装置に記憶されていたデータを含めて使用することとしてもよい。
例えば、インターネットから、同時に起動してはならないプログラムとして「aaaa」「bbbb」「cccc」を指定する旨を示すデータをダウンロードした場合であっても、情報処理装置が、「dddd」が同時に起動してはならないプログラムである旨を記憶している場合は、あたかも「aaaa」「bbbb」「cccc」「dddd」を指定する旨を示すデータがダウンロードされたかのように動作することができる。
【００７２】
インターネットからダウンロードすることが出来ないときは、他の方法、例えば過去にインターネットからダウンロードできたときに取得したデータを適切な位置（例えば記憶部１２）に記憶しておき、該記憶内容を、インターネットからダウンロードされたデータの代わりに使用する、外部媒体１０に記憶されドライブ部１７を介して取得したデータをインターネットからダウンロードされたデータの代わりに使用するなど、としてもよい。
【図１】
2019101763.tif 000003
【図２】
2019101763.tif 000004
【図３】
2019101763.tif 000005
【図４】
2019101763.tif 000006
【図５】
2019101763.tif 000007
【図６】
2019101763.tif 000008
【図７】
2019101763.tif 000009