JP2010072916A - Data protection system and data protection method - Google Patents

Data protection system and data protection method Download PDF

Info

Publication number
JP2010072916A
JP2010072916A JP2008239267A JP2008239267A JP2010072916A JP 2010072916 A JP2010072916 A JP 2010072916A JP 2008239267 A JP2008239267 A JP 2008239267A JP 2008239267 A JP2008239267 A JP 2008239267A JP 2010072916 A JP2010072916 A JP 2010072916A
Authority
JP
Japan
Prior art keywords
script
data
encryption
executing
decryption
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.)
Pending
Application number
JP2008239267A
Other languages
Japanese (ja)
Inventor
Shinya Sasaki
伸也 佐々木
Toshiyuki Tsutsumi
俊之 堤
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.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
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 Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP2008239267A priority Critical patent/JP2010072916A/en
Publication of JP2010072916A publication Critical patent/JP2010072916A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a data protection system for achieving both keeping secret of confidential information for an online service provider and reduction in system operation costs to be absorbed by a service use organization. <P>SOLUTION: A browser of a client terminal includes a means for, when transmitting data to an online service server, acquiring an encryption script and a cryptographic key from a key management server through a service use organization network, and for acquiring the encrypted data of input data by executing the encryption script, and for transmitting the acquired encrypted data to the online service server, and for, when plotting a data display screen received from the online service server, acquiring a decryption script and the cryptographic key from the key management server, and for acquiring the decrypted data of display data by executing the decryption script, and for drawing the data display screen by using the decrypted data acquired by the means. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、オンラインサービスとして提供される情報システムを利用する場合に、オンラインサービス事業者が管理するサーバから、サービス利用組織の機密情報が漏洩するのを防止するデータ保護システム及びデータ保護方法に関する。   The present invention relates to a data protection system and a data protection method for preventing confidential information of a service using organization from leaking from a server managed by an online service provider when using an information system provided as an online service.

近年、企業や法人向けに情報システムをオンラインサービスとして提供するASP(Application Service Provider)・SaaS(Software As a Service)に注目が集まっている。
ASP・SaaSでは、情報システムのサーバやデータの管理はオンラインサービス事業者が行う。このため、サービス利用組織は、従来組織内で運用していた情報システムを、ASP・SaaSで提供される情報システムに置き換えることで、システムの管理・運用コストを大幅に削減することができる。
In recent years, attention has been focused on ASP (Application Service Provider) and SaaS (Software As a Service), which provide an information system as an online service for companies and corporations.
In ASP / SaaS, information service servers and data are managed by online service providers. For this reason, the service use organization can greatly reduce the management and operation cost of the system by replacing the information system that has been operated in the organization with an information system provided by ASP / SaaS.

一方、ASP・SaaSで提供される情報システムの利用にあたっては、オンラインサービス事業者が管理するサーバからの機密情報の漏洩防止が課題となっている。
ASP・SaaSでは、オンラインサービス事業者が管理するサーバ(オンラインサービスサーバ)に、サービスを利用する複数の組織の情報資産が集積される。このため、オンラインサービスサーバからの情報漏洩は、被害が複数の組織に及ぶため社会的な影響が極めて大きい。
また、従来、組織内で厳重に管理していた機密情報を組織外の事業者に預けることに対するセキュリティ上の不安から、特にデータ保護意識の高い企業では、ASP・SaaSで提供される情報システムの導入を見送っているのが現状である。
On the other hand, when using an information system provided by ASP / SaaS, it is a problem to prevent leakage of confidential information from a server managed by an online service provider.
In ASP / SaaS, information assets of multiple organizations that use services are accumulated on a server (online service server) managed by an online service provider. For this reason, the information leakage from the online service server has a great social impact because the damage is caused to a plurality of organizations.
In addition, because of security concerns about leaving confidential information that has been strictly managed within the organization to businesses outside the organization, especially in companies with a high awareness of data protection, the information system provided by ASP / SaaS The current situation is that we are not introducing it.

以上の課題への対策として、近年では、オンラインサービスサーバに対してデータの内容を秘匿したままサービスを利用可能にすることで、オンラインサービスサーバからの機密情報の漏洩を防止するデータ保護システムが提案されている。
例えば、下記の特許文献1には、クライアント端末とオンラインサービスサーバがネットワークを介して接続されたWebアプリケーションにおいて、クライアント端末とオンラインサービスサーバで送受信されるデータをインターセプトするプロキシサーバを用いて、オンラインサービスサーバに対しデータを秘匿したままWebアプリケーションを利用する技術が開示されている。
In recent years, a data protection system has been proposed to prevent the leakage of confidential information from the online service server by making it possible to use the service while keeping the contents of the data secret from the online service server as a countermeasure against the above issues. Has been.
For example, in the following Patent Document 1, in a Web application in which a client terminal and an online service server are connected via a network, a proxy server that intercepts data transmitted and received between the client terminal and the online service server is used. A technique for using a Web application while keeping data secret from a server is disclosed.

また、特許文献1に記載の従来技術では、クライアント端末からオンラインサービスサーバへリクエストを送信する場合に、リクエストに含まれるデータをプロキシサーバが暗号化してからオンラインサービスサーバにデータを送信する。また、オンラインサービスサーバからクライアント端末にレスポンスを送信する場合に、レスポンスに含まれるデータをプロキシサーバが復号してからクライアント端末に送信する。   In the prior art described in Patent Document 1, when a request is transmitted from the client terminal to the online service server, the proxy server encrypts the data included in the request and transmits the data to the online service server. Further, when a response is transmitted from the online service server to the client terminal, the proxy server decrypts the data included in the response and transmits the data to the client terminal.

以上の従来技術によると、オンラインサービスサーバにはプロキシサーバで暗号化されたデータしか記憶されない。すなわち、サービス利用組織は、プロキシサーバを組織内で管理することで、オンラインサービスサーバに対してデータの内容を秘匿したままサービスを利用することができる。これにより、サービス利用組織は、オンラインサービスサーバからの機密情報の漏洩を防止することができる。   According to the above prior art, only data encrypted by the proxy server is stored in the online service server. That is, the service using organization can use the service while keeping the content of the data secret from the online service server by managing the proxy server in the organization. Thereby, the service using organization can prevent leakage of confidential information from the online service server.

一方、近年、Webアプリケーションのクライアント側の実行環境であるブラウザについては、ブラウザスクリプトの拡張機能が提案されている。
ここで、ブラウザスクリプトとは、ブラウザ上で実行されるプログラムであって、例えばJavaScript(登録商標)である。
ブラウザスクリプトの拡張機能の例として、非特許文献1には、ブラウザに、並列プロセス実行機能を実現するためのJavaScript API(Application Program Interface)を追加するブラウザ機能拡張プラグインが開示されている。
以下では、ブラウザスクリプトの拡張機能の例として非特許文献1の従来技術を挙げ、並列プロセス実行機能と、並列プロセス実行機能が提供するクロスオリジンアクセス機能について説明する。なお、本背景技術については非特許文献2にも説明されている。
On the other hand, in recent years, browser script extensions have been proposed for browsers, which are execution environments on the client side of Web applications.
Here, the browser script is a program executed on the browser, for example, JavaScript (registered trademark).
As an example of a browser script extension function, Non-Patent Document 1 discloses a browser function extension plug-in that adds a JavaScript API (Application Program Interface) for realizing a parallel process execution function to a browser.
In the following, the conventional technology of Non-Patent Document 1 is cited as an example of the browser script extended function, and the parallel process execution function and the cross-origin access function provided by the parallel process execution function will be described. This background art is also described in Non-Patent Document 2.

特開2005−309846JP 2005-309846 A http://code.google.com/apis/gears/http://code.google.com/apis/gears/ GoogleGearsスタートガイド 白石俊平 株式会社技術評論社GoogleGears Start Guide Shunpei Shiraishi

並列プロセス実行機能は、ブラウザに、JavaScriptをバックグラウンドで実行する機能を追加する仕組みである。Webアプリケーションの開発者は、並列プロセス実行機能が提供するAPIを利用したJavaScriptを記述し、これをブラウザにダウンロードさせて実行させることで、ブラウザに子プロセスを生成させ、子プロセスに任意のJavaScriptファイルを実行させることができる。子プロセスは実行完了後、プロセス間通信により、呼出し元のJavaScript、すなわち親プロセスに実行結果を返す。
また、並列プロセス実行機能は、JavaScriptから別オリジンのWebリソースの取得を可能にする、クロスオリジンアクセスと呼ばれる仕組みを提供する。
The parallel process execution function is a mechanism for adding a function to execute JavaScript in the background to the browser. The developer of the Web application writes JavaScript using the API provided by the parallel process execution function, downloads it to the browser and executes it, causing the browser to generate a child process, and the child process to create an arbitrary JavaScript file Can be executed. After the execution is completed, the child process returns the execution result to the calling JavaScript, that is, the parent process by inter-process communication.
In addition, the parallel process execution function provides a mechanism called cross-origin access that enables acquisition of Web resources of another origin from JavaScript.

ここで、オリジンとは、個々のWebリソースに割り当てられているURLのプロトコル・ドメイン・ポート番号の組み合わせ情報である。
例えば、”http://domainA.com:80/resource/sample.js”で指定されるJavaScriptファイルのオリジンは、”http://domainA.com:80”である。
現在普及する多くのブラウザはシングルオリジンポリシーと呼ばれるセキュリティモデルに従って設計されており、ブラウザスクリプトは、自身が所属するオリジン以外のサーバへのHTTPリクエストの送信を制限されている。
Here, the origin is combination information of a protocol, a domain, and a port number of a URL assigned to each Web resource.
For example, the origin of the JavaScript file specified by “http://domainA.com:80/resource/sample.js” is “http://domainA.com:80”.
Many browsers that are currently popular are designed according to a security model called single-origin policy, and browser scripts are restricted from sending HTTP requests to servers other than their origin.

図8は、サーバAに配置されたスクリプトAが、別オリジンのサーバB上のプログラムを実行してデータBの取得を試みた場合に、ブラウザの通信制限により通信がブロックされる様子を示した動作概念図である。
図に示すように、”http://domainA.com:80”のオリジンに所属するスクリプトAは、同じオリジンに所属するデータAへはアクセスすることができる(ステップ802)。
一方、別オリジン”http://domainB.com:80”に所属するデータBへは、リクエストの送信がブラウザの通信制限によりブロックされるため、アクセスすることができない(ステップ805)。
FIG. 8 shows a state in which communication is blocked due to browser communication restrictions when script A arranged on server A attempts to acquire data B by executing a program on server B of another origin. It is an operation | movement conceptual diagram.
As shown in the figure, the script A belonging to the origin “http://domainA.com:80” can access the data A belonging to the same origin (step 802).
On the other hand, data B belonging to another origin “http://domainB.com:80” cannot be accessed because the transmission of the request is blocked by the communication restriction of the browser (step 805).

次に、図9に、並列プロセス実行機能を利用したクロスオリジンアクセスの動作を示す。
並列プロセス実行機能を利用すると、予め、クロスオリジンアクセスを受けるサーバBに、データBへのアクセス処理を記述したスクリプトBを配置しておけば、スクリプトAは、子プロセスを生成し、子プロセスにスクリプトBを実行させることで、スクリプトBを介してデータBを取得することができる。
以下に図9の動作の概要を示す。
ステップ905で、スクリプトAは、並列プロセス実行機能が提供するAPIを利用して、スクリプトBを実行する子プロセスを生成している。
ステップ906で、スクリプトAは、並列プロセス実行機能が提供するAPIを利用して、子プロセスとプロセス間通信を行い、データAを子プロセスへ渡している。
子プロセスは、親プロセスからのプロセス間通信を受けると、ステップ905で指定されたスクリプトBの実行を開始する。
ステップ907で、スクリプトBは、並列プロセス実行機能が提供するAPIを利用して、呼出し元スクリプトのオリジン情報を取得し、呼出し元スクリプトのオリジンがサーバAのオリジンであることを確認する。確認できた場合はステップ908に進み、確認できなかった場合は直ちに処理を中断する。これは、意図しないサーバからのデータBへのアクセスを防ぐための仕組みである。
ステップ908〜910で、スクリプトBは、サーバBにアクセスしてデータBを取得する。スクリプトBはサーバBと同一オリジンに所属するため、シングルオリジンポリシーに基づく通信制限を受けずに、データBにアクセスすることができる。
ステップ911で、スクリプトBは、プロセス間通信により、取得したデータBを親プロセスであるスクリプトAへ渡す。
Next, FIG. 9 shows the operation of cross-origin access using the parallel process execution function.
If the parallel process execution function is used, if script B describing the access processing to data B is placed in advance on server B that receives cross-origin access, script A generates a child process and creates a child process. By executing the script B, the data B can be acquired via the script B.
The outline of the operation of FIG. 9 is shown below.
In step 905, the script A uses the API provided by the parallel process execution function to generate a child process that executes the script B.
In step 906, the script A uses the API provided by the parallel process execution function to perform inter-process communication with the child process, and passes the data A to the child process.
When the child process receives inter-process communication from the parent process, the child process starts execution of the script B specified in step 905.
In step 907, the script B uses the API provided by the parallel process execution function to acquire the origin information of the caller script and confirms that the origin of the caller script is the origin of the server A. If it can be confirmed, the process proceeds to step 908, and if it cannot be confirmed, the process is immediately interrupted. This is a mechanism for preventing access to data B from an unintended server.
In steps 908 to 910, script B accesses server B and acquires data B. Since the script B belongs to the same origin as the server B, the data B can be accessed without being restricted by the communication based on the single origin policy.
In step 911, the script B passes the acquired data B to the parent process script A by inter-process communication.

特許文献1に記載の従来技術にあっては、サービス利用組織が負担するシステム運用コストが高いという課題がある。
従来技術では、プロキシサーバでデータ秘匿処理(暗号・復号処理)を集中して実行する仕組みであるため、システム全体のデータ秘匿処理の処理負荷が、プロキシサーバに集中するという問題がある。
さらに、この処理負荷は、サービス利用組織が利用するオンラインサービスの数や、オンラインサービスを利用するユーザ数の増加に応じて飛躍的に増大するため、サービス利用組織は、システム全体の処理パフォーマンスを維持するために、頻繁にプロキシサーバの処理性能の拡張を行っていかなければならない。従来、こうした頻繁なプロキシサーバの処理性能の拡張にかかる手間が、サービス利用組織のシステム運用コストを高めていた。
In the prior art described in Patent Document 1, there is a problem that the system operation cost borne by the service use organization is high.
The conventional technology has a mechanism in which data concealment processing (encryption / decryption processing) is concentrated and executed by the proxy server, and thus there is a problem that the processing load of the data concealment processing of the entire system is concentrated on the proxy server.
Furthermore, this processing load increases dramatically as the number of online services used by the service organization and the number of users using the online service increase, so the service organization maintains the overall system performance. In order to do so, it is necessary to frequently expand the processing performance of the proxy server. Conventionally, the trouble of frequently expanding the processing performance of the proxy server has increased the system operation cost of the service use organization.

本発明の目的は、オンラインサービス事業者に対する機密情報の秘匿と、サービス利用組織が負担するシステム運用コストの低減とを両立するデータ保護システムを実現することにある。   An object of the present invention is to realize a data protection system that achieves both confidential information secrecy for online service providers and reduction of system operation costs borne by service use organizations.

上記目的を達成するため、本発明に係るデータ保護システムは、ブラウザを備えるクライアント端末と暗号スクリプトと復号スクリプト及び暗号鍵を記憶する鍵管理サーバとがサービス利用組織内ネットワークにより接続され、さらにオンラインサービスを提供するオンラインサービスサーバと前記サービス利用組織内ネットワークとが、インターネット等の公衆ネットワークにより接続される構成において、前記オンラインサービスサーバからの機密情報の漏洩を防止するデータ保護システムであって、
前記クライアント端末のブラウザが、
前記オンラインサービスサーバへデータを送信する際に、前記サービス利用組織内ネットワークを介して、前記鍵管理サーバから暗号スクリプトと暗号鍵を取得し、暗号スクリプトを実行して入力データの暗号化済データを取得する第1の手段と、
前記第1の手段により取得した暗号化済データを前記オンラインサービスサーバへ送信する第2の手段と、
前記オンラインサービスサーバから受信したデータ表示画面を描画する際に、前記サービス利用組織内ネットワークを介して、前記鍵管理サーバから復号スクリプトと暗号鍵を取得し、復号スクリプトを実行して表示データの復号済データを取得する第3の手段と、
前記第3の手段により取得した復号済データを使用してデータ表示画面を描画する第4の手段とを備えることを特徴とする。
In order to achieve the above object, a data protection system according to the present invention includes a client terminal provided with a browser, an encryption script, a decryption script, and a key management server that stores an encryption key connected by a network within a service using organization, and further an online service. A data protection system for preventing leakage of confidential information from the online service server in a configuration in which the online service server providing the service and the network within the service using organization are connected by a public network such as the Internet,
The browser of the client terminal is
When transmitting data to the online service server, an encryption script and an encryption key are acquired from the key management server via the network within the service using organization, and the encrypted data of the input data is obtained by executing the encryption script. A first means of obtaining;
Second means for transmitting the encrypted data acquired by the first means to the online service server;
When drawing the data display screen received from the online service server, the decryption script and the encryption key are acquired from the key management server via the network within the service using organization, and the decryption script is executed to decrypt the display data. A third means for obtaining completed data;
And fourth means for rendering a data display screen using the decrypted data acquired by the third means.

また、前記第1の手段が、
前記オンラインサービスサーバから暗号化依頼スクリプトを含むデータ入力画面を受信し、ユーザによるデータ入力画面へのデータ入力の完了に応じて、前記暗号化依頼スクリプトを実行する手段と、
前記暗号化依頼スクリプトの実行により、データ入力画面に入力された入力データを収集し、さらにブラウザの子プロセスを生成して子プロセスへ収集した入力データを送信し、入力データを引数として子プロセスに前記暗号スクリプトを実行させる手段と、
子プロセスによる暗号スクリプトの実行により、呼出し元スクリプトの認証手段を実行し、認証に成功した場合に、前記鍵管理サーバから暗号鍵を取得する手段と、
子プロセスによる暗号スクリプトの実行により、取得した暗号鍵で入力データを暗号化して暗号化済データを生成し、生成した暗号化済データを実行結果として子プロセスの呼出し元である暗号化依頼スクリプトに送信する手段とを備えることを特徴とする。
The first means includes
Means for receiving a data input screen including an encryption request script from the online service server and executing the encryption request script in response to completion of data input to the data input screen by a user;
By executing the encryption request script, the input data input on the data input screen is collected, a child process of the browser is generated and the collected input data is transmitted to the child process, and the input data is used as an argument to the child process. Means for executing the cryptographic script;
Means for executing an authentication means of a caller script by executing an encryption script by a child process, and obtaining an encryption key from the key management server when the authentication is successful;
By executing the encryption script by the child process, the input data is encrypted with the acquired encryption key to generate encrypted data, and the generated encrypted data is used as the execution result to the encryption request script that is the caller of the child process. And means for transmitting.

また、第3の手段が、
前記オンラインサービスサーバから復号依頼スクリプトと暗号化済データを含むデータ表示画面を受信し、データ表示画面の画面描画処理の発生に応じて、前記復号依頼スクリプトを実行する手段と、
前記前記復号依頼スクリプトの実行により、前記データ表示画面に含まれる暗号化済データを収集し、さらにブラウザの子プロセスを生成して子プロセスへ収集した暗号化済データを送信し、暗号化済データを引数として子プロセスに前記復号スクリプトを実行させる手段と、
子プロセスによる復号スクリプトの実行により、呼出し元スクリプトの認証手段を実行し、認証に成功した場合に、鍵管理サーバから暗号鍵を取得する手段と、
子プロセスによる復号スクリプトの実行により、取得した暗号鍵で暗号化済データを復号して復号済データを生成し、生成した復号済データを実行結果として、子プロセスの呼出し元である復号依頼スクリプトに送信する手段とを備えることを特徴とする。
Also, the third means is
Means for receiving a data display screen including a decryption request script and encrypted data from the online service server, and executing the decryption request script in response to occurrence of a screen drawing process of the data display screen;
By executing the decryption request script, the encrypted data included in the data display screen is collected, the child data of the browser is generated and the collected data is transmitted to the child process, and the encrypted data Means for causing the child process to execute the decryption script using as an argument,
Means for executing an authentication means of a caller script by executing a decryption script by a child process, and obtaining an encryption key from a key management server when authentication is successful;
By executing the decryption script by the child process, the encrypted data is decrypted with the acquired encryption key to generate decrypted data, and the generated decrypted data is used as the execution result to the decryption request script that is the caller of the child process. And means for transmitting.

また、前記呼出し元スクリプトの認証手段が、
前記鍵管理サーバが、アクセスを許可する呼出し元スクリプトのURLのプロトコル、ドメイン、ポート番号の組み合わせ情報を記載したクロスアクセス許可リストを記憶する手段を備え、
前記ブラウザが、
暗号スクリプト又は復号スクリプトの実行により、前記鍵管理サーバから前記クロスアクセス許可リストを取得する手段と、
前記暗号スクリプト又は復号スクリプトの実行により、子プロセスを生成した呼出し元スクリプトのURLのプロトコル、ドメイン、ポート番号の組み合わせ情報を取得する手段と、
前記暗号スクリプト又は復号スクリプトの実行により、取得した子プロセスの呼出し元スクリプトの組み合わせ情報が、前記クロスアクセス許可リストに含まれているかを確認し、含まれていた場合は、呼出し元スクリプトの認証結果を成功と判定し、含まれていなかった場合は、呼出し元スクリプトの認証結果を失敗と判定する手段とを備えることを特徴とする。
Further, the caller script authentication means comprises:
The key management server includes means for storing a cross-access permission list that describes a combination of URL protocol, domain, and port number of a caller script that permits access;
The browser
Means for acquiring the cross-access permission list from the key management server by executing an encryption script or a decryption script;
Means for acquiring combination information of the protocol, domain, and port number of the URL of the caller script that generated the child process by executing the encryption script or the decryption script;
By executing the encryption script or the decryption script, it is confirmed whether the combination information of the acquired caller script of the child process is included in the cross access permission list. If included, the authentication result of the caller script Is determined to be successful, and if not included, the authentication result of the caller script is determined to be failure.

本発明に係るデータ保護方法は、ブラウザを備えるクライアント端末と暗号スクリプトと復号スクリプト及び暗号鍵を記憶する鍵管理サーバとがサービス利用組織内ネットワークにより接続され、さらにオンラインサービスを提供するオンラインサービスサーバと前記サービス利用組織内ネットワークとが、インターネット等の公衆ネットワークにより接続される構成において、前記オンラインサービスサーバからの機密情報の漏洩を防止するデータ保護方法であって、
前記クライアント端末のブラウザが、
前記オンラインサービスサーバへデータを送信する際に、前記サービス利用組織内ネットワークを介して、前記鍵管理サーバから暗号スクリプトと暗号鍵を取得し、暗号スクリプトを実行して入力データの暗号化済データを取得する第1のステップと、
前記第1のステップにより取得した暗号化済データを前記オンラインサービスサーバへ送信する第2のステップと、
前記オンラインサービスサーバから受信したデータ表示画面を描画する際に、前記サービス利用組織内ネットワークを介して、前記鍵管理サーバから復号スクリプトと暗号鍵を取得し、復号スクリプトを実行して表示データの復号済データを取得する第3のステップと、
前記第3のステップにより取得した復号済データを使用してデータ表示画面を描画する第4のステップとを備えることを特徴とする。
A data protection method according to the present invention includes: an online service server that provides an online service by connecting a client terminal including a browser, an encryption script, a decryption script, and a key management server that stores an encryption key through a network within a service use organization; A data protection method for preventing leakage of confidential information from the online service server in a configuration in which the network in the service using organization is connected by a public network such as the Internet,
The browser of the client terminal is
When transmitting data to the online service server, an encryption script and an encryption key are acquired from the key management server via the network within the service using organization, and the encrypted data of the input data is obtained by executing the encryption script. A first step of acquiring;
A second step of transmitting the encrypted data acquired in the first step to the online service server;
When drawing the data display screen received from the online service server, the decryption script and the encryption key are acquired from the key management server via the network within the service using organization, and the decryption script is executed to decrypt the display data. A third step of obtaining completed data;
And a fourth step of drawing a data display screen using the decrypted data acquired in the third step.

また、前記第1のステップが、
前記オンラインサービスサーバから暗号化依頼スクリプトを含むデータ入力画面を受信し、ユーザによるデータ入力画面へのデータ入力の完了に応じて、前記暗号化依頼スクリプトを実行するステップと、
前記暗号化依頼スクリプトの実行により、データ入力画面に入力された入力データを収集し、さらにブラウザの子プロセスを生成して子プロセスへ収集した入力データを送信し、入力データを引数として子プロセスに前記暗号スクリプトを実行させるステップと、
子プロセスによる暗号スクリプトの実行により、呼出し元スクリプトの認証手段を実行し、認証に成功した場合に、前記鍵管理サーバから暗号鍵を取得するステップと、
子プロセスによる暗号スクリプトの実行により、取得した暗号鍵で入力データを暗号化して暗号化済データを生成し、生成した暗号化済データを実行結果として子プロセスの呼出し元である暗号化依頼スクリプトに送信するステップとを備えることを特徴とする。
The first step includes
Receiving a data input screen including an encryption request script from the online service server, and executing the encryption request script in response to completion of data input to the data input screen by a user;
By executing the encryption request script, the input data input on the data input screen is collected, a child process of the browser is generated and the collected input data is transmitted to the child process, and the input data is used as an argument to the child process. Executing the cryptographic script;
Executing an authentication means of a caller script by executing an encryption script by a child process, and obtaining an encryption key from the key management server when authentication is successful;
By executing the encryption script by the child process, the input data is encrypted with the acquired encryption key to generate encrypted data, and the generated encrypted data is used as the execution result to the encryption request script that is the caller of the child process. And a step of transmitting.

また、第3のステップが、
前記オンラインサービスサーバから復号依頼スクリプトと暗号化済データを含むデータ表示画面を受信し、データ表示画面の画面描画処理の発生に応じて、前記復号依頼スクリプトを実行するステップと、
前記前記復号依頼スクリプトの実行により、前記データ表示画面に含まれる暗号化済データを収集し、さらにブラウザの子プロセスを生成して子プロセスへ収集した暗号化済データを送信し、暗号化済データを引数として子プロセスに前記復号スクリプトを実行させるステップと、
前記子プロセスによる復号スクリプトの実行により、呼出し元スクリプトの認証手段を実行し、認証に成功した場合に、鍵管理サーバから暗号鍵を取得するステップと、
前記子プロセスによる復号スクリプトの実行により、取得した暗号鍵で暗号化済データを復号して復号済データを生成し、生成した復号済データを実行結果として、子プロセスの呼出し元である復号依頼スクリプトに送信するステップとを備えることを特徴とする。
The third step is
Receiving a data display screen including a decryption request script and encrypted data from the online service server, and executing the decryption request script in response to occurrence of a screen drawing process of the data display screen;
By executing the decryption request script, the encrypted data included in the data display screen is collected, the child data of the browser is generated and the collected data is transmitted to the child process, and the encrypted data Having the child process execute the decryption script with as an argument;
By executing the calling script authentication means by executing the decryption script by the child process, and when the authentication is successful, obtaining an encryption key from the key management server;
By executing the decryption script by the child process, the encrypted data is decrypted with the obtained encryption key to generate the decrypted data, and the decrypted request script which is the caller of the child process is generated using the generated decrypted data as the execution result. And the step of transmitting to.

また、前記呼出し元スクリプトの認証手段が、
前記鍵管理サーバが、アクセスを許可する呼出し元スクリプトのURLのプロトコル、ドメイン、ポート番号の組み合わせ情報を記載したクロスアクセス許可リストを記憶するステップを備え、
前記ブラウザが、
暗号スクリプト又は復号スクリプトの実行により、前記鍵管理サーバから前記クロスアクセス許可リストを取得するステップと、
前記暗号スクリプト又は復号スクリプトの実行により、子プロセスを生成した呼出し元スクリプトのURLのプロトコル、ドメイン、ポート番号の組み合わせ情報を取得するステップと、
前記暗号スクリプト又は復号スクリプトの実行により、取得した子プロセスの呼出し元スクリプトの組み合わせ情報が、前記クロスアクセス許可リストに含まれているかを確認し、含まれていた場合は、呼出し元スクリプトの認証結果を成功と判定し、含まれていなかった場合は、呼出し元スクリプトの認証結果を失敗と判定するステップとを備えることを特徴とする。
Further, the caller script authentication means comprises:
The key management server includes a step of storing a cross-access permission list in which URL, protocol, domain, and port number combination information of a caller script that permits access is stored;
The browser
Obtaining the cross access permission list from the key management server by executing an encryption script or a decryption script;
Acquiring the URL, protocol, domain, and port number combination information of the caller script that generated the child process by executing the encryption script or the decryption script;
By executing the encryption script or the decryption script, it is confirmed whether the combination information of the acquired caller script of the child process is included in the cross access permission list. If included, the authentication result of the caller script Is determined to be successful, and if not included, the authentication result of the caller script is determined to be failure.

本発明に係るデータ保護システムは、各々のサービス利用者が操作するブラウザがデータ秘匿処理(暗号・復号処理)を分散して実行する。サービス利用組織が管理する鍵管理サーバは、暗号スクリプトと復号スクリプト及び暗号鍵をブラウザに提供する処理だけを行い、データ秘匿処理は実行しない。このため、データ秘匿に関する処理負荷はサーバに集中せず、従来技術のプロキシサーバと比較して、鍵管理サーバにかかる処理負荷を小さくできる。
よって、サービス利用組織は、システムのパフォーマンスを維持するために、頻繁にサーバの処理性能の拡張を行う必要はなく、サーバ処理性能の拡張にかかる投資コストを低減することができる。
以上より、オンラインサービス事業者に対する機密情報の秘匿と、サービス利用組織が負担するシステム運用コストの低減とを両立するデータ保護システムを実現することができる。
In the data protection system according to the present invention, the browser operated by each service user executes the data concealment processing (encryption / decryption processing) in a distributed manner. The key management server managed by the service using organization performs only the process of providing the encryption script, the decryption script, and the encryption key to the browser, and does not execute the data concealment process. For this reason, the processing load concerning data secrecy is not concentrated on the server, and the processing load on the key management server can be reduced as compared with the proxy server of the prior art.
Therefore, the service using organization does not need to frequently expand the server processing performance in order to maintain the system performance, and can reduce the investment cost for the server processing performance expansion.
As described above, it is possible to realize a data protection system that achieves both confidentiality of confidential information to online service providers and reduction of system operation costs borne by the service using organization.

以下、本発明を実施する場合の一形態を図面を参照して具体的に説明する。
なお、本実施の形態では、予め、ブラウザ機能拡張プラグインがインストールされたブラウザを対象に、オンラインサービスサーバに対するデータの秘匿を実現する形態について説明する。ただし、本発明の実施にあたり、ブラウザ機能拡張プラグインと同様の機能を搭載するブラウザを用いるのであればプラグインのインストールは必要なく、本発明は、プラグインを利用した本実施の形態に限定されるものではない。
図1は、本発明に係るデータ保護システムの実施の形態を示すシステム構成図である。
本実施形態のデータ保護システムは、クライアント端末101と鍵管理サーバ102が、サービス利用組織内ネットワーク105で接続し、さらに、サービス利用組織内ネットワーク105が、公衆ネットワーク104を介してオンラインサービスサーバ103と接続する構成をとる。
Hereinafter, an embodiment for carrying out the present invention will be specifically described with reference to the drawings.
In the present embodiment, a description will be given of a mode for realizing data secrecy with respect to an online service server for a browser in which a browser function expansion plug-in is installed in advance. However, in implementing the present invention, if a browser having the same function as the browser function expansion plug-in is used, it is not necessary to install the plug-in, and the present invention is limited to the present embodiment using the plug-in. It is not something.
FIG. 1 is a system configuration diagram showing an embodiment of a data protection system according to the present invention.
In the data protection system according to the present embodiment, the client terminal 101 and the key management server 102 are connected by a service-use organization network 105, and the service-use organization network 105 is connected to the online service server 103 via the public network 104. Take the configuration to connect.

クライアント端末101は、サービス利用組織内でサービスを利用するユーザが操作する端末である。クライアント端末101は、ブラウザ機能拡張プラグイン107をインストールしたブラウザ106を備える。
鍵管理サーバ102は、サービス利用組織が管理するサーバであり、データの暗号・復号処理の実行に必要な情報を記憶し、これらをブラウザ106へ提供するサーバである。
鍵管理サーバ102は、暗号スクリプト108と、復号スクリプト109と、クロスアクセス許可リスト110と、暗号鍵管理テーブル111と、暗号鍵提供Webサービス112とを備える。
クロスアクセス許可リスト110は、暗号スクリプト108と復号スクリプト109が実行する呼出し元スクリプトの認証処理に使用するファイルである。クロスアクセス許可リスト110には、暗号スクリプト108と復号スクリプト109の実行を許可する呼出し元スクリプトのオリジン情報が記載される。
The client terminal 101 is a terminal operated by a user who uses the service in the service using organization. The client terminal 101 includes a browser 106 in which a browser function expansion plug-in 107 is installed.
The key management server 102 is a server managed by the service user organization, and stores information necessary for executing data encryption / decryption processing and provides the information to the browser 106.
The key management server 102 includes an encryption script 108, a decryption script 109, a cross access permission list 110, an encryption key management table 111, and an encryption key providing Web service 112.
The cross access permission list 110 is a file used for authentication processing of a caller script executed by the encryption script 108 and the decryption script 109. In the cross access permission list 110, origin information of a caller script that permits execution of the encryption script 108 and the decryption script 109 is described.

オンラインサービスサーバ103は、オンラインサービス事業者が管理するサーバであり、サービス利用組織にサービスとして提供するWebアプリケーションのプログラムを記憶するサーバである。
オンラインサービスサーバ103は、暗号化依頼スクリプト115と復号依頼スクリプト116を含むWebアプリプログラム113と、Webアプリケーションで扱うデータを格納するデータベース114とを備える。
ここで、Webアプリプログラム113に含まれる暗号化依頼スクリプト115は、ブラウザ106が、クライアント端末101からオンラインサービスサーバ103へデータを送信する直前に実行されるように、Webアプリプログラム113に組み込まれる。
また、Webアプリプログラム113に含まれる復号依頼スクリプト116は、ブラウザ106が、オンラインサービスサーバ103から画面情報を取得して表示する直前に実行されるように、Webアプリプログラム113に組み込まれる。
公衆ネットワーク104は、オンラインサービス事業者とサービス利用組織の間をつなぐ、インターネットやVPNなどのネットワークである。サービス利用企業組織内ネットワーク105が、サービス利用組織が管理するネットワークであるのに対し、公衆ネットワーク104は、サービス利用組織が管理しないネットワークである。
The online service server 103 is a server managed by an online service provider, and stores a web application program provided as a service to a service use organization.
The online service server 103 includes a web application program 113 including an encryption request script 115 and a decryption request script 116, and a database 114 that stores data handled by the web application.
Here, the encryption request script 115 included in the web application program 113 is incorporated into the web application program 113 so that the browser 106 is executed immediately before transmitting data from the client terminal 101 to the online service server 103.
The decryption request script 116 included in the web application program 113 is incorporated into the web application program 113 so that the browser 106 is executed immediately before the screen information is acquired from the online service server 103 and displayed.
The public network 104 is a network such as the Internet or VPN that connects between an online service provider and a service using organization. The service use company organization network 105 is a network managed by the service use organization, while the public network 104 is a network not managed by the service use organization.

図2は、暗号鍵管理テーブル111のテーブル構成例を示す図である。
図2において、WebアプリURL201は、オンラインサービス事業者が提供するWebアプリケーションのトップページ等のURLである。本発明のデータ保護システムでは、WebアプリURLを、オンラインサービス事業者が提供するサービスを一意に識別するための識別子として使用する。
ユーザID202は、オンラインサービス事業者がサービスの利用者に対して発行するWebアプリケーションを利用するユーザを一意に識別するための識別子である。
暗号鍵203は、暗号スクリプト108と復号スクリプト109が実行するデータの暗号化・復号処理に使用する鍵情報である。
FIG. 2 is a diagram illustrating a table configuration example of the encryption key management table 111.
In FIG. 2, a web application URL 201 is a URL such as a top page of a web application provided by an online service provider. In the data protection system of the present invention, the Web application URL is used as an identifier for uniquely identifying a service provided by an online service provider.
The user ID 202 is an identifier for uniquely identifying a user who uses a Web application issued by an online service provider to a service user.
The encryption key 203 is key information used for data encryption / decryption processing executed by the encryption script 108 and the decryption script 109.

以下、システムの動作について説明する。だだし、サービス利用組織の各ユーザには、予めオンラインサービス事業者からサービスの利用に必要なユーザIDとパスワードが発行されているものとする。
また、鍵管理サーバ102が記憶するクロスアクセス許可リスト110には、予めサービス利用組織のシステム管理者によって、サービス利用組織が利用するWebアプリURLのオリジン情報が設定されているものとする。
また、サービス利用組織のシステム管理者は、予め、利用するサービスのWebアプリURL201と当該サービスを利用するユーザID202ごとに暗号鍵203を生成し、これらを互いに関連付けて、暗号鍵管理テーブル111に登録するものとする。
また、本実施の形態では、暗号化依頼スクリプト116は、Webアプリプログラム113が生成するデータ入力画面におけるデータ送信ボタンの押下を契機に、実行されるものとする。
また、本実施の形態では、復号依頼スクリプト117は、Webアプリプログラム113が生成するデータ表示画面を、ブラウザが表示する際に発生させる画面ロードイベントを契機に、実行されるものとする。
Hereinafter, the operation of the system will be described. However, it is assumed that a user ID and a password necessary for using the service are issued in advance by each online service provider to each user of the service using organization.
Further, it is assumed that origin information of the Web application URL used by the service using organization is set in advance in the cross access permission list 110 stored in the key management server 102 by the system administrator of the service using organization.
In addition, the system administrator of the service using organization generates the encryption key 203 for each Web application URL 201 of the service to be used and the user ID 202 for using the service, and associates them with each other and registers them in the encryption key management table 111. It shall be.
In this embodiment, it is assumed that the encryption request script 116 is executed when the data transmission button is pressed on the data input screen generated by the Web application program 113.
In this embodiment, it is assumed that the decryption request script 117 is executed in response to a screen load event that is generated when the browser displays the data display screen generated by the Web application program 113.

まず、システム全体の流れについて、図3を使用して説明する。
ステップ301〜ステップ303は、ブラウザ106が、鍵管理サーバ102からの暗号鍵の取得処理に必要なユーザIDを含むクッキーを取得する処理である。
ユーザがブラウザ106を操作し、オンラインサービスサーバ103にアクセスする。そして、オンラインサービス事業者から発行されているユーザIDとパスワードを使用してサービスにログインを試みる(ステップ301)。
オンラインサービスサーバ103は、ユーザIDとパスワードでユーザを認証し、認証に成功した場合は、ユーザIDを含むクッキーを生成してブラウザ106へ送信する。認証に失敗した場合は、ブラウザ106に認証に失敗した旨を通知し、直ちに処理を中断する(ステップ302)。
ブラウザ106は、ステップ302で取得したユーザIDを含むクッキーを記憶する(ステップ303)。
ステップ304〜ステップ308は、ブラウザ106が、オンラインサービスサーバ103へデータを送信する際に、データを暗号化する処理である。
ユーザの操作に応じて、ブラウザ106が、データ入力画面の表示要求をオンラインサービスサーバ103へ送信する(ステップ304)。
オンラインサービスサーバ103は、図6に画面例を示すように、暗号化依頼スクリプトを含むデータ入力画面をブラウザ106へ送信する(ステップ305)。
First, the flow of the entire system will be described with reference to FIG.
Steps 301 to 303 are processes in which the browser 106 acquires a cookie including a user ID necessary for an encryption key acquisition process from the key management server 102.
A user operates the browser 106 to access the online service server 103. Then, login to the service is attempted using the user ID and password issued by the online service provider (step 301).
The online service server 103 authenticates the user with the user ID and password. If the authentication is successful, the online service server 103 generates a cookie including the user ID and transmits it to the browser 106. If the authentication fails, the browser 106 is notified that the authentication has failed and the processing is immediately interrupted (step 302).
The browser 106 stores a cookie including the user ID acquired in step 302 (step 303).
Steps 304 to 308 are processes for encrypting data when the browser 106 transmits data to the online service server 103.
In response to the user's operation, the browser 106 transmits a data input screen display request to the online service server 103 (step 304).
The online service server 103 transmits a data input screen including the encryption request script to the browser 106 as shown in the screen example of FIG. 6 (step 305).

ここで、図6を参照してデータ入力画面について説明する。
データ入力画面は、少なくとも、ユーザがデータを入力するためのフォームと、ユーザがデータ入力を確定するためのデータ送信ボタン601と、暗号化依頼スクリプト116とを備える。暗号化依頼スクリプト116は、ユーザがデータ送信ボタン601を押下した場合に実行されるように、データ入力画面に組み込まれている。
ユーザは、データ入力画面のフォームへデータの入力を完了すると、データ送信ボタン601を押下する。これにより、暗号化依頼スクリプト116が実行される(ステップ306)。
暗号化依頼スクリプト116は、クロスオリジンアクセスにより、鍵管理サーバ102が記憶する暗号スクリプト108をダウンロードして実行し、実行結果として、ユーザがフォームに入力したデータを暗号化した、暗号化済データを取得する。その後、取得した暗号化済データをオンラインサービスサーバ103へ送信する(ステップ307)。
Here, the data input screen will be described with reference to FIG.
The data input screen includes at least a form for a user to input data, a data transmission button 601 for the user to confirm data input, and an encryption request script 116. The encryption request script 116 is incorporated in the data input screen so as to be executed when the user presses the data transmission button 601.
When the user completes data input to the form on the data input screen, the user presses the data transmission button 601. Thereby, the encryption request script 116 is executed (step 306).
The encryption request script 116 downloads and executes the encryption script 108 stored in the key management server 102 by cross-origin access, and encrypts the data input to the form by the user as the execution result. get. Thereafter, the acquired encrypted data is transmitted to the online service server 103 (step 307).

オンラインサービスサーバ103は、ステップ307で取得した暗号化済データをデータベース114へ記憶する(ステップ308)。
ステップ309〜ステップ313は、ブラウザ106が、オンラインサービスサーバ103から暗号化済データを取得して画面を表示する際に、データを復号する処理である。
ユーザの操作に応じて、ブラウザ106が、データ表示画面の表示要求をオンラインサービスサーバ103へ送信する(ステップ309)。
オンラインサービスサーバ103は、データベース114からユーザから要求されたデータを取得する。ここで、データベース114には、ステップ308の処理により暗号化済データが記憶されているため、オンラインサービスサーバ103は、データベース114から暗号化済データを取得することになる(ステップ310)。
オンラインサービスサーバ103は、ステップ310で取得した暗号化済データと、復号依頼スクリプトとを含むデータ表示画面をブラウザ106へ送信する。
ここで、暗号化済データは、データ表示画面を構成するソースコード内のJavaScript変数に格納されて、ブラウザ106に送信される(ステップ311)。
The online service server 103 stores the encrypted data acquired in step 307 in the database 114 (step 308).
Steps 309 to 313 are processes for decrypting data when the browser 106 acquires encrypted data from the online service server 103 and displays a screen.
In response to the user's operation, the browser 106 transmits a display request for the data display screen to the online service server 103 (step 309).
The online service server 103 acquires data requested by the user from the database 114. Here, since the encrypted data is stored in the database 114 by the process of step 308, the online service server 103 acquires the encrypted data from the database 114 (step 310).
The online service server 103 transmits a data display screen including the encrypted data acquired in step 310 and the decryption request script to the browser 106.
Here, the encrypted data is stored in a JavaScript variable in the source code constituting the data display screen and transmitted to the browser 106 (step 311).

ブラウザ106は、データ表示画面の受信が完了すると、データ表示画面の画面ロードイベントを発生させる。この画面ロードイベントの発生を受けて、ブラウザ106は復号依頼スクリプト116を実行する(ステップ312)。
復号依頼スクリプト116は、クロスオリジンアクセスにより、鍵管理サーバ102が記憶する復号スクリプト109をダウンロードして実行し、実行結果として、暗号化済データを復号した復号済データを取得する。その後、取得した復号済データを使用して、図7に画面例を示すデータ表示画面を構成し、ブラウザ106に表示する(ステップ313)。
When the reception of the data display screen is completed, the browser 106 generates a screen load event for the data display screen. In response to the occurrence of this screen load event, the browser 106 executes the decryption request script 116 (step 312).
The decryption request script 116 downloads and executes the decryption script 109 stored in the key management server 102 by cross-origin access, and acquires decrypted data obtained by decrypting the encrypted data as an execution result. Then, using the acquired decrypted data, a data display screen shown in FIG. 7 is configured and displayed on the browser 106 (step 313).

次に、図4を参照し、ステップ307で実行する暗号化依頼スクリプト115と暗号スクリプト108の動作の詳細を説明する。
図4において、ステップ401〜403及びステップ412〜413は暗号化依頼スクリプト115の動作であり、ステップ404〜411は暗号スクリプト108の動作である。
暗号スクリプト108は、暗号化依頼スクリプト115が生成する子プロセスにより実行される。
ステップ306でデータ送信ボタン601の押下により暗号化依頼スクリプト115が実行されると、暗号化依頼スクリプト115は、フォームに入力されたフォーム入力データを収集し、取得する(ステップ401)。データの収集は、例えば、DOM(Document Object Model)の機能を利用したJavaScriptアクセスで行う。
Next, details of the operations of the encryption request script 115 and the encryption script 108 executed in step 307 will be described with reference to FIG.
In FIG. 4, steps 401 to 403 and steps 412 to 413 are operations of the encryption request script 115, and steps 404 to 411 are operations of the encryption script 108.
The encryption script 108 is executed by a child process generated by the encryption request script 115.
When the encryption request script 115 is executed by pressing the data transmission button 601 in step 306, the encryption request script 115 collects and acquires form input data input to the form (step 401). Data collection is performed by, for example, JavaScript access using a DOM (Document Object Model) function.

次に、暗号化依頼スクリプト115は、ブラウザ機能拡張プラグイン107が提供する並列プロセス実行機能のAPIを利用して、暗号スクリプト108を実行するための子プロセスを生成する(ステップ402)。
暗号化依頼スクリプト115は、アクセス中のページからWebアプリのURLを、また、ステップ303でブラウザ106に保存されたクッキーからユーザIDを取得する。そして、これらにステップ401で取得したフォーム入力データを加え、プロセス間通信で子プロセスに送信する。
子プロセスは、このプロセス間通信を受信すると、暗号スクリプト108を鍵管理サーバ102からダウンロードして実行を開始する(ステップ403)。
Next, the encryption request script 115 generates a child process for executing the encryption script 108 by using the API of the parallel process execution function provided by the browser function extension plug-in 107 (step 402).
The encryption request script 115 acquires the Web application URL from the page being accessed, and the user ID from the cookie stored in the browser 106 in step 303. Then, the form input data acquired in step 401 is added to these and transmitted to the child process by inter-process communication.
Upon receiving this inter-process communication, the child process downloads the encryption script 108 from the key management server 102 and starts executing it (step 403).

ステップ404〜407は、呼出し元スクリプトの認証処理である。
暗号スクリプト108は、鍵管理サーバ102に、クロスアクセス許可リスト110の取得要求を送信する(ステップ404)。
鍵管理サーバ102は、クロスアクセス許可リスト110を取得する(ステップ405)。
鍵管理サーバ102は、ステップ405で取得したクロスアクセス許可リスト110をブラウザ106へ送信する(ステップ406)。
Steps 404 to 407 are caller script authentication processing.
The encryption script 108 transmits an acquisition request for the cross access permission list 110 to the key management server 102 (step 404).
The key management server 102 acquires the cross access permission list 110 (step 405).
The key management server 102 transmits the cross access permission list 110 acquired in step 405 to the browser 106 (step 406).

暗号スクリプト108は、並列プロセス実行機能が提供するAPIを利用して子プロセスの呼出し元スクリプトのオリジン情報を取得し、取得したオリジン情報が、ステップ406で取得したクロスアクセス許可リスト110に含まれているかチェックする。オリジン情報がクロスアクセス許可リスト110に含まれている場合は、ステップ408へ進む。含まれていない場合は、ブラウザへ暗号化に失敗した旨を通知して、直ちに処理を終了する(ステップ407)。
なお、本実施の形態に従い暗号スクリプト108が実行された場合、子プロセスの呼出し元スクリプトのオリジン情報は、暗号化依頼スクリプトのオリジン、すなわち、ユーザが利用しているサービスのWebアプリURLのオリジンになる。WebアプリURLのオリジンは、予めサービス利用組織のシステム管理者によって、クロスアクセス許可リスト110に記載されているため、呼出し元スクリプトの認証処理は成功することになる。
The cryptographic script 108 acquires the origin information of the calling script of the child process using the API provided by the parallel process execution function, and the acquired origin information is included in the cross access permission list 110 acquired in step 406. Check if it is. If the origin information is included in the cross access permission list 110, the process proceeds to step 408. If not included, the browser is notified that the encryption has failed, and the processing is immediately terminated (step 407).
When the encryption script 108 is executed according to the present embodiment, the origin information of the child process call source script is the origin of the encryption request script, that is, the origin of the web application URL of the service used by the user. Become. Since the origin of the Web application URL is described in advance in the cross access permission list 110 by the system administrator of the service using organization, the authentication process of the caller script is successful.

ステップ408〜410は、鍵管理サーバ102からの暗号鍵の取得処理である。
暗号スクリプト108は、ステップ403で取得したユーザIDとWebアプリURLを引数に、鍵管理サーバ102が提供する、暗号鍵提供Webサービス112を呼び出す(ステップ408)。
暗号鍵提供Webサービス112は、WebアプリURLとユーザIDを受信すると、暗号鍵管理テーブルから、受信したWebアプリURLとユーザIDとの組に関連付けられて記憶されている暗号鍵203を取得する(ステップ409)。
暗号鍵提供Webサービス112は、ステップ409で取得した暗号鍵をブラウザ106へ送信する(ステップ410)。
Steps 408 to 410 are processing for acquiring an encryption key from the key management server 102.
The encryption script 108 calls the encryption key providing Web service 112 provided by the key management server 102 using the user ID and Web application URL acquired in Step 403 as arguments (Step 408).
When receiving the web application URL and the user ID, the encryption key providing web service 112 acquires the encryption key 203 stored in association with the combination of the received web application URL and the user ID from the encryption key management table ( Step 409).
The encryption key providing Web service 112 transmits the encryption key acquired in step 409 to the browser 106 (step 410).

暗号スクリプト108は、ステップ410で取得した暗号鍵を使用し、ステップ403で取得したフォーム入力データを暗号化して、暗号化済データを生成する(ステップ411)。
暗号スクリプト108は、ステップ411で取得した暗号化済データを、プロセス間通信で暗号化依頼スクリプト115へ送信する(ステップ412)。
暗号化依頼スクリプト115は、ステップ412で取得した暗号化済データをオンラインサービスサーバ103へ送信する(ステップ413)。
The encryption script 108 encrypts the form input data acquired in step 403 using the encryption key acquired in step 410, and generates encrypted data (step 411).
The encryption script 108 transmits the encrypted data acquired in step 411 to the encryption request script 115 by inter-process communication (step 412).
The encryption request script 115 transmits the encrypted data acquired in step 412 to the online service server 103 (step 413).

次に、図5を参照して、ステップ313で実行する復号依頼スクリプト116と復号スクリプト109の動作の詳細を説明する。
図5において、ステップ501〜503及びステップ512〜513は復号依頼スクリプト116の動作であり、ステップ504〜511は復号スクリプト109の動作である。
復号スクリプト109は、復号依頼スクリプト116が生成する子プロセスにより実行される。
ステップ312でデータ表示画面の画面ロードイベントの発生により復号依頼スクリプト116が実行されると、復号依頼スクリプト116は、データ表示画面を構成するソースコードから、暗号化済データを格納したJavaScript変数を読み込み、暗号化済データを取得する(ステップ501)。
Next, details of operations of the decryption request script 116 and the decryption script 109 executed in step 313 will be described with reference to FIG.
In FIG. 5, steps 501 to 503 and steps 512 to 513 are operations of the decryption request script 116, and steps 504 to 511 are operations of the decryption script 109.
The decryption script 109 is executed by a child process generated by the decryption request script 116.
When the decryption request script 116 is executed due to the occurrence of the screen load event of the data display screen in step 312, the decryption request script 116 reads the JavaScript variable storing the encrypted data from the source code constituting the data display screen. The encrypted data is acquired (step 501).

次に、復号依頼スクリプト116は、ブラウザ機能拡張プラグイン107が提供する並列プロセス実行機能のAPIを利用して、復号スクリプト109を実行するための子プロセスを生成する(ステップ502)。
復号依頼スクリプト109は、アクセス中のページからWebアプリのURLを、また、ステップ303でブラウザ106に保存されたクッキーからユーザIDを取得する。そして、これらにステップ501で取得した暗号化済データを加え、プロセス間通信で子プロセスに送信する。子プロセスは、このプロセス間通信を受信すると、復号スクリプト109の実行を開始する(ステップ503)。
Next, the decryption request script 116 generates a child process for executing the decryption script 109 using the API of the parallel process execution function provided by the browser function expansion plug-in 107 (step 502).
The decryption request script 109 acquires the Web application URL from the page being accessed, and the user ID from the cookie stored in the browser 106 in step 303. Then, the encrypted data acquired in step 501 is added to these and transmitted to the child process by inter-process communication. When receiving the inter-process communication, the child process starts executing the decryption script 109 (step 503).

以下の復号スクリプト109のステップ504〜507までの呼出し元スクリプトの認証処理と、ステップ508〜510までの暗号鍵の取得処理は、それぞれ、暗号スクリプト108のステップ404〜407と、ステップ408〜ステップ510の処理と同様であるため、処理の説明は省略する。
復号スクリプト109は、ステップ510で取得した暗号鍵で、ステップ503で取得した暗号化済データを復号して復号済データを生成する(ステップ511)。
復号スクリプト109は、ステップ511で取得した復号済データを、プロセス間通信でプロセスの呼出し元である復号依頼スクリプト116へ送信する(ステップ512)。
復号依頼スクリプト116は、データ表示画面の暗号化済データを、ステップ502で取得した復号済データに置き換えて、データ表示画面を構成し、ブラウザ106に表示する(ステップ513)。
データ表示画面の構成は、例えば、DOMの機能を利用したJavaScriptアクセスで行う。
The authentication process of the calling script from steps 504 to 507 of the decryption script 109 and the encryption key acquisition processing from steps 508 to 510 are respectively the steps 404 to 407 and steps 408 to 510 of the encryption script 108. Since this is the same as the above process, the description of the process is omitted.
The decryption script 109 decrypts the encrypted data acquired in step 503 with the encryption key acquired in step 510 to generate decrypted data (step 511).
The decryption script 109 transmits the decrypted data acquired in step 511 to the decryption request script 116 that is a process call source by inter-process communication (step 512).
The decryption request script 116 replaces the encrypted data on the data display screen with the decrypted data acquired in step 502, configures the data display screen, and displays it on the browser 106 (step 513).
The data display screen is configured by, for example, JavaScript access using the DOM function.

なお、上記の実施の形態では、ユーザを一意に識別する識別子として、オンラインサービス事業者が発行するユーザIDを使用した。しかし、これはユーザIDを引数にハッシュ関数を実行した結果であるユーザIDのハッシュ値であっても良い。
この場合、サービス利用組織のシステム管理者は、予めオンラインサービス事業者からユーザIDとそのユーザIDから計算したハッシュ値の通知を受け、取得したハッシュ値をユーザID202の代わりに鍵管理テーブル111に登録するものとする。
また、ステップ302で、オンラインサービスサーバ103は、ユーザ認証が成功した場合は、ユーザIDのハッシュ値を計算し、ユーザIDのハッシュ値を含むクッキーを生成して送信するものとする。以降、上記の実施の形態のユーザIDを使用した処理は、全てユーザIDのハッシュ値を使用した処理として実行するものとする。
In the above embodiment, the user ID issued by the online service provider is used as the identifier for uniquely identifying the user. However, this may be a hash value of the user ID that is the result of executing the hash function with the user ID as an argument.
In this case, the system administrator of the service using organization receives a notification of the user ID and the hash value calculated from the user ID in advance from the online service provider, and registers the acquired hash value in the key management table 111 instead of the user ID 202. It shall be.
In step 302, if the user authentication is successful, the online service server 103 calculates a hash value of the user ID, generates a cookie including the hash value of the user ID, and transmits it. Hereinafter, all the processes using the user ID in the above embodiment are executed as processes using the hash value of the user ID.

本発明に係るデータ保護システムの実施の形態を示すシステム構成図である。1 is a system configuration diagram showing an embodiment of a data protection system according to the present invention. 鍵管理テーブルのテーブル構成を示す図である。It is a figure which shows the table structure of a key management table. データ保護システム全体の処理を示すフローチャートである。It is a flowchart which shows the process of the whole data protection system. 暗号化依頼スクリプトと暗号スクリプトの処理を示すフローチャートである。It is a flowchart which shows the process of an encryption request script and an encryption script. 復号依頼スクリプトと復号スクリプトの処理を示すフローチャートである。It is a flowchart which shows the process of a decoding request script and a decoding script. ブラウザが表示するデータ入力画面の画面例である。It is a screen example of the data input screen which a browser displays. ブラウザが表示するデータ表示画面の画面例である。It is a screen example of the data display screen which a browser displays. ブラウザのシングルオリジンポリシーに基づく通信制限を示すフローチャートである。It is a flowchart which shows the communication restriction | limiting based on the single origin policy of a browser. 並列プロセス実行機能を利用したクロスオリジンアクセスの動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the cross origin access using a parallel process execution function.

符号の説明Explanation of symbols

101 クライアント端末
102 鍵管理サーバ
103 オンラインサービスサーバ
108 暗号スクリプト
109 復号スクリプト
111 暗号鍵管理テーブル
115 暗号化依頼スクリプト
116 復号依頼スクリプト
101 Client terminal 102 Key management server 103 Online service server 108 Encryption script 109 Decryption script 111 Encryption key management table 115 Encryption request script 116 Decryption request script

Claims (8)

ブラウザを備えるクライアント端末と暗号スクリプトと復号スクリプト及び暗号鍵を記憶する鍵管理サーバとがサービス利用組織内ネットワークにより接続され、さらにオンラインサービスを提供するオンラインサービスサーバと前記サービス利用組織内ネットワークとが、インターネット等の公衆ネットワークにより接続される構成において、前記オンラインサービスサーバからの機密情報の漏洩を防止するデータ保護システムであって、
前記クライアント端末のブラウザが、
前記オンラインサービスサーバへデータを送信する際に、前記サービス利用組織内ネットワークを介して、前記鍵管理サーバから暗号スクリプトと暗号鍵を取得し、暗号スクリプトを実行して入力データの暗号化済データを取得する第1の手段と、
前記第1の手段により取得した暗号化済データを前記オンラインサービスサーバへ送信する第2の手段と、
前記オンラインサービスサーバから受信したデータ表示画面を描画する際に、前記サービス利用組織内ネットワークを介して、前記鍵管理サーバから復号スクリプトと暗号鍵を取得し、復号スクリプトを実行して表示データの復号済データを取得する第3の手段と、
前記第3の手段により取得した復号済データを使用してデータ表示画面を描画する第4の手段とを備えることを特徴とするデータ保護システム。
A client terminal provided with a browser and an encryption script, a decryption script, and a key management server that stores an encryption key are connected by a network that uses a service, and an online service server that provides an online service and the network that uses the service A data protection system for preventing leakage of confidential information from the online service server in a configuration connected by a public network such as the Internet,
The browser of the client terminal is
When transmitting data to the online service server, an encryption script and an encryption key are acquired from the key management server via the network within the service using organization, and the encrypted data of the input data is obtained by executing the encryption script. A first means of obtaining;
Second means for transmitting the encrypted data acquired by the first means to the online service server;
When drawing the data display screen received from the online service server, the decryption script and the encryption key are acquired from the key management server via the network within the service using organization, and the decryption script is executed to decrypt the display data. A third means for obtaining completed data;
And a fourth means for rendering a data display screen using the decrypted data acquired by the third means.
前記第1の手段が、
前記オンラインサービスサーバから暗号化依頼スクリプトを含むデータ入力画面を受信し、ユーザによるデータ入力画面へのデータ入力の完了に応じて、前記暗号化依頼スクリプトを実行する手段と、
前記暗号化依頼スクリプトの実行により、データ入力画面に入力された入力データを収集し、さらにブラウザの子プロセスを生成して子プロセスへ収集した入力データを送信し、入力データを引数として子プロセスに前記暗号スクリプトを実行させる手段と、
子プロセスによる暗号スクリプトの実行により、呼出し元スクリプトの認証手段を実行し、認証に成功した場合に、前記鍵管理サーバから暗号鍵を取得する手段と、
子プロセスによる暗号スクリプトの実行により、取得した暗号鍵で入力データを暗号化して暗号化済データを生成し、生成した暗号化済データを実行結果として子プロセスの呼出し元である暗号化依頼スクリプトに送信する手段とを備えることを特徴とする請求項1に記載のデータ保護システム。
The first means comprises:
Means for receiving a data input screen including an encryption request script from the online service server and executing the encryption request script in response to completion of data input to the data input screen by a user;
By executing the encryption request script, the input data input on the data input screen is collected, a child process of the browser is generated and the collected input data is transmitted to the child process, and the input data is used as an argument to the child process. Means for executing the cryptographic script;
Means for executing an authentication means of a caller script by executing an encryption script by a child process, and obtaining an encryption key from the key management server when the authentication is successful;
By executing the encryption script by the child process, the input data is encrypted with the acquired encryption key to generate encrypted data, and the generated encrypted data is used as the execution result to the encryption request script that is the caller of the child process. The data protection system according to claim 1, further comprising means for transmitting.
第3の手段が、
前記オンラインサービスサーバから復号依頼スクリプトと暗号化済データを含むデータ表示画面を受信し、データ表示画面の画面描画処理の発生に応じて、前記復号依頼スクリプトを実行する手段と、
前記前記復号依頼スクリプトの実行により、前記データ表示画面に含まれる暗号化済データを収集し、さらにブラウザの子プロセスを生成して子プロセスへ収集した暗号化済データを送信し、暗号化済データを引数として子プロセスに前記復号スクリプトを実行させる手段と、
子プロセスによる復号スクリプトの実行により、呼出し元スクリプトの認証手段を実行し、認証に成功した場合に、鍵管理サーバから暗号鍵を取得する手段と、
子プロセスによる復号スクリプトの実行により、取得した暗号鍵で暗号化済データを復号して復号済データを生成し、生成した復号済データを実行結果として子プロセスの呼出し元である復号依頼スクリプトに送信する手段とを備えることを特徴とする請求項1〜2のいずれかに記載のデータ保護システム。
The third means is
Means for receiving a data display screen including a decryption request script and encrypted data from the online service server, and executing the decryption request script in response to occurrence of a screen drawing process of the data display screen;
By executing the decryption request script, the encrypted data included in the data display screen is collected, the child data of the browser is generated and the collected data is transmitted to the child process, and the encrypted data Means for causing the child process to execute the decryption script using as an argument,
Means for executing an authentication means of a caller script by executing a decryption script by a child process, and obtaining an encryption key from a key management server when authentication is successful;
By executing the decryption script by the child process, the encrypted data is decrypted with the acquired encryption key to generate decrypted data, and the generated decrypted data is sent to the decryption request script that is the caller of the child process as the execution result The data protection system according to claim 1, further comprising:
前記呼出し元スクリプトの認証手段が、
前記鍵管理サーバが、アクセスを許可する呼出し元スクリプトのURLのプロトコル、ドメイン、ポート番号の組み合わせ情報を記載したクロスアクセス許可リストを記憶する手段を備え、
前記ブラウザが、
暗号スクリプト又は復号スクリプトの実行により、前記鍵管理サーバから前記クロスアクセス許可リストを取得する手段と、
前記暗号スクリプト又は復号スクリプトの実行により、子プロセスを生成した呼出し元スクリプトのURLのプロトコル、ドメイン、ポート番号の組み合わせ情報を取得する手段と、
前記暗号スクリプト又は復号スクリプトの実行により、取得した子プロセスの呼出し元スクリプトの組み合わせ情報が、前記クロスアクセス許可リストに含まれているかを確認し、含まれていた場合は、呼出し元スクリプトの認証結果を成功と判定し、含まれていなかった場合は、呼出し元スクリプトの認証結果を失敗と判定する手段とを備えることを特徴とする請求項2〜3のいずれかに記載のデータ保護システム。
The caller script authentication means comprises:
The key management server includes means for storing a cross-access permission list that describes a combination of URL protocol, domain, and port number of a caller script that permits access;
The browser
Means for acquiring the cross-access permission list from the key management server by executing an encryption script or a decryption script;
Means for acquiring combination information of the protocol, domain, and port number of the URL of the caller script that generated the child process by executing the encryption script or the decryption script;
By executing the encryption script or the decryption script, it is confirmed whether the combination information of the acquired caller script of the child process is included in the cross access permission list. If included, the authentication result of the caller script 4. The data protection system according to claim 2, further comprising means for determining that the authentication result of the caller script is a failure if the authentication result of the caller script is not included.
ブラウザを備えるクライアント端末と暗号スクリプトと復号スクリプト及び暗号鍵を記憶する鍵管理サーバとがサービス利用組織内ネットワークにより接続され、さらにオンラインサービスを提供するオンラインサービスサーバと前記サービス利用組織内ネットワークとが、インターネット等の公衆ネットワークにより接続される構成において、前記オンラインサービスサーバからの機密情報の漏洩を防止するデータ保護方法であって、
前記クライアント端末のブラウザが、
前記オンラインサービスサーバへデータを送信する際に、前記サービス利用組織内ネットワークを介して、前記鍵管理サーバから暗号スクリプトと暗号鍵を取得し、暗号スクリプトを実行して入力データの暗号化済データを取得する第1のステップと、
前記第1のステップにより取得した暗号化済データを前記オンラインサービスサーバへ送信する第2のステップと、
前記オンラインサービスサーバから受信したデータ表示画面を描画する際に、前記サービス利用組織内ネットワークを介して、前記鍵管理サーバから復号スクリプトと暗号鍵を取得し、復号スクリプトを実行して表示データの復号済データを取得する第3のステップと、
前記第3のステップにより取得した復号済データを使用してデータ表示画面を描画する第4のステップとを備えることを特徴とするデータ保護方法。
A client terminal provided with a browser and an encryption script, a decryption script, and a key management server that stores an encryption key are connected by a network that uses a service, and an online service server that provides an online service and the network that uses the service A data protection method for preventing leakage of confidential information from the online service server in a configuration connected by a public network such as the Internet,
The browser of the client terminal is
When transmitting data to the online service server, an encryption script and an encryption key are acquired from the key management server via the network within the service using organization, and the encrypted data of the input data is obtained by executing the encryption script. A first step of acquiring;
A second step of transmitting the encrypted data acquired in the first step to the online service server;
When drawing the data display screen received from the online service server, the decryption script and the encryption key are acquired from the key management server via the network within the service using organization, and the decryption script is executed to decrypt the display data. A third step of obtaining completed data;
And a fourth step of drawing a data display screen using the decrypted data acquired in the third step.
前記第1のステップが、
前記オンラインサービスサーバから暗号化依頼スクリプトを含むデータ入力画面を受信し、ユーザによるデータ入力画面へのデータ入力の完了に応じて、前記暗号化依頼スクリプトを実行するステップと、
前記暗号化依頼スクリプトの実行により、データ入力画面に入力された入力データを収集し、さらにブラウザの子プロセスを生成して子プロセスへ収集した入力データを送信し、入力データを引数として子プロセスに前記暗号スクリプトを実行させるステップと、
子プロセスによる暗号スクリプトの実行により、呼出し元スクリプトの認証手段を実行し、認証に成功した場合に、前記鍵管理サーバから暗号鍵を取得するステップと、
子プロセスによる暗号スクリプトの実行により、取得した暗号鍵で入力データを暗号化して暗号化済データを生成し、生成した暗号化済データを実行結果として子プロセスの呼出し元である暗号化依頼スクリプトに送信するステップとを備えることを特徴とする請求項5に記載のデータ保護方法。
The first step comprises:
Receiving a data input screen including an encryption request script from the online service server, and executing the encryption request script in response to completion of data input to the data input screen by a user;
By executing the encryption request script, the input data input on the data input screen is collected, a child process of the browser is generated and the collected input data is transmitted to the child process, and the input data is used as an argument to the child process. Executing the cryptographic script;
Executing an authentication means of a caller script by executing an encryption script by a child process, and obtaining an encryption key from the key management server when authentication is successful;
By executing the encryption script by the child process, the input data is encrypted with the acquired encryption key to generate encrypted data, and the generated encrypted data is used as the execution result to the encryption request script that is the caller of the child process. The data protection method according to claim 5, further comprising: a transmitting step.
第3のステップが、
前記オンラインサービスサーバから復号依頼スクリプトと暗号化済データを含むデータ表示画面を受信し、データ表示画面の画面描画処理の発生に応じて、前記復号依頼スクリプトを実行するステップと、
前記前記復号依頼スクリプトの実行により、前記データ表示画面に含まれる暗号化済データを収集し、さらにブラウザの子プロセスを生成して子プロセスへ収集した暗号化済データを送信し、暗号化済データを引数として子プロセスに前記復号スクリプトを実行させるステップと、
前記子プロセスによる復号スクリプトの実行により、呼出し元スクリプトの認証手段を実行し、認証に成功した場合に、鍵管理サーバから暗号鍵を取得するステップと、
前記子プロセスによる復号スクリプトの実行により、取得した暗号鍵で暗号化済データを復号して復号済データを生成し、生成した復号済データを実行結果として、子プロセスの呼出し元である復号依頼スクリプトに送信するステップとを備えることを特徴とする請求項5〜6のいずれかに記載のデータ保護方法。
The third step is
Receiving a data display screen including a decryption request script and encrypted data from the online service server, and executing the decryption request script in response to occurrence of a screen drawing process of the data display screen;
By executing the decryption request script, the encrypted data included in the data display screen is collected, the child data of the browser is generated and the collected data is transmitted to the child process, and the encrypted data Having the child process execute the decryption script with as an argument;
By executing the calling script authentication means by executing the decryption script by the child process, and when the authentication is successful, obtaining an encryption key from the key management server;
By executing the decryption script by the child process, the encrypted data is decrypted with the obtained encryption key to generate the decrypted data, and the decrypted request script which is the caller of the child process is generated using the generated decrypted data as the execution result. The data protection method according to any one of claims 5 to 6, further comprising:
前記呼出し元スクリプトの認証手段が、
前記鍵管理サーバが、アクセスを許可する呼出し元スクリプトのURLのプロトコル、ドメイン、ポート番号の組み合わせ情報を記載したクロスアクセス許可リストを記憶するステップを備え、
前記ブラウザが、
暗号スクリプト又は復号スクリプトの実行により、前記鍵管理サーバから前記クロスアクセス許可リストを取得するステップと、
前記暗号スクリプト又は復号スクリプトの実行により、子プロセスを生成した呼出し元スクリプトのURLのプロトコル、ドメイン、ポート番号の組み合わせ情報を取得するステップと、
前記暗号スクリプト又は復号スクリプトの実行により、取得した子プロセスの呼出し元スクリプトの組み合わせ情報が、前記クロスアクセス許可リストに含まれているかを確認し、含まれていた場合は、呼出し元スクリプトの認証結果を成功と判定し、含まれていなかった場合は、呼出し元スクリプトの認証結果を失敗と判定するステップとを備えることを特徴とする請求項6〜7のいずれかに記載のデータ保護方法。
The caller script authentication means comprises:
The key management server includes a step of storing a cross-access permission list in which URL, protocol, domain, and port number combination information of a caller script that permits access is stored;
The browser
Obtaining the cross access permission list from the key management server by executing an encryption script or a decryption script;
Acquiring the URL, protocol, domain, and port number combination information of the caller script that generated the child process by executing the encryption script or the decryption script;
By executing the encryption script or the decryption script, it is confirmed whether the combination information of the acquired caller script of the child process is included in the cross access permission list. If included, the authentication result of the caller script The data protection method according to any one of claims 6 to 7, further comprising: determining that the authentication result of the caller script is a failure if it is not included.
JP2008239267A 2008-09-18 2008-09-18 Data protection system and data protection method Pending JP2010072916A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008239267A JP2010072916A (en) 2008-09-18 2008-09-18 Data protection system and data protection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008239267A JP2010072916A (en) 2008-09-18 2008-09-18 Data protection system and data protection method

Publications (1)

Publication Number Publication Date
JP2010072916A true JP2010072916A (en) 2010-04-02

Family

ID=42204639

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008239267A Pending JP2010072916A (en) 2008-09-18 2008-09-18 Data protection system and data protection method

Country Status (1)

Country Link
JP (1) JP2010072916A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012010071A (en) * 2010-06-24 2012-01-12 Fujitsu Ltd Data provision method, data provision device, and data provision program
JP2014092801A (en) * 2012-10-31 2014-05-19 Science Park Corp Network system, management method of electronic data for network system, program therefor and storage medium for program
JP2014130497A (en) * 2012-12-28 2014-07-10 Axell Corp Electronic book data processing method, electronic book server, client terminal and electronic book distribution system
JP2017028441A (en) * 2015-07-21 2017-02-02 株式会社Ictソリューションパートナーズ Encryption information storage system
JP6312069B1 (en) * 2017-04-20 2018-04-18 株式会社Special Medico Personal information management method, server, and program for call system
WO2018135447A1 (en) * 2017-01-18 2018-07-26 株式会社Ictソリューションパートナーズ Encrypted information storage system
JP2018117332A (en) * 2017-04-06 2018-07-26 株式会社Ictソリューションパートナーズ Encrypted information storage system
JP6451963B1 (en) * 2017-10-09 2019-01-16 治 寺田 Communications system
CN111147255A (en) * 2013-02-12 2020-05-12 亚马逊技术股份有限公司 Data security service system

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012010071A (en) * 2010-06-24 2012-01-12 Fujitsu Ltd Data provision method, data provision device, and data provision program
JP2014092801A (en) * 2012-10-31 2014-05-19 Science Park Corp Network system, management method of electronic data for network system, program therefor and storage medium for program
JP2014130497A (en) * 2012-12-28 2014-07-10 Axell Corp Electronic book data processing method, electronic book server, client terminal and electronic book distribution system
CN111147255A (en) * 2013-02-12 2020-05-12 亚马逊技术股份有限公司 Data security service system
CN111147255B (en) * 2013-02-12 2023-08-18 亚马逊技术股份有限公司 Data security service system, method and computer readable storage medium
JP2017028441A (en) * 2015-07-21 2017-02-02 株式会社Ictソリューションパートナーズ Encryption information storage system
WO2018135447A1 (en) * 2017-01-18 2018-07-26 株式会社Ictソリューションパートナーズ Encrypted information storage system
JP2018117332A (en) * 2017-04-06 2018-07-26 株式会社Ictソリューションパートナーズ Encrypted information storage system
JP6312069B1 (en) * 2017-04-20 2018-04-18 株式会社Special Medico Personal information management method, server, and program for call system
JP6451963B1 (en) * 2017-10-09 2019-01-16 治 寺田 Communications system
JP2019071598A (en) * 2017-10-09 2019-05-09 治 寺田 Communication system

Similar Documents

Publication Publication Date Title
US8589671B2 (en) Security implementation within a browser
US9537864B2 (en) Encryption system using web browsers and untrusted web servers
US11741185B1 (en) Managing content uploads
US10313112B2 (en) Browser security module
JP6545136B2 (en) System and method for encrypted transmission of web pages
US10110579B2 (en) Stateless and secure authentication
JP2010072916A (en) Data protection system and data protection method
US8291475B2 (en) Secure cross-domain communication for web mashups
CN102469080B (en) Method for pass user to realize safety login application client and system thereof
KR20060100920A (en) Trusted third party authentication for web services
CN111460503B (en) Data sharing method, device, equipment and storage medium
CN107959660A (en) A kind of static file access method and device based on Nginx
US20210067337A1 (en) Secure api flow
CN112954047A (en) Method for encrypting cookie through load balancing equipment
US11886602B2 (en) Secure link sharing
US9053297B1 (en) Filtering communications
CN112560003A (en) User authority management method and device
US20240089249A1 (en) Method and system for verification of identify of a user
Ghiani et al. Security in migratory interactive web applications
Abur et al. Personal identifiable information privacy model for securing of users’ attributes transmitted to a federated cloud environment
CN111460502B (en) Data sharing method, device, equipment and storage medium
CN103812843A (en) Authentication method and system based on Web Service
JP2006244421A (en) Identification information generation management device, and its system and program
US20160063264A1 (en) Method for securing a plurality of contents in mobile environment, and a security file using the same
JP2022528366A (en) Computer systems and methods including the HTML browser approval approach