JP2013516642A - Of data transmitted over the network encryption and decryption system, apparatus, and method - Google Patents

Of data transmitted over the network encryption and decryption system, apparatus, and method Download PDF

Info

Publication number
JP2013516642A
JP2013516642A JP2012546558A JP2012546558A JP2013516642A JP 2013516642 A JP2013516642 A JP 2013516642A JP 2012546558 A JP2012546558 A JP 2012546558A JP 2012546558 A JP2012546558 A JP 2012546558A JP 2013516642 A JP2013516642 A JP 2013516642A
Authority
JP
Grant status
Application
Patent type
Prior art keywords
text
input
processed
input text
server
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.)
Granted
Application number
JP2012546558A
Other languages
Japanese (ja)
Other versions
JP5735539B2 (en )
Inventor
マツケル、ベン
タル、マーヤン
ラハブ、アビアド
Original Assignee
バウルティブ リミテッドVaultive 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

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30861Retrieval from the Internet, e.g. browsers
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment

Abstract

中間モジュールで入力テキストを取得し、前記入力テキストを処理して処理済みテキストを取得し、前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定し、この決定に基づき、少なくとも1つの鍵を用いて前記入力テキストを変換して処理済みテキストを取得し、前記処理済みテキストをサーバに送信することによって、クライアント装置とサーバ間で送信されるデータを保護する方法およびシステムを提供する。 Or obtains the input text in the middle module, the processes the input text to obtain the processed text to convert the input text deterministic, in any combination of non-deterministic or deterministic and non-deterministic determines, on the basis of this decision, obtains the processed text to convert the input text using at least one key, by sending the processed text to the server, is sent between the client device and the server a method and system for protecting that data. 本発明のその他の実施形態および特徴としては、処理済みテキストの検索、順序維持変換の適用による処理済みテキストレコードのソート許可、中間モジュールが管理する記憶装置への完全な処理済み要素の格納、サーバの代替としての中間モジュールによる入力データへの関数の適用、および処理済みテキストの処理による、サーバが入力テキストに適用する変換の中間モジュールによる決定等を(個別または同時に)行うことが挙げられる。 Other embodiments and features of the present invention, retrieval of the processed text, processed text records sorted permit adoption order maintain conversion, storage of the complete processed elements of the storage device intermediate module manages the server application function to the input data by the intermediate module as a replacement for, and by treatment of the processed text, such as determination by the conversion intermediate module to be applied to the server input text (individually or simultaneously) it can be mentioned to perform.

Description

企業や組織は、インターネットおよびワールドワイドウェブにより、デジタル形式のウェブアプリケーション等のドキュメントで企業や個人にサービスを提供することができ、企業や個人は、パソコンおよびウェブブラウザを用いてこれらサービスへのアクセスおよび利用が可能である。 Companies and organizations, by the Internet and the World Wide Web, to companies and individuals in the documentation of web applications such as digital format can provide services, companies and individuals, access to these services using a personal computer and a web browser and it is possible to use. ネットワークを介して入手できるこのようなドキュメント、特にアプリケーションの作成は通常、サービス型ソフトウェア(SaaS:Software as a Service)と称する。 Such documentation can be obtained via a network, in particular the creation of application are normally-service software: referred to as (SaaS Software as a Service). SaaS形式で提供されるアプリケーションの例としては、電子メール、インスタントメッセージ、生産性ツール、顧客関係管理(CRM)、企業資源計画(ERP)、人的資源アプリケーション、ブログ、ソーシャルネットワーキングサイト等が挙げられる。 Examples of applications that are provided in the SaaS format, e-mail, instant messaging, productivity tools, customer relationship management (CRM), and the like enterprise resource planning (ERP), human resources applications, blogs, social networking sites, etc. .

ただし、このモデルには本質的に、セキュリティ上のリスクが存在する。 However, this model essentially, there is a risk of a security. メッセージ、顧客記録、および企業財務等のユーザデータは、リモートサーバに格納されるため、ユーザデータのデータ提供者が管理できなくなる。 Message, the user data of the customer record, and the like corporate finance are stored at the remote server, the data provider of the user data can not be managed. 個人情報や企業情報がリモートサーバに格納されると、データ所有者は多くのリスクに曝される。 When personal information and corporate information is stored on the remote server, the data owner is subject to many risks. このことは、情報をホスティングするコンピュータシステムおよび情報所有者とホスティングシステムとを接続するネットワークを所有する事業体を情報所有者が信頼する必要があることを暗に示している。 This indicates implicitly that the entity that owns the network connecting the computer system and information owners and hosting system hosting the information information owner needs to be trusted.

たとえば、周知の会計ソフトウェアソリューションでは、ソリューションプロバイダのサーバに格納する会計情報を顧客がポスティングする必要がある。 For example, in a well-known accounting software solutions, the accounting information to be stored in the solution provider's server customer needs to posting. このようなシステムでは、顧客がソリューションプロバイダに会計情報を委ねるため、そのプライバシーおよびインテグリティに対する一定の管理を放棄することが必要となる。 In such a system, since the customer leave the accounting information to the solution providers, it is necessary to give up certain control over the privacy and integrity.

特定のソフトウェアアプリケーションにおいては、然るべき復号化法または復号化鍵を持たない誰に対してもデータが解読不能となるように、様々な暗号化法が用いられている。 In particular software application, no one as is the data indecipherable against which no appropriate decoding method or decryption keys are used various encryption methods. たとえば、情報所有者には、アプリケーションプロバイダによって、セキュアソケットレイヤー(secure service socket:SSL)暗号化または別の方法を用いたクライアントとホスト間の送受信データの暗号化が可能となる場合および要求される場合のうちの少なくとも一方がある。 For example, the information owner, by the application provider, Secure Sockets Layer: is the case and the request (secure service socket SSL) encryption transmission and reception data between the client and the host using the encrypting or otherwise becomes available At least one is of the case. これにより、インターネットサービスプロバイダ(internet service provider:ISP)およびその他の潜在的な盗聴者による送受信中のデータの閲覧を阻止することができる。 Thus, Internet service provider (internet service provider: ISP) can block viewing of data in the transmission and reception by and other potential eavesdropper. したがって、データは、ホスティングされたアプリケーションへの到着時に復号化され、そのホスティングされたアプリケーションのベンダーは、所有者の非暗号化データの閲覧および操作が可能となる。 Thus, data is decoded at the time of arrival at the hosted applications, vendor of the hosted applications, it is possible to view and manipulate the unencrypted data owners. ただし、この方法では、ホスティングされたアプリケーションのベンダーに機密データが曝される。 However, in this method, the confidential data is exposed to the vendor of the hosted application.

特許文献1は、クライアントとサーバ間でネットワークを介して送信されたデータの一部を選択的に暗号化する装置および方法を記載している。 Patent Document 1 describes an apparatus and method for selectively encrypting a part of the data transmitted over the network between the client and server. この装置は、データの第1の部分をデータの第2の部分から分離する解析手段と、データの第1の部分のみを暗号化する暗号化手段と、暗号化されたデータの第1の部分をデータの第2の部分と結合する結合手段とを備えている。 The apparatus includes an analyzing means for separating a first portion of the data from the second portion of data, encryption means for encrypting only the first portion of the data, the first portion of the encrypted data and a coupling means for coupling a second portion of the data. また、この装置は、クライアントに組み込まれ、データの暗号化部分を復号化する復号化手段をさらに備えている。 Also, this device is incorporated into the client further comprises a decoding means for decoding the encrypted part of the data.

特許文献2は、ダウンロードされたソフトウェアオブジェクトによるコンピュータネットワーク暗号化の改良を開示している。 Patent Document 2 discloses an improved computer network encryption downloaded software object. この出願は、ウェブサーバコンピュータとリモートクライアントコンピュータとを接続するワールドワイドウェブ等の公衆ネットワーク上の送受信信号に含まれる財務等の極秘データを保護する方法およびシステムを記載している。 This application describes a method and system for protecting sensitive data financial or the like contained in the reception signal on the public network of the World Wide Web or the like for connecting the web server computer and remote client computers. ウェブサーバとクライアント間のすべての機密通信に用いる所望の(通常は強固な)個別暗号化規格を決定し、ウェブサーバからクライアントに自動でダウンロードすることにより当該規格に応じて暗号化する機能をクライアントに「プッシュ」し、クライアントのウェブブラウザでソフトウェアオブジェクトを実行することにより選択した規格に準じて暗号化/復号化タスクを実行することによって、クライアントが元々はそのような強固な暗号化機能を有していなくても強固な暗号化が容易に保証される。 It desired to be used in all secure communications between web server and the client (usually rigid) to determine the individual encryption standard, a client functions to encrypt in accordance with the standards by automatically downloaded from the Web server to the client to "push", by performing an encryption / decryption tasks in accordance with the standard selected by executing the software objects in the client's web browser, the client originally have a such strong encryption function strong encryption is easily guaranteed even if they are not.

これらの手法をホスティングされたSaaSアプリケーションに適用する際の問題点として、このようなアプリケーションにおいては、ネットワークを介して操作可能とされたデータ等の運用情報を非暗号化することによってアプリケーションプロバイダによる情報操作を可能とする必要があるため、アプリケーションプロバイダにデータが曝されることになる。 A problem in applying these techniques to the hosted SaaS application, In such applications, the information by the application provider by unencrypted operational information, such as data that is operable via a network it is necessary to enable operation, the data to the application provider is exposed. あるいは、セキュリティ上の利害関係者に対して、操作中にデータが脆弱となってしまう。 Alternatively, for stakeholders on security, data becomes vulnerable during operation.

米国特許第7,165,175号明細書 US Pat. No. 7,165,175 国際公開第01/047205号 International Publication No. WO 01/047205

本発明の一実施形態に係る、中間モジュールおよびその周囲を含むシステムを示した図である。 According to an embodiment of the present invention, it illustrates a system that includes an intermediate module and its surroundings. 本発明の一実施形態に係る、クライアント端末からネットワークノードへのデータフローを示した図である。 According to an embodiment of the present invention and shows the data flow from the client terminal to the network node. 本発明の一実施形態に係る、ネットワークノードからクライアント端末へのデータフローを示した図である。 According to an embodiment of the present invention and shows the data flow from the network node to the client terminal. 本発明の一実施形態に係る、サーバ側での検索を可能にするデータの暗号化方法および暗号化データのインデキシング方法を示した図である。 According to an embodiment of the present invention and shows the indexing method of the encryption method and the encrypted data of data allowing the search on the server side. 正規化プロセスおよびセンテンスを含む入力テキストの一例を示した図である。 Is a diagram showing an example of an input text containing normalization process and sentences. 本発明の一実施形態に係る、単語の処理例を示した図である。 According to an embodiment of the present invention and shows a word processing example. 本発明の一実施形態に係る、暗号化データのサーバ側でのソートを可能にするデータの暗号化方法を示した図である。 According to an embodiment of the present invention and shows a method of encrypting data to enable sorting in the server-side encrypted data. 本発明の一実施形態に係る、順序維持関数の生成方法を示した図である。 According to an embodiment of the present invention and shows a method of generating sequence maintenance functions. 本発明の一実施形態に係る、3つの異なる鍵を用いて生成された3つの順序維持暗号化関数の一例を示した図である。 According to an embodiment of the present invention and shows an example of a three order maintain cryptographic function generated using three different keys. 本発明の一実施形態に係る、暗号化ユーザデータの検索を可能にするデータフローを模式的に示した図である。 According to an embodiment of the present invention, it is a diagram schematically showing the data flow that allows retrieval of the encrypted user data.

本発明の上記およびその他の目的、特徴、および利点については、添付の図面とともに以下の詳細な説明を考慮することによって、より明らかとなるであろう。 These and other objects of the present invention, features and advantages, by considering the following detailed description taken in conjunction with the accompanying drawings, will become more apparent. 図面中、異なる図であっても、同様の要素には同一の符号を付与している。 In the drawings, even in different figures, similar elements are denoted by the same reference numerals.

以下の詳細な説明においては、本発明が十分に理解されるように、多くの具体的詳細を記載している。 In the following detailed description, as the present invention is fully understood, it describes numerous specific details. ただし、当業者には当然のことながら、本発明は、これらの具体的詳細なしに実行してもよい。 However, it will be appreciated by those skilled in the art that the present invention may be practiced without these specific details. 他の例では、本発明が不明瞭になることのないように、周知の方法、手順、および構成要素については詳細に説明していない。 In other instances, so as not obscuring the present invention, well known methods, procedures, and components have not been described in detail.

一般的なデータフロー 図1を参照して、この図は、本発明の一実施形態に係る、中間モジュール200およびその周囲を含むシステムを示すとともに、ワークステーション230のクライアントモジュールからネットワークノード260のアプリケーションサービスプロバイダへのデータフローを示している。 With reference to the general data flow diagram 1, this figure, according to an embodiment of the present invention, along with showing a system including an intermediate module 200 and its surroundings, the client module of the workstation 230 of the network node 260 Applications It shows the flow of data to the service provider.

中間モジュール200は、阻止モジュール210およびデータ保護モジュール220を備えていてもよい。 Intermediate module 200 may include a blocking module 210, and a data protection module 220. また、中間モジュール200は、公衆ネットワーク250等のネットワークを介して、クライアント端末230(たとえば、トラステッド(信頼できる)ワークステーション等)およびネットワークノード260(たとえば、アプリケーションサービスプロバイダ等)と動作可能に接続されていてもよい。 The intermediate module 200, via a network such as a public network 250, the client terminal 230 (e.g., a trusted (trusted) workstations, etc.) and network node 260 (e.g., application service provider, etc.) is operatively coupled to it may be. 当然のことながら、図1は本発明の一実施形態を例示したものに過ぎず、その他のネットワーク構成も可能である。 Of course, Figure 1 is merely to illustrate an embodiment of the present invention, it is possible other network configurations. たとえば、トラステッドワークステーション230と中間モジュール200とが互いにリモートな関係となって、トラステッドネットワークリンクを介して動作可能に接続されていてもよい。 For example, it becomes a trusted workstation 230 and the intermediate module 200 is a remote relationship to each other, may be operatively connected via a trusted network links.

たとえば、トラステッドワークステーション230は、複数の組織に対応する複数の中間モジュールに接続され、公衆ネットワークを介して1または複数のアプリケーションサービスプロバイダとのデータトラフィックを仲介するようにしてもよい。 For example, the trusted workstation 230 is connected to a plurality of intermediate modules corresponding to a plurality of tissue, it may be to mediate data traffic between one or more application service provider via a public network.

ただし、中間モジュールは、本出願の全体にわたって参照するに、クライアント装置上に存在していてもよく、たとえば、クライアント装置に関連する施設のゲートウェイサーバまたはトラステッドクライアント装置および非トラステッド(信頼できない)サーバと接続した1または複数の独立サーバに設けられていてもよい。 However, the intermediate module, to see throughout this application, may be present on the client device, for example, (not reliable) gateway server or trusted client device and untrusted facilities associated with the client device server and it may be provided to one or more independent servers connected.

したがって、阻止モジュールおよびデータ保護モジュールのうちの少なくとも一方は、たとえばブラウザプラグイン、オペレーティングシステムドライバまたはモジュール、ソフトウェアライブラリ、または別のソフトウェアコンポーネントとしてトラステッドワークステーションに組み込まれていてもよい。 Accordingly, at least one of the blocking modules and data protection module, for example, a browser plug-in, operating system drivers, or modules, software libraries, or may be incorporated in the trusted workstation as a separate software component.

別の例として、中間モジュールは、非トラステッドアプリケーションの直前に配置して、当該非トラステッドアプリケーションへのすべてのアクセスが中間モジュールを通過するようにしてもよい。 As another example, the intermediate module is placed immediately before the non-trusted application, all access to the untrusted application may be passed through the intermediate module.

さらに別の例として、中間モジュールは、クライアントモジュールから入力データが送信され、処理済みデータを非トラステッドサーバに送信する独立サーバであってもよい。 As yet another example, the intermediate module, the input data from the client module is sent, may be an independent server that transmits the processed data to a non-trusted server.
トラステッドワークステーション230は、中間モジュールと相互作用可能なクライアントコンポーネント240が組み込まれたクライアントコンピュータであってもよい。 Trusted workstation 230, intermediate modules can interact client component 240 may be a client computer incorporated. また、クライアントコンポーネント240は、ウェブブラウザで動作するウェブアプリケーションのHTML形式であってもよい。 In addition, the client component 240 may be in the HTML format of the web application that runs in a web browser. 一方、ネットワークノード260は、SaaSベンダーのHTTPウェブサーバであってもよい。 On the other hand, the network node 260 may be an HTTP web server SaaS vendor. クライアントコンポーネント240は、APIクライアントソフトウェアを備えていてもよい。 The client component 240 may be provided with an API client software. また、その追加または代替として、ネットワークノード260にリモートアクセスするその他任意の方法を備えていてもよい。 Further, as an additional or alternative, the network node 260 may comprise any other method for remote access.

エンドユーザは、クライアントコンポーネント240を用いて、ネットワークノード260との間での受け渡しまたは読み出しを目的としたデータの入力、読み出し、および操作を行うことができる。 The end user can use the client component 240, performs data input for the purpose transfer or reading between the network node 260, read, and operation. エンドユーザとしては、ソフトウェアエージェント(たとえば、ウェブブラウザ等)を利用する人間およびクライアントAPIを使用する自動化エージェント等が挙げられる。 The end user, the software agent (e.g., web browser, etc.) automation agent such as the use of human and client API utilizing the like.

中間モジュール200の阻止モジュール210は、トラステッドワークステーション230からの(未処理)入力テキストを阻止するか、あるいは受信し、当該入力テキストをデータ保護モジュール220に供給して処理してもよい。 Blocking module 210 intermediate module 200, either to prevent (untreated) input text from the trusted workstation 230, or received, it may be treated by supplying the input text to the data protection module 220. 阻止モジュール210は、クライアントコンポーネント240とネットワークノード260間を流れるデータを阻止してもよいし、その修正や通常のデータフローに対する割り込みも可能である。 Blocking module 210 may prevent data flowing between client component 240 and the network node 260, is also possible interrupts for the correction and normal data flow. たとえば、阻止モジュールは、認証セッションを開始することにより、ネットワークノード260に格納されたデータにエンドユーザがアクセス可能であることを判定するようにしてもよい。 For example, blocking module, by initiating an authentication session, it may be determined that the stored in the network node 260 data end user is accessible. 阻止モジュール210は、ウェブプロキシサーバであってもよい(または、ウェブプロキシサーバにより実行してもよい)。 Blocking module 210 may be a web proxy server (or may be performed by the Web proxy server).

データ保護モジュール220は、入力テキストを受信して選択的に処理してもよい。 Data protection module 220 may selectively receive and process the input text. 選択処理されない入力テキストは、実質的に処理されずに、または選択処理されたテキストよりも少ない処理で未処理テキストとしてネットワークノード260に送信され、記憶システム270での操作および記憶のうちの少なくとも一方を行うようにしてもよい。 Input text is not the selected process is sent as raw text to the network node 260 without being substantially processed or selected treated less processing than text, at least one of the manipulation and storage of a storage system 270 it may be carried out. 処理対象のテキストについては、データ保護モジュール220が入力テキストを処理して処理済みテキストを供給するようにしてもよい。 The text to be processed, the data protection module 220 may be supplied by processing the input text processed text. また、公衆ネットワーク250を介して非トラステッドアプリケーションサービスプロバイダ260に供給し、記憶や操作等を行うようにしてもよい。 Also, it supplied to a non-trusted application service provider 260 through a public network 250, may be performed storage or operations. したがって、本発明の実施形態によれば、アプリケーションサービスプロバイダ260が未処理テキストを受信するのではなく、処理済みテキストを記憶して操作するようにしてもよい。 Therefore, according to the embodiment of the present invention, an application service provider 260 rather than receiving the raw text, it may be operated to store the processed text. この処理には、以下に説明するように、検索およびソートのうちの少なくとも一方が可能な暗号化法の適用による暗号化テキストデータの供給が含まれる。 This process, as described below, include the supply of encrypted text data by the search and at least one of possible applications of encryption method of sorting. 本発明の実施形態によれば、この処理において、アプリケーションサービスプロバイダ260にいずれの入力テキストを処理済み形式で送信し、いずれの入力テキストを未処理形式で送信するかを選択することにより、テキストを選択的に暗号化するようにしてもよい。 According to an embodiment of the present invention, in this process, by selecting whether to transmit in processed form any of the input text to the application service provider 260 transmits the one of the input text in raw form, the text selectively may be encrypted.

当然のことながら、中間モジュール200は、1または複数のサーバ、1または複数のワークステーション、1または複数のパソコン、1または複数のラップトップコンピュータ、1または複数のメディアプレーヤ、1または複数の携帯データ端末、1または複数の集積回路、および1または複数のプリント配線板、専用ハードウェアのうちの少なくともいずれか、またはそれらの組み合わせを備えていてもよい。 Of course, intermediate module 200, one or more servers, one or more workstations, one or more computers, one or more laptop computers, one or more media players, one or more portable data terminal, one or more integrated circuits, and one or more printed circuit boards, at least one of the dedicated hardware, or may comprise a combination thereof.

データフロー割り込み 中間モジュール200は、暗号化および復号化のうちの少なくとも一方に対して追加的または無関係な機能を具備または提供してもよい。 Data flow interruption intermediate module 200 may be provided with or provide additional or unrelated functions for at least one of encryption and decryption. また、クライアントであるトラステッドワークステーション230とサーバである非トラステッドアプリケーション260間の通常のメッセージフローを変更してもよい。 It is also possible to change the normal flow of messages between the non-trusted application 260 that is a trusted workstation 230 and the server is a client. このような追加機能には、暗号化により失われるサーバ側の機能を補償する効果があってもよい。 Such additional functions may be an effect of compensating for the server-side functionality that is lost by the encryption.

本発明の実施形態によれば、中間モジュールは、クライアント装置から入力データを受信し、当該入力データのサーバへの送信を阻むか、または許可しない等により送信を阻止してもよい。 According to an embodiment of the present invention, the intermediate module receives input data from the client device, may prevent transmission by like or preclude transmission to the corresponding input data server, or not permitted. また、中間モジュールは、サーバの代わりに、関連する機能を入力データに適用するようにしてもよい。 The intermediate module, instead of the server, may be applied to input data related functions. たとえば、中間モジュールは、この機能の結果に基づいて、クライアント装置への少なくとも1つのメッセージを生成するようにしてもよい。 For example, intermediate module, based on the result of this function, may be generated at least one message to the client device.

本発明の一部の実施形態によれば、中間モジュールは、上記少なくとも1つのメッセージに対する応答をクライアント装置から取得し、その応答に基づき、入力テキストを処理して処理済み入力テキストを取得し、当該処理済み入力テキストをサーバに送信するようにしてもよい。 According to some embodiments of the present invention, the intermediate module, obtains a response to the at least one message from the client device, based on the response, processes the input text to retrieve the processed input text, the the processed input text may be sent to the server.

たとえば、サーバは一般的に、入力テキストのスペルをチェックし、たとえばスペルの間違った単語や訂正箇所を提示するフィードバックメッセージをユーザに供給してもよい。 For example, the server in general, check the spelling of the input text, for example, may be supplied to the feedback message to the user to present a wrong word or corrections of spelling. ただし、サーバが受信したテキストが暗号化されている場合、本発明の実施形態によれば、サーバは、処理済みテキストの復号化なしでのスペルチェックは行えなくてもよい。 However, if the text received by the server is encrypted, according to an embodiment of the present invention, the server spell checking without decoding the processed text may not be performed. したがって、本発明の実施形態によれば、中間モジュールは、スペルチェック等の追加機能を入力テキストに適用するとともに、当該入力データに対するスペルチェック機能の結果としてのエラーメッセージ、スペル訂正の提示、エラー非検出メッセージ等のフィードバックメッセージをユーザに供給するようにしてもよい。 Therefore, according to the embodiment of the present invention, the intermediate module is configured to apply additional functions spell checking such as input text, error messages as a result of the spell check function to the input data, the presentation of spelling correction, no error it may be supplied a feedback message, such as a detection message to the user.

本発明の一実施形態において、上記のような追加機能としては、たとえばユーザデータ(またはその一部)のコピーを格納し、クライアントからの検索要求に応じて中間モジュールを検索することによりサーバ側の検索機能を置き換えること等が挙げられる。 In one embodiment of the present invention, the additional features as mentioned above, for example, stores a copy of the user data (or a portion thereof), the server-side by searching the intermediate module in response to a search request from a client such as replacing the search function, and the like.

また、本発明の一実施形態において、上記のような追加機能としては、ユーザデータの暗号化および復号化が可能となる前にクライアントと中間モジュールとの間で認証セッションを開始すること等が挙げられる。 Further, in an embodiment of the present invention, the additional features as mentioned above, mentioned that such initiate authentication session between the client and the intermediate module before encryption and decryption of user data can be It is.

また、本発明の一実施形態において、上記のような追加機能としては、入力データの書式チェック等が挙げられる。 Further, in an embodiment of the present invention, the additional features as mentioned above, the format check of the input data and the like. また、必要に応じて、入力データが第1の書式である場合は、当該第1の書式と異なる第2の書式で情報を送るようにクライアントに要求すること等が挙げられる。 If necessary, input data may be first format, it like to request the client to send information in a second format different from said first format and the like. そのような受信および要求書式のうちの少なくとも一方としては、たとえば(a)入力テキストの既知の型からの差異のみを送信するデルタ符号化書式、(b)完全入力テキスト型、(c)特定のドキュメント書式に含まれる入力テキスト、またはそれらの組み合わせ等が挙げられる。 As at least one of one of such received and request formats, such as (a) delta encoding format to transmit only the differences from the known type of the input text, (b) complete the input text type, specific (c) input text contained in the document format or combinations thereof, and the like. たとえば、入力データがデルタ符号化書式で受信され、中間モジュールが完全入力テキスト書式の入力データを要求するようにしてもよい。 For example, the input data is received by the delta coding format, an intermediate module may request the input data of the complete input text format. 特定のドキュメント書式のその他の例としては、PDF、DOC、HTML等が挙げられるが、これらに限定されるものではない。 Other examples of a particular document format, PDF, DOC, but HTML, etc., but is not limited thereto.

本発明の実施形態によれば、処理済みテキストは、ネットワークノード260のたとえば記憶システム270に格納し、公衆ネットワーク250を介してリモート操作するようにしてもよい。 According to an embodiment of the present invention, the processed text, stored in the example storage system 270 of the network node 260 may be remotely operated through a public network 250. この処理は、以下に説明するように、アプリケーションサービスプロバイダで処理済みデータを復号化することなく、トラステッドユーザおよび非トラステッドサーバアプリケーションのうちの少なくとも一方に対してトランスペアレントまたは不可視となるように、処理済みテキストに検索およびソートのうちの少なくとも一方が適用可能となされていてもよい。 This process, as described below, without decoding the processed data in an application service provider, so that the transparent or invisible to at least one of the trusted users and non-trusted server application, the treated At least one of the search and sort the text may be made to be applicable. 記憶システム270は、以下の説明においてデータベースを示す場合もあるが、任意の適当なデジタル記憶アーキテクチャであって、RAID(レイド:Redundant Array of Independent Disks)等の任意の適当なハードウェア上に格納されていてもよい。 Storage system 270, but also indicate database in the following description, be any suitable digital storage architecture, RAID: stored in (Reid Redundant Array of Independent Disks) on any suitable hardware, such as it may be.

以上から、図1のデータフローに例示するように、トラステッドワークステーション230は、アプリケーションサービスプロバイダ260が使用する「Acme Corp.」等の未処理入力データを供給するようにしてもよい。 From the above, as illustrated in the data flow of FIG. 1, the trusted workstation 230 may be supplied with raw input data, such as "Acme Corp." as application service providers 260 use. この入力テキストは、中間モジュール200のたとえば阻止モジュール210により阻止され、データ保護モジュール220により処理されるようにしてもよい。 The input text is blocked by, for example, blocking modules 210 of the intermediate module 200, it may be processed by the data protection module 220. データ保護モジュール220は、入力テキストを処理することにより、処理済みデータ「DHFOEFRGEJIC」として模式的に示すように、トークンと称する1または複数の個々のテキスト単位および暗号化可能な制御データを生成し、ネットワーク250を介して当該処理済みデータを非トラステッドアプリケーションサービスプロバイダ260に送信するようにしてもよい。 Data protection module 220 by processing the input text, pattern as exemplarily shown, generates one or more individual text unit and encryption possible control data referred to as token as processed data "DHFOEFRGEJIC" via the network 250 may transmit the processed data to the non-trusted application service provider 260. そして、ユーザによる操作およびデータベース270への格納のうちの少なくとも一方を行ってもよい。 Then, at least one of the may be performed among the operation by the user and stored in the database 270. 当然のことながら、「DHFOEFRGEJIC」は模式的に示したに過ぎず、任意の適当な暗号化アルゴリズム等を用いて、たとえば任意の記号セットを得るようにしてもよい。 Of course, "DHFOEFRGEJIC" are only shown schematically, using any suitable encryption algorithm or the like, for example may be obtained with any symbol set. 以下に説明するように、本発明の一実施形態によれば、韓国語または中国語の記号等、ラテン語ではない文字記号または記号を用いてもよい。 As described below, according to an embodiment of the present invention, Korean, or Chinese symbols and the like, it may be used letter symbols or symbols that are not Latin.

図2を参照して、この図は、本発明の一実施形態に係る、クライアント端末230からアプリケーションサービスプロバイダ260への一般化されたデータフローを示した図である。 Referring to FIG 2, this figure, according to an embodiment of the present invention and shows a generalized data flow from client terminal 230 to the application service provider 260. エンドユーザは、暗号化されていない(プレーンテキストの)入力テキストを供給してもよい。 End user, unencrypted (plain text) input text may be supplied. この入力データは、クライアント端末230からネットワークノード260側へ送信され、阻止モジュール210で阻止されてもよい。 The input data is transmitted from the client terminal 230 to the network node 260 side, it may be blocked by the blocking module 210. 阻止モジュール210は、入力データを処理して処理済みデータを供給するデータ保護モジュール220に入力テキストを供給してもよい。 Blocking module 210 may supply the input text to the data protection module 220 supplies process to the processed data to the input data. この処理には、入力テキストの少なくとも一部の暗号化が含まれる。 The processing includes at least a part of the encryption of the input text. そして、処理済みデータは、阻止モジュール210への送信後、公衆ネットワーク250を介して送信し、ネットワークノード260で受信して、SaaSアプリケーション等のアプリケーションで操作してデータベース270に格納してもよい。 Then, the processed data after transmission to blocking module 210, and transmitted via the public network 250, and received by the network node 260, may be stored in database 270 to operate in applications such as SaaS application. 当然のことながら、入力データは、記憶システム270に格納される新規または更新データであってもよいし、検索コマンド等の1または複数のパラメータ等、SaaSアプリケーションに渡されてリアルタイム操作される任意のデータであってもよい。 Of course, the input data may be a new or updated data is stored in the storage system 270, search one or more parameters such as a command or the like, any of which is real-time operation is passed to the SaaS application a data may be.

図3を参照して、この図は、本発明の一実施形態に係る、ネットワークノード260からクライアント端末230へのデータフローを示した図である。 Referring to FIG. 3, this figure, according to an embodiment of the present invention and shows the data flow from the network node 260 to the client terminal 230. このようなプロセスは、ユーザが読み出すかまたは検索要求を行うことによってワークステーション230で開始してもよい。 Such a process may begin with the workstation 230 by performing the user reads or search request. 検索する用語等の要求パラメータは、図2に関連して上述したように処理してもよいし、ネットワークノード260のアプリケーションは、供給された処理済みパラメータに基づいて処理済みデータの検索またはソートを行ってもよい。 Request parameter terms, such as search may be processed as described above in connection with FIG. 2, the application of the network node 260, a search or sorting of the processed data based on the supplied processed parameters it may be carried out. また、ネットワークノード260は、たとえば検索または読み出し要求に応じて処理済みデータを読み出してもよい。 The network node 260 may, for example, reads out the processed data in response to a search or read request. この場合、処理済みデータには、暗号化された部分が含まれていてもよい。 In this case, the processed data, may include encrypted part. この処理済みデータは、公衆ネットワーク250を介して、クライアント端末230側に送信されてもよい。 The processed data via the public network 250, may be transmitted to the client terminal 230 side. 阻止モジュール210は、処理済みデータを阻止してデータ保護モジュール220に供給することにより、処理済みデータ内の任意の暗号化データを識別するようにしてもよい。 Blocking module 210, by supplying the data protection module 220 prevents the processed data, it may identify any encrypted data in the processed data. 識別した任意の暗号化データは、復号化して阻止モジュール210に供給することにより、データ通信を再開するようにしてもよい。 Any encrypted data identified by supplying the blocking module 210 decrypts, may be resumed data communications. また、阻止モジュール210は、未処理データ(復号化プレーンテキストデータ)をクライアントコンポーネント240に転送してユーザに表示するようにしてもよい。 Further, blocking module 210, it may be displayed to the user to transfer the raw data (decoded plaintext data) to the client component 240.

トークン化および正規化全般 ネットワークノード260で動作するアプリケーションは、格納データを検索して結果を返すよう要求される場合がある。 Application running tokenized and normalized overall network node 260 may be required to return the result to search the stored data. 図10は、本発明の一実施形態に係る、暗号化ユーザデータの検索を可能にするデータフローを模式的に示した図である。 10, according to an embodiment of the present invention, is a diagram schematically showing the data flow that allows retrieval of the encrypted user data.

まず、クライアント240は、データを入力し、中間モジュール200を介して非トラステッドアプリケーション260に複数の格納要求を出してもよい。 First, the client 240 receives the data, may issue a plurality of storage requests untrusted application 260 via the intermediate module 200. 中間モジュールは、検索可能なすべての単語が暗号化された検索可能な単語にマッピングされて検索可能なすべての入力単語が厳密に1つの対応する暗号化された検索可能な単語を有するようにユーザ入力を暗号化する。 Intermediate module is user to have a searchable word encrypted every word searchable input words all searchable mapped into searchable words that are encrypted exactly one corresponding to encrypt the input. 暗号化された検索可能な単語は、暗号化前に正規化されていてもよい。 Searchable words encrypted may be normalized prior to encryption.

たとえば、図10において、「BAD」、「Bad」、および「bad」という単語はすべて、「cccc」という単語に暗号化されるため、「bad」を検索すると「BAD」および「Bad」を含む結果が供給される。 For example, including 10, "BAD", the "Bad", and all the word "bad" is to be encrypted word "cccc", searching for "bad", "BAD" and "Bad" result is supplied.

図10において、「the」および「a」という単語は、検索不可能と考えられるため、個々の暗号化された検索可能なトークンにはならない。 10, the word "the" and "a", since it is considered that the search impossible, not to an individual encrypted searchable tokens. これに対して、「dog」および「cat」という単語はそれぞれ、「eeee」および「bbbb」という暗号化された検索可能な単語にマッピングされる。 In contrast, the word "dog" and "cat" are respectively mapped to searchable words encrypted as "eeee" and "bbbb". 検索可能な単語および検索不可能な単語の格標識を有する情報は、「ZZZytuv」および「ZZZabcd」という暗号化されたトークンに含まれる。 Information having a searchable words and search non case markers word is included in the encrypted token of "ZZZytuv" and "ZZZabcd".

図4を参照して、この図は、本発明の一実施形態に係る、ユーザテキストデータのサーバ側での検索およびインデキシングのうちの少なくとも一方を可能にするよう設計されたデータ処理方法100を示した模式図である。 Referring to FIG. 4, this figure, according to an embodiment of the present invention, it shows a data processing method 100 that is designed to allow at least one of the search and indexing of the server side of the user text data and a schematic diagram. 上述の通り、この方法100は、中間モジュールのたとえばデータ保護モジュールにより適用してもよい。 As described above, the method 100 may be applied by, for example, data protection module of the intermediate module. 当然のことながら、処理済みデータを受信して未処理データに変換する方法は、上記方法と実質的に逆であってもよい。 Of course, a method for receiving and converting the processed data to the raw data may be the procedure substantially reverse.

方法100は、まずステップ110において、たとえばクライアント端末とネットワークノード間に動作可能に接続された中間モジュールにより、入力メッセージを受信する。 The method 100, in step 110, for example by an intermediate module operably connected between the client terminal and the network node receives an incoming message.
ステップ111においては、処理対象の入力メッセージ内の個々のデータ単位を識別する。 In step 111, identify individual data units in the input message to be processed. たとえば、入力メッセージとしては、名前、名字、およびドキュメント本文等のフィールドが挙げられる。 For example, as the input message, name, and a field such as last name, and the body of the document.

ステップ112においては、識別したすべてのデータ単位に対して反復的に、まず未処理データ単位を取得し(ステップ113)、取得したデータ単位を処理するか否かを選択する。 In step 112, iteratively for all data units identified, first obtain a raw data unit (step 113), selects whether to process the acquired data units. 処理済みのデータ単位は、個々に処理してもよいし、まとめて処理してもよい。 Processed data unit may be treated individually, or may be processed together.

ステップ114においては、入力データを処理するか否かを判定し、修正されない入力データについては保持する(ステップ130)。 In step 114, it determines whether to process the input data, held for input data that is not corrected (step 130). ステップ115においては、入力データの単位テキストを処理すべきか否か、およびいずれの部分を処理すべきか、のうちの少なくとも一方を判定する。 In step 115, it determines whether to process the unit text of the input data, and whether to handle any part, at least one of the. たとえば、暗号化に適さない入力テキストの部分としては、「OR」や「AND」等の検索接続語またはデータに施す特殊なサーバ処理を示す「{important}」や「@location」等のアプリケーション固有の有意なテキストマークアップ等が挙げられる。 For example, portions of the input text is not suitable for encryption, "OR" and shows a special server process applied to the search access word or data "AND" and "{Important}" and "@location", etc. Application-Specific like significant text mark-up and the like of.

処理対象の入力テキストについては、ステップ116に進んで、入力テキストをトークンと称する個々のテキスト単位に分割する(入力テキストからトークンを決定するプロセスは、本明細書ではトークン化と称する)。 The input text to be processed, the process proceeds to step 116, divides the input text into individual text units called tokens (process of determining the token from the input text, termed tokenizing herein). トークン化は任意であって、方法100には、(a)すべての入力データの単一トークンとしての暗号化、(b)暗号化に適すると判定された入力データの個別暗号化による複数の処理済みトークンの供給(各処理済みトークンは1つの入力テキストを表す)、または(c)それらの組み合わせが含まれていてもよい。 A tokenization arbitrary, the method 100, (a) encryption as a single token of all the input data, (b) a plurality of processing by the individual encryption of input data determined to be suitable for encrypting It requires supply of tokens (each processed token represents one of the input text), or (c) may contain combinations thereof.

次にステップ117に進んで、特定の入力トークンを検索に不適と評価してもよい。 Then the routine proceeds to step 117, may be evaluated as unsuitable for search for a particular input token. たとえば、個々の単語を判定する基準は、所定の単語のリスト、英語辞書頻度リスト等の単語頻度リストにおける単語頻度閾値、単語の長さ、またはそれらの組み合わせであってもよい。 For example, criteria for determining the individual words, the predetermined list of words, English frequency list such word frequency threshold in the word frequency list, the word length, or a combination thereof.

ステップ118においては、たとえば文字種、発音区別符号、合字分割、ユニコード文字記号の合成または分解(ユニコード規格により規定)等、検索に重要ではない情報を検索可能な入力トークンから抽出する。 In step 118 extracts example character type, diacritics, ligatures division, synthesis or degradation of Unicode character symbols (defined by the Unicode standard) or the like, from the searchable input token nonessential information to search. 抽出した情報は、別個の場所に格納して後々利用するようにしてもよいし、制御トークンと称する出力トークンに設定してもよい。 Extracted information may be utilized later stored in a separate location may be set to output a token called a control token. また、テキストトークンは、抽出情報を含まない正規化形式に変換してもよい。 Also, text tokens may be converted to a normalized format that does not include the extracted information. 本明細書においては、このプロセスを正規化と称する。 Referred to herein as the process and normalization. 正規化は任意であって、任意の適当な方法で行ってもよい。 Normalization is optional, it may be carried out in any suitable manner.

ステップ119においては、検索可能なトークン、検索可能なトークンから抽出された情報、および入力のその他の部分等、暗号化するすべての情報単位のビット表示を取得することにより、暗号化法を用いて暗号化する。 In step 119, searchable token, information extracted from the searchable tokens, and the like other parts of the input, by acquiring the bit representations of all information units encrypted by using an encryption method to encrypt. 情報単位は、検索可能または検索不可能として分類してもよい。 Information unit, may be classified as a searchable or search impossible. 検索不可能な情報単位は、結合してもよいし分解してもよい。 Search impossible information unit may be attached may be decomposed. また、入力テキストにおける検索可能なトークンの順序は変更してもよいし、元の順序を示す指標を検索不可能な情報単位に付加してもよい。 The order of searchable tokens in the input text may be changed, it may be added to an index indicating the original order in the search impossible information unit.

ステップ120においては、AES(Advanced Encryption Standard)またはDES(Data Encryption Standard)等の暗号化法を用いて情報単位を暗号化する。 In step 120, it encrypts the information unit with the AES (Advanced Encryption Standard) or encryption method such as DES (Data Encryption Standard).

ステップ121においては、以下に詳細に説明するように、たとえばユニコードの1または複数の所定の隣接部分等、文字記号セットから得られた文字記号シーケンスから成る出力テキスト単位に暗号化ビット表示を変換する。 In step 121, as described in detail below, converts for example one or more predetermined contiguous portion of Unicode such, the output text unit consisting of character symbol sequence obtained from the character symbol set encryption bit display . この文字記号セットは、前もって定義しておくことにより復号化を補助するようにしてもよい。 This character symbol set may be adapted to assist in decoding by previously predefined.

ステップ122においては、ステップ121で得られた出力テキストにより入力メッセージ中の入力データ単位を置き換える。 In step 122, it replaces the input data units in the input message by output text obtained in step 121.
この方法では、識別したすべての入力単位に対してステップ112〜122を適用し続けた後、サーバアプリケーションをホスティングするネットワークノードに処理済みメッセージを送信する(ステップ131)。 In this method, after continued application of the steps 112 to 122 for all input units identified, and transmits the processed message to the network node hosting the server application (step 131).

トークン化 上述の通りデータ処理方法がトークン化を含み、トークン化が多数の工程を含んでいてもよい。 As data processing method tokenization above comprises a tokenized, tokenization may include a number of steps. 当然のことながら、以下のトークン化との関連で説明する工程の一部は任意である。 Of course, some of the steps described in connection with the following tokenization is optional. さらに、当然のことながら、非トークン化すなわちトークン化処理済みデータの未処理データへの変換は、上記方法と実質的に逆であってもよい。 Further, it should be understood that conversion to the raw data of the non-tokenized i.e. tokenized processed data may be the procedure substantially reverse.

暗号化ユーザデータ上の検索を可能にするため、入力テキストは、トークン化と称するプロセスにおいて多数のセグメントに分割してもよい。 To enable searches on the encrypted user data, the input text may be divided into a number of segments in a process called tokenization. 個々に検索可能な用語を有するセグメントは(未処理)入力トークンと称するが、通常、入力トークンは全単語である。 The segments with individually search terms but referred to as (unprocessed) input tokens, usually, input tokens are all words. トークンでない入力セグメントは、「検索不可能な情報セット」と称する情報セットに付加される。 Input segments not token is added to the set of information referred to as "search impossible information set". このようなセグメントとしては、句読点や空白等の文字記号が挙げられる。 Examples of such segments include letter symbols such as punctuation marks or spaces.

トークン化に関連して、複数の単語を1つのトークンとして結合してもよいし、1つの単語を2つ以上の構成トークンに分割してもよい。 In connection with the tokenized, may be combined plurality of words as a single token, it may be divided one word to more than one configuration token. たとえば、「whiteboard」という複合語は、個々に検索可能な「white」および「board」というトークンに分解してもよい。 For example, compound word of "whiteboard" may be decomposed into tokens that individually searchable "white" and "board". たとえば、中国語または日本語等の言語では通常、空白または文語テキストにおいて単語を分離する別の明確な文字記号は使用しない。 For example, in the language, such as Chinese or Japanese Normal, another clear character symbol to separate the words in a blank or literary text is not used. このため、1つの中国語入力テキストは、複数の入力トークンに分割してもよい。 Therefore, one Chinese input text may be divided into a plurality of input tokens. また、このような結合または分割の指標は、検索不可能な情報セットに付加してもよい。 Further, an indication of such binding or division, may be added to the search impossible information set.

トークン化には、単語の形態的異形の検出、入力トークンの正規化形式への変更、および元の入力トークンの指標の検索不可能な情報セットへの付加が含まれていてもよい。 The tokenization, detection word morphological variants, changes to the canonical form of the input tokens, and may include additions to the original search impossible information set of indices of the input token. たとえば、単語の形態的異形としては、名詞の複数形と単数形(「word」、「words」)、動詞の活用(「cry」、「cried」、「crying」)等が挙げられる。 For example, the word morphological variant, plural and singular forms of the noun ( "word", "words"), use of the verb ( "cry", "cried", "crying") and the like.

トークン化には、検索される可能性が低い単語の検出、検索可能な入力トークンセットからのそれら単語の削除、および検索不可能な情報セットへの付加が含まれていてもよい。 The tokenization, the detection of the word is less likely to be searched, to remove them words from the searchable input set of tokens, and adding to the search impossible information sets may be included. たとえば、このような検出には、(a)所定の単語セット、(b)(この頻度閾値を超える頻度の単語は検索不可能と考えられる)単語頻度リストおよび頻度閾値を有する辞書、(c)検索可能な単語の最小長さおよび最大長さのうちの少なくとも一方、または(b)それらの任意の組み合わせを使用してもよい。 For example, such detection, (a) a predetermined word sets, (b) (this word exceeds a frequency threshold frequency is considered to search impossible) dictionary with word frequency list and the frequency threshold, (c) Search At least one of the minimum length and the maximum length of the possible words, or (b) may use any combination thereof.

トークン化は、文字種、発音区別符号、合字、またはユニコードの合成/分解等の特定の文字記号特性を無視するサーバ側の検索およびインデキシングのうちの少なくとも一方に対応していてもよい。 Tokenization, character type, diacritics, ligatures or may correspond to at least one of the search and indexing server to ignore specific character symbols characteristic of the composition / decomposition of Unicode. たとえば、「ToKeN」および「tOkEn」の検索では、テキスト検索時に同じ結果が得られてもよく、「token」という単語の異形を含むすべての文字列が検索結果に現れる。 For example, a search of "ToKeN" and "tOkEn", may be the same result is obtained at the time of text search, all of the string that contains a variant of the word "token" appears in the search results.

特性を区別しない上記のような検索は、(1)すべての入力文字記号を1つの正準形式に変換し、(2)元の文字記号を示す指標を生成し、(3)この指標を検索不可能な情報セットに付加することによって対応するようにしてもよい。 Search as described above are not distinguished characteristics, (1) all the input character symbols into a single canonical form, to produce an indication that (2) the original character symbols, Search (3) the index it may be accommodated by adding a non-information set. たとえば、トークン化は、入力トークン文字記号を1つの文字種(たとえば、小文字)に変換し、元の文字種を示す指標を検索不可能な情報セットに付加することによって、サーバ側で文字種を区別しない検索に対応するようにしてもよい。 For example, tokenization, one character type input token letter symbols (e.g., lower) converted to, by adding the index of the original character type in the search impossible information sets, do not distinguish between the character type in the server-side search it may correspond to.

テキストマークアップおよび拡張情報 本発明の一実施形態によれば、入力テキストの処理には、アプリケーション固有のテキスト(少なくとも1つの処理命令)の検出が含まれていてもよい。 According to one embodiment of the Markup and extension information present invention, the input text processing may include detection of an application-specific text (at least one processing instruction). また、これらの処理命令を非確定的変換済みテキストに付加してもよいし、この情報を処理済みテキストのプレーンテキストに残しておいてもよい。 Further, it may be added these processing instruction in a non-deterministic converted text, it may be left this information plaintext processed text. これにより、非トラステッドサーバは、このテキスト拡張情報に関連する任意の処理を適用してもよい。 Thus, the non-trusted server may apply any processing associated with the text extended information. たとえば、HTMLは、HTMLタグをテキストに埋め込むことによって書式情報をユーザテキストに付加可能なテキスト拡張である。 For example, HTML is additional text that can be extended formatting information to the user text by embedding HTML tags in the text. このシステムでは、(1)HTMLタグの検索不可能情報への付加、(2)暗号化を伴わない入力HTMLタグの出力処理済みテキストへの包含によるサーバ側処理の許可、および(3)HTMLタグの通常テキストとしての取り扱い(たとえば、非HTMLタグの入力テキストに対する任意の処理のHTMLタグへの適用)のいずれか少なくとも1つにより入力HTMLタグを処理するようにしてもよい。 In this system, (1) addition to the search impossible information HTML tags, (2) allow the server-side processing by inclusion in the output processed text input HTML tags without encryption, and (3) HTML tags normal handling of a text (for example, applied to the HTML tags of any process for the input text of non-HTML tags) of may be treated either at least one by the input HTML tags.

本発明の一部の実施形態によれば、入力テキストに少なくとも1つの処理命令を検出した場合に、中間モジュールは、当該少なくとも1つの処理命令を変換しないと決定してもよい。 According to some embodiments of the present invention, when detecting at least one processing instruction to the input text, the intermediate module may determine not to convert the at least one processing instruction.

本発明の一部の実施形態によれば、入力テキストに少なくとも1つの処理命令を検出した場合に、中間モジュールは、当該少なくとも1つの処理命令を非確定的に変換することを決定してもよい。 According to some embodiments of the present invention, when detecting at least one processing instruction to the input text, the intermediate module may determine to convert the at least one processing instruction non deterministically .

このシステムでは、時間、ユーザ、または処理済みテキスト生成時にシステムが把握しているその他の情報等の文脈情報を、検索不可能な情報セットに付加してもよい。 In this system, time, user or context information, such as other information that the system knows when processed text generator, it may be added to the search impossible information set.
たとえば、本発明の実施形態によれば、このシステムでは、「重要」または「機密」等の特別指標を暗号化トークンに付加してもよい。 For example, according to an embodiment of the present invention, in this system, a special indication such as "important" or "Confidential" may be added to the encrypted token. これにより、復号化に際してこれらの指標が通知され、入力情報の復号化を示すイベントが生成され、たとえばレコードをログファイルに追加することによってこのイベントが処理されるようにしてもよい。 Accordingly, these indicators during decoding is notified, the event indicating the decoding of the input information is generated, for example, may be the event is processed by adding a record to the log file.

トークンの順序付け 入力テキストの処理には、処理済みテキストにおける入力トークンの順序の変更が含まれていてもよい。 The processing of ordering input text tokens may include change the order of input tokens in the processed text. 順序の変更に際しては、元の入力テキストにおける入力トークンの順序を示すトークン順序指標を生成し、検索不可能な情報セットに付加するようにしてもよい。 In the order of change, and generates a token order index indicating an order of input tokens in the original input text, it may be added to the search impossible information set.

余剰トークン 入力テキストの処理には、出力テキストに含める少なくとも1つの偽造または擬似余剰トークンの生成が含まれていてもよい。 The surplus tokens input text processing, at least one counterfeit or pseudo surplus token generation may be included included in the output text. このような擬似トークンによれば、暗号化テキストの統計解析に対する堅牢性を向上させることができる。 According to such a pseudo-token, it is possible to improve the robustness against statistical analysis of ciphertext. 余剰擬似トークンには、設定目標の統計分布を付加することによって、擬似トークンを隠蔽するとともに統計解析による復号化をさらに困難化するようにしてもよい。 The surplus pseudo-token, by adding the statistical distributions of the set target may be more difficult the decryption by the statistical analysis is concealed and pseudo-token. この少なくとも1つの余剰トークンは、秘密鍵へのアクセス後にのみ処理済みテキストに含まれるその他のトークンと識別可能である。 The at least one surplus tokens are distinguishable from other tokens contained only processed text after the access to the private key. たとえば、擬似トークンの目標分布のモデルとしては、英語の単語頻度を使用してもよい。 For example, as a model of the target distribution of pseudo-token, it may be used word frequency of English.

トークン化プロセス 検索不可能な情報セットは、1または複数の検索不可能なトークン(本明細書では制御トークンとも称する)に配置してもよく、これらのトークンは処理済み出力テキストに含めてもよい。 Tokenization process search impossible information set may be arranged in one or more search impossible token (also referred to herein as control token), these tokens may be included in the processed output text . 制御トークンは、正規化入力トークンセットの前、後ろ、または内部に設けてもよい。 Control token, before normalization input token sets may be provided behind or inside. 検索不可能な情報セットは、全部または一部を暗号化した後、処理済み出力テキストに含めるようにしてもよい。 Search impossible set of information is, after encrypting all or part, may be included in the processed output text.

暗号化の前に、検索不可能な情報セットおよび検索可能なトークンのビット表示を取得してもよい。 Before encryption may acquire the bit display of the search impossible information sets and searchable tokens. そのようなビット表示の取得には、特定の符号化および圧縮方法での入力データの圧縮および符号化が含まれていてもよい。 The acquisition of such a bit display, may include compression and coding of the input data in a particular coding and compression methods.

エラー検出指標を生成して検索不可能な情報セットに付加してもよい。 With an error detection indicator may be added to the search impossible information set. たとえば、入力テキストのチェックサムを計算して検索不可能な情報セットに付加してもよい。 For example, to calculate the checksum of the input text may be added to the search impossible set of information.
取得した入力トークンのビット表示は、場合によっては検索不可能な情報セットとともに、全部または一部を暗号化してもよい。 Bit display of acquired input token, along with the search impossible information set in some cases, may be encrypted in whole or in part. 検索可能な入力トークンの暗号化では、いずれの入力トークンインスタンスに対しても1つの暗号化形式が提供される。 Encryption searchable input tokens, one encryption format is provided for any input token instance. 一方、検索不可能な情報の暗号化では、いずれの同じ情報セットインスタンスに対しても1または複数の暗号化形式が提供される。 On the other hand, the encryption search impossible information, one or more encrypted form is provided for either the same information set instances. 複数の暗号化形式によりセキュリティが向上する場合もあるが、ユーザデータを復号化せずに特定のサーバ側演算を行うのが困難または不可能となる可能性がある。 In some cases to improve security of a plurality of encrypted form, but may have to perform a specific server-side operation becomes difficult or impossible without decrypting the user data. 複数の暗号化形式には、暗号化形式に埋め込まれた少なくとも1ビットの暗号化ソルトを使用してもよい。 The plurality of encrypted form, may be used at least one bit of the encrypted salt embedded in encrypted form.

その後、暗号化形式は、適当な符号化方法によりテキスト形式に変換してもよい。 Thereafter, encrypted form may be converted into text format by a suitable coding method. このような符号化方法は、次の特性のうちの少なくとも1つを有するものであってもよい。 Such coding methods, may have at least one of the following characteristics. すなわち、(a)暗号化トークンを分離することにより、非トラステッドサーバアプリケーションが処理済みテキスト内の検索可能な単位を決定できるようにしてもよいし、(b)非トラステッドサーバアプリケーションが検索可能な単位を決定しない文字記号セットを使用してもよいし(たとえば、文字記号「+」を用いて非トラステッドサーバアプリケーションにより単語を分離してもよく、このため、暗号化トークンの符号化には不適であってもよい。また、たとえば、英語とヘブライ語の両者の文字記号を用いることにより、アプリケーションが両セットのシーケンスを分離するようにしてもよい)、(c)サーバ側の長さ制限が満たされにくくなるようにコンパクトな表示を行ってもよいし、(d)中間モジュールにおいて、符号 That, (a) by separating the cryptographic token, to non-trusted server application may be able to determine a searchable unit within the processed text, (b) a non-trusted server application searchable units use may be made of a character symbol set which does not determine the (e.g., may be separated words by the non-trusted server application with letter symbols "+" and therefore, not suitable for encoding of cryptographic token may be. Moreover, for example, by using the English and Hebrew both character symbols, it may be an application to isolate the sequence of both sets), shorter than the length limit (c) the server-side it may perform compact display as less likely to be, (d) in the intermediate modules, code および復号化に効率的なアルゴリズムを使用してもよい。 And it may be used an efficient algorithm for decryption.

本発明の一部の実施形態によれば、処理済みテキストは、たとえばユニコード文字記号セットの少なくとも1つの隣接サブセットを含む文字記号セットのような、所定の文字記号セットから選択された文字記号列を含んでいてもよい。 According to some embodiments of the present invention, the processed text, such as the character symbol set comprising at least one neighboring subset of Unicode character symbol set, the character symbol string selected from a predetermined character symbol set it may comprise. 一部の実施形態において、この少なくとも1つの隣接サブセットは、文字、数字、または両者のカテゴリの文字記号を含んでいてもよい。 In some embodiments, the at least one adjacent subsets, letters, numbers or may comprise a character symbol of both categories. また、一部の実施形態において、処理済みテキストでの使用のため選択される文字記号は、ユニコード文字記号セットの複数の隣接サブセットから選択されたものであってもよく、たとえば、ユニコード文字記号セットの2つ、3つ、4つ、または5つの別個のサブセットが選択されてもよい。 Further, in some embodiments, a character symbol to be selected for use in the processed text may be one selected from a plurality of adjacent subsets of Unicode character symbol set, for example, the Unicode character symbol set two, three, four, or five distinct subsets may be selected. 一部の実施形態において、ユニコード文字記号セットのサブセットの数は、1よりも大きく10以下であってもよい。 In some embodiments, the number of subsets of Unicode character symbol set may be 10 or less larger than 1.

本発明の一部の実施形態において、ユニコード文字記号セットのサブセットは、ハングル、中国・日本・韓国(CJK)統合表意文字、およびそれらの組み合わせから選択された1または複数のサブセットであってもよい。 In some embodiments of the present invention, a subset of the Unicode character symbol set, Hangul, China, Japan and Korea (CJK) integration ideographs, and may be one or more subsets selected from combinations thereof . したがって、UTF−16符号化によりユーザ入力を格納するサーバアプリケーションには、たとえば韓国語文字記号を用いてもよい。 Therefore, the server application stores the user input by the UTF-16 encoded, for example, may be used Korean character symbol. 文字記号のみを含む韓国語文字記号は、ユニコード文字記号セットの1つの範囲を表すため、効率的な符号化および復号化が可能である。 Korean letter symbols containing only characters symbols to represent the one range of Unicode character symbol set, it is possible to perform efficient encoding and decoding. たとえば、同じ理由で中国語文字記号セットを用いてもよい。 For example, for the same reason it may be used Chinese character symbol set. 中国語文字記号セットは、韓国語よりも範囲が広いものの、その使用は、個々の中国語文字記号の検索およびインデキシングのうちの少なくとも一方を個別に行うサーバアプリケーションには不適な場合がある。 Chinese character symbol set, although ranges than is wide Korean, its use for the search and indexing server application to perform at least one of the individual of the individual Chinese character symbol is sometimes unsuitable.

UTF−8符号化によりユーザ入力を格納するサーバアプリケーションには、たとえばBASE64符号化を場合により修正して用いてもよい。 The server applications that store user input by UTF-8 encoding, for example, may be used to fix the case to BASE64 encoding. BASE64符号化自体には、文字記号「+」および「/」を含み、これによりサーバアプリケーションは、1つの暗号化トークンが1または複数の暗号化単語を有すると結論付けてもよい。 The BASE64 coding itself, letter symbols "+" and includes "/", thereby the server application, a single cryptographic token may be concluded that has one or more encryption word.

暗号化トークンの分離には、たとえば空白文字記号を用いてもよい。 The separation of the cryptographic token, for example, may be used whitespace symbols. たとえば電子メールアドレスのフィールド等、空白文字記号が期待できない場合は、暗号化トークンの分離にピリオド「.」等の別の文字記号を用いてもよい。 For example, fields such as e-mail address, if the space character symbol can not be expected, may be used another letter symbols, such as a period "." To the separation of the encryption token.

処理済み出力テキストは、非トラステッドサーバから送信された場合、中間モジュールでの受信時に非暗号化テキストに含めてもよい。 Processed output text when sent from a non-trusted server may be included in the plain text at the time of reception of an intermediate module. このシステムでは、復号化を開始するため、統計的に有意な特徴を処理済みテキストに生成してもよい。 In this system, to initiate the decoding may be generated in the processed text statistically significant features. たとえば、このシステムでは、非暗号化テキスト内で暗号化テキストを検出する際に、希少な文字記号またはその組み合わせを検索対象の処理済みテキストに含めるようにしてもよい。 For example, in this system, when detecting the encrypted text in unencrypted text may be included rare character symbol or combination thereof in the search of the processed text.

本発明の一部の実施形態によれば、出力トークンが特定の長さ制限を越えないように、処理済み出力テキストを2つ以上の出力トークンに配置してもよい。 According to some embodiments of the present invention, the output tokens so as not to exceed a certain length limit, the processed output text may be arranged in two or more output token. たとえば、第1の出力トークンには50文字の長さ制限を適用し、後続の出力トークンには1000文字の長さ制限を適用してもよい。 For example, the first output token by applying the 50 length of the character limit may apply 1000 the length of the character limit for subsequent output token.

確定的暗号化と非確定的暗号化との組み合わせ 本発明の一部の実施形態では、入力テキストの確定的変換、非確定的変換、またはそれらの組み合わせを用いてもよい。 In some embodiments of the combination present invention with deterministic encryption and non-deterministic encryption, deterministic transformation of the input text, non-deterministic transformation, or a combination thereof. 本発明の実施形態では、入力データ(またはその一部)を確定的、非確定的、またはそれらの組み合わせのいずれで変換するかを決定した後、その決定に基づき、少なくとも1つの秘密鍵を用いて、入力テキストを確定的、非確定的、またはそれらの組み合わせで変換して処理済みテキストを取得し、当該処理済みテキストをサーバに送信するようにしてもよい。 In an embodiment of the present invention, deterministic input data (or portion thereof), non-deterministic, or after determining whether to convert any combination thereof, based on the determination, using at least one secret key Te, deterministic input text to obtain a non-deterministic or converted to processed text combinations thereof, may transmit the processed text to the server.

本明細書において、入力テキストの非確定的変換は、その結果が複数の出力候補の1つとなる変換である。 In this specification, non-deterministic transformation of the input text, the result is one comprising converting the plurality of output candidate. 入力テキストの確定的変換は、出力候補を1つだけ含む変換である。 Deterministic transformation of the input text is converted to an output candidate only one. 通常はいずれの変換においても、1または複数の出力候補の決定に秘密鍵を用いるか、または秘密鍵に依存してもよい。 In either conversion typically either use the secret key to the determination of one or more output candidate, or may depend on the secret key.

本発明の実施形態によれば、たとえば秘密鍵に応じて可逆暗号化を適用するか、または秘密鍵を用いて不可逆暗号化を行うことにより、確定的トークン表示を取得するようにしてもよい。 According to an embodiment of the present invention, for example, to apply the reversible encryption according to a secret key, or by performing an irreversible encrypted using the secret key, may be obtained deterministic token display. また、たとえば秘密鍵を用いて対称暗号化アルゴリズムを適用するか、公開/私有鍵対の私有鍵を秘密鍵として用いて非対称暗号化アルゴリズムを適用するか、または秘密鍵に応じて他の可逆変換を行うことにより、非確定的トークン表示を取得するようにしてもよい。 Further, for example, to apply the symmetric encryption algorithm using the secret key or, to apply the asymmetric encryption algorithm using the private key of a public / private key pair as the secret key, or other reversible transform in accordance with the secret key by performing, it may acquire a non-deterministic token display.

本発明の一部の実施形態において、サーバは、過去に入力された入力テキストに対する検索機能を提供するものであってもよい。 In some embodiments of the present invention, the server may be configured to provide a search function for the input text entered in the past. このような場合、中間モジュールは、入力テキストにおいて個々の検索可能なトークンを確定的に変換することを選択してもよい。 In this case, the intermediate module may choose to deterministically convert each searchable tokens in the input text. このような確定的な変換により、処理済みの検索可能な用語を含む将来の検索クエリーがサーバで正しく処理可能となってもよい。 Such deterministic transformation, future search queries containing the processed searchable terms may become properly processable by the server. また、たとえばセキュリティの向上のため、入力テキストの一部を非確定的に変換してもよい。 Further, for example, for increased security, a portion of the input text may be converted non-deterministically. 本発明の実施形態によれば、入力テキストの一部を確定的に変換することにより、入力テキストの一部の反復インスタンス間の正確なマッチを要するサーバ側機能が得られるようにしてもよい。 According to an embodiment of the present invention, by deterministically convert part of the input text, the server-side functionality that require exact matches between repeated instances of some of the input text may be obtained. たとえば、前後の変更がわずかに異なる入力テキストの複数の変更をサーバが比較する場合、当該サーバは、単語ごとまたは行ごとの差異解析を行ってもよい。 For example, if a plurality of changes of slightly different input text changes before and after the server compares, the server may perform differential analysis of each word or per line. したがって、このような例では、入力テキストの単語または行を確定的に変換することにより、上記のようにサーバ上で正確なマッチ動作が得られる。 Thus, in such an example, by deterministically convert a word or line of input text, exact matches running on the server as described above is obtained.

たとえば、本発明の一実施形態における入力テキストの処理工程には、(1)入力テキストの一部または全部を1または複数の処理済みトークンへ非確定的に暗号化する工程と、(2)入力テキストの一部または全部の適当な入力トークンに対応する処理済みトークンを生成する工程と(たとえば、入力テキストのトークン化後、正規化後等)、(3)非確定的および確定的に変換された処理済みデータを処理済み出力テキストに含めてネットワークノードに送信および格納する工程とを含んでいてもよい。 For example, the process of the input text in an embodiment of the present invention, (1) a step of non-deterministically encrypt part or all to one or more of the processed token of the input text, (2) Input generating a processed token corresponding to the appropriate input tokens of some or all of the text (e.g., after a token of the input text, after normalization, etc.), are converted (3) non-deterministic and deterministic manner it may include a step of transmitting and stored in the network node, including the processed data to the processed output text. 本発明の一部の実施形態によれば、入力テキストを確定的、非確定的、またはそれらの組み合わせのいずれで変換するかの決定は、当該単語が単語セットの要素であるか否かに基づいて行ってもよい。 According to some embodiments of the present invention, deterministic input text, non-deterministic, or determination of whether to translate any of their combinations, based on whether the word is an element of word sets it may be carried out. このように、たとえば検索に利用可能となる入力トークンを確定的に変換して、上記単語を検索可能とするようにしてもよい。 Thus, for example, the input token to be available to confirm transformed into search may be a searchable the word. 検索に基づくレコードの格納に際しては、確定的または非確定的に変換された処理済みデータを含む処理済み入力テキストを検索結果として返すようにしてもよい。 Upon storage of records based on search may be to return the processed input text containing the processed data converted deterministically or non-deterministically as the search result. これに対して、検索に利用可能とならない入力トークンについては、確定的に変換する必要はない。 In contrast, the input token does not become available to the search does not have to be converted deterministically.

本発明の一部の実施形態において、入力テキストを確定的、非確定的、またはそれらの組み合わせのいずれで変換するかの決定は、当該単語の長さに基づいて行ってもよい。 In some embodiments of the present invention, deterministic input text, non-deterministic, or determining whether to convert any combination thereof may be performed based on the length of the word. これにより、たとえば、入力テキストの単語をその長さに基づいて非確定的に変換することを決定してもよい。 Thus, for example, it may decide to convert non-deterministically based word of the input text to its length. また、本発明の一実施形態の一例として、たとえば2文字以下の短い単語については非確定的に変換し、3文字以上の長い単語については確定的に変換するようにしてもよい。 As an example of an embodiment of the present invention, for example, for short words of 2 characters converts non-deterministic manner, it may be converted deterministically for longer words of three or more characters. 以上、このような方法では、最小文字数を下回る短い単語が検索不可能であってもよい。 Above, in such a method, a short word below the minimum number of characters may be impossible search.

本発明の一実施形態において、非確定的な変換は第1の鍵を用いて行い、確定的な変換は第2の鍵を用いて行うようにしてもよい。 In one embodiment of the present invention, non-deterministic transformation is carried out by using the first key, deterministic transformation may be performed using the second key.
本発明の一部の実施形態において、第1の鍵と第2の鍵とは同一であってもよい。 In some embodiments of the present invention, the first key and the second key may be the same. また、本発明の別の実施形態において、第1の鍵と第2の鍵とは異なっていてもよい。 Further, in another embodiment of the present invention, the first key and the second key may be different.

本発明の一部の実施形態において、出力テキストの全長が長さ制限を超える場合は、1または複数の確定的に生成されたトークンを省略または削除するようにしてもよい。 In some embodiments of the present invention, if the total length of the output text exceeds the length limit may be omitted or delete one or more deterministically generated token. また、本発明の一部の実施形態においては、入力テキストの少なくとも一部を変換しないよう決定してもよい。 Further, in some embodiments of the present invention may be determined not to convert at least a portion of the input text.

本発明の実施形態に係る処理済みテキストの読み出しプロセスは、実質的に逆に作用してもよい。 Read process of the processed text in accordance with an embodiment of the present invention may act in opposite substantially. すなわち、処理済みテキストを中間モジュールで受信するとともに、処理済みテキストに適当な逆処理を適用して元の入力テキストを取得するようにしてもよい。 That, along with receiving the processed text in the middle module may acquire the original input text by applying the appropriate inverse processing on the processed text. 本発明の一部の実施形態においては、元の入力テキストをクライアント装置に送信あるいは他の方法によって供給することにより、たとえばクライアント装置を操作するユーザまたはアプリケーションに対して表示または提供するようにしてもよい。 In some embodiments of the present invention, by supplying the transmitted or otherwise the original input text to the client device, be displayed or provided to the user or application operating example the client device good.

検索クエリーの処理 中間モジュールで受信される入力テキストは、検索対象の少なくとも1つの検索語を含む検索クエリーであってもよい。 Input text received by the processing intermediate module of the search query may be a search query including at least one search term to search. 検索クエリーの入力テキストは、(a)ネットワークノードにおいて正しい検索機能を促進するとともに、(b)ネットワークノードが当該テキストをクライアントに送り返した場合に中間モジュールで検索クエリーの復号化が行えるように、中間モジュールで処理してもよい。 Input text search query, (a) as well as promote proper search function in the network node, to allow the decoding of the search query in an intermediate module (b) if the network node sends back the text to the client, intermediate it may be treated with a module. 検索クエリーは一般に、他の入力テキストと同様にネットワークノードで処理されるが、別の処理ステップを適用してもよい。 Search query is typically is processed by the network node as well as other input text, it may be applied to other processing steps.

本発明の一部の実施形態において、入力テキストを変換する工程は、第1の鍵を用いて検索クエリーの少なくとも1つの検索語を確定的に変換することにより、少なくとも1つの確定的変換済み検索語を生成する工程を含んでいてもよい。 In some embodiments of the present invention, the step of converting an input text, by deterministically converting at least one search term of the search query by using the first key, at least one deterministic transformed Search the term may include the step of generating. これにより、処理済み入力テキストをサーバに送信する工程は、複数の確定的変換済み検索語をサーバに送信する工程を含んでいてもよい。 Thus, the step of transmitting the processed input text to the server may include the step of transmitting a plurality of deterministic converted search term to the server. また、本発明の一部の実施形態において、検索クエリーの複数の検索語は、取り扱いおよび変換を別個に行うようにしてもよい。 Further, in some embodiments of the present invention, a plurality of search terms of the search query may be performed handling and conversion separately.

本発明の一部の実施形態において、処理済み検索クエリーは実質的に、確定的変換済み検索語のみを含んでいてもよく、その確定的な変換が可逆変換であってもよい。 In some embodiments of the present invention, the processed search query is substantially may comprise only deterministic converted search terms, the deterministic transformation may be a reversible conversion. ネットワークノードは、処理済みの用語を検索して、その結果セットをクライアントに返すようにしてもよい。 Network node retrieves the processed terms, it may be returned to the result set to the client. また、中間モジュールは、処理済みの検索語を用いて元の入力テキストを取得してもよい。 The intermediate module may obtain the original input text using the processed search terms.

本発明の一部の実施形態において、検索クエリーを変換する工程は、第2の鍵を用いて検索クエリーの実質的に全体を非確定的に変換することにより、非確定的変換済みテキストを生成する工程と、論理和演算子(たとえば、「OR」演算子等)を用いて上記少なくとも1つの確定的変換済み検索語と非確定的変換済みテキストとを結合して結合処理済みテキストを取得する工程とを含んでいてもよく、処理済み入力テキストをサーバに送信する工程は、当該結合処理済みテキストをサーバに送信する工程を含む。 In some embodiments of the present invention, the step of converting the search query, by substantially convert the entire non-deterministic in the search query using a second key, produce a non-deterministic converted text a step of, logical OR operator (e.g., "OR" operator, etc.) to get the binding processed text by combining the said at least one deterministic converted search terms and non-deterministic converted text using It may include a step, a step of transmitting the processed input text to the server, comprising transmitting the binding processed text to the server. ネットワークノードは、処理済み検索語および非確定的処理済みテキストを分離検索し、確定的変換済み検索語に基づいて結果を取得する(または非検出となる)が、非確定的変換済みテキストについては結果を取得しない。 Network node, the processed search terms and non-deterministic processed text separated search, obtains the results based on deterministic converted search terms (or the non-detection) is, for non-deterministic converted text do not get the results. したがって、検索の結果は、処理済み検索語の検索の結果を返すことになってもよい。 Thus, the results of the search may be supposed to return the results of a search of the processed search terms. 本発明の一実施形態に係る上記方法を用いることにより、中間モジュールは、ネットワークノードから非確定的変換済みテキストを受信し、そこから検索クエリーの元の入力テキストを取得するようにしてもよい。 By using the method according to an embodiment of the present invention, the intermediate module receives a non-deterministic converted text from a network node, or may be from there to get the original input text search query.

処理済みテキストの保存場所 ネットワークノードサーバの中には、クエリー等の要求に応じて不完全な検索結果を返すものがあってもよい。 Some location network node server of the processed text, there may be one that returns the incomplete search results in response to a request query or the like. たとえば、検索クエリーの結果が100文字のフィールドである場合、サーバは、フィールドの先頭から20文字のみを返すようにしてもよい。 For example, if the result of the search query is a field of 100 characters, the server may be the beginning of the field to return only 20 characters. そして、ユーザが検出レコードを選択した場合、サーバは、フィールド全体を提供する。 Then, if the user selects the detection record, the server provides the entire field. 本発明の実施形態によれば、中間モジュールは、このような制約の中でも動作できるものとする。 According to an embodiment of the present invention, the intermediate module, and it can operate even in such a constraint. また、本発明の実施形態によれば、サーバが処理済みテキストの複数単位を省略する場合、これらの単位は、処理済みテキスト内の個々のトークン、処理済みテキスト全体、またはその両者であってもよい。 Further, according to the embodiment of the present invention, if the server omits several units of processed text, these units, each token in the processed text, the entire processed text, or even both good.

本発明の実施形態によれば、上記の問題は、たとえば中間モジュールまたは中間モジュールが管理、制御、あるいはアクセス可能な記憶装置に処理済みテキストの保存場所を設けることによって解決してもよい。 According to an embodiment of the present invention, the above problem is, for example, manage the intermediate module or intermediate module, control, or may be solved by providing the location of the processed text in a storage device accessible. このシステムでは、復号化ステップにおいて元の入力テキストを取得する前に、不完全な状態から以下のように再生を試みてもよい。 In this system, before getting the original input text in the decoding step may attempt reproduction, as follows from the incomplete. すなわち、(1)中間モジュールは、たとえば非トラステッドサーバやそれに付随する記憶装置を介さずに、復号化ステップにおいてトラステッド記憶装置に完全な処理済みテキスト単位を記憶させるようにしてもよい。 That is, (1) the intermediate module, for example, not through the non-trusted servers and storage devices associated therewith, may be caused to store the complete processed text unit to the trusted memory device in the decoding step. (2)不完全な処理済みテキストがサーバから送信されて中間モジュールで受信された場合は、トラステッド記憶ユニットを参照して、当該不完全な処理済みテキスト単位にマッチするかまたは対応する1または複数の完全な処理済みテキスト単位が存在するか否かを判定する。 (2) If the incomplete processed text is received is transmitted from the server at an intermediate module, with reference to the trusted storage unit, or a corresponding one or more matches to the incomplete processed text unit complete processed text unit determines whether or not the presence of. (3)存在する場合は、中間モジュールが不完全な処理済みテキスト単位を対応する完全な処理済みテキスト単位で置き換えることにより、再生処理済みテキストを取得する。 (3) if present, by replacing the complete processed text units intermediate module corresponding incomplete processed text unit, acquires the reproduction processed text. (4)再生処理済みテキストは、逆処理法(たとえば、秘密鍵を用いた復号化等)により処理して、元の入力テキストを取得する。 (4) Play processed text, inverse processing method (e.g., decoding and the like using the private key) is treated with, acquires the original input text. そして、必要に応じて、元の入力テキストすなわち未処理テキストをクライアント装置に供給してもよい。 Then, if necessary, it may be supplied to the original input text ie raw text to the client device.

本発明の一部の実施形態において、保存場所に格納されるものは、処理済みテキストに付随する少なくとも1つの完全な処理済み要素であってもよい。 In some embodiments of the present invention, what is stored in the storage location may be at least one complete processed elements associated with the processed text. たとえば、処理済み要素としては、上記の処理済みテキスト全体であってもよいし、処理済みテキストに含まれる単語またはその他の部分であってもよい。 For example, the processed element may be the entire above-mentioned processed text, it may be a word or other portion contained in the processed text.

このような保存場所を用いるシステムおよび方法は、たとえば検索要求、記録要求、または報告要求等、クライアント装置からの任意の適当な要求に適用してもよい。 The system and method using such a storage location, for example search request, the recording request or report request, etc., may be applied to any suitable request from the client device.
ベイトを用いた非トラステッドサーバ変換の検出 非トラステッドサーバは、多数の変換のうちの1または複数を処理済みユーザデータのインスタンスに頻繁に適用してもよい。 Detection untrusted server untrusted server conversion using bait may be frequently applied to one or more of a number of converted to instances of the processed user data. このような変換は、トラステッドワークステーション上のクライアントコンポーネントによって期待されてもよいが、本明細書に記載の中間モジュールは把握していなくてもよい。 Such conversion is trusted may work be expected by the client component on the station, but the intermediate module described herein may not be grasped. したがって、本発明の実施形態によれば、中間モジュールは、処理済みユーザデータに適用される変換の種類を推測する方法を利用してもよい。 Therefore, according to the embodiment of the present invention, the intermediate module may utilize a method of inferring the type of conversion to be applied to the processed user data.

本発明の一実施形態によれば、中間モジュールは、既知の場所の暗号化ユーザデータに超過情報を付加してもよい(本明細書ではベイトと称する)。 According to an embodiment of the present invention, the intermediate module (referred to as bait in this specification) which may be added to excess information to the encrypted user data of the known location. ベイトは、処理済みユーザデータが中間モジュールで受信された場合、処理済みユーザデータに適用される変換の種類を推測するために使用してもよい。 Bait, if the processed user data is received at an intermediate module may be used to infer the type of conversion to be applied to the processed user data. ベイトを使用可能な変換の適用例としては、特定の文字記号符号化方法およびHTMLタグの除去等が挙げられるが、これらに限定されるものではない。 As an application example of usable transform the bait, but include such as removal of a specific character and symbol coding method and HTML tags, but is not limited thereto.

たとえば、非トラステッドサーバは、受信した暗号化ユーザデータに様々な、かつ場合に応じた符号化方法やそれらの組み合わせをその時に適用してもよい。 For example, untrusted server, a variety of the received encrypted user data, and a coding method and a combination thereof in accordance with the case may be applied at that time. 暗号化テキストが非トラステッドサーバから中間モジュールで受信された場合は、非トラステッドサーバアプリケーションが使用する多数の符号化方法のうちの1つで暗号化テキストを符号化することにより、トラステッドワークステーション上のクライアントコンポーネントと接続するようにしてもよい。 When the encryption text is received at the intermediate module from an untrusted server by encoding the encrypted text in one of a number of coding methods untrusted server application uses, on the trusted workstation it may be connected to the client component. この符号化方法は、サーバが生成するメッセージで示唆してもよいし、示唆しなくてもよい。 The encoding method may be suggested message server generates may not suggest. クライアントコンポーネントは通常、サーバコンポーネントを認識して、使用される符号化方法を確実に把握していてもよい。 The client component typically recognizes the server component, may be reliably grasp the encoding method used. ただし、中間モジュールは、暗号化テキストのインスタンスごとに使用される個別の符号化を把握していなくてもよい。 However, the intermediate module may not know the individual coding used for each instance of the encryption text. それでも、クライアントコンポーネントへの供給前にユーザデータを復号化する場合、本発明の実施形態に係る中間モジュールは、サーバが適用しクライアントが期待する符号化方法と同じものを使用できるものとする。 Nevertheless, when decoding the user data prior to supply to the client component, an intermediate module according to the embodiment of the present invention is intended to be the same as the encoding method that the server application to the client expects. すなわち、非トラステッドサーバおよびトラステッドワークステーションが使用する符号化方法を中間モジュールが把握していない場合は、中間モジュールによる処理および再処理で情報が喪失または歪曲される可能性がある。 That is, when the encoding method untrusted server and trusted workstation used by the intermediate module does not know, there is a possibility that information in the processing and reprocessing by the intermediate module is lost or distorted.

符号化方法の検出を容易にするため、中間モジュールは、符号化ベイトとして知られる所定の文字記号を暗号化テキストに付加してもよい。 To facilitate the detection of the encoding method, the intermediate module, a predetermined character symbols, known as encoded bait may be added to the encrypted text. 符号化ベイトは、クライアントコンポーネントへの供給前に暗号化ユーザデータとともにサーバで暗号化してもよい。 Coding bait may be encrypted by the server with the encrypted user data before supply to the client component. 中間モジュールが暗号化トークンを検出した場合は、暗号化テキストのインスタンスの符号化に用いられる符号化方法の種類を推測するために符号化ベイトを調べてもよい。 If the intermediate module detects an encrypted token, it may examine the coding bait to infer the type of encoding method used to encode the instance of the encrypted text. したがって、中間モジュールは、推測した符号化方法を用いて処理済みメッセージの復号化テキストを符号化してもよい。 Therefore, the intermediate module, a decoding text processed message using the guessed encoding method may be encoded. 符号化方法の例としては、(a)UTF−8符号化、(b)UTF−8が後続するHTMLエスケープ文字列を用いた符号化、(c)JAVAScript(登録商標)エスケープ文字列を用いた符号化に続くJavaScriptエスケープ文字列の再使用およびその後のLatin−1符号化(別称、ISO−8859−1)の実行等が挙げられるが、これらに限定されるものではない。 Examples of the encoding method, using a coding, (c) JavaScript (registered trademark) escape string with (a) UTF-8 encoding, HTML escape string that follows the (b) UTF-8 reuse of JavaScript escape character string following the coding and subsequent Latin-1 encoding (aka, ISO-8859-1) but execution etc. are exemplified, but the invention is not limited thereto. たとえば、JavaScriptエスケープは通常、文字記号をバックスラッシュおよび別の文字記号で置き換えることにより作用する。 For example, JavaScript escape usually act by replacing the letter symbol with a backslash and another character symbols. 一例として、改行文字記号は、バックスラッシュおよび文字記号「n」、すなわち文字列「\n」で置き換えられる。 As an example, a new line character symbols, backslash and letter symbol "n", i.e., replaced with the string "\n".

本発明の一部の実施形態において、ベイトは、処理済みテキストの少なくとも1つの変換可能な文字記号にマッチする置換文字記号または置換文字記号列(たとえば、1または複数のエスケープ文字記号)への置換を含む少なくとも1つの変換を検出するのに使用してもよい。 Substituted in some embodiments of the present invention, baits, to substituted letter symbols or replacement character symbol string matches at least one convertible letter symbols processed text (e.g., one or more of the escape character symbol) it may be used to detect at least one conversion including.

本明細書では、山括弧「<」およびバックスラッシュ「\」から成る符号化ベイトを用いる例を提供する。 In this specification, an example is provided using a coding bait consisting of angle brackets "<" and backslash '\'. ユーザは、文字列「This ' is a quote」を入力してもよい。 The user may enter the string "This' is a quote." この文字列は、たとえば「QIFJDJNZOP」に暗号化される。 This string is encrypted, for example, "QIFJDJNZOP". 暗号化においては、「QIFJDJNZOP」が「<\QIFJDJNZOP」になるように、暗号化トークンにベイトが付加される(<\がベイトである)。 In encryption, as "QIFJDJNZOP" becomes "<\QIFJDJNZOP" bait is added to the encrypted token (<\ is bait). サーバは、暗号化文字列を受信し、JavaScriptファイルでクライアントに送信してもよい。 The server receives the encrypted string, may be transmitted to the client in JavaScript files. JavaScriptファイルにおいては、サーバがバックスラッシュのみをエスケープする必要があり、山括弧はその必要がない。 In the JavaScript file, it is necessary for the server to escape the only backslash, angle brackets do not need that. したがって、クライアントに送信されるメッセージには「<\\QIFJDJNZOP」が含まれる。 Thus, the message sent to the client includes a "<\\QIFJDJNZOP". ここで、ベイトの元のバックスラッシュは、別のバックスラッシュによりエスケープされている。 Here, the original backslash of the bait is escaped with another backslash. 中間モジュールは、元の山括弧およびエスケープされたバックスラッシュで始まるメッセージの暗号化トークンを検出した場合、当該トークンがJavaScriptエスケープであると推測してもよい。 Intermediate module, when detecting an encrypted token messages beginning with the original angle brackets and escaped backslash, the token may be assumed to be JavaScript escape. その結果として、中間モジュールは、入力されたQIFJDJNZOPを「This ' is a quote」に復号化してもよい。 As a result, the intermediate module, the input QIFJDJNZOP may decode the "This' is a quote". ただし、クライアントがJavaScriptエスケープテキストを期待しているものと推測した場合、モジュールは、JavaScriptエスケープを用い、たとえば引用符をエスケープして「This \' is a quote」を生成することにより、復号化文字列を符号化するようにしてもよい。 However, if the client has been assumed that expect the JavaScript escape text, the module, using the JavaScript escape, for example, to escape the quotation marks by generating a "This \ 'is a quote", the decoding character column may be encoded. このように、復号化された引用符は、符号化ベイトにより推測された符号化規則を使用している。 Thus, it decoded quotes, using encoding rules which are inferred by the encoding bait. その後、復号化および符号化された文字列はクライアントに転送される。 Then, decoding and encoding string is transferred to the client.

ベイトを使用可能な別の例としてはHTML変換が挙げられるが、そのうちのHTMLタグの除去は特殊なケースである。 Including but HTML conversion as another example that can be used for bait, removal of HTML tags of which is a special case. 非トラステッドサーバは、HTMLマークアップで補強されたテキストを受信し、HTMLタグの全部または一部が除去された受信テキストのインスタンスを生成し、これらインスタンスをクライアントコンポーネントに返してもよい。 Untrusted server receives a reinforced text in HTML markup, creates an instance of the incoming text all or part of the HTML tags have been removed, it may return these instances to the client component. この場合、中間モジュールは、処理済みユーザデータにHTMLタグベイトを含めてもよい。 In this case, the intermediate module may include HTML Tagubeito the processed user data. HTMLタグベイトは、処理済みユーザデータの受信時に中間モジュールによって除去するとともに、その存否に基づいて、HTMLタグが復号化ユーザデータから除去可能であるか否かを推測し、これにより、クライアントコンポーネントに返されるメッセージ中の復号化HTMLタグを保持または除去するようにしてもよい。 HTML Tagubeito, together removed by the intermediate module upon receipt of the processed user data, based on the presence or absence, HTML tags to guess whether it is removable from the decoded user data, thereby, back to the client component it may be held or removed decoding HTML tags in the message to be.

一部の実施形態においては、複数のベイトを処理済みテキストに付加することにより、非トラステッドサーバが適用する複数の変換または符号化方法を検出するようにしてもよい。 In some embodiments, by adding a plurality of bait in the processed text, a plurality of conversion or encoding method untrusted server applies may be detected.

長さ制限 本発明の一部の実施形態においては、入力テキストの複数の個別部分を変換してもよく、当該入力テキストの複数部分の少なくとも1つは、たとえば各部の省略により最大の文字記号数以上を含まない。 In some embodiments of the length limit the present invention may convert the plurality of individual portions of the input text, the maximum number of character symbol at least one, for example by omission of each part of the portions of the input text It does not contain more. また、本発明の一部の実施形態においては、入力テキストの複数の個別部分を変換してもよく、当該入力テキストの複数の各部分は、たとえば各部の省略により最大の文字記号数以上を含まない。 Further, in some embodiments of the present invention, it may be converted to a plurality of individual portions of the input text, a plurality of portions of the input text, for example, contain more than the maximum number of characters symbols by omission of the components Absent.

トークン化の例 図5を参照して、この図は、センテンス「This sentence has FIVE words!」を含む入力テキストの正規化およびトークン化を示した図である。 With reference to an example Figure 5 of tokenized, this figure is a diagram showing the normalization and token of the input text that contains the sentence "This sentence has FIVE words!". 入力テキスト510は、センテンス「This sentence has FIVE words!」を含む。 Input text 510, including the sentence "This sentence has FIVE words!". このセンテンスは、「This」、「sentence」、「has」、「FIVE」、「words」、および「!」という入力トークンにトークン化してもよい。 This sentence, "This", "sentence", "has", "FIVE", "words", and "!" May be tokenized to the input token that. また、これらの入力トークンは、正規化により正規化入力トークンおよびメタデータを供給してもよい。 These input token may provide the normalized input token and metadata by normalization. 正規化入力トークンは、「This」、「sentence」、「has」、「five」、「words」、および「!」という書式となる。 Normalized input token, "This", "sentence", and the format "has", "five", "words", and "!". また、「sentence」に付随するメタデータは「小文字」である。 In addition, the meta-data associated with the "sentence" is "sensitive". 「FIVE」に付随するメタデータは「大文字」、「words」に付随するメタデータは「小文字」および「複数」である。 Metadata associated to "FIVE" is "upper case", the metadata associated to "words" are "lower case" and "plurality".

次に、共通の入力トークンである単語「this」、「has」、および非単語「!」を検出する。 Then, the word "this" is a common input token, to detect "has", and non-word "!". これらの入力トークンは、非確定的に暗号化してもよく、たとえばソルト(「*」と表示)で暗号化してもよい。 These input token, non-deterministic well be encrypted, for example, may be encrypted with salt (displayed as "*").

そして、共通ではない入力トークン「word」、「sentence」、および「five」を検出する。 And, not a common input token "word", to detect the "sentence", and "five". これらの単語は、確定的に暗号化してもよい。 These words may be deterministically encryption.
入力トークンの順序は変更してもよく、これに応じて、順序メタデータを生成してもよい。 Order of the input token may be changed, accordingly, may generate the sequence metadata. この順序メタデータ、文字種メタデータ、および複数メタデータは、制御トークン530に含まれていてもよい。 This order metadata character type metadata, and multiple metadata may be included in the control token 530.

ソート支援 多くのSaaSアプリケーションに共通のテキスト処理機能は、特定のフィールドまたはその他属性の辞書式順序でレコードをソートすることである。 Common text processing functions to sort support many SaaS application is to sort the records lexicographically specific fields or other attributes. したがって、この機能は、順序維持暗号化プロセスにより処理済みテキストを供給する際に有用となる場合がある。 Therefore, this feature may be useful in supplying the processed text by maintaining an order encryption process.

順序維持手法は多数存在するが、いずれを実行してもよい。 While maintaining an order approach there are many, it may be executed either. たとえば、順序維持は、以下のいずれの方法でも得られる。 For example, maintaining an order can also be obtained in any of the following methods. (a)全レコードのリストを阻止モジュール上に保持し、必要に応じて部位固有の順序付けを行う。 (A) a list of all records kept on the blocking module, performs site-specific ordering if necessary. この方法ではほとんどの場合、表示およびデータ管理の両方に各サーバ機能の複製が必要となる。 In most cases this method, it is necessary to duplicate each server functions both display and data management. (b)サーバにAPIを提供して、特定文字列のソート順序のクエリーを行う。 (B) provide an API to the server, querying the sort order for a particular string. または、(c)ネットワークノードでの修正なしに実際のソート順序を維持する、辞書式にソート可能な表示を生成する。 Or, to maintain the actual sort order without modification in (c) network nodes, to generate a sortable display lexicographically.

本発明に係る暗号化方法では、以下の各ステップまたはそれらの組み合わせを適用することによって、入力テキストのレコードの順序を維持するようにしてもよい。 The encryption method according to the present invention, by applying the steps or a combination of the following may be maintain the order of the input text record. すなわち、(1)入力データ(数値化されていない場合)を数値に変換し、(2)数値に順序維持変換を適用して出力数値を取得し、(3)出力数値から辞書式にソート可能な表示を取得し、(4)処理済み出力テキストにおいて、辞書式にソート可能な表示を(テキストデータ中の)接頭辞文字列または出力データ全体として使用する。 That is, (1) converts the input data (if not quantified) to a number, (2) number to be applied to maintaining an order conversion acquires an output number, (3) sortable from an output number lexicographically get the Do display, (4) the processed output text, sortable displayed lexicographically (in text data) used as a whole prefix string or output data. この順序維持変換は、単調増加関数であってもよい。 This order maintain conversion may be a monotonically increasing function. また、この順序維持関数は、乱数源から生成可能な私有鍵を用いることにより、その機能をパラメータ化してもよい。 Also, the order maintenance function, by using a private key that can be generated from a random number source, may parameterize its function. 私有鍵は、まとめてソートされた入力セットごとにセットで生成してもよい。 Private key may be generated by the set for each collectively sorted input set. 本発明の実施形態によれば、以下に説明するように、順序情報を生成する工程は、秘密鍵依存の順序維持関数を入力テキストに適用する工程を含んでいてもよい。 According to an embodiment of the present invention, as described below, the step of generating the order information may include the step of applying to the input text ordering maintenance function of the private key-dependent.

本発明の一部の実施形態によれば、入力テキストの不完全型に基づいて順序情報を生成してもよい。 According to some embodiments of the present invention may generate the sequence information based on the incomplete type of the input text. 本発明のさらに別の実施形態によれば、入力テキストの複数の不完全単語に基づいて、当該単語の登場順に順序情報を生成してもよい。 According to yet another embodiment of the present invention, based on a plurality of incomplete words of the input text may be generated order information to the order of appearance of the word.

本発明の一部の実施形態によれば、中間モジュールは、順序維持変換を適用することによって入力テキストを処理してもよく、当該順序維持変換は、入力テキストに基づいて、照合規則に応じた入力テキスト候補セットにおける当該入力テキストの相対順序を示す順序情報を生成すること、入力テキストを変換して処理済みテキストを取得すること、処理済みテキストをサーバに送信することを含む。 According to some embodiments of the present invention, the intermediate module may process the input text by applying a sequence maintain conversion, the order maintain conversion, based on the input text, in accordance with the matching rules generating order information indicating the relative order of the input text in the input text candidate set, obtaining the processed text to convert the input text includes sending the processed text to the server. また、本発明の一部の実施形態によれば、順序情報を接頭辞として処理済み入力データに付加するとともに当該結合した順序情報および処理済み入力データをサーバに送信することにより、当該処理済み入力テキストに関連して当該順序情報をサーバに送信してもよい。 Further, according to some embodiments of the present invention, by transmitting the order information and the processed input data and the bond with the addition to the processed input data sequence information as a prefix to the server, the processed input in relation to the text may transmit the order information to the server.

順序維持暗号化方法に関連するセキュリティ上のリスクを低減するため、中間装置は、順序維持出力の生成時に、入力データの縮小部分のみを考慮してもよい。 To reduce the security risks associated with maintaining an order encryption method, intermediate apparatus, when generating the sequence maintaining the output, it may be considered only reduced portion of the input data. 入力を縮小して入力データの取得部分を抑えるには、(a)「the」や「a」等の特定の単語を無視したり、(b)あらゆる単語の特定箇所またはそれ以降のすべての文字記号を無視したり(たとえば、「zebra」の文字記号における「ra」を無視したり)、(c)レコード内の最後の単語を無視したり、(d)順序維持関数の入力定義域を縮小したり、(e)文字種等の特定の文字記号特性を無視したり、または(e)それらを組み合わせたりしてもよい。 In by reducing the input suppress the acquisition portion of the input data is, (a) or to ignore certain words, such as "the" and "a", (b) all of the character of a particular place or later every word or ignore symbol (for example, to ignore the "ra" in the character symbol "zebra"), or ignore the last word in (c) record, reduces the input domain of (d) maintaining an order function or it may be or combination thereof (e) or ignore certain character symbol characteristics such as character types, or (e).

図7は、本発明の一実施形態に係る、処理済みテキストに含まれるテキストデータの順序維持表示の取得に利用可能な方法170の様々なステップを示した図である。 7, according to an embodiment of the present invention and shows the various steps of the available methods 170 in order maintain the display of the acquired text data included in the processed text. ステップ171においては、暗号化する入力テキストを受信する。 In step 171, it receives an input text to be encrypted. ステップ172においては、入力テキストから特定の単語を除去する。 In step 172, remove certain words from the input text. ステップ173においては、文字種、発音区別符号、合字等の特定の文字記号特性を除去する。 In step 173, the character type, diacritics, certain character symbol characteristics ligatures such removal. ステップ174においては、入力テキストから最後の文字記号が除去されるように、暗号化方法の所定のパラメータに応じて入力単語を省略する。 In step 174, as the last character symbol from the input text is removed, omitted input word in accordance with a predetermined parameter of the encryption method.

ステップ175においては、入力テキストにおける特定の最後の単語を除去する。 In step 175, remove certain last word in the input text. 以上から、任意のステップ172、173、174、および175の1または複数を実行することにより、生成される入力テキストの長さを抑えるようにしてもよい。 From the above, by performing one or more optional steps 172,173,174, and 175, may be suppressed length of the input text to be generated. ステップ176においては、(任意で長さを抑えた)入力テキストを数値に変換して入力数値を取得する。 In step 176, it acquires the input numerical value is converted to a number of input text (suppressed any length). ステップ177においては、入力数値に順序維持関数を適用して出力数値を取得する。 In step 177, by applying the ordering maintenance function to obtain the output number to the input numerical value. ステップ178においては、出力数値から順序維持表示を取得する。 In step 178, it obtains the sequence maintaining the display from the output value. 最後に、ステップ179においては、処理済みテキストの接頭辞または暗号化データ全体として順序維持表示を設定する。 Finally, in step 179, it sets the order maintain display as a prefix or entire encrypted data processed text.

ステップ172〜176の適用を示す以下の例では、入力テキスト「The Green Zebra」の入力数値を以下のように計算する。 In the following examples illustrating the application of the steps 172 to 176, calculates an input value of the input text "The Green Zebra" as follows. すなわち、(a)入力トークンセット「The Green Zebra」を受信し、(b)重要ではない入力トークン「the」を無視して有意な入力トークン「Green Zebra」を提供し、(c)有意な入力トークンを正規化して「green zebra」を提供し、(c)たとえばユーザ定義に基づき、各入力トークンの先頭から3文字のみを選択して6つの有意な文字記号「gre zeb」を提供し、(d)各文字の数値をそれぞれの入力トークンにおける位置の重みに基づいて表1のように計算し、(e)文字の数値を合算して入力トークンセットの数値0.296199790068345を提供する。 In other words, (a) receiving an input token set "The Green Zebra", (b) important to ignore "the" input token does not provide a significant input token "Green Zebra", (c) significant input tokens is normalized to provide a "green zebra", provides (c) for example based on a user-defined, six significant character symbol "gre zeb" select only three characters from the head of each input token ( calculated as in Table 1 based on d) each character number to a weighted position in each input token, provides the numerical 0.296199790068345 input token set by summing the value of (e) characters.

重みWは、アルファベットサイズAに対する文字記号位置の負の指数Pとして、W=A −Pと表してもよい。 Weight W as negative exponential P character symbol positions relative to the alphabet size A, may be expressed as W = A -P. 英語テキストの場合、アルファベットサイズは26である。 In the case of English text, alphabet size is 26.

図8は、本発明の一実施形態に係る、順序維持関数の生成方法300を示しており、たとえば方法170のステップ177で使用する。 8, according to an embodiment of the present invention shows how to generate 300 order maintenance functions, for use in step 177 of the example method 170. ステップ180においては、たとえばユーザまたはプログラムによる設定に応じて関数の定義域(D ,D )および値域(R ,R )を決定する。 In step 180, to determine for example the domain of the function in accordance with the setting by the user or program (D 1, D 2) and range (R 1, R 2). ステップ181においては、順序維持関数の出力値の計算に使用する私有鍵Kを取得する。 In step 181, it acquires the private key K used to calculate the output value of the sequence maintaining function. ステップ182においては、(場合により、方法170のステップ176から)入力値V inを受信する。 In step 182, (optionally, the step 176 of method 170) receives an input value V in. ステップ183および184においては、元の値域に含まれる鍵依存の位置が始点および終点となるように関数の値域を変更する。 In step 183 and 184, the position of the key-dependent in the original value range to change the range of the function so that the start and end points. ステップ185においては、関数の定義域に含まれる関数の鍵Kに依存した点D midがD mid =f (D ,D ,K)を満たすように選択する。 In step 185, D mid point depending on the key K of the functions included in the domain of the function is selected to satisfy the D mid = f 1 (D 1 , D 2, K). ステップ186においては、点R =f (R ,R ,K,n)およびR =f (R ,R ,K,n)がR <R <R <R を満たすように選択する。 In step 186, the point R L = f 2 (R 1 , R 2, K, n) and R H = f 3 (R 1 , R 2, K, n) is R 1 <R L <R h <R selected to satisfy 2. ここで、R およびR は、関数の鍵Kおよび反復回数nのうちの少なくとも一方(初期値はn=1)によって決まる。 Here, R L and R h, at least one of the key K and the number of iterations n functions (initial value n = 1) depend. ステップ187においては、入力数値V inが現在の定義域(D ,D )の下方部(D ,D mid )または上方部(D mid ,D )のいずれに含まれるかを確認する。 In step 187, the input numerical value V in to verify the lower portion of the current domain (D 1, D 2) ( D 1, D mid) or upper section (D mid, D 2) are included in any of the . inが下方部に含まれる場合は、ステップ188aを実行し、そうでなければステップ188bを実行する。 If V in is contained in the lower portion, it executes step 188a, executes Step 188b otherwise. ステップ188aおよび188bにおいては、関数の定義域(D ,D )および値域(R ,R )を修正する。 In step 188a and 188b, to correct the domain of the function a (D 1, D 2) and range (R 1, R 2). すなわち、ステップ188aにおいては、(D ,D )を(D ,D mid )に設定し、(R ,R )を(R ,R )に設定する。 That is, in step 188a, the (D 1, D 2) is set to (D 1, D mid), it is set to the (R 1, R 2) ( R 1, R L). ステップ188bにおいては、(D ,D )を(D mid ,D )に設定し、(R ,R )を(R ,R )に設定する。 In step 188b, (D 1, D 2 ) to (D mid, D 2) set, setting the (R 1, R 2) ( R H, R 2). ステップ185〜188は、ステップ189で所定の停止基準が満たされるまで繰り返す。 Step 185 to 188 is repeated until a predetermined stop criterion is met at step 189. 停止基準の例としては、閾値サイズD thresholdが現在の定義域サイズ|D|=D −D を超えること、閾値サイズR thresholdが現在の値域サイズ|R|=R −R を超えること、またはそれらの組み合わせが挙げられる。 Examples of stop criteria threshold size D threshold The current domain size | exceed = D 2 -D 1, the threshold size R threshold The current range size | | D exceeds = R 2 -R 1 | R it, or combinations thereof.

以下に、方法170のステップ178で利用可能な符号化方法を例示する。 The following illustrates a possible encoding methods used in step 178 of method 170. まず、順序維持関数により生成された変換数値が0.344323947であり、辞書式にソート可能な表示が10文字長で英語の小文字のみを含むものと仮定する。 First, the conversion number generated by maintaining an order function is 0.344323947, sortable displayed in the dictionary expression is assumed to include only the English lowercase 10 characters long. 表2は、算術符号化方法の10回反復による10文字長の辞書式にソート可能な表示の生成を示したものである。 Table 2 shows the production of sortable display 10 characters long lexicographically of by 10 repetitions of the arithmetic coding method.

表2に示すように、辞書式にソート可能な表示は「hxsutgeslc」である。 As shown in Table 2, sortable display in the dictionary type is "hxsutgeslc".

ここで、物理的なコンピュータ可読媒体を設けることができる。 Here, it is possible to provide a physical computer-readable media. この媒体には、プロセッサによる実行に際して、プロセッサに方法100またはその一部を実行させることができる命令を格納する。 This medium, when executing by the processor, storing instructions that can perform the method 100 or portions thereof to the processor. このような物理的なコンピュータ可読媒体としては、ディスク、ディスケット、テープ、カセット、メモリースティック、フラッシュメモリーユニット、揮発性メモリーユニット等が考えられる。 Such physical computer-readable media, disk, diskette, tape, cassette, memory stick, flash memory units, a volatile memory unit or the like.

本明細書では、本発明の特定の特徴を例示・説明したが、当業者であれば多くの改良、置換、変形、および均等物を想到し得るであろう。 In the present specification, the specific features of the invention have been illustrated and explanation, many modifications by those skilled in the art, substitutions, variations, and will be able to envision equivalents. したがって、当然のことながら、添付の請求の範囲は、このような改良や変形がすべて本発明の精神に含まれるように網羅するものである。 Accordingly, it will be appreciated that the scope of the appended claims are intended to cover such Such modifications and variations are within the spirit of this invention.

Claims (112)

  1. クライアント装置とサーバとの間で送信されるデータを保護する方法において、 Method for protecting data sent between the client device and the server,
    前記クライアント装置から中間モジュールへの入力テキストを取得すること、 Obtaining the input text to the intermediate module from the client device,
    前記中間モジュールで前記入力テキストを処理して処理済みテキストを取得することであって、前記処理することは、 The method comprising: obtaining a processed text processing the input text by the intermediate module to the process,
    前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定すること、 Determining whether to convert the input text deterministic, in any combination of non-deterministic or deterministic and non-deterministic,
    前記決定に基づき、少なくとも1つの鍵を用いて、前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせで変換して処理済みテキストを取得することを含む、前記処理済みテキストを取得すること、 Based on the determination comprises using at least one key, deterministic said input text to obtain a conversion to the processed text in combination non-deterministic or deterministic and non-deterministic, the processing to get the finished text,
    前記処理済みテキストを前記サーバに送信することを備える、方法。 Comprising transmitting the processed text to the server, the method.
  2. 前記入力テキストの少なくとも一部について、前記入力テキストの一部を変換しないよう決定することをさらに備える、請求項1に記載の方法。 Wherein for at least a portion of the input text, further comprising determining not to convert a portion of said input text The method of claim 1.
  3. 処理済みテキストを中間モジュールで受信すること、 Receiving the processed text in the middle module,
    前記処理済みテキストに逆処理を適用して元の入力テキストを取得することをさらに備える、請求項1に記載の方法。 Further comprising the method of claim 1 to obtain the application to the original input text reverse processing on the processed text.
  4. 前記元の入力テキストを前記クライアント装置に送信することをさらに備える、請求項3に記載の方法。 Further comprising the method of claim 3 to send the original input text to the client device.
  5. 前記入力テキストを変換すること、 Converting the input text,
    第1の鍵を用いて、前記入力テキストの実質的に全体を非確定的に変換して非確定的変換済みテキストを生成すること、 Using the first key, generating a substantially entire non-deterministic conversion to non-deterministic converted text of the input text,
    第2の鍵を用いて、前記入力テキストの複数の各入力トークンを確定的に変換して対応する複数の確定的変換済みトークンを生成することを含み、 Using the second key comprises generating a plurality of deterministic transformed token corresponding to deterministically convert each of the plurality of input token of the input text,
    前記処理済み入力テキストを前記サーバに送信することが、前記非確定的変換済みテキストおよび前記複数の確定的変換済みトークンを前記サーバに送信することを含む、請求項1に記載の方法。 Transmitting the processed input text to the server, comprising transmitting the non-deterministic converted text and the plurality of deterministic transformed token to the server, The method according to claim 1.
  6. 前記第1の鍵および前記第2の鍵が同一である、請求項5に記載の方法。 Wherein the first key and the second key are the same, method of claim 5.
  7. 前記入力テキストを確定的に変換することは、前記入力テキストに不可逆変換を実行することを含む、請求項5に記載の方法。 It includes performing the irreversible conversion on the input text, the method according to claim 5 which converts the input text deterministically.
  8. 前記入力テキストが、少なくとも1つの検索語を含む検索クエリーであり、 Wherein the input text is a search query including at least one search term,
    前記入力テキストを変換することは、第1の鍵を用いて、前記少なくとも1つの検索語を確定的に変換して対応する少なくとも1つの確定的変換済み検索語を生成することを含み、 Converting the input text, the method comprising using the first key to generate at least one deterministic converted search word corresponding to the determined transformed at least one search term,
    前記処理済み入力テキストを前記サーバに送信することは、前記少なくとも1つの確定的変換済み検索語を前記サーバに送信することを含む、請求項1に記載の方法。 It includes sending the at least one deterministic converted search term to the server, The method according to claim 1 for transmitting the processed input text to the server.
  9. 前記入力テキストを変換することは、 Converting the input text,
    第2の鍵を用いて、前記入力テキストの実質的に全体を非確定的に変換して非確定的変換済みテキストを生成すること、 Using a second key, to produce a substantially entire non-deterministic conversion to non-deterministic converted text of the input text,
    論理和演算子を用いて、前記少なくとも1つの確定的変換済み検索語と前記非確定的変換済みテキストとを結合して結合処理済みテキストを取得することを含み、 The method comprising using a logical OR operator, to obtain the at least one deterministic converted search words and coupling processed text the nondeterministic converted text and bonded to the,
    前記処理済み入力テキストを前記サーバに送信することは、前記結合処理済みテキストを前記サーバに送信することを含む、請求項8に記載の方法。 Transmitting the processed input text to the server includes transmitting the combined processed text to the server, The method of claim 8.
  10. 前記入力テキストを確定的に変換することは、前記入力テキストに可逆変換を実行することを含む、請求項9に記載の方法。 Converting the input text deterministically includes performing a reversible transform on said input text The method of claim 9.
  11. 前記処理済みテキストが処理済みテキスト文字記号セットから選択された文字記号列を含み、前記処理済みテキスト文字記号セットがユニコード文字記号セットの少なくとも1つの隣接サブセットを含む、請求項1に記載の方法。 It includes a character symbol string the processed text is selected from the processed text symbol set, the processed text character symbol set includes at least one neighboring subset of Unicode character symbol set A method according to claim 1.
  12. 前記少なくとも1つの隣接サブセットが、文字、数字、または両者のカテゴリの文字記号を含む、請求項11に記載の方法。 Wherein the at least one neighboring subsets, including letters, numbers, or the character symbol of both categories, The method of claim 11.
  13. 前記少なくとも1つの隣接サブセットが、ユニコード文字記号セットの1〜10のサブセット範囲を含む、請求項11に記載の方法。 Wherein the at least one neighboring subset comprises 1-10 subset range of Unicode character symbol set A method according to claim 11.
  14. 前記少なくとも1つの隣接サブセットが、ハングル、中国・日本・韓国(CJK)統合表意文字、およびそれらの組み合わせから成るユニコード文字記号セットから選択された、請求項11に記載の方法。 Wherein the at least one neighboring subsets, Korean, China, Japan and Korea (CJK) integration ideographs, and selected from the Unicode character symbol set consisting of combinations thereof The method of claim 11.
  15. 前記入力テキストを変換することが、前記入力テキストの複数の個別部分を変換することを含み、前記入力テキストの複数部分の少なくとも1つが最大の文字記号数以上を含まない、請求項1に記載の方法。 Converting the input text, the method comprising converting a plurality of individual portions of the input text, at least one of the plurality of portions of the input text does not contain more than the maximum number of letter symbols, as claimed in claim 1 Method.
  16. 前記入力テキストを確定的に変換することは、 Converting the input text deterministically is
    前記入力テキストに少なくとも1つの正規化規則を適用することにより前記入力テキストの少なくとも一部を正規化して少なくとも1つの正規化入力部分を取得すること、 Obtaining at least one normalized input part by normalizing at least a portion of the input text by applying at least one normalization rules to the input text,
    前記少なくとも1つの正規化入力部分を確定的に変換して少なくとも1つの変換済み正規化入力部分を取得すること、 Obtaining at least one transformed normalized input portion the determined transformed at least one normalized input part,
    前記少なくとも1つの変換済み正規化入力部分を前記処理済みテキストに含めることを含む、請求項1に記載の方法。 Comprising the inclusion of at least one transformed normalized input portion to said processed text The method of claim 1.
  17. 前記少なくとも1つの正規化規則が文字種変換を含む、請求項16に記載の方法。 Wherein at least one normalization rules character type conversion method according to claim 16.
  18. 前記少なくとも1つの正規化規則が、発音区別符号を有する文字記号の発音区別符号を有しない対応する文字記号への置換を含む、請求項16に記載の方法。 Wherein at least one normalization rules, including substitution of letter symbols corresponding no diacritical letter symbols with diacritics method of claim 16.
  19. 前記少なくとも1つの正規化規則が、合字の各構成文字記号への置換を含む、請求項16に記載の方法。 Wherein at least one normalization rules, including substitution of the constituent letter symbols ligature The method of claim 16.
  20. 前記少なくとも1つの正規化規則が、前記入力テキストに含まれる少なくとも1つの単語の対応する形態的異形への置換を含む、請求項16に記載の方法。 Wherein at least one normalization rules, including substitution of at least one word corresponding morphological variants included in the input text, the method according to claim 16.
  21. 前記少なくとも1つの正規化規則が、前記入力テキストに含まれる少なくとも1つの単語の複数の単語への置換を含む、請求項16に記載の方法。 Wherein at least one normalization rules, including substitution of a plurality of words at least one word included in the input text, the method according to claim 16.
  22. 前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定することは、前記入力テキストの単語が単語セットの要素であるか否かに基づいて前記単語を非確定的に変換することを決定することをさらに含む、請求項1に記載の方法。 Deterministic said input text, determining whether to convert any combination of non-deterministic or deterministic and non-deterministic, the word of the input text is based on whether or not an element of word sets further comprising the method of claim 1 determining the conversion of the words non deterministically Te.
  23. 前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定することは、前記入力テキストの単語の長さに基づいて前記単語を非確定的に変換することを決定することをさらに含む、請求項1に記載の方法。 Deterministic said input text, non-deterministic, or deterministic and determining whether to convert any combination of the non-deterministic, the non-deterministic the word based on the length of words of the input text further comprising the method of claim 1 to decide to convert.
  24. 前記入力テキストを変換することは、前記処理済みテキストの部分の順序を変更することをさらに含む、請求項1に記載の方法。 Converting the input text, further comprising modifying the sequence of a portion of the processed text The method of claim 1.
  25. 前記入力テキストを変換することは、少なくとも1つの余剰トークンを前記処理済みテキストに含めることをさらに含み、 Converting the input text, further comprising the inclusion of at least one surplus tokens to the processed text,
    前記少なくとも1つの余剰トークンが、秘密鍵へのアクセス後にのみ前記処理済みテキストに含まれる他のトークンと区別される、請求項1に記載の方法。 Wherein said at least one surplus tokens is distinguished from other tokens contained in the processed text only after access to the private key, the method according to claim 1.
  26. 前記中間モジュールが、前記クライアント装置に組み込まれたソフトウェアプラグインモジュールである、請求項1に記載の方法。 It said intermediate module, a software plug-in module incorporated in the client device, the method according to claim 1.
  27. 前記中間モジュールが、前記クライアント装置および前記サーバに接続された中間サーバコンピュータである、請求項1に記載の方法。 Said intermediate module, which is the client device and the intermediate server computer connected to a server, the method according to claim 1.
  28. 前記入力テキストが、テキスト情報および前記テキスト情報の処理方法に関する少なくとも1つの命令を含み、 Wherein the input text includes at least one instruction on how to process the text information and the text information,
    前記方法は、 The method,
    前記少なくとも1つの命令を処理して少なくとも1つの処理済み命令を取得すること、 Obtaining at least one processed instruction processing said at least one instruction,
    前記少なくとも1つの処理済み命令を前記処理済みテキストに含めること、 The inclusion of the at least one processed command to the processed text,
    前記処理済み命令の存在および前記処理済みテキストにおける位置を示す指標を前記処理済みテキストに含めることをさらに含む、請求項1に記載の方法。 Further comprising the method of claim 1, including an index indicating a position in the presence and the processed text of the processed command to the processed text.
  29. 前記少なくとも1つの処理命令がHTMLマークアップを含む、請求項28に記載の方法。 Wherein at least one processing instruction HTML markup The method of claim 28.
  30. 前記入力テキストの一部を変換しないよう決定することは、 Decide not to convert a portion of the input text,
    前記入力テキストに含まれる前記入力テキストの処理方法に関する少なくとも1つの処理命令を検出すること、 Detecting at least one processing instruction on how to process the input text included in the input text,
    前記少なくとも1つの処理命令を変換しないよう決定することをさらに含む、請求項2に記載の方法。 Further comprising the method of claim 2 to decide not to convert the at least one processing instruction.
  31. 前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定することは、 Deterministic said input text, non-deterministic, or deterministic and determining whether to convert any combination of the non-deterministic, the
    前記入力テキストに含まれる前記入力テキストの処理方法に関する少なくとも1つの処理命令を検出すること、 Detecting at least one processing instruction on how to process the input text included in the input text,
    前記少なくとも1つの処理命令を非確定的に変換することを決定することをさらに含む、請求項1に記載の方法。 Further comprising the method of claim 1 to decide to convert the at least one processing instruction non deterministically.
  32. クライアント装置とサーバ間で送信されるデータを保護するシステムであって、 A system for protecting data sent between the client device and the server,
    中間モジュールであって 入力テキストを取得し、 An intermediate module to get the input text,
    前記入力テキストを処理して処理済みテキストを取得するように構成された前記中間モジュールを備え、 With the intermediate module that is configured to acquire the processed text to process the input text,
    前記中間モジュールが、 Said intermediate module,
    前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定し、 It determines whether to convert the input text deterministic, in any combination of non-deterministic or deterministic and non-deterministic,
    前記決定に基づき、少なくとも1つの鍵を用いて、前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせで変換して処理済みテキストを取得することによって前記入力テキストを処理し、前記処理済みテキストを前記サーバに送信するように構成される、システム。 Based on the determination, using at least one key, deterministic said input text, said input text by acquiring conversion to the processed text in combination non-deterministic or deterministic and non-deterministic processing, and transmit the processed text to the server, the system.
  33. 前記中間モジュールがさらに、前記入力テキストの一部を変換しないよう決定するように構成された、請求項32に記載のシステム。 Wherein the intermediate module is further configured to determine not to convert a portion of said input text The system of claim 32,.
  34. 前記中間モジュールがさらに、 Wherein the intermediate module is further
    前記サーバから処理済みテキストを受信し、 It receives the processed text from the server,
    前記処理済みテキストに逆処理を適用して元の入力テキストを取得するように構成された、請求項32に記載のシステム。 By applying the inverse processing to the processed text configured to obtain the original input text, the system according to claim 32.
  35. 前記中間モジュールがさらに、前記元の入力テキストを前記クライアント装置に送信するように構成された、請求項34に記載のシステム。 It said intermediate module is further configured to the original input text to be sent to the client device, according to claim 34 systems.
  36. 前記中間モジュールがさらに、 Wherein the intermediate module is further
    第1の鍵を用いて、前記入力テキストの実質的に全体を非確定的に変換して非確定的変換済みテキストを生成し、 Using the first key to generate a non-deterministic converted text substantially convert the entire non-deterministically of the input text,
    第2の鍵を用いて、前記入力テキストの複数の各入力トークンを確定的に変換して対応する複数の確定的変換済みトークンを生成することによって前記入力テキストを変換するように構成され、 Using the second key is configured to convert the input text by generating a plurality of deterministic transformed token corresponding to deterministically convert each of the plurality of input token of the input text,
    前記中間モジュールが、前記非確定的変換済みテキストおよび前記複数の確定的変換済みトークンを前記サーバに送信することによって前記処理済み入力テキストを前記サーバに送信するように構成された、請求項32に記載のシステム。 Wherein the intermediate module is configured to transmit the processed input text to the server by transmitting the non-deterministic converted text and the plurality of deterministic transformed token to the server, to claim 32 system described.
  37. 前記第1の鍵および前記第2の鍵が同一である、請求項36に記載のシステム。 The first key and the same is the second key, the system of claim 36.
  38. 前記中間モジュールがさらに、前記入力テキストに不可逆変換を実行することによって前記入力テキストを確定的に変換するように構成された、請求項36に記載のシステム。 Wherein the intermediate module is further configured to convert the input text deterministically by performing the irreversible conversion on the input text, according to claim 36 systems.
  39. 前記入力テキストが、少なくとも1つの検索語を含む検索クエリーであり、 Wherein the input text is a search query including at least one search term,
    前記中間モジュールが、第1の鍵を用いて、前記少なくとも1つの検索語を確定的に変換して対応する少なくとも1つの確定的変換済み検索語を生成することにより、前記入力テキストを変換するように構成され、 It said intermediate module, using the first key, by generating at least one deterministic converted search word corresponding to the determined transformed at least one search term, so as to convert the input text is configured,
    前記中間モジュールがさらに、前記少なくとも1つの確定的変換済み検索語を前記サーバに送信することによって前記処理済み入力テキストを前記サーバに送信するように構成された、請求項32に記載のシステム。 It said intermediate module is further configured the processed input text by sending the at least one deterministic converted search term to the server to send to the server system of claim 32,.
  40. 前記中間モジュールがさらに、 Wherein the intermediate module is further
    第2の鍵を用いて、前記入力テキストの実質的に全体を非確定的に変換して非確定的変換済みテキストを生成し、 Using the second key to generate a non-deterministic converted text substantially convert the entire non-deterministically of the input text,
    論理和演算子を用いて、前記少なくとも1つの確定的変換済み検索語と前記非確定的変換済みテキストとを結合して結合処理済みテキストを取得することによって前記入力テキストを変換するように構成され、 Using the logical OR operator, the is configured to convert the input text by obtaining at least one deterministic converted search words and coupling processed text the nondeterministic converted text and bonded to the ,
    前記中間モジュールが、前記結合処理済みテキストを前記サーバに送信することによって前記処理済み入力テキストを前記サーバに送信するように構成された、請求項39に記載のシステム。 It said intermediate module, the processed input text by sending the combined processed text to the server is configured to send to the server, according to claim 39 systems.
  41. 前記中間モジュールが、前記入力テキストに可逆変換を実行することによって前記入力テキストを確定的に変換するように構成された、請求項40に記載のシステム。 Wherein the intermediate module is configured to convert the input text deterministically by performing a reversible transform on the input text, according to claim 40 systems.
  42. 前記処理済みテキストが処理済みテキスト文字記号セットから選択された文字記号列を含み、前記処理済みテキスト文字記号セットがユニコード文字記号セットの少なくとも1つの隣接サブセットを含む、請求項32に記載のシステム。 It includes a character symbol string selected the processed text from the processed text symbol set, the processed text character symbol set includes at least one neighboring subset of Unicode character symbol set, the system according to claim 32.
  43. 前記少なくとも1つの隣接サブセットが、文字、数字、または両者のカテゴリの文字記号を含む、請求項42に記載のシステム。 Wherein the at least one neighboring subsets, including letters, numbers, or the character symbol of both categories, The system of claim 42.
  44. 前記少なくとも1つの隣接サブセットが、ユニコード文字記号セットの1〜10のサブセット範囲を含む、請求項42に記載のシステム。 Wherein the at least one neighboring subset comprises 1-10 subset range of Unicode character symbol set, according to claim 42 systems.
  45. 前記少なくとも1つの隣接サブセットが、ハングル、中国・日本・韓国(CJK)統合表意文字、およびそれらの組み合わせから成る前記ユニコード文字記号セットから選択された、請求項42に記載のシステム。 Wherein the at least one neighboring subsets, Korean, China, Japan and Korea (CJK) integration ideographs, and selected from the Unicode character symbol set consisting of combinations of Claim 42 system.
  46. 前記中間モジュールが、前記入力テキストの複数の個別部分を変換することによって前記入力テキストを変換するように構成され、前記入力テキストの前記複数部分の少なくとも1つが最大の文字記号数以上を含まない、請求項32に記載のシステム。 It said intermediate module is configured to convert the input text by converting a plurality of individual portions of the input text, at least one of said plurality of portions of the input text does not contain more than the maximum number of letter symbols, the system of claim 32.
  47. 前記中間モジュールが、 Said intermediate module,
    前記入力テキストに少なくとも1つの正規化規則を適用することにより前記入力テキストの少なくとも一部を正規化して少なくとも1つの正規化入力部分を取得し、 Obtain at least one normalized input part by normalizing at least a portion of the input text by applying at least one normalization rules to the input text,
    前記少なくとも1つの正規化入力部分を確定的に変換して少なくとも1つの変換済み正規化入力部分を取得し、 Wherein obtain at least one transformed normalized input portion is deterministically converting at least one normalized input part,
    前記少なくとも1つの変換済み正規化入力部分を前記処理済みテキストに含めることによって前記入力テキストを確定的に変換するように構成された、請求項42に記載のシステム。 It said at least one transformed normalized input part configured to convert the input text deterministically by including the processed text, according to claim 42 systems.
  48. 前記少なくとも1つの正規化規則が文字種変換を含む、請求項47に記載のシステム。 Wherein at least one normalization rules comprises character type conversion system according to claim 47.
  49. 前記少なくとも1つの正規化規則が、発音区別符号を有する文字記号の発音区別符号を有しない対応する文字記号への置換を含む、請求項47に記載のシステム。 Wherein at least one normalization rules, including substitution of letter symbols corresponding no diacritical letter symbols with diacritics of claim 47 system.
  50. 前記少なくとも1つの正規化規則が、合字の各構成文字記号への置換を含む、請求項47に記載のシステム。 Wherein at least one normalization rules, including substitution of the constituent letter symbols ligature system of claim 47.
  51. 前記少なくとも1つの正規化規則が、前記入力テキストに含まれる少なくとも1つの単語の対応する形態的異形への置換を含む、請求項47に記載のシステム。 Wherein at least one normalization rules, including substitution of at least one word corresponding morphological variants included in the input text, according to claim 47 systems.
  52. 前記少なくとも1つの正規化規則が、前記入力テキストに含まれる少なくとも1つの単語の複数の単語への置換を含む、請求項47に記載のシステム。 Wherein at least one normalization rules, including substitution of a plurality of words at least one word included in the input text, according to claim 47 systems.
  53. 前記中間モジュールが、前記入力テキストの単語が単語セットの要素であるか否かに基づいて前記単語を非確定的に変換することを決定することによって、前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定するように構成された、請求項32に記載のシステム。 Wherein by the intermediate module determines that the word of the input text is converted to the word non-deterministic manner based on whether an element of word sets, deterministic said input text, non-deterministic, or configured to determine whether to convert any deterministic and in combination with non-deterministic system of claim 32,.
  54. 前記中間モジュールが、前記入力テキストの単語の長さに基づいて前記単語を非確定的に変換することを決定することによって、前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定するように構成された、請求項32に記載のシステム。 Said intermediate module, by determining the conversion of the words non deterministically based on the length of words of the input text, deterministic said input text, non-deterministic, or deterministic and non-deterministic configured to determine whether to convert any combination with system of claim 32.
  55. 前記中間モジュールが、前記処理済みテキストの部分の順序を変更することによって前記入力テキストを変換するように構成された、請求項32に記載のシステム。 Wherein the intermediate module is configured to convert the input text by changing the order of portions of the processed text, according to claim 32 systems.
  56. 前記中間モジュールが、少なくとも1つの余剰トークンを前記処理済みテキストに含めることによって前記入力テキストを変換するように構成され、前記少なくとも1つの余剰トークンが、秘密鍵へのアクセス後にのみ前記処理済みテキストに含まれる他のトークンと区別される、請求項32に記載のシステム。 It said intermediate module is configured to convert the input text by including at least one surplus tokens to the processed text, the at least one surplus tokens, the processed text only after access to the private key It is distinguished from other tokens contained system of claim 32.
  57. 前記中間モジュールが、前記クライアント装置に組み込まれたソフトウェアプラグインモジュールである、請求項32に記載のシステム。 It said intermediate module, a software plug-in module incorporated in the client device, according to claim 32 systems.
  58. 前記中間モジュールが、前記クライアント装置および前記サーバに接続された中間サーバコンピュータである、請求項32に記載のシステム。 Said intermediate module, which is the client device and the intermediate server computer connected to a server system of claim 32,.
  59. 前記入力テキストが、テキスト情報および前記テキスト情報の処理方法に関する少なくとも1つの命令を含み、 Wherein the input text includes at least one instruction on how to process the text information and the text information,
    前記中間モジュールがさらに、 Wherein the intermediate module is further
    前記少なくとも1つの命令を処理して少なくとも1つの処理済み命令を取得し、 The acquired at least one processed instructions to process at least one instruction,
    前記少なくとも1つの処理済み命令を前記処理済みテキストに含め、 Including said at least one processed command to the processed text,
    前記処理済み命令の存在および前記処理済みテキストにおける位置を示す指標を前記処理済みテキストに含めるように構成された、請求項32に記載のシステム。 An index indicating a position in the presence and the processed text of the processed instruction is configured to include the processed text system according to claim 32.
  60. 前記少なくとも1つの処理命令がHTMLマークアップを含む、請求項59に記載のシステム。 Wherein the at least one processing instruction including the HTML markup system of claim 59.
  61. 前記中間モジュールが、 Said intermediate module,
    前記入力テキストに含まれる前記入力テキストの処理方法に関する少なくとも1つの処理命令を検出し、 Detecting at least one processing instruction on how to process the input text included in the input text,
    前記少なくとも1つの処理命令を変換しないよう決定することによって前記入力テキストの一部を変換しないよう決定するように構成された、請求項33に記載のシステム。 Wherein configured to determine not to convert a portion of the input text by determining not to convert at least one processing instruction system of claim 33.
  62. 前記中間モジュールが、 Said intermediate module,
    前記入力テキストに含まれる前記入力テキストの処理方法に関する少なくとも1つの処理命令を検出し、 Detecting at least one processing instruction on how to process the input text included in the input text,
    前記少なくとも1つの処理命令を非確定的に変換することを決定することによって前記入力テキストを確定的、非確定的、または確定的と非確定的との組み合わせのいずれで変換するかを決定するように構成された、請求項32に記載のシステム。 To determine whether to convert the at least deterministic said input text one process instruction by determining the conversion nondeterministic, in any combination of non-deterministic or deterministic and non-deterministic configured system of claim 32.
  63. サーバおよびクライアント装置を備えたシステムであって、格納されたテキストデータに対する要求への応答があった場合に、前記サーバが要求テキストデータの少なくとも1つの不完全要素を含む処理済みテキストを返すように構成される、前記システムにおける方法であって、 A system including a server and a client device, when there is a response to a request for the stored text data, to return the processed text the server includes at least one incomplete elements of the requested text data configured, a method in the system,
    前記クライアント装置から中間モジュールへの複数の入力テキストを取得すること、 Acquiring a plurality of input text to the intermediate module from the client device,
    前記中間モジュールで前記複数の入力テキストを処理して対応する複数の処理済みテキストを取得すこと、 It to obtain the plurality of processed text corresponding processing the plurality of input text in said intermediate module,
    前記複数の処理済みテキストの少なくとも1つの完全な処理済み要素を前記中間モジュールが管理する記憶装置に格納すること、 Storing at least one complete processed elements of the plurality of processed text to the storage unit in which the intermediate module manages,
    前記複数の処理済みテキストを前記サーバに送信すること、 Transmitting the plurality of processed text to the server,
    要求があった場合に、要求処理済みレコードの少なくとも1つの不完全要素を含む前記サーバからの戻り処理済みテキストを前記中間モジュールで受信すること、 If there is a request, a return processed text from the server containing the at least one defective element of the request processed record be received in the intermediate module,
    前記各不完全要素にマッチする少なくとも1つの処理済み要素について前記記憶装置を検索すること、 Searching the storage device for at least one processed elements matching to each incomplete element,
    前記少なくとも1つの完全な処理済み要素を用いて未処理入力テキストを取得することを備える、方法。 It comprises obtaining the raw input text using the at least one complete processed, method.
  64. 前記未処理入力テキストを前記クライアント装置に供給することをさらに含む、請求項63に記載の方法。 Further comprising the method of claim 63 that supplies the raw input text to the client device.
  65. 前記処理済み要素が、前記処理済みテキストまたは前記処理済みテキストに含まれる単語を含む、請求項63に記載の方法。 The treated element comprises a word contained in the processed text or the processed text The method of claim 63.
  66. 前記要求が、検索要求、記録要求、および報告要求から成る群のうちの少なくとも1つの要求である、請求項65に記載の方法。 The request is a search request, the recording request, and of the group consisting of reporting requirements is at least one request, The method according to claim 65.
  67. クライアント装置とサーバとの間で送信されるデータを保護するシステムであって、格納されたテキストデータに対する要求への応答があった場合に、前記サーバが要求テキストデータの少なくとも1つの不完全要素を含む処理済みテキストを返すように構成された前記システムであって、 A system for protecting data sent between the client device and the server, if there is a response to a request for the stored text data, at least one incomplete elements of the server request text data a said system configured to return the processed text including,
    中間モジュールであって、 An intermediate module,
    複数の入力テキストを取得し、 Obtains a plurality of input text,
    前記複数の入力テキストを処理して対応する複数の処理済みテキストを取得し、 Obtaining a plurality of processed text corresponding processing the plurality of input text,
    前記複数の処理済みテキストの少なくとも1つの完全な処理済み要素を管理対象の記憶装置に格納し、 Stored in the managed storage device at least one complete processed elements of the plurality of processed text,
    前記複数の処理済みテキストをサーバに送信し、 Transmitting the plurality of processed text to the server,
    要求があった場合に、要求処理済みレコードの少なくとも1つの不完全要素を含む前記サーバからの戻り処理済みテキストを受信し、 When required, the received return processed text from the server containing at least one defective element of the request records processed,
    前記各不完全要素に対応する少なくとも1つの処理済み要素について前記記憶装置を検索し、 The searches the storage device for at least one processed elements corresponding to each defective element,
    前記少なくとも1つの完全な処理済み要素を用いて未処理入力テキストを取得するように構成された前記中間モジュールを備える、システム。 Wherein comprising the intermediate module that is configured to acquire the raw input text using at least one complete processed element system.
  68. 前記中間モジュールがさらに、前記未処理入力テキストを前記クライアント装置に供給するように構成された、請求項67に記載のシステム。 Wherein the intermediate module is further the configured untreated input text so as to supply to the client device, according to claim 67 systems.
  69. 前記処理済み要素が、前記処理済みテキストまたは前記処理済みテキストに含まれる単語を含む、請求項67に記載のシステム。 The treated element comprises a word contained in the processed text or the processed text system according to claim 67.
  70. 前記要求が、検索要求、記録要求、および報告要求から成る群のうちの少なくとも1つの要求である、請求項69に記載のシステム。 The request is a search request, a recording request, and at least one request of a group consisting reporting requirements, according to claim 69 systems.
  71. サーバおよびクライアント装置を備えたシステムであって、前記サーバが、複数の変換のうちの少なくとも1つを適用することによって、前記クライアント装置から受信したテキストを変換するように構成される、前記システムにおける方法であって、 A system comprising a server and a client device, the server, by applying at least one of the plurality of conversion, configured to convert the text received from the client device, in the system there is provided a method,
    前記クライアント装置からの入力テキストを中間モジュールで受信すること、 Receiving an input text from the client device at an intermediate module,
    前記入力テキストを前記中間モジュールで処理して処理済みテキストを取得することであって、前記処理済みテキストにベイトを含めることを含む前記取得すること、 The method comprising: obtaining a processed text processing the input text by the intermediate module to the acquisition comprises the inclusion of bait on the processed text,
    前記処理済みテキストを前記サーバに送信すること、 Transmitting the processed text to the server,
    要求があった場合に、前記サーバが前記複数の変換のうちの少なくとも1つを前記処理済みテキストに適用して取得した変換・処理済みテキストを前記サーバから前記中間モジュールで受信すること、 If there is a request, that the server receives the conversion-processed text at least one acquired by applying the processed text in the plurality of conversion in said intermediate module from the server,
    前記処理済みテキストと前記変換・処理済みテキストとの比較に基づいて、前記サーバが適用する前記変換のうちの少なくとも1つを前記中間モジュールにより決定することを備える、方法。 Based on the comparison of the conversion-processed text and the processed text comprises determining at least one of the conversion by the server to apply the said intermediate module, method.
  72. 前記処理済みテキストに逆変換を適用して未処理入力テキストを取得すること、 Obtaining a raw input text by applying the inverse transform to the processed text,
    前記決定した少なくとも1つの変換に基づいて前記未処理入力テキストを修正することをさらに備える、請求項71に記載の方法。 Further comprising the method of claim 71 to modify the raw input text based on at least one transformation the determined.
  73. 前記修正した未処理入力テキストを前記クライアント装置に送信することをさらに備える、請求項72に記載の方法。 Further comprising the method of claim 72 to send the raw input text that said modified to the client device.
  74. 前記複数の変換のうちの少なくとも1つの変換が、前記処理済みテキストの少なくとも1つの変換可能な文字記号の対応する置換文字記号または置換文字記号列への置換を含み、 Wherein the at least one transformation of a plurality of conversion comprises a substitution of the corresponding substituted letter symbols or replacement character symbol string of at least one convertible character symbol of the processed text,
    前記処理済みテキストにベイトを含めることは、前記処理済みテキストに前記少なくとも1つの変換可能な文字記号を含めることを含む、請求項71に記載の方法。 The inclusion of bait on the processed text, including the inclusion of the said processed text at least one convertible letter symbols The method of claim 71.
  75. 前記処理済みテキストに逆変換を適用して未処理入力テキストを取得すること、 Obtaining a raw input text by applying the inverse transform to the processed text,
    前記未処理入力テキストの少なくとも1つの変換可能な文字記号を前記対応する置換文字記号または置換文字記号列に置換することによって前記未処理入力テキストを修正することをさらに備える、請求項74に記載の方法。 Further comprising modifying the raw input text by replacing at least one convertible character symbol of the unprocessed input text substitution letter symbols or replacement character symbol string the corresponding, according to claim 74 Method.
  76. 前記修正した未処理入力テキストを前記クライアント装置に送信することをさらに備える、請求項75に記載の方法。 Further comprising the method of claim 75 to send the raw input text that said modified to the client device.
  77. 前記複数の変換のうちの少なくとも1つの変換が、前記処理済みテキストにおけるHTMLタグの省略を含み、 At least one transformation of the plurality of conversion comprises the omission of the HTML tags in the processed text,
    前記処理済みテキストにベイトを含めることが、前記処理済みテキストにHTMLタグを含めることを含む、請求項71に記載の方法。 The inclusion of bait on the processed text, including the inclusion of HTML tags on the processed text The method of claim 71.
  78. 前記処理済みテキストに逆変換を適用して未処理入力テキストを取得すること、 Obtaining a raw input text by applying the inverse transform to the processed text,
    前記未処理入力テキストに含まれるHTMLタグを省略することによって前記未処理入力テキストを修正すること、 Modifying the raw input text by omitting the HTML tags included in the raw input text,
    前記修正した未処理入力テキストを前記クライアント装置に送信することをさらに備える、請求項77に記載の方法。 Further comprising the method of claim 77 to send the raw input text that said modified to the client device.
  79. クライアント装置とサーバとの間で送信されるデータを保護するシステムであって、前記サーバが、複数の変換のうちの少なくとも1つを適用することによって、前記クライアント装置から受信したテキストを変換するように構成されたシステムであって、 A system for protecting data sent between the client device and the server, the server, by applying at least one of the plurality of conversion, to convert the text received from the client device a system configured to,
    中間モジュールであって、 An intermediate module,
    入力テキストを受信し、 Receiving an input text,
    前記入力テキストを処理し、ベイトを含めることによって処理済みテキストを取得し、 Processing said input text to obtain a processed text by including a bait,
    前記処理済みテキストを前記サーバに送信し、 It transmits the processed text to the server,
    要求があった場合に、前記サーバが前記複数の変換のうちの少なくとも1つを前記処理済みテキストに適用して取得した変換・処理済みテキストを前記サーバから受信し、 When required, it receives the conversion-processed text by the server acquired by applying at least one of the plurality of conversion to the processed text from the server,
    前記処理済みテキストと前記変換・処理済みテキストとの比較に基づいて、前記サーバが適用する前記変換のうちの少なくとも1つを決定するように構成された前記中間モジュールを備える、システム。 Based on the comparison of the conversion-processed text and the processed text, comprising the intermediate module configured to determine at least one of the conversion by the server to apply the system.
  80. 前記中間モジュールがさらに、 Wherein the intermediate module is further
    前記処理済みテキストに逆変換を適用して未処理入力テキストを取得し、 Gets the raw input text by applying the inverse transform to the processed text,
    前記決定した少なくとも1つの変換に基づいて前記未処理入力テキストを修正するように構成された、請求項79に記載のシステム。 Based on said at least one converted the determined configured to modify the raw input text The system of claim 79.
  81. 前記中間モジュールがさらに、前記修正した未処理入力テキストを前記クライアント装置に送信するように構成された、請求項80に記載のシステム。 Wherein the intermediate module is further a raw input text that the modified configured to transmit to said client device, according to claim 80 systems.
  82. 前記複数の変換のうちの少なくとも1つの変換が、前記処理済みテキストの少なくとも1つの変換可能な文字記号の対応する置換文字記号または置換文字記号列への置換を含み、 Wherein the at least one transformation of a plurality of conversion comprises a substitution of the corresponding substituted letter symbols or replacement character symbol string of at least one convertible character symbol of the processed text,
    前記中間モジュールが、前記処理済みテキストに前記少なくとも1つの変換可能な文字記号を含めることにより、前記入力テキストを処理して前記処理済みテキストを取得するように構成された、請求項79に記載のシステム。 Said intermediate module by including the said processed text at least one convertible letter symbols, processing the input text configured to obtain the processed text, according to claim 79 system.
  83. 前記中間モジュールがさらに、 Wherein the intermediate module is further
    前記処理済みテキストに逆変換を適用して未処理入力テキストを取得し、 Gets the raw input text by applying the inverse transform to the processed text,
    前記未処理入力テキストの少なくとも1つの変換可能な文字記号を前記対応する置換文字記号または置換文字記号列に置換することによって前記未処理入力テキストを修正するように構成された、請求項82に記載のシステム。 Wherein configured to modify the raw input text by replacing at least one convertible letter symbols unprocessed input text substitution letter symbols or replacement character symbol string the corresponding, according to claim 82 system.
  84. 前記中間モジュールがさらに、前記修正した未処理入力テキストを前記クライアント装置に送信するように構成された、請求項83に記載のシステム。 Wherein the intermediate module is further a raw input text that the modified configured to transmit to said client device, according to claim 83 systems.
  85. 前記複数の変換のうちの少なくとも1つの変換が、前記処理済みテキストにおけるHTMLタグの省略を含み、 At least one transformation of the plurality of conversion comprises the omission of the HTML tags in the processed text,
    前記中間モジュールが、前記処理済みテキストにHTMLタグを含めることにより、前記入力テキストを処理して前記処理済みテキストを取得するように構成された、請求項79に記載のシステム。 It said intermediate module, by including an HTML tag in the processed text, configured to obtain the processed text to process the input text, according to claim 79 systems.
  86. 前記中間モジュールがさらに、 Wherein the intermediate module is further
    前記処理済みテキストに逆変換を適用して未処理入力テキストを取得し、 Gets the raw input text by applying the inverse transform to the processed text,
    前記未処理入力テキストに含まれるHTMLタグを省略することによって前記未処理入力テキストを修正し、 Correct the raw input text by omitting the HTML tags included in the raw input text,
    前記修正した未処理入力テキストを前記クライアント装置に送信するように構成された、請求項85に記載のシステム。 Untreated input text that the modified configured to transmit to said client device, system according to claim 85.
  87. クライアント装置とサーバとの間で送信されるデータを保護する方法であって、 A method of protecting data sent between the client device and the server,
    中間モジュールで入力テキストを取得すること、 To get the input text in the middle module,
    順序維持変換を適用することによって前記中間モジュールで前記入力テキストを処理することであって、前記順序維持変換が、 The method comprising processing the input text by the intermediate module by applying a sequence maintain conversion, the order maintain conversion,
    前記入力テキストに基づいて、照合規則に応じた入力テキスト候補セットにおける前記入力テキストの相対順序を示す順序情報を生成すること、 On the basis of the input text, generating order information indicating the relative order of the input text in the input text candidate set corresponding to the collation rules
    前記入力テキストを変換して処理済みテキストを取得することを含む、前記入力テキストを処理すること、 Comprises obtaining the processed text to convert the input text, processing the input text,
    前記処理済みテキストを前記サーバに送信することを備える、方法。 Comprising transmitting the processed text to the server, the method.
  88. 前記順序情報を接頭辞として前記処理済み入力データに付加するとともに、結合した順序情報および処理済み入力データを前記サーバに送信することにより、前記処理済み入力テキストに関連して前記順序情報を前記サーバに送信することをさらに備える、請求項87に記載の方法。 With added to the processed input data the order information as a prefix by sending the order information and the processed input data bound to the server, the server the sequence information in relation to the processed input text further comprising the method of claim 87 to transmit to.
  89. 前記順序情報が、前記入力テキストの不完全型に基づいて生成される、請求項87に記載の方法。 The order information is generated based on the incomplete type of the input text, the method according to claim 87.
  90. 前記順序情報が、前記入力テキストの複数の不完全単語に基づいて、前記単語の登場順に生成される、請求項89に記載の方法。 The sequence information, based on a plurality of incomplete words of the input text is generated order of appearance of the words, the method according to claim 89.
  91. 前記順序情報を生成することは、秘密鍵依存の順序維持関数を前記入力テキストに適用することを含む、請求項87に記載の方法。 Generating the order information comprises applying an order maintenance function of the secret key depending on the input text, the method according to claim 87.
  92. 前記順序維持関数が数値単調増加関数を採用し、前記順序維持関数を適用することは、 Said order maintenance function adopts numerical monotonically increasing function, applying the ordering maintenance function,
    前記入力テキストの少なくとも一部に基づいて入力数値を取得すること、 Obtaining an input numeric value based on at least a portion of said input text,
    入力範囲および出力範囲を設けること、 Providing the input range and output range,
    秘密鍵に基づいて、前記入力範囲および出力範囲を2つの入力範囲および2つの出力範囲に分割すること、 Based on the secret key, splitting the input range and output range the two input ranges and two output range,
    前記入力数値を含む入力範囲に応じて、前記分割した範囲から一対の入出力範囲を選択すること、 In response to an input range that includes the input numerical value, selecting a pair of input and output range of the above-mentioned range division,
    前記出力範囲が所定のパラメータを下回って最終出力範囲となるまで、前記分割および選択を反復的に繰り返すこと、 Until said output range becomes the final output range below a predetermined parameter, iteratively repeating it to the divided and selected,
    前記最終出力範囲内の出力数値を返すことを備える、請求項91に記載の方法。 It comprises returning the output value of the said final output range, method according to claim 91.
  93. クライアント装置とサーバ間で送信されるデータを保護するシステムであって、 A system for protecting data sent between the client device and the server,
    中間モジュールであって、 An intermediate module,
    入力テキストを取得し、 To get the input text,
    順序維持変換であって、 And maintaining an order conversion,
    前記入力テキストに基づいて、照合規則に応じた前記入力テキストの候補セットにおける前記入力テキストの相対順序を示す順序情報を生成すること、 On the basis of the input text, generating order information indicating the relative order of the input text in the candidate set of input text in accordance with the matching rules,
    前記入力テキストを変換して処理済みテキストを取得することを含む前記順序維持変換を適用することによって前記入力テキストを処理し、 Processing said input text by applying the sequence maintaining transformations including obtaining the processed text to convert the input text,
    前記処理済みテキストを前記サーバに送信するように構成された前記中間モジュールを備える、システム。 Comprising the intermediate module configured to transmit the processed text to the server, the system.
  94. 前記中間モジュールが、前記順序情報を接頭辞として前記処理済み入力データに付加するとともに、結合した順序情報および処理済み入力データを前記サーバに送信することにより、前記処理済み入力テキストに関連して前記順序情報を前記サーバに送信するように構成された、請求項93に記載のシステム。 Wherein the intermediate module, the well as added to the processed input data sequence information as a prefix by sending the order information and the processed input data bound to the server, in connection with the processed input text the order information is configured to transmit to the server system of claim 93.
  95. 前記中間モジュールが、前記入力テキストの不完全型に基づいて前記順序情報を生成するように構成された、請求項93に記載のシステム。 Wherein the intermediate module is configured to generate the order information on the basis of the incomplete type of the input text, according to claim 93 systems.
  96. 前記中間モジュールが、前記入力テキストの複数の不完全単語に基づいて、前記単語の登場順に前記順序情報を生成するように構成された、請求項95に記載のシステム。 Said intermediate module, based on the plurality of incomplete words of the input text, which is configured to generate the order information to the order of appearance of the word, according to claim 95 systems.
  97. 前記中間モジュールが、秘密鍵依存の順序維持関数を前記入力テキストに適用することによって前記順序情報を生成するように構成された、請求項93に記載のシステム。 Wherein the intermediate module is configured to generate the order information by applying a maintaining an order function of the secret key depending on the input text, according to claim 93 systems.
  98. 前記順序維持関数が数値単調増加関数を採用し、前記中間モジュールが、 The Order Maintenance function adopts numerical monotonically increasing function, the intermediate module,
    前記入力テキストの少なくとも一部に基づいて入力数値を取得し、 Get the input numerical value based on at least a portion of said input text,
    入力範囲および出力範囲を設け、 The provided input range and output range,
    秘密鍵に基づいて、前記入力範囲および出力範囲を2つの入力範囲および2つの出力範囲に分割し、 Based on the secret key, divides the input range and output range the two input ranges and two output range,
    前記入力数値を含む入力範囲に応じて、前記分割した範囲から一対の入出力範囲を選択し、 In response to an input range that includes the input numerical value, selects a pair of input and output range of the above-mentioned range division,
    前記出力範囲が所定のパラメータを下回って最終出力範囲となるまで、前記分割および選択を反復的に繰り返し、 Until said output range becomes the final output range below a predetermined parameter, iteratively repeating the division and selection,
    前記最終出力範囲内の出力数値を返すことによって前記順序維持関数を適用するように構成された、請求項97に記載のシステム。 The final configured to apply the order maintenance function by returning the output value of the output range, according to claim 97 systems.
  99. サーバ、クライアント装置、および中間モジュールを備えたシステムであって、前記サーバが、前記クライアント装置が供給する入力データに少なくとも1つの機能を適用するように構成され、前記中間モジュールが、前記クライアント装置から入力データを受信し、前記入力データを処理済みデータに変換し、前記処理済みデータを前記サーバに送信するように構成された、前記システムにおける方法であって、 Server, a system comprising a client apparatus, and the intermediate modules, the server, the is configured to the client device applies at least one function to the input data supplied, said intermediate module, from the client device receiving input data, converting the input data to the processed data, constituted the processed data to be sent to the server, a method in the system,
    クライアント装置からの入力データを前記中間モジュールで受信すること、 Receiving input data from the client device at the intermediate module,
    前記入力データを前記中間モジュールで阻止して前記サーバに送信しないようにすること、 Possible not to transmit to the server by preventing the input data in said intermediate module,
    前記中間モジュールにより前記入力データに機能を適用すること、 Applying functions to the input data by the intermediate module,
    前記機能の結果に基づいて、前記中間モジュールにより前記クライアント装置への少なくとも1つのメッセージを生成することを備える、方法。 Based on the results of the function comprises generating at least one message to the client device by the intermediate module, a method.
  100. 前記クライアント装置からの前記少なくとも1つのメッセージに対する応答を前記中間モジュールで取得すること、 Obtaining a response to the at least one message from the client device at the intermediate module,
    前記応答に基づいて、前記入力データを処理して処理済み入力データを取得すること、 On the basis of the response, to obtain the processed input data by processing said input data that,
    前記処理済み入力テキストを前記サーバに送信することをさらに備える、請求項99に記載の方法。 Further comprising the method of claim 99 and transmitting the processed input text to the server.
  101. 前記機能がスペルチェック機能であり、前記メッセージが前記入力データに関する前記スペルチェック機能の結果である、請求項99に記載の方法。 Said function is a spell checker, the message is a result of the spell check function for said input data, The method of claim 99.
  102. 前記機能が前記入力データに関する書式チェック機能であり、前記入力データが第1の書式を有し、前記メッセージが、前記第1の書式と異なる第2の書式に前記入力データを設定する要求である、請求項99に記載の方法。 Said function is a format check function regarding said input data, said input data has a first format, the message is the request to set the input data to a second format different from the first format the method of claim 99.
  103. 前記第1の書式がデルタ符号化書式であり、前記第2の書式が完全入力テキスト書式である、請求項102に記載の方法。 Wherein the first format is a delta coding format, the second format is complete input text formatting method of claim 102.
  104. 前記中間モジュールが、前記クライアント装置に組み込まれたソフトウェアプラグインモジュールである、請求項99に記載の方法。 It said intermediate module, a software plug-in module incorporated in the client device, The method of claim 99.
  105. 前記中間モジュールが、前記クライアント装置および前記サーバに接続された中間サーバコンピュータである、請求項99に記載の方法。 Said intermediate module, which is the client device and the intermediate server computer connected to a server, the method according to claim 99.
  106. クライアント装置とサーバとの間で送信されるデータを保護するシステムであって、クライアント装置から入力データを受信し、前記入力データを処理済みデータに変換し、前記処理済みデータをサーバに送信するように構成された中間モジュールを備えた前記システムであって、 A system for protecting data sent between the client device and a server, to receive the input data from the client device, converting the input data to the processed data, and transmits the processed data to the server a said system comprising an intermediate module configured to,
    前記サーバは、供給されたデータに少なくとも1つの機能を適用するように構成され、 The server is configured to apply at least one function on the supplied data,
    前記中間モジュールは、 Said intermediate module,
    前記クライアント装置から前記入力データを受信し、 Receiving the input data from the client device,
    前記入力データを阻止して前記サーバに送信しないようにし、 By preventing the input data so as not to transmit to said server,
    前記入力データに前記少なくとも1つの機能を適用し、 Wherein applying at least one function to the input data,
    前記機能の結果に基づいて、前記クライアント装置への少なくとも1つのメッセージを生成するように構成される、システム。 Based on the results of the function, configured to generate at least one message to the client device, system.
  107. 前記中間モジュールがさらに、 Wherein the intermediate module is further
    前記クライアント装置からの前記少なくとも1つのメッセージに対する応答を取得し、 Get a response to the at least one message from the client device,
    前記応答に基づいて、前記入力データを処理して処理済み入力データを取得し、 Based on the response, and processing the input data obtains the processed input data,
    前記処理済み入力データを前記サーバに送信するように構成された、請求項106に記載のシステム。 The processed input data is configured to transmit to the server system of claim 106.
  108. 前記機能がスペルチェック機能であり、前記メッセージが前記入力データに関する前記スペルチェック機能の結果である、請求項106に記載のシステム。 It said function is a spell checker, the message is a result of the spell check function for said input data, the system of claim 106.
  109. 前記機能が前記入力データに関する書式チェック機能であり、前記入力データが第1の書式を有し、前記メッセージが、前記第1の書式と異なる第2の書式に前記入力データを設定する要求である、請求項106に記載のシステム。 Said function is a format check function regarding said input data, said input data has a first format, the message is the request to set the input data to a second format different from the first format the system of claim 106.
  110. 前記第1の書式がデルタ符号化書式であり、前記第2の書式が完全入力テキスト書式である、請求項109に記載のシステム。 Wherein the first format is a delta coding format, the second format is complete input text formatting system of claim 109.
  111. 前記中間モジュールが、前記クライアント装置に組み込まれたソフトウェアプラグインモジュールである、請求項106に記載のシステム。 It said intermediate module, a software plug-in module incorporated in the client device, according to claim 106 system.
  112. 前記中間モジュールが、前記クライアント装置および前記サーバに接続された中間サーバコンピュータである、請求項106に記載のシステム。 It said intermediate module, which is the client device and the intermediate server computer connected to a server, according to claim 106 system.
JP2012546558A 2009-12-31 2010-12-30 Of data transmitted over the network encryption and decryption system, apparatus, and method Active JP5735539B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US29139809 true 2009-12-31 2009-12-31
US61/291,398 2009-12-31
US30620710 true 2010-02-19 2010-02-19
US61/306,207 2010-02-19
PCT/IL2010/001097 WO2011080745A3 (en) 2009-12-31 2010-12-30 System, apparatus and method for encryption and decryption of data transmitted over a network

Publications (2)

Publication Number Publication Date
JP2013516642A true true JP2013516642A (en) 2013-05-13
JP5735539B2 JP5735539B2 (en) 2015-06-17

Family

ID=44041607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012546558A Active JP5735539B2 (en) 2009-12-31 2010-12-30 Of data transmitted over the network encryption and decryption system, apparatus, and method

Country Status (5)

Country Link
EP (1) EP2520063A2 (en)
JP (1) JP5735539B2 (en)
CN (1) CN102782692A (en)
CA (1) CA2786058C (en)
WO (1) WO2011080745A3 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016095612A (en) * 2014-11-13 2016-05-26 エヌ・ティ・ティ・コミュニケーションズ株式会社 Data protection device, data protection method, and data protection program

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8548170B2 (en) 2003-12-10 2013-10-01 Mcafee, Inc. Document de-registration
US9253154B2 (en) 2008-08-12 2016-02-02 Mcafee, Inc. Configuration management for a capture/registration system
US9002976B2 (en) 2008-09-15 2015-04-07 Vaultive Ltd System, apparatus and method for encryption and decryption of data transmitted over a network
US8473442B1 (en) 2009-02-25 2013-06-25 Mcafee, Inc. System and method for intelligent state management
US8447722B1 (en) 2009-03-25 2013-05-21 Mcafee, Inc. System and method for data mining and security policy management
US8806615B2 (en) * 2010-11-04 2014-08-12 Mcafee, Inc. System and method for protecting specified data combinations
US20130246336A1 (en) 2011-12-27 2013-09-19 Mcafee, Inc. System and method for providing data protection workflows in a network environment
CN102816055B (en) * 2012-08-24 2015-08-26 青岛琅琊台集团股份有限公司 Desalination membrane separation technology utilizing process waste liquor Acid Fermentation Process itaconic new
CN104980397A (en) * 2014-04-03 2015-10-14 腾讯科技(深圳)有限公司 Instant messaging method, system and terminal
WO2018102861A1 (en) * 2016-12-08 2018-06-14 Commonwealth Scientific And Industrial Research Organisation Secure text analytics

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5958006A (en) * 1995-11-13 1999-09-28 Motorola, Inc. Method and apparatus for communicating summarized data
JP2001147934A (en) * 1999-11-19 2001-05-29 Nippon Telegr & Teleph Corp <Ntt> Enciphered information distributing method and device capable of retrieving information
JP2004101905A (en) * 2002-09-10 2004-04-02 Sharp Corp Information display device
JP2005130352A (en) * 2003-10-27 2005-05-19 Victor Co Of Japan Ltd Decoder
JP2005242740A (en) * 2004-02-27 2005-09-08 Open Loop:Kk Program, storage medium and information processor in information security system
JP2005284915A (en) * 2004-03-30 2005-10-13 Canon Inc Information retrieval device and method, information retrieval system, and control method for the same
JP2007243650A (en) * 2006-03-09 2007-09-20 Nec Corp Decoding method and decoding apparatus
JP2007251585A (en) * 2006-03-16 2007-09-27 Nec Corp Demultiplexer, and demultiplexing method
JP2008301335A (en) * 2007-06-01 2008-12-11 Kddi R & D Laboratories Inc Video signal switching apparatus

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001047205A3 (en) 1999-12-22 2002-07-11 Tashilon Ltd Enhanced computer network encryption using downloaded software objects
US7165175B1 (en) 2000-09-06 2007-01-16 Widevine Technologies, Inc. Apparatus, system and method for selectively encrypting different portions of data sent over a network
US7484107B2 (en) * 2004-04-15 2009-01-27 International Business Machines Corporation Method for selective encryption within documents

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5958006A (en) * 1995-11-13 1999-09-28 Motorola, Inc. Method and apparatus for communicating summarized data
JP2001147934A (en) * 1999-11-19 2001-05-29 Nippon Telegr & Teleph Corp <Ntt> Enciphered information distributing method and device capable of retrieving information
JP2004101905A (en) * 2002-09-10 2004-04-02 Sharp Corp Information display device
JP2005130352A (en) * 2003-10-27 2005-05-19 Victor Co Of Japan Ltd Decoder
JP2005242740A (en) * 2004-02-27 2005-09-08 Open Loop:Kk Program, storage medium and information processor in information security system
JP2005284915A (en) * 2004-03-30 2005-10-13 Canon Inc Information retrieval device and method, information retrieval system, and control method for the same
JP2007243650A (en) * 2006-03-09 2007-09-20 Nec Corp Decoding method and decoding apparatus
JP2007251585A (en) * 2006-03-16 2007-09-27 Nec Corp Demultiplexer, and demultiplexing method
JP2008301335A (en) * 2007-06-01 2008-12-11 Kddi R & D Laboratories Inc Video signal switching apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016095612A (en) * 2014-11-13 2016-05-26 エヌ・ティ・ティ・コミュニケーションズ株式会社 Data protection device, data protection method, and data protection program

Also Published As

Publication number Publication date Type
WO2011080745A3 (en) 2011-11-10 application
CN102782692A (en) 2012-11-14 application
WO2011080745A2 (en) 2011-07-07 application
JP5735539B2 (en) 2015-06-17 grant
CA2786058A1 (en) 2011-07-07 application
CA2786058C (en) 2017-03-28 grant
EP2520063A2 (en) 2012-11-07 application

Similar Documents

Publication Publication Date Title
Churches et al. Some methods for blindfolded record linkage
US7237268B2 (en) Apparatus and method for storing and distributing encrypted digital content and functionality suite associated therewith
Aura et al. Scanning electronic documents for personally identifiable information
US20100290623A1 (en) Protection of encryption keys in a database
US8065739B1 (en) Detecting policy violations in information content containing data in a character-based language
US20020111133A1 (en) Data processing appliance
US20090300770A1 (en) Mechanism to search information content for preselected data
US7512814B2 (en) Secure and searchable storage system and method
US7496767B2 (en) Secure content objects
US20090044282A1 (en) System and Method for Generating and Displaying a Keyboard Comprising a Random Layout of Keys
US20060005247A1 (en) Method and system for detecting when an outgoing communication contains certain content
US6185684B1 (en) Secured document access control using recipient lists
US20130198521A1 (en) Secure File Drawer and Safe
US20020141588A1 (en) Data security for digital data storage
US20060143459A1 (en) Method and system for managing personally identifiable information and sensitive information in an application-independent manner
US20090228967A1 (en) Flexible Scalable Application Authorization For Cloud Computing Environments
US7418737B2 (en) Encrypted data file transmission
US20080181396A1 (en) Data obfuscation of text data using entity detection and replacement
US20120278897A1 (en) System and method of sort-order preserving tokenization
US20120030187A1 (en) System, method and apparatus for tracking digital content objects
US20110131408A1 (en) Document link security
US20090129596A1 (en) System and Method for Controlling Comments in a Collaborative Document
Castiglione et al. Taking advantages of a disadvantage: Digital forensics and steganography using document metadata
US20090327733A1 (en) Data Security Method and System
US20060075228A1 (en) Method and apparatus for recognition and real time protection from view of sensitive terms in documents

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131227

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141028

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150128

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150317

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150416

R150 Certificate of patent (=grant) or registration of utility model

Ref document number: 5735539

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150