Patent Publication Number: US-2011055914-A1

Title: Personal information leakage preventive device and method

Description:
TECHNICAL FIELD 
     The present invention relates to a method and a device for enabling a service user to receive a personalized service from a service provider without passing personal information on the service user to the service provider. The service in this context implies product information, search results, and information obtained by personalizing the product information and the search results, which are provided by the service provider. Moreover, the personal information implies information which relates to a person, and which the person generally does not want to be disclosed to others. Examples of the personal information include a name, address, date of birth, and gender. 
     The personalized service implies a service tailored to a person based on the personal information belonging to the individual user. An example of the personalized service is to provide a female with information on women&#39;s clothes reflecting preference information included in personal information on the female, whereas to provide a male with information on men&#39;s clothes reflecting preference information included in personal information on this male. 
     BACKGROUND ART 
     There are well known service providing systems, which provide a user with commercial products matching needs of the user based on the user&#39;s personal information and the preference information.  FIG. 1  is a schematic diagram showing an example thereof. A user accesses a service providing server ( 50 ) from a user terminal device ( 20 ) via the Internet ( 10 ). 
     In those service providing systems, service providers hold personal information such as purchase history in many cases. In this case, a user may be damaged by a leakage of the personal information. 
     As a method of using a service while a user is anonymized, namely, while an identity of the user is not revealed, there is disclosed JP 2002-183092 A, “SYSTEM FOR PROVIDING PERSONALIZED SERVICE.” This is a method in which a proxy anonymizes a service user by provides the user with a user identifier for hiding an identity of the user, and the service user uses a personalized service as an anonymous user. However, according to this technology, a service providing server cannot provide a content containing an embedded name of a user such as “Hello! Mr. Taro Suzuki”, because the personalization is done by the server. In other words, there is a limit in the personalization. 
     It is conceivable that, in order to receive a personalized service, a user terminal or a proxy personalizes the service so that personal information is not given to a service provider. However, in such a case, it is necessary to verify that the personal information is not leaked by a message transmitted to a service providing server by the personalized service, or the like. As a method for the verification, it is conceivable to apply an “information flow analysis” described in “Non-patent Document 1.” However, if this method is strictly applied, there arises a defect that a range of services which are successfully verified becomes narrower. 
     Patent Document 1: JP 2002-183092 A “SYSTEM FOR PROVIDING PERSONALIZED SERVICE” 
     Non-patent Document 1: Kobayashi Naoki, Shirane Keita, Type-based Information Flow Analysis for a Low-level Language, Vol. 20, No. 2, pp. 2-21 
     DISCLOSURE OF THE INVENTION 
     Problems to be Solved by the Invention 
     It is therefore an object of the present invention to provide a device, a method, and the like which enable a use of a service based on personal information such as preferences of a person without providing a service provider with the personal information. According to the conventional technologies, when a user uses a service according to individual preferences and the like of the user, it is necessary to “directly” provide a service provider with personal information on the user such as gender, age, address, and cellular phone number. All the service providers are not necessarily reliable service providers which sufficiently manage the personal information. In other words, it cannot be denied that there are service providers who do not sufficiently manage the personal information against a leakage thereof. 
     As described above, when the personal information is given to the service provider, the personal information collected by the service provider may leak to other service providers for some reason, and may be misused. For example, spam mails may be sent to a service user who has provided an email address, or a user may become a victim of a “furikome sagi” (billing fraud) if the user has provided a phone number. Moreover, when a user is identified as an elderly person living alone based on the gender, age, address, and the like, there may arise a security problem. 
     Means for Solving the Problems 
     A description will now be given of means disclosed in the present invention in order to solve those problems. 
     [Claim  1 ] 
     Claim  1 , as will be described in Example 1 of the present invention, is provided for a case in which a content displayed by a browser software program does not contain other contents (hereinafter, referred to as “subcontents”) such as images and audio data, or hyperlinks, and discloses, in a system in which a service providing server, a proxy, and a user terminal device used by a service user are connected with each other via a network, a system which prevents personal information from leaking by the following means (a) to (e): 
     (a) means for transmitting, by the user terminal device, a content obtaining request which is used for obtaining a content on the service providing server to the proxy; 
     (b) means for, by the proxy, receiving the content obtaining request and transmitting the content obtaining request to the service providing server; 
     (c) means for transmitting, by the service providing server, one or more contents template corresponding to the content obtaining request, and a rule, which is used to select one contents template by using personal information on the service user and to generate a content reflecting the personal information on the user from the contents template, to the proxy; 
     (d) means for, by the proxy, selecting one contents template by using the personal information on the user based on the rule, generating a content reflecting the personal information on the user from the contents template, and transmitting the content to the user terminal device; and 
     (e) means for displaying, by the user terminal device, the content by using a browser software program. 
     [Claim  2 ] 
     Claim  2 , as will be described in Example 2 of the present invention, is provided for a case in which a content displayed by the browser software program contains other subcontents and does not contain hyperlinks, and discloses the system according to claim  1  further including the following means (a) to (g) when the user terminal device displays the content by using the browser software program: 
     (a) means for, upon a subcontent being necessary for displaying the content, transmitting, by the user terminal device, a subcontent obtaining request which is used for obtaining the subcontent to the proxy; 
     (b) means for receiving, by the proxy, the subcontent obtaining request; 
     (c) means for, by the proxy, determining sets of subcontent obtaining requests necessary for displaying contents generated from each contents template for each content, and, upon each of the sets of the subcontent obtaining requests being the same, transmitting the subcontent obtaining requests contained in each of the sets of the subcontent obtaining requests in a predetermined sequence to the service providing server; 
     (d) means for, by the proxy, determining sets of subcontent requesting requests necessary for displaying contents generated from each contents template for each content, and, upon each of the sets of the subcontent obtaining requests not being the same, transmitting all the subcontent obtaining requests in a predetermined sequence to the service providing server; 
     (e) means for transmitting, by the service providing server, subcontents corresponding to all the received subcontent obtaining requests to the proxy; 
     (f) means for, by the proxy, storing the received subcontents, and of the stored subcontents, transmitting the subcontent requested by the user terminal device to the user terminal device; and 
     (g) means for displaying, by the user terminal device, the subcontent by using the browser software program. 
     [Claim  3 ] 
     Claim  3 , as will be described in Example 3 of the present invention, is provided for a case in which a content displayed by the browser software program contains hyperlinks, the network includes one or more hyperlinked server, and the user terminal device displays the content by using the browser software program, and discloses the system according to claim  1  or  2  further including the following means (a) to (g): 
     (a) means for, upon receiving an operation for accessing a hyperlink from a user, transmitting, by the user terminal device, a hyperlinked content obtaining request for obtaining a hyperlinked content to the proxy; 
     (b) means for receiving, by the proxy, the hyperlinked content obtaining request from the user terminal device; 
     (c) means for, by the proxy, determining sets of hyperlinked content obtaining requests corresponding to hyperlinks contained in a content for each of contents generated from each contents template, and, upon each of the sets of the hyperlinked content obtaining requests being the same, transmitting the hyperlinked content obtaining requests to the hyperlinked server; 
     (d) means for, by the proxy, determining sets of hyperlinked content obtaining requests corresponding to hyperlinks contained in each content for each of contents generated from each contents template, and, upon each of the sets of the hyperlinked content obtaining requests not being the same, transmitting a predetermined warning message to the user terminal device; 
     (e) means for, by the hyperlinked server, receiving the hyperlinked content obtaining request and transmitting a corresponding content to the proxy; 
     (f) means for transmitting, by the proxy, the received content to the user terminal device; and 
     (g) means for displaying, by the user terminal device, the received content or the predetermined warning message by using the browser software program. 
     [Claim  4 ] 
     Claim  4 , as will be described in Example 4 of the present invention, is provided for a case in which a content displayed by a browser software program contains hyperlinks, a service providing server transmits a set of linked web pages to a proxy, and the proxy stores those linked web pages in the proxy, and discloses, in a system in which a user terminal device, the proxy, the service providing server, and a hyperlinked server are connected with each other via a network, a system which prevents personal information from leaking by the following means (a) to (i): 
     (a) means for transmitting, by the user terminal device, a content obtaining request which is used for obtaining a content on the service providing server to the proxy; 
     (b) means for, by the proxy, receiving the content obtaining request, and transmitting the content obtaining request to the service providing server; 
     (c) means for transmitting, by the service providing server, contents templates corresponding to the content obtaining request, a rule which is used to select one contents template based on personal information and to generate a content reflecting the personal information on the user from the contents template, and contents which are referred to by hyperlinks contained in the contents templates; 
     (d) means for storing, by the proxy, the contents templates and the rule, and the contents referred to by the hyperlinks in a cache memory; 
     (e) means for, by the proxy, determining, for each content template, a set of hyperlink obtaining requests corresponding to hyperlinks that are contained in contents generated from the contents template or are contained in contents that are linked by hyperlinks in the contents and are stored in cache memory, and link to contents other than any content in the cache memory, determining whether each of the sets is the same, and, upon each set being not the same, transmitting a predetermined warning message to the user terminal device; 
     (f) means for, by the proxy, selecting one contents template by using the personal information on the user based on the rule, generating a content reflecting the personal information on the user, and transmitting the content to the user terminal device; 
     (g) means for, by the user terminal device, receiving and displaying the content, and, upon receiving an operation for accessing a hyperlink from the user, transmitting a hyperlinked content obtaining request for obtaining a hyperlinked content to the proxy; 
     (h) means for, by the proxy, searching the cache memory for the content corresponding to the hyperlinked content obtaining request, and transmitting the content to the user terminal device; and 
     (i) means for displaying, by the user terminal device, the received content or displaying the predetermined warning message by using a browser software program. 
     [Claim  5 ] 
     Claim  5  discloses, in the system described in claims  1  to  4 , a system in which the user terminal device and the proxy are physically integrated to each other. 
     [Claim  6 ] 
     Claim  6  discloses, in the system described in claim  1 , a personal information leakage preventive method including the following steps (a) to (e): 
     (a) a step of transmitting, by the user terminal device, a content obtaining request which is used for obtaining a content on the service providing server to the proxy; 
     (b) a step of, by the proxy, receiving the content obtaining request and transmitting the content obtaining request to the service providing server; 
     (c) a step of transmitting, by the service providing server, one or more contents template corresponding to the content obtaining request, and a rule, which is used to select one contents template by using personal information on the service user and to generate a content reflecting the personal information on the user from the contents template, to the proxy; 
     (d) a step of, by the proxy, selecting one contents template by using the personal information on the user based on the rule, generating a content reflecting the personal information on the user, and transmitting the content to the user terminal device; and 
     (e) a step of displaying, by the user terminal device, the content by using a browser software program. 
     EFFECTS OF THE INVENTION 
     According to the present invention, a service user, without providing a service provider with personal information on the service user, can use a service based on the personal information, thereby largely reducing a possibility of generating the above-mentioned various problems and the like due to the leakage of the personal information. 
     Moreover, it is not necessary for the service provider to manage personal information on service users. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a view showing an overview of a system for providing personalized service according to conventional technologies. 
         FIG. 2A  is an information flow diagram in the system for providing personalized service according to the conventional technologies. 
         FIG. 2B  is an information flow diagram in the system for providing personalized service according to the conventional technologies. 
         FIG. 2C  is an information flow diagram in the system for providing personalized service according to the conventional technologies. 
         FIG. 3  is a view showing an overview of a system for providing personalized service according to the present invention. 
         FIG. 4  is a diagram showing a proxy according to the present invention. 
         FIG. 5A  is an information flow diagram in the system for providing personalized service according to the present invention. 
         FIG. 5B  is an information flow diagram in the system for providing personalized service according to the present invention. 
         FIG. 5C  is an information flow diagram in the system for providing personalized service according to the present invention. 
         FIG. 6  is a diagram showing an overview of the system for providing personalized service according to the present invention. 
         FIG. 7  is a view showing a search menu of the system for providing personalized service according to the present invention. 
         FIG. 8  is a view showing an example of personal information according to the present invention. 
         FIG. 9  is a view showing an example of a personalized content according to the present invention. 
         FIG. 10  is a view showing an example of the personalized content according to the present invention. 
         FIG. 11  is a view showing an example of the personalized content according to the present invention. 
         FIG. 12  is a view showing an example of the personalized content according to the present invention. 
         FIG. 13  is a view showing an example of the personalized content according to the present invention. 
         FIG. 14  is a view showing an example of the personalized content according to the present invention. 
         FIG. 15  is a view describing contents of a PCGP according to Example 3 of the present invention. 
         FIG. 16  is a view describing contents of an extended PCGP according to Example 4 of the present invention. 
         FIG. 17  is a view describing contents of the extended PCGP according to Example 4 of the present invention. 
         FIG. 18  is a flowchart describing a flow of Example 1 of the present invention. 
         FIG. 19  is a flowchart describing a flow of Example 2 of the present invention. 
         FIG. 20  is a flowchart describing a flow of Example 3 of the present invention. 
         FIG. 21  is a flowchart describing a flow of Example 4 of the present invention. 
     
    
    
     BEST MODE FOR CARRYING OUT THE INVENTION 
     A description will now be given of best modes. First, a description will be given of a basic concept relating to acquisition and drawing method of contents on the WWW. 
     (1) Contents Acquire/Draw Method on WWW 
     On the world wide web (WWW), various types of information (programs in addition to data) is provided by service providers on the Internet, and service users can use a web browser (hereinafter, referred to as browser in the specification of the present invention) on a user terminal device such as a personal computer (PC) or a cellular phone to view and use the information. The information is referred to as “content” hereinafter. 
     The contents are provided on service providing servers connected to the Internet, and a uniform resource locator (URL) is used to identify a content on the service providing server (web server). A URL indicates a location of a resource on the Internet, and is composed of a scheme such as a protocol used to obtain the resource, an IP address of a server (server machine) on which the resource is located, a port number thereof, a path which indicates a location of the resource on the server, and the like. 
     Referring to  FIG. 2A , a description will be given of a flow of information. The service user enters a URL of a content to be viewed in an input unit of the browser (not shown). The browser of a user terminal device ( 20 ) transmits a request to a service providing server ( 50 ) according to the entered URL (a 1 ), and receives the content from the corresponding server (a 2 ). The browser displays the received content on a display unit of the user terminal device. 
     What is displayed depends on a format of the received content. For example, the content may be only character information, and may not refer to other contents. When the content is image information, the image information is drawn to be displayed on a screen, and further, when the content is audio information, the information is replayed to be output as audio from a loudspeaker or the like ( FIG. 2B ). For that purpose, the browser accesses a stored location of the information (b 1 ), and obtains necessary information therefrom (b 2 ). 
     Moreover, when the content includes a hyperlink, and the user views the hyperlinked content ( FIG. 2C ), the browser can access a hyperlinked server ( 60 ) (c 1 ), obtain necessary information therefrom (c 2 ), and display the obtained information on the display unit of the user terminal device. 
     On this occasion, contents are described according to the hyper text markup language (HTML). According to the HTML, it is possible to describe a reference to another content such as a reference to image data. 
     Further, a link to a hyperlinked server can be easily described. 
     (2) Example of HTML Document 
     An example of a simple HTML document is shown below. 
     
       
         
           
               
               
             
               
                   
               
             
            
               
                  1 
                 &lt;html&gt; 
               
               
                  2 
                 &lt;head&gt; 
               
               
                  3 
                 &lt;title&gt;example 1&lt;/title&gt; 
               
               
                  4 
                 &lt;/head&gt; 
               
               
                  5 
                 &lt;body&gt; 
               
               
                  6 
                 Place a photograph below.&lt;br/&gt; 
               
               
                  7 
                 &lt;img src=’http://host_a:8080/img/example0.jpg’/&gt;&lt;br/&gt; 
               
               
                  8 
                 &lt;a href=http : //host_b : 9090/example0 . html’) 
               
               
                  9 
                 This is a hyperlink 
               
               
                 10 
                 &lt;/a&gt;&lt;br/&gt; 
               
               
                 11 
                 Place a photograph below.&lt;br/&gt; 
               
               
                 12 
                 &lt;img src = ’http : //host_a : 8080/img/example1 . jpg’/&gt;&lt;br/&gt; 
               
               
                 13 
                 &lt;a href=http : //host_ b : 9090/example1 . html’&gt; 
               
               
                 14 
                 This is a hyperlink 
               
               
                 15 
                 &lt;/a&gt; 
               
               
                 16 
                 &lt;/body&gt; 
               
               
                 17 
                 &lt;/html&gt; 
               
               
                   
               
            
           
         
       
     
     (2-1) About HTML Tags 
     The HTML document extends from &lt;html&gt; (line 1) to &lt;/html&gt; (line 17). According to the html, a portion enclosed between &lt;XXX&gt; and &lt;/XXX&gt;, which are referred to as tags (start tag and end tag, respectively), or a portion indicated by a tag &lt;XXX/&gt;, which is a combination of the start tag and the eng tag, is considered as one element. The elements can be nested. 
     (2-2) About “Head” Tag and “Body” Tag 
     An HTML document is composed of a head element containing the head tags, and a body element containing the body tags. In the head element, metadata such as a title of the HTML document is written. On the other hand, in the body element, a body of the HTML document is written. The body is composed of strings which are descriptive sentences and elements enclosed by tags. 
     (2-3) About Image Data 
     Here, an img element specified by the img tags indicates that image data is embedded therein. The element specified by the tags can have additional information as an attribute. For example, an img element uses the src attribute to specify a URL at which an image is located. 
     (2-4) About Hyperlinks 
     Moreover, an “a” element specified by the “a” tags represents a hyperlink, and indicates that a portion enclosed by the tags is associated with (linked to) a content located at a URL specified by the href attribute. 
     (3) Drawing by Browser 
     A description will now be given of how the browser draws an HTML document on a display unit (not shown) of the user terminal device. 
     1 (line 6). The browser draws a string “Place a photograph below”. 
     2 (line 6). Since &lt;br/&gt; indicates a line feed, the browser changes a drawing position to a next line. 
     3 (line 7). Since &lt;img . . . &gt; which indicates that an image is to be placed appears, the browser obtains a content (image data) specified by a URL indicated by the “src”. Specifically, the browser transmits an HTTP request which requests the port number 8080 of a server whose host name is host_a for the content located at a path “/img/example0.jpg”, thereby obtaining the content from the server. 
     4 (line 7). The browser draws the obtained image data. 
     5 (line 7). Since &lt;br/&gt; indicates a line feed, the browser changes the drawing position to a next line. 
     6 (lines 8 to 10). Since &lt;a . . . &gt; This is a hyperlink&lt;/a&gt; means a hyperlink, the string “This is a hyperlink” is drawn in a underlined or colored fashion to show a hyperlink. 
     7 (line 10). Since &lt;br/&gt; indicates a line feed, the browser changes the drawing position to a next line. 
     8 (line 11). The browser draw a string “Place a photograph below”. 
     9 (line 11). Since &lt;br/&gt; indicates a line feed, the browser changes the drawing position to a next line. 
     10 (line 12). Since &lt;img . . . &gt; which indicates that an image is to be placed appears, a content (image data) specified by a URL indicated by the “src” is obtained. Specifically, the browser transmits an HTTP request which requests the port number 8080 of the server whose host name is host_a for the content located at a path “/img/example1.jpg”, thereby obtaining the content from the server. 
     11 (line 12). The browser draws the obtained image data. 
     12 (line 12). Since &lt;br/&gt; indicates a line feed, the browser changes the drawing position to a next line. 
     13 (lines 13 to 15). Since &lt;a . . . &gt; This is a hyperlink&lt;/a&gt; means a hyperlink, the string “This is a hyperlink” is drawn in a underlined or colored fashion to show a hyperlink. 
     14 (Line 17). End. 
     (3-1) Classification of Contents 
     Herein, contents displayed by the browser are classified into the following three types in the specification of the present invention. In the examples, a description will be given according to the classification. 
     (a) Content which does not Refer to Other Subcontents 
     In general, a content described in the HTML contains references to other contents such as images and audio data required for drawing its content. In this class, a content which does not refer to other contents is considered. In the specification of the present invention, a content which is required for drawing a certain content is referred to as “subcontent”. 
     (b) Content which Refers to Other Subcontents 
     A content in this class refers to other subcontents for drawing the content. 
     When the browser draws a content which a user wants to view, as in the above example, the browser usually automatically obtains subcontents. On some browsers, a service user can set whether image data and the like are obtained automatically or not. If the service user selects “Not obtain automatically”, the browser will not automatically obtain an image content. In the specification of the present invention, for ease of description, it is assumed that the browser automatically obtains image data and the like. 
     (c) Content which Refers to a Hyperlinked Content (Including a Hyperlink by Means of the “Form” Tags) 
     A hyperlink is shown as a string or an image highlighted by an underline or color on a display screen of the user terminal device. Clicking of this part will show the corresponding hyperlinked content. The content referred to by the hyperlink is obtained by a positive operation of a service user such as clicking by the service user on the viewed content. 
     It should be noted that a content is obtained generally by means of the hyper text transfer protocol (HTTP) on the WWW. The browser transmits an HTTP request to a server. The HTTP request contains a path specifying a content on the server. The server transmits the content specified by the path contained in the request as an HTTP response to the browser. 
     (4) Personalization of Contents 
     When a content is provided, the content is tailored to each of service users based on personal information on the service users. As a result, even if the same URL is entered on the browser, different contents are transmitted from the server depending on each of the service users. This is referred to as personalization of contents. 
     The personalization of contents is carried out by a program on the server, which dynamically selects or generates contents. In the program, how to generate contents based on personal information on a service user, namely, a profile, preference information, history of past content acquisition, and purchase history of the individual user is described. According to conventional technologies, it is necessary for a service provider to hold personal information on service users. 
     When a content is personalized, the service provider requests the service user for providing personal information. For example, when the service user uses a service provided by the service provider on the WWW, the service provider asks for a user registration and collects necessary personal information. 
     A server identifies a service user or a terminal device of the user which issues a service request based on a personal verification on a start of providing a service, or based on an HTTP cookie in the user terminal device. Then, the server personalizes contents based on the personal information on the identified service user. 
     Referring to an actual display example of a display screen of the user terminal device, a description will now be given of this situation.  FIG. 7  shows a search menu screen. This menu screen is a search screen for a user to use user&#39;s own portable terminal device or the like to search for a pair of shoes which the user wants. The user enters “jogging shoes” as a product which the user wants, and “xxxYY” as a favorite brand, and specifies that the product to be searched for is to be used personally by the user. 
       FIG. 8  shows an “example of personal information”. The personal information includes information such as the name, gender, age, address, occupation, and annual income, and further, hobbies, preference information, and purchase history of a user. According to the conventional technologies, those pieces of information are stored in the service providing server.  FIG. 9  shows an “example of a personalized content (1)” as an example of personalized contents based on the information. On this occasion, a fact that the user is male, and the purchase history of the user are used as the personal information on the user. 
     With the technical background described above, a description will now be given of first to fourth examples of the present invention. 
     Example 1 
     1. Schematic Diagram 
     In Example 1 of the present invention, a description will be given of an example in which a content shown by the browser does not contain other subcontents or hyperlinks, namely, an example of the case (a) of the above-described content classification. 
       FIG. 3  shows an overview of the example of the present invention. Major components include a user terminal device  20 , a proxy  40 , and a service providing server  50 . 
     In this case, the user terminal device  20  is preferably a cellular phone on which a web browser is mounted. The proxy  40  is provided between the user terminal device and the service providing server. Moreover, the proxy  40  stores personal information on users in a database, and manages the personal information on users. The service providing server  50  is a server which provides the user with service information, and is preferably a web server. 
     In  FIG. 3 , the proxy which stores the personal information on the users is provided between the service providing server and the user terminal device, thereby personalizing contents, but the proxy ( 40 ) may be included in and thus integrated into the user terminal device ( 20 ). 
     2. Functional Block Diagram of Proxy 
       FIG. 4  describes a functional block diagram of the proxy ( 40 ) according to the present invention. Major components of the proxy include a user terminal device I/F unit ( 110 ), a control unit ( 120 ), a service providing server I/F unit ( 130 ), a template selection unit ( 150 ), a personal information storage unit ( 160 ), a template personalization unit ( 170 ), and a verification unit ( 190 ). Moreover, the service providing server is provided with a personalized contents generation program (hereinafter, referred to as PCGP in the specification of the present invention) for generating personalized contents. The PCGP contains a contents template list, and rules for selecting one contents template from the contents template list based on personal information, and generating personalized contents. 
     3. Basic Processing Flow 
       FIG. 18  is a flowchart describing Example 1 of the present invention.
           10  Enter URL of content by user     20  Transmit request from browser to proxy     30  Transmit request from proxy to server     40  Transmit PCGP from server to proxy     50  Carry out following processes by proxy
           Selection of template   Personalization of content   Transmission to browser   
             60  Display on browser       

     Referring to  FIGS. 3 ,  4 , and  5 A, a description will now be given of the process. 
     (1) The service user enters the URL of the desired content to be viewed on the browser on the user terminal device ( 20  of  FIG. 3 ). 
     (2) The browser transmits the request for obtaining the content located at this URL to the proxy (a 1  of  FIG. 5A ). 
     (3) The proxy transmits the content obtaining request to the service providing server according to this request (a 2  of  FIG. 5A ). 
     (4) The service providing server transmits the PCGP corresponding to a path of the URL described in the received content obtaining request to the proxy (a 3  of  FIG. 5A ). The PCGP, as described above, contains a contents template list and rules. In this case, the contents template is a content including “holes” to be filled with personal information such as the name of the user, and, when the personal information is applied to the template, the “holes” are filled with proper personal information (such as the name), thereby generating a content without the “holes”. The rules are rules used to select one contents template corresponding to this user from the contents template list based on the personal information on the user. 
     (5) The proxy executes the received PCGP. On a first stage of execution of the PCGP, the PCGP is transmitted from the service providing server I/F unit ( 130 ) to the verification unit ( 190 ), and it is verified whether contents generated by this PCGP will not leak the personal information. In general, the PCGP generates different contents depending on values of personal information on users. For example, the PCGP generates different contents for a male user and a female user. If content obtaining requests transmitted when those different contents are drawn, or when hyperlinks contained in those contents are traced are different depending on those contents, the service provider can know whether the user is a male or a female based on those contents. In other words, there is possibility of a leakage of the personal information. Thus, it is necessary to verify whether a set of messages transmitted are the same for respective contents which can be generated by the PCGP, thereby verifying that the personal information will not leak. In Example 1 of the present invention, only contents which do not contain references to other contents are generated, so the verification is successful. 
     (6) Selection of Template 
     Then, the PCGP is transmitted to the template selection unit ( 150 ), and one proper contents template is selected based on personal information stored in the personal information storage unit ( 160 ) ( 150  of  FIG. 4 ). 
     (7) Personalization of Content 
     On a second stage of the execution of the PCGP, the template personalization unit ( 170 ) applies the personal information on the user stored in the personal information storage unit ( 160 ) to the selected contents template, namely, fills “holes” with proper personal information, and generates a personalized content, thereby transmitting the personalized content to the control unit ( 120  of  FIG. 4 ). 
     (8) The control unit ( 120  of  FIG. 4 ) transmits the personalized content to the browser via the user terminal device I/F ( 110  of  FIG. 4 ) (a 4  of  FIG. 5A ). 
     (9) The browser draws the received content and displays the drawn content on the user terminal device. 
     As described above, in Example 1 of the present invention, the description has been given of the case in which other contents are not referred to. In Example 1 of the present invention, without providing the service provider with the personal information, it is possible to show examples (1) and (2) of the personalized contents shown in  FIGS. 9 and 10 , respectively. 
     Example 2 
     In Example 2 of the present invention, a description will be given of an example in which a content shown by the browser contains other subcontents, and does not contain links to other sites, namely, an example of the case (b) of the above-described content classification. 
     In general, a content contains references to subcontents such as images and audio, and hyperlinks, and the browser transmits requests in order to obtain those subcontents, or when a service user clicks a hyperlink. The requests to be transmitted are different depending on contents. The browser, in a process of processing a content, transmits requests for those subcontents according to a sequence described in this content. 
     If the requests for those subcontents are directly transmitted to the service providing server, the service providing server may identify the content being viewed by this user based on the sequence of the requests or the number of accesses to specific contents. 
     A description will now be given of examples (3) and (4) of personalized contents shown in  FIGS. 11 and 12 , respectively. 
     In order to draw the personalized content (3), the browser transmits requests in a sequence of an image 1-&gt; an image 1-&gt; an image 2-&gt; an image 3. On the other hand, in order to access the personalized content (4), the browser makes accesses in a sequence of an image 4-&gt; an image 4-&gt; an image 5-&gt; an image 6. 
     Then, in those cases, the service providing server can determine whether the present user is a “male” or a “female” by monitoring the requests for the images. Moreover, depending on how a content is generated, information such as an age group, an area of the address, and a range of the annual income of a user may be estimated by the server. 
     In general, the service providing server can estimate or determine personal information on a user by receiving the following information. 
     1. Types of requests for obtaining subcontents 
     2. Sequences of requests for obtaining subcontents 
     3. The number of requests for obtaining the same subcontent 
     Those problems will now be discussed. 
     1. About Types of Requests for Obtaining Subcontents 
     It is easily conceivable that personal information is estimated based on types of requested contents. However, any content, of one or more content that may be generated from one PCGP, is transmitted to the browser, in a case where the same requests are transmitted by the browser, when viewed from the service providing server, the contents are viewed by a user cannot be estimated. 
     Therefore, it is verified whether all requests generated from respective contents generated from one PCGP are all the same. If those requests are different, by obtaining a sum of sets of requests for subcontents regardless of a content viewed by a user and transmitting all the requests belonging to the sum of the sets to the server, it is possible to prevent the service providing server from estimating a template which a user has made access to. 
     For example, when the browser transmits requests for (an image 1 and an image 2) to draw a content 1 and transmits requests for (the image 2 and an image 3) to draw a content 2, if the proxy transmits requests for (the image 1, the image 2, and the image 3), which are a sum thereof, the service providing server cannot estimate a template accessed by a user. 
     2. About Sequences of Requests for Obtaining Subcontents 
     When the same requests are generated for drawing respective contents, the service providing server may estimate a content viewed by a user based on the sequence of the requests. However, in this case, if the proxy rearranges the sequence of the requests according to a predetermined rule, the service providing server cannot estimate the content viewed by the user. For example, if requests are transmitted in the lexicographical sequence in terms of the URL, the service providing server cannot estimate the content viewed by the user. 
     For example, when the browser transmits requests for (an image 1 and an image 2) to draw a content 1 and transmits the requests for (the image 2 and the image 1) to draw a template 2, though the proxy needs to transmit requests for (the image 1 and the image 2), which are a sum thereof, the service providing server may estimate a content which a user has accessed depending on whether the requests for (the image 1 and the image 2) are transmitted or the requests for (the image 2 and image 1) are transmitted. Then, by rearranging the sequence thereof according to a predetermined rule, for example, whether the requests are made for drawing the content 1 or for drawing the content 2, by rearranging the sequence in the younger sequence of the image 1-&gt; the image 2, the service providing server cannot estimate the content viewed by the user. 
     3. About Number of Requests for Obtaining Same Subcontent 
     When the same subcontents are accessed multiple times, and, depending on contents, the different contents make access to the same subcontents multiple times, the service providing server may estimate a content viewed by a user. 
     For example, the browser transmits requests for (an image 1-&gt; the image 1-&gt; an image 2) to draw a content 1 and transmits requests for (the image 1-&gt; an image 2-&gt; the image 2) to draw a content 2, the types of the requests to obtain those subcontents are (the image 1 and the image 2). However, if the requests for drawing the content 1 are directly transmitted to the service providing server, because the two requests for the image 1 are present, the service providing server can estimate that the user is presently using the content 1. 
     In this way, when multiple contents requests for the same subcontent are present, a sum of the set of the requests (the image 1, the image 1, and the image 2) for drawing the content 1 and the set of the requests (the image 1, the image 2, and the image 2) for drawing the content 2 is obtained. In other words, requests corresponding to (the image 1 and the image 2) are transmitted to the service providing server. As a result, the service providing server cannot estimate the content being viewed by the user. 
     Here, the proxy stores the subcontents obtained from the service providing server in the cache memory unit ( 140  of  FIG. 6 ), and, for a request for those subcontents, transmits the subcontents stored in the cache memory to the service user without accessing the service providing server. As a result, the service providing server will not estimate a content viewed by the user based on the number of requests, and also, efficiency of access to the service providing server for obtaining the subcontents is improved. 
     As described above, the present invention takes the following measures in order to prevent personal information on users from leaking to the service providing server. 
     (1) Sets of requests for subcontents referred by respective contents generated from one PCGP are determined. 
     (2) A sum of all the obtained request sets is determined and transmitted to the service providing server according to a certain rule such as the lexicographical sequence. 
     (3) The obtained subcontents are stored in the cache memory of the proxy, and the cache memory is searched for requests for the obtained subcontents. 
       FIG. 19  is a flowchart describing Example 2 of the present invention. In this case, a description will be given starting from a state in which the browser shows a content on the user terminal device, and subcontents are requested.
           10  Transmit requests from browser to proxy     20  Determine sum of sets of requests and sequence of requests by proxy     30  Transmit requests from proxy     40  Transmit subcontents from server to proxy     50  Cache subcontents by proxy     60  Transmit cached subcontents to browser by proxy according to requests     70  Display on browser       

     Referring to  FIGS. 3 ,  5 B, and  6 , a description will now be given. Referring to  FIG. 6 , a description will be given. Compared with  FIG. 4 , a difference is that the cache memory ( 140 ) and a request generation unit ( 180 ) are added. The verification unit ( 190 ) calculates requests possibly generated for all contents generated from one PCGP. If all the requests possibly generated from the respective contents are the same, all the numbers thereof are the same, and all sequences thereof are the same, personal information on a user will not leak as a result of accessing the subcontents. 
     If any one of the requests possibly generated from the respective contents is different in type, if any one of the numbers thereof is different, or if any one of the sequences of the requests is different, the request generation unit ( 180 ) calculates a sum of the sets of the requests possibly generated from the respective contents, rearranges the requests in the sum of the sets according to the predetermined rule, and transmits the rearranged requests to the control unit  120 . 
     The process until a personalized content is generated by applying personal information is carried out as in Example 1, in which the template selection unit ( 150 ) selects one contents template based on the personal information, and the template personalization unit ( 170 ) personalizes the selected template. The control unit ( 120 ) transmits the personalized content to the browser via the user terminal device I/F unit ( 110 ). Requests generated as a result of processing the personalized content by the browser are transmitted to the proxy (b 1  of  FIG. 5B ). When the control unit ( 120 ) receives the requests, the control unit ( 120 ) transmits all rearranged requests contained in a sum of sets of requests transmitted from the request generation unit ( 180 ) in the specified sequence to the service providing server via the service providing server I/F unit (b 2  of  FIG. 5B ). The service providing server transmits subcontents corresponding to the received respective requests to the proxy (b 3  of  FIG. 5B ). The proxy stores the received subcontents in the cache memory unit ( 140 ). The control unit ( 120 ) searches the cache memory unit ( 140 ) for the subcontents corresponding to the requests transmitted from the browser. The searched subcontents are transmitted to the browser (b 4  in  FIG. 5B ). The browser uses those subcontents to show them on the display unit of the user terminal device. 
     In Example 2 of the present invention, the description has been given of the case in which other contents are referred to. According to the present invention, also in Example 2 of the present invention, without providing the service provider with the personal information, it is possible to display the examples (3) and (4) of the personalized contents shown in  FIGS. 11 and 12 , respectively. 
     Example 3 
     In Example 3 of the present invention, a description will be given of an example in which a content shown by the browser contains hyperlinks to other contents (web pages), namely, an example of the case (c). However, for the sake of simplicity, a description will be given only of a process relating to the hyperlinks. Subcontents are processed as in Example 2 of the present invention. Examples (5) and (6) of the personalized contents shown in  FIGS. 13 and 14  show that portions indicated by “Click here” in a “Detailed information” column are hyperlinked. 
     In this case, if a user accesses detailed information (“Click here”) corresponding to an “image 1” of “#1” in the example (5) of the personalized contents, the service providing server can determine the content presently viewed by the user, and can estimate that this user is a male. On the other hand, if a user accesses detailed information (“Click here”) corresponding to an “image 4” of “#1” in the example (6) of the personalized contents, the service providing server can determine the content presently viewed by the user, and can estimate that this user is a female. 
     Referring to  FIG. 15 , a description will be given. A service user specifies a predetermined URL, and, as broken arrows show, there are three contents templates A, B, and C each contained in a PCGP located at this URL. Those are enclosed by a long-dashed and short-dashed line in  FIG. 15 . From those contents templates, a proper contents template is selected based on personal information on the user. In this case, further, the contents template A contains a hyperlink “a”, and is hyperlinked to a web page “a” as shown by a solid arrow. The contents template B contains hyperlinks “b” and “c”, and is hyperlinked to web pages “b” and “c” as shown by solid arrows. The contents template C contains the hyperlinks “a” and “c”, and is hyperlinked to the web pages “a” and “c” as shown by solid arrows. When the web page “b” is accessed, it can be determined that the content being viewed by the user is generated from the contents template “B”. Moreover, when the web pages “a” and “c” are accessed, it can be determined that the content being viewed by the user is generated from the contents template “C”. 
     In general, when a web page linked from only a predetermined content is accessed, it is possible to determine the content being viewed by the user based on the access information, and then to estimate personal information on the user based on the viewed content. Moreover, a larger amount of personal information may be estimated based on multiple pieces of access information. 
     On the other hand, if requests issued for obtaining hyperlinked contents are the same among contents that are generated from a single PCGP, it is not possible to infer which contents a user browses from the access information. On this occasion, a sequence of accesses to the hyperlinks can be arbitrarily selected by the user, so it is thus impossible to estimate the content which the user is accessing based on information on the sequence of the accesses. 
     Therefore, the present invention verifies that personal information on a user will not leak to the service providing server in the following manner. 
     [Method of Verification and Process after Verification] 
     (1) Verify that respective hyperlinked content obtaining requests possibly generated from multiple contents templates generated from one PCGP are the same. 
     (2) If the hyperlinked content obtaining requests are respectively the same, namely, if the verification is successful, a personalized content is transmitted to a user. 
     (3) If the hyperlinked content obtaining requests are not respectively the same, namely, if the verification is not successful, though a personalized content is transmitted to the user, a “warning” that personal information may be leaked based on a content viewed by the user is generated when the user accesses the hyperlink. 
     The example in  FIG. 15  is to be considered. 
     Since a hyperlinked content obtaining request for the contents template A is “a”, hyperlinked content obtaining requests for the contents template B are “b and c”, and hyperlinked content obtaining requests for the contents template Care “a and c”, 
     {a}≠{b, c}≠{a, c}, and the verification thus fails. 
       FIG. 20  is a flowchart describing Example 3. On this occasion, a description will be given starting from a state in which the browser shows a content on the user terminal device, and a content corresponding to a hyperlink is requested. The description will be given assuming that the verification in the step  50  (“The proxy carries out the following processes”) in  FIG. 18 , namely the verification whether all requests possibly generated by clicking hyperlinks on respective contents are the same, has been carried out.
           10  Detect that user clicks hyperlink by browser     20  Transmit hyperlink request from browser to proxy     30  Is verification successful?     40  Obtain content from hyperlinked server by proxy     50  Transmit content from proxy to browser     60 , 80  Display on browser     70  Transmit warning from proxy to browser     90  Is intention to display received from user?       

     A description will now be given of the process flow. The verification unit ( 190 ) in  FIG. 6  calculates sets of hyperlinks contained in all the respective contents possibly generated from contents templates contained in an obtained PCGP. If all the sets of the hyperlinks contained in the respective contents are the same, namely, the verification is successful, personal information on a user will not leak when the user accesses the hyperlink. 
     It should be noted that the process until a personalized content is generated by applying the personal information is carried out as in Example 2 of the present invention, in which the template selection unit ( 150 ) selects one contents template based on the personal information, and the template personalization unit ( 170 ) personalizes the selected template. This personalized content is transmitted to the browser via the control unit ( 120 ). 
     If the verification is successful, the hyperlinked content obtaining request generated when the user clicks on the hyperlink contained in the personalized content is transmitted to the proxy (c 1  in  FIG. 5C ). When the control unit ( 120 ) receives this request, the control unit ( 120 ) transmits this request to the service providing server via the service providing server I/F unit (c 2  in  FIG. 5C ). The service providing server transmits the content corresponding to the received request to the proxy (c 3  in  FIG. 5C ). The proxy transmits the received content to the browser of the user terminal device (c 4  of  FIG. 5C ). The browser displays the received content. 
     If the sets of the hyperlinks contained in the respective contents are not the same, namely, the verification is not successful, though a process in which the personalized content is transmitted to the browser via the control unit ( 120 ), and the hyperlinked content obtaining request generated when the user clicks on the hyperlink contained in the personalized content is transmitted to the proxy (c 1  in  FIG. 5C ) is the same as the successful case, when the control unit ( 120 ) receives the hyperlinked content obtaining request, the control unit ( 120 ) warns the browser that “If the hyperlinked content obtaining request is transmitted to the destination of the hyperlink, personal information on the user may be estimated” (c 4  in  FIG. 5 ). The browser displays the received warning. 
     If the user still requests for the access despite of this “warning”, the request is transmitted to the service providing server (c 2  in  FIG. 5C ). The hyperlinked content is transmitted to the browser by way of a route of c 3 -&gt;c 4  ( FIG. 5C ), and is shown thereupon. 
     If the user stops the access following this “warning”, the access will not be made. 
     Example 4 
     In Example 4 of the present invention, a description will be given of an example in which a content shown by the browser contains hyperlinks to other contents, the service providing server collects those contents together, and transmits them to the proxy, and the proxy stores the linked contents in the cache memory. As in Example 3, the description will be given only of a process relating to the hyperlinks. 
       FIG. 21  is a flowchart describing Example 4. On this occasion, the browser shows a content on the user terminal device, and a description will be given starting from a state in which a hyperlink is requested. The description will be given assuming that the verification in the step  50  (“The proxy carries out the following processes”) in  FIG. 18 , and the process to store contents linked from the template in the cache memory have been carried out.
           10  Detect that user clicks hyperlink by browser     20  Transmit hyperlink request from browser to proxy     30  Is verification successful?     40  Obtain content from hyperlinked server by proxy     50  Transmit content from proxy to browser     60 ,  80  Display on browser     70  Transmit warning from proxy to browser     90  Is intention to display received from user?     100  Request for cached content?     110  Transmit cached content from proxy to browser       

     Referring to  FIG. 16 , a description will now be given of a case in which web pages are hyperlinked. The service providing server transmits a PCGP which contains contents templates A, B, and C along with web pages, “a”, “b”, and “c”, linked therefrom as a set, which is referred to as “extended PCGP” hereinafter, to the proxy. Those are enclosed by a long-dashed short-dashed line in  FIG. 16 . 
     The proxy receives this “extended PCGP”, and verifies that the “extended PCGP” will not generate requests which possibly leak personal information in the following way. 
     [Verification Method] (1) For respective contents templates contained in the extended PCGP, sets of hyperlinks contained in the contents generated from the contents template are generated. 
     In  FIG. 16 , the contents templates contained in this extended PCGP are A, B, and C. Sets of hyperlinks contained in the respective contents templates are: 
     A={a}
 
B={b, c}
 
C={a, c}
 
     (2) Selects a hyperlink (such as “a”), which hyperlinks a web page contained in this “extended PCGP”, from the set of hyperlinks, and adds hyperlinks (such as “a 1 ” and “a 2 ”) contained in this web page as elements of this set. It should be noted that a hyperlink once selected will not be selected again. A result thereof is represented as: 
     A={a, a 1 , a 2 }
 
B={b, c, b 1 , b 2 }
 
C={a, c, a 1 , a 2 }
 
     (3) For the respective sets of the hyperlinks, the operation of (2) is repeated until no hyperlinks to be selected are left. The number of the web pages contained in the extended PCGP is finite, and this iteration thus always ends. 
     A={a, a 1 , a 2 }
 
B={b, c, b 1 , b 2 , c 1 , c 2 }
 
C={a, c, a 1 , a 2 , c 1 , c 2 }
 
     (4) From all the sets of the hyperlinks, remove the hyperlinks (such as “a”) linking the web pages contained in this extended PCGP. A result thereof is represented as: 
     A={a, a 2 }
 
B={b 1 , b 2 , c 1 , c 2 }
 
C={a 1 , a 2 , c 1 , c 2 }
 
     The sets which have undergone this operation are sets of the hyperlinks which a personalized content generated from a corresponding template possibly transmits a request to the service providing server. If those sets are not the same, personal information may leak to the service provider. 
     (5) Verify that all the sets corresponding to the respective templates are the same. If all the sets are the same, the verification is successful, and otherwise, the verification fails. 
     In the example shown in  FIG. 16 , 
     {a 1 , a 2 }≠{b 1 , b 2 , c 1 , c 2 } and
 
≠{a 1 , a 2 , c 1 , c 2 }, and
 
the verification thus fails.
 
     Though the description has been given of the case in which a web page is hyperlinked, a web page may not be hyperlinked, but a PCGP (or an extended PCGP) may be hyperlinked ( FIG. 17 ). An extended PCGP containing PCGP&#39;s are enclosed by a long-dashed short-dashed line in  FIG. 17 . In this case, the hyperlinked PCGPs are first verified. In other words, when PCGPs are nested, an inner PCGP is verified first. Referring to  FIG. 17 , a description will now be given. For a PCGP, multiple web pages are to be further generated. In  FIG. 17 , a content “a” pointed by a hyperlink “a” contained in a contents template A is a PCGP, which contains contents templates “a 1 ” and “a 2 ”. Moreover, if hyperlinks “a 11 ” and “a 12 ” are further linked from “a 1 ”, and hyperlinks “a 21 ” and “a 22 ” are further linked from “a 2 ”, sets of hyperlinks are obtained for a 1  and a 2 , and the PCGP “a” is thus verified first. 
     If the verification is successful, the hyperlinks contained in the contents generated by the hyperlinked PCGP “a” are added as elements of the set of the hyperlinks of the contents template A. If the verification fails, the overall verification also fails, and it is thus not necessary to verify other PCGP&#39;s such as “b” and “c”. 
     (6) In Case of Successful Verification 
     The contents contained in this extended PCGP are stored in the cache memory unit ( 140 ). Moreover, a template is selected in the template selection unit ( 150 ), the selected template is transmitted to the template personalization unit ( 170 ), and a personalized content is generated. The generated personalized content is transmitted to the user terminal device via the user terminal device I/F unit ( 110 ). 
     (7) In Case of Failed Verification 
     As a process for this case, as in Example 3, a personalized content is transmitted to the user. When the user accesses the link, a “warning” that personal information may leak from a content being viewed by the user is shown. 
     (8) If the user clicks on a hyperlink to a content contained in this extended PCGP, a request is transmitted to the proxy. The proxy transmits the content stored in the cache memory unit ( 140 ) to the user terminal device. It should be noted that if the content is a PCGP or an extended PCGP, the proxy generates and transmits a personalized content. 
     DESCRIPTION OF REFERENCE NUMERALS 
     
         
         
           
               10 : Internet 
               20 : user terminal device 
               30 : wireless base station 
               40 : proxy 
               50 : service providing server 
               60 : hyperlinked server 
               110 : user terminal device I/F unit 
               120 : control unit 
               130 : service providing server I/F unit 
               140 : cache memory unit 
               150 : template selection unit 
               160 : personal information storage unit 
               170 : template personalization unit 
               180 : request generation unit 
               190 : verification unit