WO2011024298A1 - サービスシステム - Google Patents

サービスシステム Download PDF

Info

Publication number
WO2011024298A1
WO2011024298A1 PCT/JP2009/065116 JP2009065116W WO2011024298A1 WO 2011024298 A1 WO2011024298 A1 WO 2011024298A1 JP 2009065116 W JP2009065116 W JP 2009065116W WO 2011024298 A1 WO2011024298 A1 WO 2011024298A1
Authority
WO
WIPO (PCT)
Prior art keywords
encryption key
server
information
double
encryption
Prior art date
Application number
PCT/JP2009/065116
Other languages
English (en)
French (fr)
Inventor
典彦 直野
智久 太田
邦彦 大中
Original Assignee
リプレックス株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by リプレックス株式会社 filed Critical リプレックス株式会社
Priority to JP2011528576A priority Critical patent/JPWO2011024298A1/ja
Priority to PCT/JP2009/065116 priority patent/WO2011024298A1/ja
Publication of WO2011024298A1 publication Critical patent/WO2011024298A1/ja
Priority to US13/403,031 priority patent/US20120216041A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key

Definitions

  • the present invention relates to information processing in which servers provide services in cooperation with each other.
  • the present invention particularly relates to information processing for providing an online service.
  • Web services include e-mail, chat, SNS (Social Networking Service), video / photo posting, search, map, merchandise sales, and merchandise delivery.
  • SNS Social Networking Service
  • video / photo posting search, map, merchandise sales, and merchandise delivery.
  • one user has come to use many web services.
  • one Internet user has a plurality of e-mail addresses, becomes a member of a plurality of SNS services, and uses a plurality of goods sales.
  • Non-Patent Document 1 Information on products sold on a product sales Web service called Amazon can be used in other Web services via the API (Non-patent Document 2).
  • the social graph API provided by Google Inc. has been formulated with the goal of using an acquaintance relationship between users beyond the boundaries of Web services in any Web service (Non-Patent Document 3).
  • non-public information includes user ID information, user attribute information, acquaintance relationships, and the like.
  • the social graph API is formulated for the purpose of mutual use such as ID information and acquaintance relationships, but most of such information is non-public information. For this reason, web services that can acquire ID information and acquaintance relationships through the social graph API are extremely limited, and the social graph API cannot be used for convenience, and is therefore rarely used.
  • Each Web service operator has a request to use private information such as ID information, user attribute information, and acquaintances of other Web services in their own Web service.
  • ID information, user attribute information, and acquaintance relations are considered as the most important assets for keeping Web users in their own service rather than other services, as well as being a revenue source for Web service providers. Because. That is, each Web service operator desires cooperation with other Web services through the API, but has a conflicting request to maintain the independence of his Web service.
  • each Web service provided using a server, a system, an information terminal, a network, or the like allows other service operators to obtain all non-public information.
  • a method that allows a user to mutually use non-public information beyond a plurality of Web services while maintaining independence completely allows a user to mutually use non-public information beyond a plurality of Web services while maintaining independence completely.
  • a system comprising: a first server that stores a first encryption key; and a second server that stores a second encryption key, wherein the first server includes information Is encrypted with a third encryption key, and the third encryption key is double-encrypted with the second encryption key and the first encryption key.
  • Another aspect of the present invention is a system having a first server that stores a first encryption key, a second server that stores a second encryption key, and a third server,
  • the first server includes a transmission unit that transmits the first encryption key to the third server, and the third server includes a reception unit that receives the first encryption key;
  • An encryption key generation unit that generates an encryption key, generates an encryption key obtained by encrypting the third encryption key with the first encryption key, and transmits the encryption key to the second server
  • the second server includes a receiving unit that receives the encryption key, and double encryption that generates a double encryption key by double-encrypting the encryption key with the second encryption key.
  • a system comprising a storage unit for storing a key is disclosed.
  • a first encryption key obtained by double-encrypting a first encryption key with a second encryption key and the third encryption key, and a first encryption key for storing the third encryption key are stored.
  • a transmission unit that transmits the third encryption key to the third server wherein the second server includes a reception unit that receives the double encryption key, and the double encryption key.
  • An encryption key generation unit that generates an encryption key decrypted with the second encryption key; and a transmission unit that transmits the encryption key to the third server, wherein the third server includes: A receiving unit for receiving the encryption key; and generating the first encryption key by decrypting the encryption key with the third encryption key.
  • a system comprising: a cryptographic key generator.
  • the storage unit that stores the first encryption key and the encrypted information obtained by encrypting the information with the second encryption key are received from the first server, and the second encryption A receiving unit that receives from the second server a third encryption key stored in the second server and a double encryption key that is double-encrypted with the first encryption key; and the encryption information And a storage unit that stores the double encryption key in association with ID information.
  • a reception unit that receives information from an information terminal, an encryption key generation unit that generates a first encryption key, and encrypted information obtained by encrypting the information with the first encryption key And a transmitting unit that transmits the encrypted information to the first server, and the receiving unit receives a second encryption key from the first server, and An encryption key generation unit that generates an encryption key obtained by encrypting the first encryption key with the second encryption key, and the transmission unit includes a third key stored in the second server.
  • a server is disclosed that transmits the encryption key to the second server in order to double encrypt the encryption key with the encryption key to generate a double encryption key.
  • Another aspect of the present invention includes a receiving unit that receives information from an information terminal, and a transmitting unit that transmits an identification tag that uniquely identifies a user of the information terminal to a first server, and The receiving unit receives a first encryption key from the first server, is a double encryption key stored in the first server in association with the identification tag, and receives the second encryption key from the first server. 3 and an encryption key obtained by decrypting a double encryption key double-encrypted with the first encryption key with the third encryption key stored in a second server.
  • An encryption key generation unit that receives the information from the server and generates the second encryption key by decrypting the encryption key with the first encryption key. The encryption information encrypted with the second encryption key is transmitted to the first server.
  • a server is disclosed.
  • Another aspect of the present invention includes a receiving unit that receives information from an information terminal, and a transmitting unit that transmits an identification tag that uniquely identifies a user of the information terminal to a first server, and The receiving unit receives the first encryption key from the first server, and stores the second encryption key stored in the first server in association with the identification tag as the third encryption key and the first encryption key.
  • An encryption key generation unit that generates the second encryption key by decrypting the encryption key with the first encryption key, and the transmission unit encrypts the information with the second encryption key.
  • a server is disclosed that transmits information to a fourth server.
  • a server comprising: a transmission unit that transmits data to one server is disclosed.
  • a first encryption key and encrypted information obtained by encrypting information with a second encryption key are received from a first server, and the second server receives the second encryption key.
  • a receiving unit that receives an encryption key obtained by encrypting an encryption key with the first encryption key, and an encryption unit that generates the second encryption key by decrypting the encryption key with the first encryption key.
  • a decrypting unit that decrypts the encrypted information with the second encryption key to generate the information, and a transmitting unit that transmits the information to an information terminal.
  • Another aspect of the present invention is a system including a first server that stores a first encryption key and a second server that stores a second encryption key, wherein the first server includes: , A system comprising a storage unit for storing double-encrypted information obtained by double-encrypting information with the first encryption key and the second encryption key.
  • Another aspect of the present invention is a system including a first server that stores a first encryption key, a second server that stores a second encryption key, and a third server,
  • the third server includes a storage unit for storing double encrypted information obtained by double-encrypting information with the first encryption key and the second encryption key.
  • a system including a first server that stores a first encryption key, a second server that stores a second encryption key, a third server, and an information terminal
  • the third server receives information from the information terminal, receives the first encryption key from the first server, and receives the second encryption key from the second server;
  • An encryption unit that double encrypts the information with the first encryption key and the second encryption key, and the first server includes a storage unit that stores the double encryption information.
  • a first server that stores a first encryption key
  • a second server that stores a second encryption key
  • a third server receives information from the information terminal, the first encryption key from the first server, and the second encryption key from the second server.
  • a receiving unit that receives the information, an encryption unit that double-encrypts the information with the first encryption key and the second encryption key, and the fourth server stores the double-encrypted information.
  • a system comprising a storage unit is disclosed.
  • a receiving unit that receives first information from an information terminal, receives a first encryption key from a first server, and receives a second encryption key from a second server;
  • a server comprising: a transmission unit that transmits information to the first server is disclosed.
  • a receiving unit that receives first information from an information terminal, receives a first encryption key from a first server, and receives a second encryption key from a second server;
  • An encryption unit for generating first double-encrypted information obtained by double-encrypting the first information with the first encryption key and the second encryption key; and the first double-encryption Disclosed is a server comprising a transmission unit for transmitting information to a third server.
  • a first encryption key is received from a first server
  • a second encryption key is received from a second server
  • first information is received from the first server.
  • a receiving unit for receiving first double-encrypted information double-encrypted with one encryption key and the second encryption key, and the first double-encrypted information with the first encryption key and Disclosed is a server comprising: a decryption unit that decrypts the first information decrypted with the second encryption key; and a transmission unit that transmits the first information to an information terminal.
  • information distributed and held by a user in a certain Web service can be used in different Web services.
  • user information of each Web service cannot be obtained from other Web service operators.
  • a security service that provides a function of integrating user information distributed to each Web service and transmitting it to the user's information terminal or storing it in an encrypted form is provided in each Web service. Mediates distributed user information.
  • the operator of this security service cannot obtain any information held by the Web service user to which they are connected.
  • FIG. 1 It is a system schematic block diagram by the information terminal and server apparatus in one Embodiment of this invention. It is a schematic block diagram of the information processing server apparatus of the security service X in one Embodiment of this invention. It is a schematic block diagram of the information storage server apparatus of the security service X in one Embodiment of this invention. It is a schematic block diagram of the server apparatus of Web service Y in one Embodiment of this invention. It is a schematic block diagram of the server apparatus of Web service Z in one Embodiment of this invention. It is a schematic block diagram of the information terminal in one Embodiment of this invention. FIG.
  • FIG. 6 is a flowchart illustrating a process for storing information in a security service X when a user A uses a Web service Y in an embodiment of the present invention. It is a figure showing an example of the display screen of the information terminal of the user A in one Embodiment of this invention. It is a figure which shows an example of the encryption key table of the server apparatus of Web service Y in one Embodiment of this invention. It is a figure which shows an example of the user encryption key table of the information storage server of the security service X in one Embodiment of this invention. It is a figure which shows an example of the encryption information table of Web service Y in one Embodiment of this invention.
  • FIG. 6 is a flowchart illustrating a process for storing information in a security service X when a user A uses a Web service Y in an embodiment of the present invention. It is a figure which shows an example of the service encryption table of the security service X in one Embodiment of this invention.
  • FIG. 6 is a flowchart illustrating a process for storing information in a security service X when a user A uses a Web service Y in an embodiment of the present invention.
  • FIG. 6 is a flowchart illustrating a process for storing information in a security service X when a user A uses a Web service Y in an embodiment of the present invention. It is a flowchart explaining the process which the user A calls information from the security service X at the time of utilization of Web service Y in one Embodiment of this invention, and displays it on the information terminal. It is a figure showing an example of the display screen of the information terminal of the user A in one Embodiment of this invention.
  • FIG. 1 is a schematic configuration diagram of a system in an example of an embodiment of the present invention.
  • FIG. 1 shows a schematic configuration of an information storage and browsing system.
  • the information processing server 100 of the security service X and the information storage server 120 of the security service X are the server 150 of the Web service Y, the server 160 of the Web service Z, the information terminal 170 of the user A, and the information terminal 180 of the user B Are connected through a network 190.
  • the server 100 and the server 120 may be connected via the network 190, via another network, or directly connected.
  • FIG. 2 shows a schematic configuration diagram of the information processing server 100 of the security service X.
  • the information processing server of the security service X includes a transmission / reception unit 101, a temporary storage unit 102, a decryption unit 106, an encryption unit 107, an HTML generation unit 108, an HTML analysis unit 109, a search unit 110, and an encryption key generation unit 111.
  • the temporary storage unit 102 includes an encryption information area 103, a plaintext information area 104, and an encryption key table 105.
  • the “transmission / reception unit” may be divided into a unit that provides a transmission function and a unit that provides a reception function, and may be referred to as a “transmission unit” and a “reception unit”. The same applies to the transmission / reception units of other servers and information terminals.
  • FIG. 3 shows a schematic configuration diagram of the information storage server 120 of the security service X.
  • the information storage server of the security service X includes a transmission / reception unit 121, a database storage unit 122, and a search unit 125.
  • the database storage unit 122 includes an encryption information table 123, a user encryption key table 124, and a service encryption key table 126.
  • FIG. 4 shows a schematic configuration diagram of the server 150 of the Web service Y.
  • the server of the Web service Y includes a transmission / reception unit 151, a database storage unit 152, a temporary storage unit 154, an HTML generation unit 155, an HTML analysis unit 156, a decryption unit 157, a search unit 158, and an encryption unit 159.
  • the database storage unit 152 has an encryption key table 153.
  • FIG. 5 shows a schematic configuration diagram of the server 160 of the Web service Z.
  • the server of the Web service Z includes a transmission / reception unit 161, a database storage unit 162, a temporary storage unit 164, an HTML generation unit 165, an HTML analysis unit 166, a decryption unit 167, a search unit 168, and an encryption unit 169.
  • the database storage unit 162 has an encryption key table 163.
  • the temporary storage unit of each server is realized by a storage unit.
  • storage part is comprised using memory elements, such as DRAM (Dynamic Random Access Memory), for example.
  • DRAM Dynamic Random Access Memory
  • the processing according to the present invention is completed for the processing.
  • the stored information is deleted. It is preferable that the information stored in the temporary storage unit is not permanently stored in the server like a so-called database. For example, the information stored in the temporary storage unit cannot be retrieved by the security service or the operator of each Web service at an arbitrary time.
  • the temporary storage unit is preferably for temporarily storing information only for the time required for processing. As long as the information can be erased, the temporary storage unit can be realized by a nonvolatile storage device such as a hard disk drive or a flash memory in addition to a main storage device of a server constituted by a DRAM or the like.
  • FIG. 6A shows a schematic configuration diagram of the information terminal 170 of the user A.
  • FIG. 6B shows a schematic configuration diagram of the information terminal 180 of the user B.
  • the information terminal 170 of the user A includes a transmission / reception unit 171, an HTML analysis unit 172, a GUI display unit 173, and an input unit 174.
  • the information terminal 180 of the user B includes a transmission / reception unit 181, an HTML analysis unit 182, a GUI display unit 183, and an input unit 184. (Embodiment 1)
  • a user A who uses the Web service Y communicates with the server 150 of the Web service Y through the information terminal 170.
  • the Web service Y is an address book Web service that manages the names and addresses of the user A and his / her acquaintances.
  • the names and addresses of the user A and the acquaintance are all stored in the server 150 of the Web service Y.
  • the Web service Y and the Web service Z are address book Web services. Any service such as SNS (Social Networking Service), article sales, and article delivery may be used.
  • SNS Social Networking Service
  • information that the user A wants to keep secret from the Web service Y is first sent from the information terminal 170 of the user A to the information processing server 100 of the security service X through the network 190.
  • the information processing server 100 of the security service X double-encrypts the received information and stores it in the information storage server 120 of the security service X.
  • two encryption keys are used.
  • the first encryption key is stored in the server 150 of the Web service Y.
  • the second encryption key is stored in the information storage server 120 of the security service X.
  • the first encryption key and the second encryption key are sent to the information processing server of the service X through the network 190, and the encryption is executed.
  • the encryption information generated here is information that cannot be returned to plaintext unless the first encryption key and the second encryption key are all available.
  • the information processing server 100 of the security service X erases all of the first encryption key, the second encryption key, and the received plaintext information after double encryption. Moreover, even if stored in the database storage unit, the first encryption key, the second encryption key, and the received plaintext information are all deleted after double encryption.
  • the database storage unit refers to a unit that permanently stores information.
  • the double-encrypted information is stored in the encrypted information table 123 of the database storage unit 122 of the information storage server 120 of the security service X.
  • the server 150 of the Web service Y stores the first encryption key, but does not have the encryption information.
  • the information storage server 120 of the security service X stores both the encryption information and the second encryption key, but does not store the first encryption key.
  • the server of the Web service Y is abbreviated as the server Y in the flowcharts of FIG.
  • user A is logged in to the Web service Y (step S701).
  • the HTML generation unit 155 of the server of the Web service Y generates an HTML code
  • the transmission / reception unit 151 transmits the HTML code to the information terminal 170 of the user A through the network 190.
  • the GUI display unit 173 displays an image.
  • IDya for uniquely identifying the user A by the web service Y is stored in the temporary storage unit 154 of the server of the web service Y.
  • information for identifying a user may be referred to as an identification tag.
  • the identification tag include identification information such as the above-mentioned IDya, and information specifying an individual such as a mail address, name and address.
  • the HTML code is an example of a code for displaying information on the GUI display unit 173, and an arbitrary code can be used.
  • the Web service Y server requests the user A to input information that is not stored in the Web service Y server 150.
  • the connection between the server 150 of the Web service Y and the information terminal 170 of the user A is redirected to the information processing server 100 of the security service X (step S702). That is, the information terminal 170 shifts from a state in which communication is performed with the server 150 to a state in which communication is performed with the server 100.
  • the HTML generation unit 108 of the information processing server of the security service X generates an HTML code, and the transmission / reception unit 101 transmits the HTML code to the information terminal 170 of the user A through the network 190.
  • the GUI display unit 173 displays an image.
  • an input form for the name and address of the user A and the acquaintance of the user A as shown in FIG. 8 is displayed.
  • a Web browser display window 800 is displayed on the GUI display unit 173. Further, the web browser display window 800 includes a display 801 indicating that the user A is currently using the web service Y through the web browser. If it is desired to display some information that the Web service Y has, such information is transmitted from the Web service Y server 150 to the information processing server 100 of the security service X, and this information is temporarily stored in the plaintext information area 104.
  • the HTML code stored in the security service HTML generation unit 108 may be used to generate the HTML code for displaying an image as shown in FIG. For example, in the example of FIG.
  • information held by the Web service Y such as the name (Better Thomas) 802 of the user A, is sent from the server 150 of the Web service Y to the information processing server 100 of the security service X. After that, the HTML generation unit 108 converts it into an HTML code. In such a case, information received from the server 150 of the Web service Y is deleted together with other information in step S711 described later.
  • the web browser display window 800 displays an information input field 810 for the user and an information input field 820 for the acquaintance.
  • the own information input field 810 has a window 811 for inputting his / her name and a window 812 for inputting his / her address.
  • the acquaintance information input field 820 includes a window 821 for inputting an acquaintance's name and a window 822 for inputting an acquaintance's address.
  • the acquaintance information input field 820 has a window for inputting the name and address of one acquaintance, but in this embodiment, an input window for inputting the names and addresses of a plurality of acquaintances. You may have.
  • FIG. 8 shows an example of inputting a name and an address for both himself and an acquaintance. In this embodiment, 1 may have a window for inputting other information about himself and an acquaintance.
  • FIG. 8 is an example of the present embodiment, and the information for requesting input to the information terminal of the user A is not limited to the name and address, and may be any information.
  • the user A inputs the information of the user A himself and the information of the acquaintance.
  • information Iya is obtained by combining the character strings input here using, for example, a space delimiter.
  • the transmission / reception unit 171 of the information terminal of the user A sends Iya to the information processing server 100 of the service X through the transmission / reception unit 171 and the network 190 (step S703).
  • the transmission / reception unit 101 of the information processing server of service X receives Iya and temporarily stores it in the plaintext information area 104 in the temporary storage unit 102 (step S704).
  • information Iya obtained by combining input character strings for a plurality of input fields, but these may be divided into a plurality of pieces of information.
  • FIG. 9 shows an example of the encryption key table 153.
  • the encryption key table has a column 910 for storing the ID of the user of the Web service Y, a column 920 for storing the ID in the security service X, and a column 930 for storing the encryption key stored in the server 150 of the Web service Y.
  • the ID 911 of the user A which is the ID of the Web service Y
  • the column 920 of the security service X and the column 930 of the encryption key are searched.
  • a certain IDxa 921 and an encryption key Ky931 for the Web service Y are obtained.
  • IDxa 921 is stored in advance in the encryption key table 124 has been described.
  • the security service of the user A is stored in the information storage server of the security service X. It may be obtained by requesting ID issuance at X, stored in the encryption key table 153, and proceeding to the next step.
  • ID when ID is expressed as IDmn, m represents a service and n represents a user.
  • IDya represents the ID of the user A in the Web service Y.
  • Km when Km is written in the encryption key, m represents a service.
  • Ky represents an encryption key stored in the server 150 of the Web service Y.
  • Kmn when Kmn is written, m represents a service and n represents a user.
  • Kxa indicates that it is the encryption key of the user A in the security service X.
  • the transmission / reception unit 151 of the server of the Web service Y sends the IDxa and the encryption key Ky that is the ID of the user A in the security service X as the search result to the information processing server 100 of the service X through the network 190 (step S705).
  • IDxa is temporarily stored in the plaintext information area 104 of the temporary storage unit and Ky is temporarily stored in the encryption key table 105 (step S706).
  • the encryption unit 107 of the information processing server of the security service X sends a request signal for the encryption key of the user A stored in the security service X to the information storage server 120 of the service X through the transmission / reception unit 101 and the network 109.
  • This request signal includes IDxa, which is the ID in the security service X of the user A, received from the server 150 of the Web service Y in step S705 (step S707).
  • FIG. 10 shows an example of the user encryption key table 124.
  • the user encryption key table 124 according to the first embodiment includes a column 1010 for storing the ID of the security service X and a column 1020 for storing the ID of the security service X.
  • an encryption key Kxa1021 is obtained. If there is no encryption key associated with IDxa, Kxa is generated.
  • the transmission / reception unit 121 of the information storage server of the security service X sends Kxa to the information processing server 100 of the security service X through the network 190.
  • the transmission / reception unit 101 of the information processing server of the security service X receives Kxa and stores it in the encryption key table in the volatile storage area (step S708).
  • the encryption key table temporarily stores the encryption key Ky obtained from the Web service Y server in step S706 and the encryption key Kxa obtained from the information storage server of security service X in step S708. Is memorized.
  • the encryption unit 107 double-encrypts the information Iya stored in the plaintext information area 104 in step S704 using the encryption key Ky stored in step S706 and the encryption key Kxa stored in step S708.
  • the double encryption result is expressed as EKy (EKxa (Iya)).
  • EKxa (EKy (Iya)) may be the result of double encryption by reversing the order of encryption.
  • the encryption processing used is, for example, encryption that can be decrypted without the encryption keys of both Ky and Kxa, such as encrypting Iya using the operation result obtained by calculating Ky and Kxa as an encryption key. Any processing can be used.
  • a symmetric key or an asymmetric key may be used for encryption in the steps described so far.
  • Ky stored in the server of the Web service Y and Kxa stored in the information storage server of the security service X are the secret keys of the user A.
  • Ky, and Kxa are encrypted using public keys respectively.
  • EKy EKxa (Iya)
  • the double encryption information EKy (EKxa (Iya)) is temporarily stored in the encryption information area 103 of the temporary storage unit.
  • the IDxa of the user A stored in the plaintext storage area 104 in step S706 and the double encrypted information EKy (EKxa (Iya)) stored in the encrypted information area 103 in step S709 are transmitted / received by the transmitting / receiving unit 101.
  • the information processing server 100 of the security service X deletes IDxa, Ky, Kxa, Iya, and EKy (Exa (Iya)) from the temporary storage unit 102 (step S711).
  • step S702 If the information sent from the web service Y server 150 to the information processing server 100 of the security service X in step S702 is temporarily stored in the temporary storage unit 102, the information is also erased in step S711.
  • the transmission / reception unit 121 of the information storage server 120 of the security service X receives the information sent in step S710, the information is stored in the encryption information table 123 of the database storage unit (step S712).
  • FIG. 11 shows an example of the encryption information table 123 in the first embodiment.
  • the encryption information table 123 has a column 1110 for storing the ID of the security service X and a column for storing one or more pieces of encryption information.
  • the encrypted information EKy (EKxa (Iya)) 1121 stored in step S711 is stored in the row IDxa1111.
  • the encryption key Kxa1021 and the double encryption information EKy (EKxa (Iya)) are both stored in the information storage server of the security service X.
  • the encryption key and the double encryption key may be stored in different servers.
  • step S1201 user A is logged in to the Web service Y (step S1201).
  • the result of the user A's information terminal analyzing the HTML code transmitted from the Web service Y is displayed on the GUI display unit 173 of the user A information terminal.
  • the user A executes an operation of calling the user A himself / herself and the information Iya related to the acquaintance input in step S703 through the input unit 174.
  • the transmission / reception unit 171 of the information terminal of the user A sends an Iya display request to the Web service Y server 150 through the network 190 (step S1202).
  • the transmission / reception unit 101 of the server of the Web service Y that has received this request redirects the connection of the user A to the information terminal 170 to the information processing server 100 of the security service X (step S1203).
  • the search unit 158 of the server of the Web service Y searches the encryption key table 153 in the database storage unit using IDya for uniquely identifying the user A by the Web service Y as a search key.
  • IDxa921 and Ky931 obtained as the search results are obtained.
  • IDxa and Ky are sent to the information processing server 100 of the security service X through the network 190 together with the request for Iya (step S1204).
  • Ky is stored in the encryption key table 105 of the temporary storage unit and IDxa is stored in the plaintext information area 104.
  • the transmission / reception unit 101 of the information processing server of the security service X sends an acquisition request for the double encrypted information of Iya together with IDxa received from the server of the Web service Y via the network 190 to the information storage server of the security service X 120 (step S1205).
  • the transmission / reception unit 121 of the information storage server of the security service X receives this request, the encryption information table 123 and the encryption key table 124 are searched using the IDxa received by the search unit 125 as a search key. Referring to FIG. 11 again, by searching the encryption information table 123, double encryption information EKy (EKxa (Iya)) 1121 is obtained as a search result.
  • the transmission / reception unit 121 sends the encryption information EKy (EKxa (Iya)) and the encryption key Kxa to the information processing server 100 of the security service X through the network 190 (step S1206).
  • the transmission / reception unit 101 receives these pieces of information, and the double encryption information EKy (EKxa (Iya)) is stored in the encryption information area 103 of the temporary storage unit and the encryption key Kxa is stored. Each of them is stored in the encryption key table 105 in association with IDxa.
  • the decryption unit 106 decrypts the encrypted information EKy (EKxa (Iya)) using Kxa stored in the encryption table here and Ky received from the server of the Web service Y in step S1204. (Step S1207) to obtain information Iya.
  • This Iya is temporarily stored in the plaintext information area 104 of the temporary storage unit, and the HTML generation unit 108 generates an HTML code including a part or all of this information Iya (step S1208).
  • the HTML code generated here is sent to the information terminal 170 of the user A through the network 190 by the transmission / reception unit 101 (step S1209).
  • This information may be separately received from the Web service Y server, stored in the plaintext information area 104, and then included in the HTML code generated in step S1208.
  • it is erased together with other information in step S1211.
  • the HTML analysis unit analyzes the received HTML code, and the GUI display unit receives the information Iya, that is, the information of the user A and the acquaintance input in step S703.
  • a screen including a part or all of is displayed (step S1210).
  • IDxa, Ky, Kxa, Iya, and EKY Exa (Iya)
  • the processing described so far with reference to the flowcharts of FIGS. 7 and 12 uses the security service X for the information Iya that needs to be input or viewed when the user A uses the Web service Y through the information terminal 170. It is a process for storing it safely.
  • the processing described so far is hereinafter referred to as case 1.
  • case 1 a process for storing information Iza that needs to be input or viewed using the security service X when the user A uses the Web service Z through the information terminal 170 as the case 2 will be described.
  • the processing in case 2 is almost the same as the processing described so far with reference to the flowcharts of FIGS. 7 and 12, so the above description will not be repeated and the difference will be described briefly with reference to FIG. 13.
  • FIG. 13 shows a comparison between Case 1 described with reference to the flowcharts of FIGS. 7 and 12 and an example of processing described below.
  • Case 1 is the first row 1310 of the table shown in FIG.
  • the process in Case 1 is a process for safely storing and browsing the information Iya when the user A 1311 uses the Web service Y1312.
  • user A has IDya 1313 for uniquely identifying user A in Web service Y and IDxa 1315 for uniquely identifying user A in security service X.
  • the double-encrypted information is EKy (EKxa (Iya)) 1317.
  • the process in Case 2 is a process for safely storing and browsing the information Iza when the user A 1321 uses the Web service Z1322.
  • the user A has an IDza 1323 for uniquely identifying the user A in the Web service Z, and an IDxa 1325 for uniquely identifying the user A in the security service X.
  • the encryption key used for double encryption in the security service X is the encryption key Kz1324 stored in the server of the Web service Z and the encryption key Kxa1326 stored in the information storage server of the security service X.
  • the double-encrypted information is EKz (EKxa (Iza)) 1327.
  • the processing of case 2 is processing in which the symbols in the first row in FIG. 13 are replaced with the symbols in the second row in the flowcharts of FIGS. 7 and 12 for case 1.
  • the encrypted information EKxa (Iya) obtained by first encrypting Iya with Kxa is generated, and this encryption is further performed.
  • Double encrypted information EKy (EKxa (Iya)) was generated by encrypting the information with Ky. Also, by reverse processing, the double encrypted information EKy (EKxa (Iya)) is decrypted to generate plaintext information Iya.
  • the information Iya is first encrypted with the encryption key Ky to generate encrypted information EKy (Iya), and this encrypted information is encrypted with Kxa to double-encrypted information EKxa (EKy (Iya)) may be generated.
  • the double encryption information may be Kf (Iya) that generates an arbitrary calculation result Kf uniquely determined by Kxa and Ky. That is, the double encryption in the first embodiment is any encryption method that requires two keys, Ky and Kxa, when decrypting the double encrypted information into the plaintext information Iya. It may be.
  • the first effect of the present embodiment is that the Web service server can provide each Web service without storing information input by the user, for example, information to be protected such as Iya. is there.
  • information to be protected such as Iya.
  • FIG. 9 in case 1, only the information of user A stored in the database storage unit 152 of the server 150 of the Web service Y is IDya 911, IDxa 912, and Ky 913. Even if these leak out from the server 150 of the Web service Y, the information Iya of the user A to be protected is not included and cannot be restored.
  • web service users often request that they do not want the web service provider to use such information when inputting information about themselves or their acquaintances into the web service. For example, a web service user may not want to receive an undesired advertisement / promotion message from a web service provider. In addition, many web service users may be concerned about the leakage risk of their input and acquaintances.
  • the second effect of this embodiment is that, in the information storage server of the security service X, information to be protected, such as Iya, input by the user is subjected to double encryption called EKy (EKxa (Iya)). Therefore, high safety is achieved.
  • EKy EKxa (Iya)
  • the information stored in the information storage server 120 of the security service X is only the IDxa 1011 and Kxa 1021 and the double encrypted information EKy (EKxa (Iya)) 1121. is there. Even if they are leaked from the information storage server 120 of the security service X, the double encryption information EKy (EKxa (Iya)) cannot be returned to plaintext because there is no encryption key Ky.
  • the encryption key Ky is not stored in the information storage server 120 of the security service X, the operator of the security service X returns the information Iya to be protected to plain text, for example, advertisement / promotion It cannot be used.
  • the temporary storage unit 102 stores the plaintext Iya, the encryption key Ky, and the encryption key. Kxa is temporarily stored. Similarly, the plaintext Iya, the encryption key Ky, and the encryption key Kxa are temporarily stored in the temporary storage unit 102 from step S1204 to step S1210, triggered by the request for information Iya from the information terminal of user A. Memorized. However, in either case, at the same time as the encryption or display process is completed, the data is erased from the temporary storage unit 102 (step S711 or step S1211) and is not permanently stored as database data.
  • the risk of database information leakage from the information processing server of the security service X is lower than that of the conventional method.
  • the plaintext information is temporarily stored in the information processing server of the security service X.
  • the information in the temporary storage unit such as the main storage device is obtained by entering the server from the outside. It is difficult.
  • various laws and regulations for the purpose of protecting personal information aim to protect a database that collects personal information. In the first embodiment, not only can a substantial risk related to an information leakage accident be reduced, but also risks for violations of various laws and regulations aimed at protecting personal information for both Web services and security services X. Will be reduced.
  • the following effects exist as a combination of the first effect and the second effect.
  • the user A of the Web service Y provides a service for encrypting and storing the information Iya input when using the Web service Y to the operator of the Web service and storing it. It can be stored and used in a state that is not available to the service X operator.
  • the third effect of the present invention according to the first embodiment is that, even if the double encrypted information and the key are leaked from the server storing each of them or the information processing server of the security service X, In comparison, the damage can be limited to a small range.
  • the temporary storage unit of the information processing server of the security service X temporarily stores the encryption key managed by the Web service, the encryption key managed by the security service X, and the plain text user information to be protected. Is remembered. Now, for example, consider a case where information temporarily stored in the temporary storage unit leaks from the information processing server of the security service X. Refer to FIG. 13 again.
  • the encryption key managed by the Web service is different for each Web service, but a common encryption key is used among a plurality of users of each Web service. .
  • the present invention is not limited to this, and in this embodiment, a different encryption key may be used for each user.
  • the encryption key managed by the security service X is different for each user, but one encryption key is used for one user even when a certain user uses a plurality of Web services.
  • the present invention is not limited to this, and in this embodiment, a different encryption key may be used for each Web service. If the number of encryption keys increases, there is an advantage that damage in the event of encryption key leakage can be further narrowed down.
  • the encryption information table 123 for storing double encryption information and the encryption key table 124 for storing an encryption key such as Kxa in the security service X are the same security service X.
  • these two tables may reside in different servers. Further, when these two tables exist in different servers, these two servers may be operated by different operators.
  • the information stored in the information storage server of the security service X is the information that the user A receives from the information terminal in a state where neither the Web service Y nor the security service X can be returned to plain text.
  • the description has been made assuming that the input information is Iya. However, such information does not need to be information input by the user A, and may be an encryption key for encrypting some information, for example.
  • the server 150 of the Web service Y transmits the encryption key Ky held by the Web service Y to the information processing server 100 of the security service X in step S705 of FIG. 7 and step S1204 of FIG.
  • FIG. 7 shows a process for storing the information input by the user A after being double-encrypted by the information storage server of the security service X.
  • FIG. 12 shows a process for calling up the information of the user A stored in the security service X by double encryption.
  • the security service X server receives the encryption key Ky of the Web service Y server and temporarily stores it in the temporary storage unit of the information processing server 100.
  • the encryption key Ky is deleted (steps S711 and S1211). For this reason, it is safe to leak double-encrypted information from the information storage server of the security service X.
  • the encryption key Ky is used so that the information of the user A who uses the Web service Y is not disclosed to the operator of the security service X. Therefore, it may be considered undesirable to send the encryption key Ky to the information processing server 100 under the management of the operator of the security service X.
  • the encryption key Ky is common to all users of the Web service. For this reason, if the operator of the security service X stores the encryption key Ky in the database storage unit and misuses it, it becomes possible to return the information of all users of the Web service Y to plain text.
  • the second embodiment an embodiment that realizes the same effect as that of the first embodiment without transmitting the encryption key Ky of the web service Y to the server of the security service X will be described.
  • the information Iya 1419 stored in the security service X is double-encrypted with the two keys Ky1413 and Kxa1414.
  • the information Iya 1419 is encrypted with the encryption key Kxa 1418 of the user A in the security service X, and stored in the information storage server 120 in the state of EKxa (Iya).
  • the encryption key Kxa 1418 is double-encrypted with the encryption key Kxy 1417 of the security service X and the encryption key Ky 1416 of the Web service Y, and is stored in the information storage server 120 of the security service X in the state of EKxy (EKy (Kxa)).
  • Kxy is an encryption key for the user of the Web service Y stored by the security service X.
  • Ky in the second embodiment is also an encryption key for the user of the web service Y stored in the web service Y, as in the first embodiment.
  • what is double-encrypted is an encryption key such as Kxa or Kya.
  • information input by the user A is used in the second embodiment. In this way, double encryption may be performed using Ky and Kxy.
  • step S1501 user A is logged in to Web service Y (step S1501).
  • the HTML generation unit 155 of the server of the Web service Y generates an HTML code
  • the transmission / reception unit 151 transmits the HTML code to the information terminal 170 of the user A through the network 190.
  • the GUI display unit 173 displays an image. Since user A is logged in at this point, at least IDya for uniquely identifying user A with Web service Y is stored in temporary storage unit 154 of the server of Web service Y.
  • the Web service Y server requests the user A to input information that is not stored in the Web service Y server 150.
  • the connection between the server 150 of the Web service Y and the information terminal 170 of the user A is redirected to the information processing server 100 of the security service X (step S1502).
  • the HTML generation unit 108 of the information processing server of the security service X generates an HTML code
  • the transmission / reception unit 101 transmits the HTML code to the information terminal 170 of the user A through the network 190.
  • the GUI display unit 173 displays an image.
  • an input form for the name and address of the user A and the acquaintance of the user A as shown in FIG. 8 is displayed.
  • a web browser display window 800 is displayed on the GUI display unit 173. Further, the web browser display window 800 includes a display 801 indicating that the user A is currently using the web service Y through the web browser. If it is desired to display some information that the Web service Y has, such information is transmitted from the server 150 of the Web service Y to the information processing server 100 of the security service X, and is temporarily stored in the plaintext information area 104. After the storage, the HTML generation unit 108 of the security service may generate and display the HTML code as shown in FIG. 8 using this. For example, in the example of FIG.
  • step S1806 or step S1908 information held by the Web service Y, such as the name (Better Thomas) 802 of the user A, is sent from the server 150 of the Web service Y to the information processing server 100 of the security service X. After that, the HTML generation unit 108 converts it into an HTML code. In such a case, information received from the server 150 of the Web service Y is deleted together with other information in step S1806 or step S1908.
  • the user A uses the input unit 174 of the information terminal 170, and the user A inputs the information of the user A and the information of the acquaintance.
  • information Iya is obtained by combining the character strings input here with, for example, a space delimiter.
  • the transmission / reception unit 171 of the information terminal of the user A transmits Iya, and the transmission / reception unit 171 transmits the information to the information processing server 100 of the service X through the network 190 (step S1503).
  • the transmission / reception unit 101 of the information processing server for service X receives Iya and temporarily stores it in the plaintext information area 104 in the temporary storage unit 102 (step S1504).
  • information Iya that combines input character strings for a plurality of input fields such as names and addresses.
  • such input character strings may be divided into a plurality of pieces of information and transmitted and stored. Good.
  • the search unit 158 of the server of the Web service Y searches the encryption key table 153 using the IDya of the user A stored in the temporary storage unit 154 as a search key.
  • FIG. 9 shows an example of the encryption key table 153.
  • the column 920 of the security service X is searched using IDya 911 which is the ID of the user A's Web service Y as a search key, and IDxa 921 which is the ID of the security service X of the user A is obtained as a search result.
  • the transmission / reception unit 151 of the server of the Web service Y transmits IDxa that is the ID of the user A in the security service X as the search result to the information processing server 100 of the security service X through the network 190 (step S1505).
  • the difference between the first embodiment and the present embodiment is that the encryption key Ky of the Web service Y is not sent to the information processing server 101 of the security service X.
  • IDxa is temporarily stored in the plaintext information area 104 of the temporary storage unit.
  • the transmission / reception unit 101 of the information processing server of the security service X sends a request for the encryption key Kxy and the user A's double encryption key EKy (EKxy (Kxa)) stored in the security service X to the service X information.
  • This request includes the ID received from the server 150 of the Web service Y in step S1505, IDxa which is the ID of the security service X of the user A, and information Y representing the Web service (step S1506).
  • the search unit 125 searches the service encryption key table 126 in the database storage unit 122 using Y as a search key.
  • FIG. 16 shows a service encryption key table in the second embodiment.
  • the search unit 125 searches for the encryption key Kxy 1621 of the Web service Y and sends it to the information processing server of the security service X through the transmission / reception unit 121.
  • the information processing server of the security service X that has received this stores it in the encryption key table 105 of the temporary storage unit (step S1507).
  • the encryption key of the Web service Y used in the first embodiment is Ky stored in the server 150 of the Web service Y.
  • this embodiment is different from the first embodiment in that the encryption keys of the two Web services Y are used.
  • two Web service Y encryption keys Ky and Kxy are used, Ky is stored in the Web service Y server 150, and Kxy is stored in the information storage server 120 of the security service X.
  • the processing in step S1507 is processing related to the encryption key Kxy.
  • the search unit 125 of the information storage server of the security service X uses the IDxa of the user A sent from the information processing server of the security service X in step S1506 as a search key, and the encryption key of the encryption information table 123 Is searched (step S1508).
  • An example 1701 of the encryption information table in this embodiment is shown in FIG.
  • the encryption information table 123 in this embodiment stores a double encryption key 1720 and encryption information 1730 in association with each user ID. With the double encryption key stored in the encryption information table 1701, the encryption information cannot be returned to plain text.
  • the encryption information EKxa (Iya) 1731 is encrypted with the encryption key Kxa.
  • the encryption key EKy (Exy (Kxa)) 1721 stored in this table cannot be returned to plaintext with the encryption key stored in the security service X because the key Ky is stored in the server 150 of the Web service Y. Therefore, the encryption key Kxa cannot be obtained by the information storage server of the security service X, and therefore the encrypted information 1731 cannot be returned to plain text.
  • step S1508 the search unit 125 searches whether there is a double encryption key associated with IDxa that is the search key (step S1509). As shown in the example shown in FIG. 17, when the double encryption key exists, the process proceeds to step S1801 in FIG. If the double encryption key corresponding to IDxa has not been generated in the security service X server before, and does not exist in the encryption information table 123, the process proceeds to step S1901 in FIG.
  • the transmission / reception unit 121 of the information storage server of the security service X transmits the double encryption key EKy (EKxy (Kxa)) 1721 retrieved in step S1509 to the server of the web service Y (step S1801).
  • the transmission / reception unit 151 of the server of the Web service Y receives this and temporarily stores it in the temporary storage unit 154.
  • the double encryption key EKy (EKxy (Kxa)) received by the decryption unit 157 is decrypted with the encryption key Ky stored in the encryption key table 153 to obtain EKxy (Kxa).
  • the transmission / reception unit 151 transmits this to the server of the information processing service X of the security service X (step S1802).
  • EKxy (Kxa) cannot be further decrypted with the information stored in the Web service Y server to obtain Kxa.
  • the EKy (EKxy (Kxa)) received from the information storage server of the security service X and the generated EKxy (Kxa) are deleted from the temporary storage unit 154.
  • the transmission / reception unit 101 of the information processing server of the security service X receives EKxy (Kxa) sent from the Web service Y server in step S1802, and temporarily stores it in the encryption information area 103 of the temporary storage unit.
  • the encryption unit 107 decrypts this EKxy (Kxa) with the encryption key Kxy stored in the encryption key table in step S1507 to obtain Kxa (step S1803).
  • the information Iya stored in the plaintext information area 104 of the temporary storage unit in step S1504 is encrypted with the encryption key Kxa obtained in step S1803 to generate EKxa (Iya).
  • the transmission / reception unit 101 sends this EKxa (Iya) to the information storage server of the security service X (step S1804).
  • the transmission / reception unit 121 of the information storage server of the security service X receives this EKxa (Iya).
  • this is stored in the encryption information table 123 of the database storage unit in association with the IDxa of the user A (step S1805).
  • EKxa (Iya) 1931 in the encryption information table 1701 in FIG. 17 is stored in step S1805.
  • IDxa, EKxy (Kxa), EKxa (Iya), Kxy, and Iya stored in the storage unit of the information processing server of the security service X are deleted (step S1806).
  • the double encryption key EKy (EKxy (Kxa)) is stored in the information storage server of the security service X before the user A inputs the information Sya in step S1503 to the information terminal.
  • the double encryption key EKy (EKxy (Kxa)) is not stored in the information storage server of the security service X when the information Iya is input will be described with reference to FIG. is there.
  • step S1509 if the double encryption key associated with IDxa is not stored in the encryption information table 123 of the information storage server of the security service X, the transmission / reception unit 121 of the information storage server of the security service X uses the IDxa
  • the information processing server of the security service X is notified that there is no double encryption key associated with (step S1901).
  • the encryption key generation unit 111 When the transmission / reception unit 101 of the information processing server of the security service X receives this notification, the encryption key generation unit 111 generates the encryption key Kxa for the user A (step S1902).
  • the information Iya stored in the plaintext information area 104 of the temporary storage unit in step S1504 is encrypted with the encryption key Kxa to generate EKxa (Iya).
  • the transmission / reception unit 101 sends this to the information storage server 120 (step S1903).
  • the transmission / reception unit 121 of the information storage server 120 of the security service X receives this EKxa (Iya) and stores it in the encrypted information table 123 of the database storage unit in association with the IDxa of the user A (step S1904).
  • EKxa (Iya) 1931 in the encryption information table 1701 in FIG. 17 corresponds to this.
  • the encryption unit 107 of the information processing server of the security service X encrypts the encryption key Kxa generated in step S1902 with the encryption key Kxy stored in the encryption key table 105 in step S1507, and EKxy (Kxa) Get.
  • the transmitting / receiving unit 101 associates this with IDxa and sends it to the server 150 of the Web service Y (step S1905).
  • the transmission / reception unit 151 of the Web service Y server receives this EKxy (Kxa).
  • the encryption unit 159 encrypts this with the encryption key Ky stored in the encryption key table 153, and generates EKy (EKxy (Kxa)).
  • the transmission / reception unit 151 associates this with IDxa and transmits it to the server 120 of the security service X (step S1906).
  • the server of the Web service Y deletes the generated EKy (EKxy (Kxa)) and the received EKxy (Kxa) from the temporary storage unit 154.
  • the transmission / reception unit 121 of the information storage server of the security service X receives this EKy (EKxy (Kxa)) and stores it in the encrypted information table 123 in association with IDxa (step S1907). Thereafter, the information processing server X deletes IDxa, EKxy (Kxa), Kxy, Kxa (Iya), and Iya temporarily stored in the volatile storage area (step S1908), and ends the process.
  • the double encryption key EKy (EKxy (Kxa)) 1721 and the encrypted information EKxa (Iya) 1731 are stored in the information storage server of the same security service X. It was. However, the double encryption key and the encrypted information may be stored in different servers.
  • step S2001 user A is logged in to the Web service Y (step S2001).
  • the result of analyzing the HTML code transmitted from the Web service Y is displayed on the GUI display unit 173 of the information terminal of the user A.
  • the user A performs an operation for requesting information Iya related to the user A himself and the acquaintance input in step S1503 through the input unit 174.
  • the transmission / reception unit 171 of the information terminal of user A sends an Iya display request to the server 150 of the Web service Y through the network 190 (step S2002).
  • the transmission / reception unit 101 of the server of the Web service Y that has received this request redirects the connection of the user A to the information terminal 170 to the information processing server 100 of the security service X (step S2003).
  • the search unit 158 of the server of the Web service Y searches the encryption key table 153 in the database storage unit using IDya for uniquely identifying the user A by the Web service Y as a search key.
  • the IDxa 921 obtained as a search result is sent to the information storage server 120 of the security service X through the network 190 together with the request for Iya (step S2004).
  • the encrypted information table 123 is searched using the IDxa received by the search unit 125 as a search key, and EKxa (Iya) stored in step S1805 or step S1904 is stored. 1731 and EKy (EKxy (Kxa)) 1721 are obtained. Further, the search unit 125 searches the service encryption key table 126 to obtain the encryption key Kxy of the Web service Y. Next, the transmission / reception unit 121 sends EKxa (Iya) and Kxy to the information processing server 100 of the security service X in a state in which the EKxa (Iya) and Kxy are associated with IDxa. Further, the transmission / reception unit 121 sends EKy (EKxy (Kxa)) to the server 150 of the Web service Y in a state associated with IDxa (step S2005).
  • the transmission / reception unit 101 of the information processing server of the security service X temporarily stores EKxa (Iya) and Kxy received from the information storage server 120 of the security service in the encrypted information area 103 (step S2006).
  • the transmission / reception unit 151 of the Web service Y server searches the encryption key table 153 using the IDxa sent from the information storage server of the security service X in step S2005 as a search key, and obtains the encryption key Ky of the user A. obtain.
  • EKxy (Kxa) obtained by decrypting EKy (EKxy (Kxa)) received in step S2005 with the encryption key Ky is generated, and this is temporarily stored in the temporary storage unit 154.
  • the transmission / reception unit 151 transmits EKxy (Kxa) to the information processing server 100 of the security service X through the network 190 (step S2007). After this processing, the received EKy (EKxy (Kxa)) and the generated EKxy (Kxa) are deleted from the temporary storage unit 154.
  • the transmission / reception unit 101 of the information processing server of the security service X receives this EKxy (Kxa), it temporarily stores it in the encryption information area 103 of the temporary storage unit.
  • the decryption unit 106 decrypts this Kxy (Kxa) with the Kxy stored in the encrypted information area 103 in step S2006, and obtains the encryption key Kxa of the user A (step S2008). Further, using this Kxa, Kxa (Iya) stored in the encrypted information area 103 in step 2106 is decrypted to obtain information Iya, which is temporarily stored in the plaintext information area 104 (step S2009).
  • the HTML generation unit 108 generates an HTML code including this information Iya.
  • the transmission / reception unit 101 transmits an HTML code including the information Iya to the information terminal 170 of the user A (step S2010).
  • the transmission / reception unit 171 of the information terminal of the user A receives this HTML code.
  • the HTML analysis unit 172 analyzes the HTML code and displays the result on the GUI display unit 173 (step S2011).
  • the information displayed here may be a part or all of the information Iya, and may include information other than Iya.
  • the notification is sent to the information processing server of the security service X.
  • the information processing server of the security service X Upon receiving this notification, the information processing server of the security service X erases IDxa, Kxy, Kxa, Iya, EKY (Exa (Iya)), and EKxy (Kxa) stored in the temporary storage unit 102 (step). S2012).
  • the information Iya to be stored is double-encrypted directly using the encryption key Ky stored in the server of the Web service Y and the encryption key Kxa stored in the information storage server of the security service X.
  • the information Iya is encrypted with the encryption key Kxa.
  • the encryption key Kxa is double-encrypted with the encryption key Ky stored in the server of the Web service Y and Kxy stored in the information storage server of the security service X. This is the biggest difference between the first embodiment and the second embodiment.
  • the processing of the information processing server and the information storage server of the security service X may be executed by one server.
  • the first effect is that the server of the Web service Y can provide the service without storing information input by the user, for example, information such as Iya. It is possible.
  • the server 150 of the Web service Y does not store the information Iya input to the information terminal by the user A.
  • there are effects such as the reduction of the risk of information leakage from the server of the Web service Y described in the first effect of the first embodiment and the prevention of the use of user information by the Web service Y provider.
  • the effect of the second embodiment is that the information storage server of the security service X has high safety when storing the information Iya input by the user A, like the second effect related to the first embodiment.
  • the encryption key necessary for decrypting the encrypted information EKxa (Iya) stored in the information storage server of the security service X is Kxa.
  • this Kxa is double-encrypted and stored in the form of EKy (EKxy (Kxa)).
  • EKxy (Kxa) the encryption key Ky stored only in the server of the Web service Y is required.
  • the operator of the security service X cannot return the information Iya to plain text. Even if the encrypted information or the double encryption key leaks from the information storage server 120 of the security service X, the plaintext information Iya cannot be obtained. Although the plain text Iya and the encryption key Kxa are temporarily stored in the temporary storage unit 102 of the information processing server of the security service X, they are not stored as a database in the database storage unit. For this reason, it is difficult to obtain plaintext information Iya by intruding from outside the security service X.
  • a third effect according to the second embodiment is that the encryption key Ky stored in the server 150 of the Web service Y is not transmitted to the information processing server 100 of the security service X.
  • the third effect according to the second embodiment is an effect that is not described in the first embodiment.
  • Ky is sent to the information processing server of the security service X and stored in the temporary storage unit, whether it is temporary, or the information Iya is encrypted or decrypted using this.
  • the encryption key Ky possessed by the Web service Y is not stored in the information storage server of the security service X, and is deleted from the information processing server of the security service X after the encryption or decryption process (step S711 or Step S1211).
  • the operator of the Web service Y often does not want to send the encryption key Ky to a server under the management of the security service X.
  • the operator of the security service X stores Ky temporarily stored in the information processing server in the information storage server or the like, it is used for the Web service Y by combining it with the key Kxa of the security service X This is because the operator of the security service X can obtain the information Iya input by the person A.
  • the operator of the security service X stores Ky, information about all users of the Web service Y can be obtained. Referring back to FIG. 14, for example, if the operator of the security service X stores Ky, the information input by the user B to the Web service Y by combining with the encryption key Kxb1434 of the user B stored by himself / herself. Iyb1439 will also be available.
  • the encryption key Ky does not need to be transmitted to the information processing server of the security service X. Therefore, there is no way for the operator of the security service X to obtain the encryption key Ky.
  • a fourth effect of the present embodiment is that a user who stores information in the security service X can easily use a plurality of Web services at the same time.
  • the fourth effect of the embodiment is an effect not described in the first embodiment.
  • FIG. 21 is a display screen when the user A is using the Web service Y.
  • a web browser window 2100 is displayed on the GUI display unit 173.
  • the HTML code on the screen of FIG. 21 is generated by the HTML generation unit 108 of the information processing server of the security service X.
  • the name John Brown2111 and the address 2112 of the acquaintance of the user A are the information Iya input by the user A while using the Web service Y.
  • the name Fred Mancini 2121 and the address 2122 of the acquaintance of the user A are information Iza input by the user A while using the Web service Z. As shown in FIG. 21, if the information of acquaintances distributed to a plurality of different Web services can be browsed at once, the convenience as the address book for user A is improved.
  • each Web service includes e-mail, chat, SNS (Social Networking Service), voice call, goods sales, Any web service such as article delivery may be used.
  • SNS Social Networking Service
  • the security service X when the information Iya input to the Web service Y by the user A is displayed on the display unit 173 by the process described with reference to FIG. 20 (step S2011), the security service X
  • the encryption key Kxa is temporarily stored in a plaintext state in the temporary storage unit 102 of the information processing server.
  • the information Iya 1419 information Iza 1439 is also stored in the information storage server 120 in a state encrypted with the same encryption key Kxa.
  • the information processing server of the security service X displays the server and the information Iya and Iza on the same screen as shown in FIG. 21 without executing the processing corresponding to steps S2001 to S2009 related to Iza. Can do.
  • the information Iya 1419 is double-encrypted with Kxa 1414 and Ky 1413 and stored in the form of EKy (EKxa (Iya)).
  • Iza1429 is double-encrypted with Kxa1424 and Kz1423 and stored in the form of EKz (EKxa (Iza)).
  • the information processing server of the security service X to generate the HTML code for display as shown in FIG. 21, the user A moves from step S2001 to step S2009 in FIG. 20 for both the web service Y and the web service Z. Corresponding processing needs to be executed.
  • a screen as shown in FIG. 21 can be easily displayed.
  • the screen as shown in FIG. 21 not only display but also information addition or change can be executed. In this case, the processes shown in FIGS. 15, 18, 19, and 20 are executed.
  • the information input by the user A who uses the Web service Y and the Web service Z when using each service is provided to the operator of the Web service Y and the operator of the Web service Z.
  • the operator of the security service X cannot obtain the service, it is possible to realize a service that cannot be obtained by the conventional method of linking a plurality of Web services as shown in FIG.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、を備えるシステムであって、第1のサーバは、情報を第1の暗号鍵と前記第2の暗号鍵で二重暗号化した二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。また、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、を備えるシステムであって、第1のサーバは、情報を第3の暗号鍵で暗号化した暗号化情報を記憶し、さらに、第3の暗号鍵を第2の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を記憶することを特徴とするシステムが開示される。

Description

サービスシステム
本願発明は、サーバが連携してサービスを提供する情報処理に関する。本願発明は、特に、オンラインサービスを提供する情報処理に関する。
近年、インターネット上では様々なWebサービスが、数多くの運営者によって提供されている。広く使われているWebサービスには、電子メール、チャット、SNS(Social Networking Service)、動画・写真投稿、検索、地図、物品販売、物品配送などがある。この結果、1人の利用者が数多くのWebサービスを利用するようになった。たとえば1人のインターネット利用者が、複数の電子メールアドレスを持ち、複数のSNSサービスの会員になり、複数の物品販売を利用するといった状況にある。
このため、1人の利用者の有する情報が様々なWebサービスに分散している。すなわち、1人の利用者の有する情報は、様々なWebサービス運営者の異なるサーバに記憶されている。したがって、保有ないしは交換している各所有者の情報が分断され、Webサービス利用者の利便性を損ねる結果が生まれている。
この問題を解決するために、様々なWebサービスの間で利用者の情報を相互利用し、Webサービス利用者の利便性を高めようとする試みがなされている。たとえば、各種Webサービスでは、API(Application Program Interface)へのアクセスを外部に許可することで、異なるWebサービス間で利用者の情報を相互利用できるようになっている。たとえば、YouTubeと呼ばれる動画投稿サービスでは、投稿された動画を、APIを経由して他のWebサービスで利用することができる(非特許文献1)。Amazonと呼ばれる物販Webサービス上で販売されている商品の情報を、APIを経由して他のWebサービスで利用することができる(非特許文献2)。Google社が提供するソーシャルグラフAPIは、Webサービスの垣根を越えた利用者同士の知人関係を、任意のWebサービスで利用することを目標として策定されたものである(非特許文献3)。
前記のようなAPIを通じた異なるWebサービス間の情報の相互利用の対象となる情報のほとんどは、現実にはインターネット上の誰もがアクセス可能である。すなわち、公開情報である。各Webサービスの運営者にとって、各々のサーバに記憶された利用者の情報は貴重な資産である。しかし、これがもとよりインターネット上で公開されたものであれば、APIを経由した情報の相互利用によってWebサービス運営者が失うものはほとんどなく、逆にAPIを公開することで各々のサービスの利用を促進できるという利点がある。
http://code.google.com/intl/ja-JP/apis/youtube/getting_started.html#data_api http://docs.amazonwebservices.com/AWSEcommerceService/4-0/ http://code.google.com/intl/ja/apis/socialgraph/docs/api.html
一方、様々なWebサービスのサーバには、インターネット上に公開されていない、非公開情報も多い。典型的な非公開情報は、利用者のID情報、利用者属性情報、知人関係などである。たとえば、前記ソーシャルグラフAPIはID情報、知人関係などの相互利用を目標として策定されているが、このような情報のほとんどは非公開情報である。このため、前記ソーシャルグラフAPIを通じてID情報や知人関係を取得可能なWebサービスは極めて限られており、前記ソーシャルグラフAPIは利便性を発揮できずに、したがってほとんど使われていない。
このようにインターネット上で公開されていない情報の、Webサービスを超えた相互利用が阻まれている原因は、Webサービスの運営者の事情にある。各Webサービス運営者は、他のWebサービスのID情報、利用者属性情報、知人関係などの非公開情報を、自らのWebサービスで利用したいという要求を持っている。一方で、自らのWebサービスの有する非公開情報を、他のWebサービス運営者に提供したくないという意図を持っている。一般に、ID情報、利用者属性情報、知人関係は、Webサービス事業者にとっての収益源であるとともに、利用者を他サービスではなく自らのサービスに引き留めるための、最も重要な資産と考えられているからである。すなわち、各Webサービス運営者はAPIを通じた他のWebサービスとの連携を望む一方で、自らのWebサービスの独立性を維持したいという、相反する要求を持っている。
このような状況に鑑み、本発明の一実施形態においては、サーバ、システム、情報端末、ネットワーク等を用いて提供される各Webサービスが、他のサービス運営者に一切の非公開情報を入手させず、独立性を完全に維持した状態で、利用者が複数のWebサービスを超えた非公開情報の相互利用が可能になる方法が提供される。
本発明の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、を備えるシステムであって、前記第1のサーバは、情報を第3の暗号鍵で暗号化した暗号化情報を記憶し、さらに、前記第3の暗号鍵を前記第2の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を記憶することを特徴とするシステムが開示される。
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、を有するシステムであって、前記第1のサーバは、前記第1の暗号鍵を前記第3のサーバに送信する送信部を備え、前記第3のサーバは、前記第1の暗号鍵を受信する受信部と、第3の暗号鍵を生成し、前記第3の暗号鍵を前記第1の暗号鍵で暗号化した暗号化鍵を生成する暗号化鍵生成部と、前記暗号化鍵を前記第2のサーバに送信する送信部を備え、前記第2のサーバは、前記暗号化鍵を受信する受信部と、前記暗号化鍵を前記第2の暗号鍵で二重暗号化し二重暗号化鍵を生成する二重暗号化鍵生成部と、前記二重暗号化鍵を前記第1のサーバに送信する送信部を備え、前記第1のサーバは、前記二重暗号化鍵を記憶する記憶部を備えることを特徴とするシステムが開示される。
本発明の別の一側面として、第1の暗号鍵を第2の暗号鍵および前記第3の暗号鍵で二重暗号化した二重暗号化鍵および前記第3の暗号鍵を記憶する第1のサーバと、前記第2の暗号鍵を記憶する第2のサーバと、第3のサーバとを備えるシステムであって、前記第1のサーバは、前記二重暗号化鍵を前記第2のサーバに、また前記第3の暗号鍵を前記第3のサーバに送信する送信部を備え、前記第2のサーバは、前記二重暗号化鍵を受信する受信部と、前記二重暗号化鍵を前記第2の暗号化鍵で復号化した暗号化鍵を生成する暗号化鍵生成部と、前記暗号化鍵を前記第3のサーバに送信する送信部とを備え、前記第3のサーバは、前記暗号化鍵を受信する受信部と、前記暗号化鍵を前記第3の暗号鍵で復号化して前記第1の暗号鍵を生成する暗号鍵生成部を備えることを特徴とするシステムが開示される。
本発明の別の一側面として、第1の暗号鍵を記憶する記憶部と、第1のサーバから、情報を第2の暗号鍵で暗号化した暗号化情報を受信し、前記第2の暗号鍵を、第2のサーバの記憶する第3の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を前記第2のサーバより受信する受信部と、前記暗号化情報および前記二重暗号化鍵をID情報に関連づけて記憶する記憶部とを備えることを特徴とするサーバが開示される。
本発明の別の一側面として、情報端末から情報を受信する受信部と、第1の暗号鍵を生成する暗号鍵生成部と、前記情報を前記第1の暗号鍵で暗号化した暗号化情報を生成する暗号化部と、前記暗号化情報を第1のサーバに送信する送信部と、を備え、さらに、前記受信部は、前記第1のサーバより第2の暗号鍵を受信し、さらに、前記第1の暗号鍵を前記第2の暗号鍵で暗号化した暗号化鍵を生成する暗号化鍵生成部と、を備え、さらに前記送信部は、第2のサーバに記憶された第3の暗号鍵で前記暗号化鍵を二重暗号化し二重暗号化鍵を生成するために前記暗号化鍵を前記第2のサーバに送信することを特徴とするサーバが開示される。
本発明の別の一側面として、情報端末から情報を受信する受信部と、前記情報端末の利用者を一意に識別する認識票を第1のサーバに送信する送信部と、を備え、さらに前記受信部は、第1の暗号鍵を前記第1のサーバから受信し、前記認識票に関連づけられて第1のサーバに記憶された二重暗号化鍵であって、第2の暗号鍵を第3の暗号鍵と前記第1の暗号鍵とにより二重暗号化した二重暗号化鍵を、第2のサーバに記憶されている前記第3の暗号鍵により復号化した暗号化鍵を前記第2のサーバから受信し、さらに前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号鍵生成部とを備え、さらに前記送信部は、前記情報を前記第2の暗号鍵で暗号化した暗号化情報を前記第1のサーバに送信することを特徴とするサーバが開示される。
本発明の別の一側面として、情報端末から情報を受信する受信部と、前記情報端末の利用者を一意に識別する認識票を第1のサーバに送信する送信部、とを備え、さらに前記受信部は、第1の暗号鍵を前記第1のサーバから受信し、前記認識票に関連づけられて第1のサーバに記憶された、第2の暗号鍵を第3の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を、第2のサーバで記憶する前記第3の暗号鍵で復号化した暗号化鍵を前記第2のサーバから受信し、さらに、前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号鍵生成部を備え、さらに前記送信部は、前記情報を前記第2の暗号鍵で暗号化した暗号化情報を第4のサーバに送信することを特徴とするサーバが開示される。
本発明の別の一側面として、第1の暗号鍵、第2の暗号鍵及び情報を前記第2の暗号鍵で暗号化した暗号化情報を、第1のサーバが記憶する第3の暗号鍵と前記第1の暗号鍵とで二重暗号化した二重暗号化鍵を記憶する記憶部と、前記第1の暗号鍵を第2のサーバに送信し、前記二重暗号化鍵を前記第1のサーバに送信する送信部とを備えることを特徴とするサーバが開示される。
本発明の別の一側面として、第1のサーバから、第1の暗号鍵、および情報を第2の暗号鍵で暗号化した暗号化情報を受信し、第2のサーバから、前記第2の暗号鍵を前記第1の暗号鍵で暗号化した暗号化鍵を受信する受信部と、前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号化部と、前記暗号化情報を前記第2の暗号鍵で復号して前記情報を生成する復号化部と、前記情報を情報端末に送信する送信部とを備えることを特徴とするサーバが開示される。
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、を備えるシステムであって、前記第1のサーバは、情報を前記第1の暗号鍵と前記第2の暗号鍵で二重暗号化した二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、を備えるシステムであって、前記第3のサーバは、情報を前記第1の暗号鍵と前記第2の暗号鍵で二重暗号化した二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、情報端末と、を備えるシステムであって、前記第3のサーバは、前記情報端末より情報を、前記第1のサーバより前記第1の暗号鍵を、前記第2のサーバより前記第2の暗号鍵を受信する受信部と、前記情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化する暗号化部とを備え、前記第1のサーバは、前記二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、第4のサーバと、情報端末と、を備えるシステムであって、前記第3のサーバは、前記情報端末より情報を、前記第1のサーバより前記第1の暗号鍵を、前記第2のサーバより前記第2の暗号鍵を受信する受信部と、前記情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化する暗号化部と、前記第4のサーバは、前記二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。
本発明の別の一側面として、情報端末から第1の情報を受信し、第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信する受信部と、前記第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を生成する暗号化部と、前記第1の二重暗号化情報を前記第1のサーバに送信する送信部とを備えることを特徴とするサーバが開示される。
本発明の別の一側面として、情報端末から第1の情報を受信し、第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信する受信部と、前記第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を生成する暗号化部と、前記第1の二重暗号化情報を第3のサーバに送信する送信部を備えることを特徴とするサーバが開示される。
本発明の別の一側面として、第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信し、前記第1のサーバから第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を受信する受信部と、前記第1の二重暗号化情報を、前記第1の暗号鍵および前記第2の暗号鍵で復号化した前記第1の情報を復号化部と、前記第1の情報を情報端末に送信部を備えることを特徴とするサーバが開示される。
本発明の一実施形態によれば、利用者があるWebサービスに分散して保有する情報を、異なるWebサービス内で利用できるようになる。これが実現されるにもかかわらず、各Webサービスの有する利用者情報は、他のWebサービス運営者からは入手できない。本発明の一実施形態では、各Webサービスに分散した利用者情報を統合して、利用者の情報端末に送信したり、暗号化して記憶したりする機能を提供するセキュリティサービスが各Webサービスに分散した利用者の情報を仲介する。しかし、このセキュリティサービスの運営者は、これらが接続されるWebサービス利用者の有する情報を一切入手できない。
本発明の一実施形態における情報端末とサーバ装置によるシステム概略構成図である。 本発明の一実施形態におけるセキュリティサービスXの情報処理サーバ装置の概略構成図である。 本発明の一実施形態におけるセキュリティサービスXの情報記憶サーバ装置の概略構成図である。 本発明の一実施形態におけるWebサービスYのサーバ装置の概略構成図である。 本発明の一実施形態におけるWebサービスZのサーバ装置の概略構成図である。 本発明の一実施形態における情報端末の概略構成図である。 本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXに情報を記憶する処理を説明するフロー図である。 本発明の一実施形態における利用者Aの情報端末の表示画面の一例を表す図である。 本発明の一実施形態におけるWebサービスYのサーバ装置の暗号鍵テーブルの一例を示す図である。 本発明の一実施形態におけるセキュリティサービスXの情報記憶サーバの利用者暗号鍵テーブルの一例を示す図である。 本発明の一実施形態におけるWebサービスYの暗号化情報テーブルの一例を示す図である。 本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXから情報を呼び出し、その情報端末に表示する処理を説明するフロー図である。 本発明の一実施形態における暗号鍵および暗号化情報の様々なケースを列挙した表である。 本発明の二つの実施形態における暗号鍵の様々なケースを列挙した表である。 本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXに情報を記憶する処理を説明するフロー図である。 本発明の一実施形態におけるセキュリティサービスXのサービス暗号化テーブルの一例を示す図である。 本発明の一実施形態におけるセキュリティサービスXの暗号化情報テーブルの一例を示す図である。 本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXに情報を記憶する処理を説明するフロー図である。 本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXに情報を記憶する処理を説明するフロー図である。 本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXから情報を呼び出し、その情報端末に表示する処理を説明するフロー図である。 本発明の一実施形態における利用者Aの情報端末の表示画面の一例を表す図である。
以下に本発明を実施するための、現在考えられる最善の形態について説明する。本発明の範囲は、添付特許請求の範囲によって明確に定義されているため、この説明は限定的な意味に解釈すべきではなく、単に発明の一般原理を例示する目的で行う。
図1は、本発明の一実施形態の一例におけるシステムの概略構成図である。図1においては、情報の記憶および閲覧システムの概略構成がしめされている。セキュリティサービスXの情報処理サーバ100およびセキュリティサービスXの情報記憶サーバ120が、WebサービスYのサーバ150、WebサービスZのサーバ160、利用者Aの情報端末170、および利用者Bの情報端末180と、ネットワーク190を通じて接続されている。サーバ100とサーバ120はネットワーク190を介しても、または別のネットワークを経由しても、または直接接続されていてもよい。
図2に、セキュリティサービスXの情報処理サーバ100の概略構成図を示す。セキュリティサービスXの情報処理サーバは、送受信部101,一時記憶部102、復号化部106、暗号化部107、HTML生成部108、HTML解析部109、検索部110、および暗号鍵生成部111を有する。一時記憶部102は、暗号化情報領域103、平文情報領域104、および暗号鍵テーブル105を有する。
なお、「送受信部」を送信の機能を提供する部と受信の機能を提供する部とに分けて、「送信部」、「受信部」という場合がある。他のサーバ、情報端末の送受信部についても同様である。
図3に、セキュリティサービスXの情報記憶サーバ120の概略構成図を示す。セキュリティサービスXの情報記憶サーバは送受信部121、データベース記憶部122、検索部125を有する。データベース記憶部122は、暗号化情報テーブル123、利用者暗号鍵テーブル124、およびサービス暗号鍵テーブル126を有する。
図4に、WebサービスYのサーバ150の概略構成図を示す。WebサービスYのサーバは送受信部151、データベース記憶部152、一時記憶部154、HTML生成部155、HTML解析部156、復号化部157、検索部158、および暗号化部159を有する。データベース記憶部152は、暗号鍵テーブル153を有する。
図5に、WebサービスZのサーバ160の概略構成図を示す。WebサービスZのサーバは送受信部161、データベース記憶部162、一時記憶部164、HTML生成部165、HTML解析部166、復号化部167、検索部168、および暗号化部169を有する。データベース記憶部162は、暗号鍵テーブル163を有する。
なお、各サーバの一時記憶部は、記憶部によって実現される。そのような記憶部は、たとえばDRAM(Dynamic Random Access Memory)などのメモリ素子を用いて構成される。一時記憶部では、以下で図7,図12、図18、図19、または図20のフロー図の各々で説明されるように、本発明に係る処理が終わった時点で、その処理のために記憶した情報が消去される。一時記憶部に記憶された情報は、所謂データベースのように永続的にサーバに記憶されるものではないことが好ましい。例えば、一時記憶部に記憶された情報は、セキュリティサービスまたは各Webサービスの運営者が任意の時刻において、そこに記憶された情報を検索することはできない。一時記憶部は、あくまでも処理に必要な時間だけ一時的に情報を記憶するためのものであることが好ましい。一時記憶部は情報が消去できるのであれば、DRAMなどで構成されるサーバの主記憶装置の他、ハードディスクドライブやFlashメモリなどのような不揮発性の記憶装置でも実現することができる。
図6(a)に、利用者Aの情報端末170の概略構成図を示す。また図6(b)に、利用者Bの情報端末180の概略構成図を示す。利用者Aの情報端末170は、送受信部171、HTML解析部172、GUI表示部173、および入力部174を有する。利用者Bの情報端末180は、送受信部181、HTML解析部182、GUI表示部183、および入力部184を有する。
(実施形態1)
まず始めに、本実施形態1の概略について説明する。本実施形態1では、図1に示すように、WebサービスYを利用する利用者Aが、その情報端末170を通じてWebサービスYのサーバ150と通信する。この際、利用者Aが情報端末170を通じて送信する情報が、WebサービスYのサーバ150に記憶されることを防ぎたいという要求を持っていたり、WebサービスYを提供する事業者に閲覧されることを防ぎたいという要求を持っていたりするとする。たとえば、WebサービスYは、利用者Aおよびその知人の名前や住所を管理する、住所録のWebサービスだったとする。この時、従来の方法によれば、利用者Aおよび知人の名前や住所はすべてWebサービスYのサーバ150に記憶される。この場合、WebサービスYのサーバ150からの情報漏洩のリスクがある。また、利用者AはWebサービスYの運営者によって、記憶された情報が広告などに使われることを望まないかもしれない。特に、従来の方法によれば、利用者Aが入力した知人の情報は、情報所有者である知人本人の了解なく、WebサービスYのサーバ150に記憶されることから、利用者A自身の名前や住所よりも、漏洩リスク低減や、WebサービスYの運営者による利用忌避の要求は大きい。なお、ここでは本発明の一般原理を説明するために、一例としてWebサービスYおよびWebサービスZを住所録のWebサービスであると仮定するが、WebサービスYやWebサービスZは、電子メール、チャット、SNS(Social Networking Service)、物品販売、物品配送などどのようなサービスでもよい。
本実施形態では、利用者AがWebサービスYに対して秘匿したい情報は、まず、利用者Aの情報端末170よりネットワーク190を通じて、セキュリティサービスXの情報処理サーバ100に送られる。次に、セキュリティサービスXの情報処理サーバ100では受信した情報を二重暗号化し、セキュリティサービスXの情報記憶サーバ120で記憶する。この暗号化では2つの暗号鍵が使われる。第1の暗号鍵はWebサービスYのサーバ150に記憶されている。また、第2の暗号鍵はセキュリティサービスXの情報記憶サーバ120に保存されている。この暗号化に際しては、第1の暗号鍵および第2の暗号鍵はネットワーク190を通じてサービスXの情報処理サーバに送られ、暗号化が実行される。ここで生成される暗号化情報は、第1の暗号鍵および第2の暗号鍵がすべて揃わないと前記暗号化情報を平文に戻すことはできない情報となる。
ここで、セキュリティサービスXの情報処理サーバ100では第1の暗号鍵、第2の暗号鍵、および受信した平文の情報のいずれも二重暗号化の後に消去する。また、データベース記憶部に記憶されたとしても、第1の暗号鍵、第2の暗号鍵、および受信した平文の情報のいずれも二重暗号化の後に消去する。ここに、データベース記憶部は、情報を永続的に記憶する部をいう。また二重暗号化した情報はセキュリティサービスXの情報記憶サーバ120のデータベース記憶部122の暗号化情報テーブル123に保存する。WebサービスYのサーバ150は第1の暗号鍵を記憶しているが、前記暗号化情報を持たない。セキュリティサービスXの情報記憶サーバ120は、前記暗号化情報と第2の暗号鍵両方を記憶しているが、第1の暗号鍵を記憶していない。これらの状況からセキュリティサービスXの運営事業者やWebサービスYの運営者が、平文の利用者Aよび知人の情報を入手することは困難である。また、もし利用者Aの暗号化情報が、セキュリティサービスXの情報記憶サーバ120から漏洩したとしても、第1暗号鍵をWebサービスYのサーバ150より入手しない限り、これを平文に戻すことはできない。したがって、従来の方法と比較して安全性が高い。
次に、図7のフロー図を用いて本実施形態の処理を詳しく説明する。なお、図7以下のフロー図においては、WebサービスYのサーバを、サーバYと略記する。いま、利用者AはWebサービスYにログインしている(ステップS701)。この時、WebサービスYのサーバのHTML生成部155がHTMLコードを生成し、送受信部151がHTMLコードを、ネットワーク190を通じて利用者Aの情報端末170に送る。利用者Aの情報端末の送受信部171がこれを受信し、HTML解析部172が解析した後、GUI表示部173が画像を表示する。この時点で利用者AはWebサービスYにログインしており、利用者AをWebサービスYで一意に特定するためのIDyaは、WebサービスYのサーバの一時記憶部154に記憶されている。なお、本発明において、利用者を特定するための情報を、認識票という場合がある。認識票の例としては、上述のIDyaのような識別情報や、メールアドレス、氏名と住所などの個人を特定する情報がある。
なお、HTMLコードは、GUI表示部173に情報を表示するためのコードの一例であり、任意のコードを利用することができる。
いまWebサービスYのサーバ150に記憶されない情報の入力を、WebサービスYのサーバが利用者Aに対して求めるとする。このとき、WebサービスYのサーバ150と利用者Aの情報端末170との接続が、セキュリティサービスXの情報処理サーバ100にリダイレクトされる(ステップS702)。すなわち、情報端末170は、サーバ150と通信を行っていた状態から、サーバ100と通信を行う状態に移行する。次にセキュリティサービスXの情報処理サーバのHTML生成部108がHTMLコードを生成し、送受信部101がHTMLコードを、ネットワーク190を通じて利用者Aの情報端末170に送る。利用者Aの情報端末の送受信部171がこれを受信し、HTML解析部172が解析した後、GUI表示部173が画像を表示する。ここで、本実施形態の一例として図8に示すような利用者Aおよび利用者Aの知人の名前と住所の入力フォームが表示されているとする。
図8を参照すると、GUI表示部173には、Webブラウザ表示ウィンドウ800が表示される。さらに、Webブラウザ表示ウィンドウ800には、利用者AがWebブラウザを通じてWebサービスYを現在使っていることを表す表示801がある。もし、WebサービスYが有する何らかの情報を表示したい場合には、WebサービスYのサーバ150からセキュリティサービスXの情報処理サーバ100にこのような情報が送信され、これを平文情報領域104に一時的に記憶され、セキュリティサービスのHTML生成部108が、これを利用して図8のような画像を表示する前記HTMLコードを生成してもよい。たとえば、図8の一例では、利用者Aの名前(Betty Thomas)802のような、WebサービスYの有する情報については、WebサービスYのサーバ150から、セキュリティサービスXの情報処理サーバ100に送られた上で、そのHTML生成部108によってHTMLコードに変換される。このような場合、WebサービスYのサーバ150から受信した情報は、後述のステップS711で他の情報とともに消去される。
さらに図8を参照すると、Webブラウザ表示ウィンドウ800には自分の情報入力欄810、および知人の情報入力欄820が表示されている。自分の情報入力欄810は、自分の名前を入力するためのウィンドウ811、および自分の住所を入力するためのウィンドウ812を有する。知人の情報入力欄820は、知人の名前を入力するためのウィンドウ821、および知人の住所を入力するためのウィンドウ822を有する。図8に示す一例では、知人の情報入力欄820は知人1人の名前と住所を入力するためのウィンドウを有しているが、本実施形態では複数の知人の名前と住所を入力する入力ウィンドウを有していてもよい。また、図8は自分および知人の両方について名前と住所を入力する一例であるが、本実施形態で1は自分と知人についてこれ以外の情報を入力するウィンドウを有していてもよい。また、図8は本実施形態の一例であり、ここで利用者Aの情報端末に対して入力を要求する情報は、名前や住所などに限定されず、どのような情報でもよい。
次に、利用者Aの情報端末170の入力部174から、利用者Aが利用者A自身の情報およびその知人の情報を入力する。いま、ここで入力された文字列を、たとえばスペース区切りなどを用いて結合したものを情報Iyaとする。利用者Aの情報端末の送受信部171が、Iyaを、送受信部171、ネットワーク190を通じてサービスXの情報処理サーバ100に送る(ステップS703)。サービスXの情報処理サーバの送受信部101がIyaを受信し、一時記憶部102にある平文情報領域104に一時的に記憶される(ステップS704)。ここでは簡単のために、複数の入力フィールドに対する入力文字列を結合した情報Iyaと表記したが、これらが複数の情報に分割されていてもよい。
次にWebサービスYのサーバ150は、その一時記憶部154に記憶された利用者AのIDであるIDyaを検索キーとして、暗号鍵テーブル153を検索する。図9に暗号鍵テーブル153の一例を示す。暗号鍵テーブルは、WebサービスYの利用者のIDを格納する列910、セキュリティサービスXにおけるIDを格納する列920、およびWebサービスYのサーバ150の記憶する暗号鍵を格納する列930を有する。ここでは、利用者AのWebサービスYにおけるIDである、IDya911を検索キーとして、セキュリティサービスXの列920および暗号鍵の列930を検索し、検索結果として利用者AのセキュリティサービスXにおけるIDであるIDxa921、およびWebサービスYの暗号鍵Ky931を得る。なお、ここでは、暗号鍵テーブル124にはあらかじめIDxa921が記憶されている一例で説明したが、もしこれが暗号鍵テーブル124にない場合には、セキュリティサービスXの情報記憶サーバに利用者AのセキュリティサービスXにおけるID発行を依頼することで入手した上で、暗号鍵テーブル153に記憶し、次のステップに進んでもよい。
ここで、IDの表記に際し、IDmnと表記した場合、mはサービスを表し、nは利用者を表す。たとえばIDyaは利用者Aの、WebサービスYにおけるIDであることを表している。また、同様に暗号鍵の表記に際し、Kmと表記した場合、mはサービスを表す。たとえば、KyはWebサービスYのサーバ150の記憶する暗号鍵であることを表す。また、暗号鍵の表記に際し、Kmnと表記した場合、mはサービス、nは利用者を表す。たとえば、Kxaと記した場合は、セキュリティサービスXにおける利用者Aの暗号鍵であることを表す。
次に、WebサービスYのサーバの送受信部151が前記検索結果であるセキュリティサービスXにおける利用者AのIDであるIDxaおよび暗号鍵Kyを、ネットワーク190を通じてサービスXの情報処理サーバ100に送る(ステップS705)。サービスXの情報処理サーバの送受信部101がIDxaとKyを受信すると、IDxaを一時記憶部の平文情報領域104に、またKyを暗号鍵テーブル105に各々一時的に記憶する(ステップS706)。
次に、セキュリティサービスXの情報処理サーバの暗号化部107は、セキュリティサービスXの記憶する利用者Aの暗号鍵の要求信号を、送受信部101およびネットワーク109を通じてサービスXの情報記憶サーバ120に送る。この要求信号には、上記ステップS705でWebサービスYのサーバ150から受信した、利用者AのセキュリティサービスXにおけるIDであるIDxaを含む(ステップS707)。
セキュリティサービスXの情報記憶サーバの送受信部121がこれを受信すると、検索部125が受信したIDxaを検索キーとしてデータベース記憶部122にある利用者暗号鍵テーブル124を検索する。図10に、利用者暗号鍵テーブル124の一例を示す。本実施形態1における利用者暗号鍵テーブル124は、セキュリティサービスXのIDを格納する列1010およびセキュリティサービスXのIDを格納する列1020を有する。IDxa1011を検索キーとした前記検索の結果として、暗号鍵Kxa1021が得られる。もしIDxaに関連づけられた暗号鍵がない場合には、Kxaが生成されるとする。次にセキュリティサービスXの情報記憶サーバの送受信部121が、Kxaを、ネットワーク190を通じてセキュリティサービスXの情報処理サーバ100に送る。
次に、セキュリティサービスXの情報処理サーバの送受信部101がKxaを受信し、揮発記憶領域の暗号鍵テーブルに記憶する(ステップS708)。以上の処理により、この時点では暗号鍵テーブルには、前記ステップS706でWebサービスYのサーバより入手した暗号鍵Kyおよび、前記ステップS708でセキュリティサービスXの情報記憶サーバより入手した暗号鍵Kxaが一時的に記憶されている。
次に、暗号化部107が、前記ステップS704で平文情報領域104に記憶した情報Iyaを、ステップS706で記憶した暗号鍵KyおよびステップS708で記憶した暗号鍵Kxaを用いて二重に暗号化する(ステップS709)。たとえば、本実施形態の一例として、KyおよびKxaを各々対称鍵とした場合、この二重暗号化の結果は、EKy(EKxa(Iya))として表記されるとする。この表記は、IyaをKxaで暗号化したものをKyで暗号化した結果を表わす。なお、暗号化の順序を逆として、EKxa(EKy(Iya))が二重暗号化の結果となっていてもよい。また、用いられる暗号化の処理は、たとえば、KyおよびKxaを演算した演算結果を暗号鍵として、Iyaを暗号化するなど、KyおよびKxaの両方の暗号鍵がないと復号化できないような暗号化の処理であれば何でもよい。
また、これまで説明したステップにおける暗号化には、対称鍵を用いても、非対称鍵を用いてもよい。非対称鍵を用いた場合、WebサービスYのサーバに記憶されるKyおよびセキュリティサービスXの情報記憶サーバに記憶されるKxaは、利用者Aの秘密鍵であり、このステップS709での暗号化には、KyおよびKxaに各々対応する公開鍵による暗号化となる。以下では、二重暗号化情報の結果が、EKy(EKxa(Iya))として表記されると仮定して、説明を続ける。
二重暗号化情報EKy(EKxa(Iya))は、一時記憶部の暗号化情報領域103に一時的に記憶される。次に、ステップS706で平文記憶領域104に記憶された利用者AのIDxaとステップS709で暗号化情報領域103に記憶された二重暗号化情報EKy(EKxa(Iya))とが、送受信部101により、ネットワーク190を通じてセキュリティサービスXの情報記憶サーバ120に送信される(ステップS710)。次に、セキュリティサービスXの情報処理サーバ100が、その一時記憶部102からIDxa、Ky、Kxa、Iya、およびEKy(Exa(Iya))を消去する(ステップS711)。もし、ステップS702においてWebサービスYのサーバ150からセキュリティサービスXの情報処理サーバ100に送られた情報が、一時記憶部102に一時的に記憶されていれば、これもステップS711で書消去する。次に、セキュリティサービスXの情報記憶サーバ120の送受信部121がステップS710で送られた情報を受信すると、データベース記憶部の暗号化情報テーブル123にこれらの情報を記憶する(ステップS712)。図11に、本実施形態1における暗号化情報テーブル123の一例を示す。暗号化情報テーブル123は、セキュリティサービスXのIDを格納する列1110、およびひとつ以上の暗号化情報を格納する列を有する。上記ステップS711で記憶した暗号化情報EKy(EKxa(Iya))1121は、IDxa1111の行に記憶されている。なお、図10および図11からわかるように、本実施形態1では暗号鍵Kxa1021と二重暗号化情報EKy(EKxa(Iya))はともに、セキュリティサービスXの情報記憶サーバに記憶されている。しかし、暗号鍵と二重暗号化鍵は異なるサーバに記憶されていてもよい。
次に、利用者AがWebサービスYを通じて、前記ステップS703で入力した自分自身および知人の情報Iyaを閲覧する場合の処理について図12のフロー図を用いて説明する。
いま、利用者AはWebサービスYにログインしている(ステップS1201)。このとき、WebサービスYから送信されたHTMLコードを利用者Aの情報端末が解析した結果が、利用者Aの情報端末のGUI表示部173に表示されている。ここで、利用者Aが入力部174を通じて前記ステップS703で入力した利用者A自身、および知人に関する情報Iyaを呼び出す操作を実行する。すると、利用者Aの情報端末の送受信部171は、Iyaの表示要求を、ネットワーク190を通じてWebサービスYのサーバ150に送る(ステップS1202)。この要求を受信したWebサービスYのサーバの送受信部101が、利用者Aの情報端末170への接続を、セキュリティサービスXの情報処理サーバ100にリダイレクトする(ステップS1203)。
さらに、WebサービスYのサーバの検索部158が、利用者AをWebサービスYで一意に認識するためのIDyaを検索キーとして、データベース記憶部にある暗号鍵テーブル153を検索する。再び図9を参照すると、この検索結果として得た、IDxa921、およびKy931を得る。次に、IDxaとKyを、Iyaの要求とともに、ネットワーク190を通じてセキュリティサービスXの情報処理サーバ100に送る(ステップS1204)。これを受信したセキュリティサービスXの情報処理サーバでは、Kyが一時記憶部の暗号鍵テーブル105に、IDxaが平文情報領域104に各々記憶される。
次に、セキュリティサービスXの情報処理サーバの送受信部101が、WebサービスYのサーバより受信したIDxaとともに、Iyaの二重暗号化情報の取得要求を、ネットワーク190を通じて、セキュリティサービスXの情報記憶サーバ120に送る(ステップS1205)。セキュリティサービスXの情報記憶サーバの送受信部121がこの要求を受信すると、検索部125が受信したIDxaを検索キーとして、暗号化情報テーブル123、および暗号鍵テーブル124を検索する。再び図11を参照すると、暗号化情報テーブル123の検索により、検索結果として二重暗号化情報EKy(EKxa(Iya))1121が得られる。また暗号鍵テーブル124の検索により、利用者AのセキュリティサービスXにおける暗号鍵Kxaが得られる。送受信部121は、この暗号化情報EKy(EKxa(Iya))および暗号鍵Kxaを、ネットワーク190を通じて、セキュリティサービスXの情報処理サーバ100に送る(ステップS1206)。
セキュリティサービスXの情報処理サーバでは、送受信部101がこれらの情報を受信した上、二重暗号化情報EKy(EKxa(Iya))を一時記憶部の暗号化情報領域103に、また暗号鍵Kxaを暗号鍵テーブル105に、各々IDxaと関連づけて記憶する。次に、復号化部106が、ここで暗号化テーブルに記憶されたKxa、および前記ステップS1204でWebサービスYのサーバより受信したKyを用いて、暗号化情報EKy(EKxa(Iya))を復号化し(ステップS1207)、情報Iyaを得る。このIyaは一時的に一時記憶部の平文情報領域104に記憶され、HTML生成部108がこの情報Iyaの一部または全部を含むHTMLコードを生成する(ステップS1208)。ここで生成されたHTMLコードは、送受信部101によって、ネットワーク190を通じて、利用者Aの情報端末170に送られる(ステップS1209)。このHTMLコードの生成に必要な、WebサービスYのサーバ150の有する情報である。この情報は、別途、WebサービスYのサーバから受信し、平文情報領域104に記憶された上で、前記ステップS1208で生成されるHTMLコードに含まれていても良い。ここでWebサービスYのサーバ150から受信し、記憶した情報がある場合は、ステップS1211で他の情報とともに消去する。
利用者Aの情報端末の送受信部がこのHTMLコードを受信すると、HTML解析部がこれを解析の上、GUI表示部が、情報Iya、すなわち前記ステップS703で入力した利用者Aおよびその知人の情報の一部または全部を含む画面を表示する(ステップS1210)。この表示が終了するときまでには、セキュリティサービスXの情報処理サーバの一時記憶部102に記憶されたIDxa、Ky、Kxa、IyaおよびEKy(Exa(Iya))がすべて消去されるのが好ましい。以上で、利用者AがWebサービスYで以前に入力した情報を、その情報端末の表示部に表示する処理が完了した。
これまで図7および図12のフロー図で説明した処理は、利用者Aがその情報端末170を通じてWebサービスYを利用する際に、入力や閲覧を必要とする情報Iyaを、セキュリティサービスXを用いて安全に記憶するための処理である。これまでに説明した処理を以下ではケース1と呼ぶ。次に、ケース2として利用者Aがその情報端末170を通じてWebサービスZを利用する際に、入力や閲覧を必要とする情報Izaを、セキュリティサービスXを用いて安全に記憶するため処理について説明する。ただし、ケース2の処理は、これまで図7および図12のフロー図で説明した処理とほぼ同じなので、上記説明を繰り返さず、図13を用いてその違いを簡単に説明する。
図13には、これまでの図7および図12のフロー図で説明したケース1と、以下に説明する処理の例との比較を示す。図13に示す表の第1行目1310がケース1である。ケース1における処理は、利用者A1311がWebサービスY1312を利用する場合に、情報Iyaを安全に記憶および閲覧する処理であった。ケース1では、利用者Aは、WebサービスYにおいて利用者Aを一意に特定するためのIDya1313を有し、かつセキュリティサービスXにおいて利用者Aを一意に特定するためのIDxa1315を有する。さらにケース1では、セキュリティサービスXにおける二重暗号化に用いる鍵は、WebサービスYのサーバで記憶する暗号鍵Ky1314およびセキュリティサービスXの情報記憶サーバで記憶する暗号鍵Kxa1316の2つである。そして、ケース1では二重暗号化を施された情報はEKy(EKxa(Iya))1317であった。
図13の第2行目1320がケース2である。ケース2における処理は、利用者A1321がWebサービスZ1322を利用する場合に、情報Izaを安全に記憶および閲覧する処理である。ケース2では、利用者Aは、WebサービスZにおいて利用者Aを一意に特定するためのIDza1323を有し、かつセキュリティサービスXにおいて利用者Aを一意に特定するためのIDxa1325を有する。さらにケース2では、セキュリティサービスXにおける二重暗号化に用いる暗合鍵は、WebサービスZのサーバで記憶する暗号鍵Kz1324およびセキュリティサービスXの情報記憶サーバで記憶する暗号鍵Kxa1326の2つである。そして、ケース2では二重暗号化を施された情報はEKz(EKxa(Iza))1327である。ケース2の処理は、ケース1について図7および図12のフロー図において、図13の1行目のシンボルを2行目のシンボルに置き換えた処理となる。
同様に、図13の第3行目1330にはケース3として、利用者Bがその情報端末180を通じてWebサービスYを利用する際に、入力や閲覧を必要とする情報Iybを、セキュリティサービスXを用いて安全に記憶するための処理を示す。また同様に、図13の第4行目1340にはケース4として、利用者Bがその情報端末180を通じてWebサービスZを利用する際に入力や閲覧を必要とする情報Izbを、セキュリティサービスXを用いて安全に記憶するための処理を示す。
なお、本実施形態1では、情報Iyaを、暗号鍵Kyおよび暗号鍵Kxaで二重暗号化する際、IyaをまずKxaで暗号化した暗号化情報EKxa(Iya)を生成し、さらにこの暗号化情報をKyで暗号化した二重暗号化情報EKy(EKxa(Iya))を生成した。またこの逆の処理によって二重暗号化情報EKy(EKxa(Iya))を復号化して平文情報Iyaを生成した。この暗号化の順番を逆にして、情報Iyaをまず暗号鍵Kyで暗号化し暗号化情報EKy(Iya)を生成し、さらにこの暗号化情報をKxaで暗号化して二重暗号化情報EKxa(EKy(Iya))を生成してもよい。さらに二重暗号化情報は、KxaとKyによって一意に決まる任意の演算結果Kfを生成したKf(Iya)であってもよい。すなわち、本実施形態1における二重暗号化は、二重暗号化情報を平文情報Iyaに復号化する際にKyおよびKxaの二つの鍵が必要であるような暗号化方法であれば、如何なるものであってもよい。
次に、本実施形態の効果について説明する。本実施形態の第1の効果は、Webサービスのサーバにおいて、利用者が入力した情報、たとえばIyaのような保護すべき情報、が記憶されることなく、各Webサービスの提供が可能という点である。たとえばケース1において、図9を参照すると、WebサービスYのサーバ150のデータベース記憶部152に記憶されている利用者Aの情報は、IDya911、IDxa912、およびKy913のみである。万一、これらがWebサービスYのサーバ150より流出したとしても、保護すべき利用者Aの情報Iyaは含まれないし、復元することもできない。本発明によって、利用者には情報秘匿に関する安全性という効果を、またWebサービスYの事業者には利用者情報の漏洩リスクの低減という効果を提供することができる。
Webサービス利用者の多くは、自身やその知人の情報をWebサービスに入力する場合、これらの情報をWebサービス事業者に利用されたくないという要求を持っている場合が多い。たとえば、Webサービス利用者は、希望しない広告・宣伝のメッセージをWebサービス事業者より受け取りたくないかもしれない。さらに、Webサービス利用者の多くは、入力した自分自身や知人の漏洩リスクについて心配するかもしれない。
またWebサービス事業者においては、利用者が入力した利用者自身やその知人の情報が漏洩すると、利用者からの損害賠償のリスクや風評被害が生じる可能性がある。さらに、そもそも個人情報の取得を制限する法律や規制などに照らして、利用者自身やその知人の情報を取得し、Webサービスのサーバに記憶しておくことができない場合がある。本実施形態1の第1の効果によれば、このような問題を解決するのに役立つ。
本実施形態の第2の効果は、セキュリティサービスXの情報記憶サーバにおいて、利用者が入力した、たとえばIyaのような保護すべき情報を、EKy(EKxa(Iya))という二重暗号化を施して記憶するため、高い安全性が実現される点である。たとえば、ケース1において図10および図11を参照すると、セキュリティサービスXの情報記憶サーバ120に記憶されている情報は、IDxa1011、Kxa1021、および二重暗号化情報EKy(EKxa(Iya))1121のみである。万一、これらがセキュリティサービスXの情報記憶サーバ120から漏洩したとしても、暗号鍵Kyがないので、二重暗号化情報EKy(EKxa(Iya))を平文に戻すことはできない。また同様に、セキュリティサービスXの情報記憶サーバ120には、暗号鍵Kyが記憶されていないので、セキュリティサービスXの運営事業者が、保護すべき情報Iyaを平文に戻して、たとえば広告・宣伝などに利用することはできない。
一方、たとえばケース1では、利用者Aの情報端末からの情報Iyaの記憶要求をきっかけとして、ステップS704からステップS710までの間、その一時記憶部102に、平文のIya、暗号鍵Kyおよび暗号鍵Kxaが一時的に記憶される。また同様に、利用者Aの情報端末からの情報Iyaの要求をきっかけとして、ステップS1204からステップS1210までの間、その一時記憶部102に、平文のIya,暗号鍵Ky、および暗号鍵Kxaが一時的に記憶される。しかし、いずれの場合にも暗号化または表示の処理が終了すると同時に、一時記憶部102より消去され(ステップS711またはステップS1211)、データベースのデータとして永続的に記憶されることがない。このため、セキュリティサービスXの情報処理サーバから、データベースの情報漏洩が発生するリスクは、従来の方法に比べて低い。また、上記のようにセキュリティサービスXの情報処理サーバには一時的に平文の情報が記憶されるが、一般にサーバに外部より侵入して主記憶装置のような一時記憶部にある情報を入手することは困難である。また、個人情報保護を目的とした各種の法律、規制は、個人情報を集約したデータベースの保護を目的としている。本実施形態1は、情報漏洩事故に関する実質的なリスクを従来より小さくできるだけでなく、Webサービス、およびセキュリティサービスXの両方にとっての、個人情報保護を目的とした各種の法律、規制の違反に対するリスクを小さくすることになる。
さらに、前記第1の効果および前記第2の効果の組み合わせとして、次の効果が存在する。たとえばケース1では、WebサービスYの利用者Aは、そのWebサービスYの利用に際して入力する情報Iyaを、そのWebサービスの運営事業者にも、またこれを暗号化して記憶するサービスを提供するセキュリティサービスXの運営事業者にも入手できない状態で記憶、および利用することができる。
本実施形態1に係る本願発明の第3の効果は、仮に二重暗号化情報および鍵が、各々を記憶するサーバ、またはセキュリティサービスXの情報処理サーバから流出した場合にも、従来の方法と比べてその被害を小さな範囲に限定できる点である。
前述のように、セキュリティサービスXの情報処理サーバの一時記憶部には、Webサービスの管理する暗号鍵、およびセキュリティサービスXの管理する暗号鍵および保護されるべき平文の利用者情報が、一時的に記憶される。いまたとえば、この一時記憶部に一時的に記憶された情報が、セキュリティサービスXの情報処理サーバから漏洩した場合を考える。再び図13を参照する。いま、ケース1の処理中に、WebサービスYから暗号鍵Ky1314が、またセキュリティサービスXの情報記憶サーバからセキュリティサービスXの暗号鍵Kxa1316および二重暗号化情報EKy(EKxa(Iya))が流出したとする。この場合、KyおよびKxaを用いれば、EKy(EKxa(Iya))から、平文のIyaを計算することができる。しかし、ここで流出した2つの暗号鍵KyおよびKxaを用いても、図13にあるケース2、3、および4のいずれの暗号化情報も平文に戻すことはできない。
つまり、上記第1の効果、第2の効果では、仮にセキュリティサービスXの情報記憶サーバにある暗号化情報がすべて漏洩して、さらにWebサービスの管理する暗合鍵、セキュリティサービスXの管理する暗号鍵のいずれかが漏洩しても一切の二重暗号化情報は平文に戻せないことを説明した。さらに第3の効果によれば、仮にセキュリティサービスXの情報記憶サーバにある暗号化情報がすべて流出して、さらにさらにWebサービスYの管理する暗合鍵、セキュリティサービスXの管理する暗号鍵の両方が流出しても、平文に戻せる情報は限定的であることを意味する。本実施形態における鍵の利用によって、従来の方法に比べて万一、暗号化情報と暗号鍵の両方が流出した場合にも、その被害を従来よりも小さなものにとどめることができる。
なお、図13からわかるように、本実施形態1では、Webサービスの管理する暗号鍵は、Webサービス毎に異なるが、各Webサービスの複数の利用者間では共通の暗号鍵が用いられている。しかしこれに限定されることはなく、本実施形態では、利用者ごとに異なる暗号鍵を用いてもよい。また、セキュリティサービスXの管理する暗号鍵は、利用者ごとには異なるが、ある利用者が複数のWebサービスを利用している場合にでも一利用者についてひとつの暗号鍵が用いられている。しかしこれに限定されることはなく、本実施形態では、Webサービスごとに異なる暗号鍵が用いられてもよい。暗号鍵の数が増えれば、暗号鍵流出の際の被害をさらに狭く限定することができるという利点がある。
なお、本実施形態1では、二重暗号化情報を記憶する暗号化情報テーブル123と、セキュリティサービスXにおける、たとえばKxaなどのような暗号鍵を記憶する暗号鍵テーブル124は、同じセキュリティサービスXの情報記憶サーバ120に存在したが、これら2つのテーブルは異なるサーバに存在してもよい。さらに、これら2つのテーブルが別のサーバに存在した場合、これら2つのサーバは異なる事業者によって運営されていてもよい。
なお、これまでの本実施形態の説明においては、WebサービスYも、セキュリティサービスXも平文に戻せない状態で、セキュリティサービスXの情報記憶サーバに記憶する情報は、利用者Aがその情報端末から入力した情報Iyaであるとして説明した。しかし、このような情報は利用者Aが入力した情報である必要はなく、たとえば何らかの情報を暗号化するための暗号鍵であってもよい。
(実施形態2)
まず始めに、以下に説明する実施形態2の概略について説明する。実施形態1では、WebサービスYのサーバ150が、図7のステップS705、および図12のステップS1204において、WebサービスYが保有する暗号鍵KyをセキュリティサービスXの情報処理サーバ100に送信した。図7は、利用者Aの入力した情報を、セキュリティサービスXの情報記憶サーバで二重暗号化した上で記憶するための処理であった。また図12は、セキュリティサービスXに二重暗号化して記憶した利用者Aの情報を呼び出すための処理であった。
このような前記実施形態1に係る処理においては、WebサービスYのサーバが有する暗号鍵Kyを、セキュリティサービスXのサーバが受け取り、一時的にその情報処理サーバ100の一時記憶部に記憶する。セキュリティサービスXの情報処理サーバでは、図7または図12の処理が終了後には、暗号鍵Kyは消去される(ステップS711およびステップS1211)。このため、もしセキュリティサービスXの情報記憶サーバから二重暗号化情報を漏洩しても安全である。
一般に、暗号鍵Kyが一時的であれ、セキュリティサービスXのサーバに記憶されることは、WebサービスYの運営者は望まない場合がある。理由は、セキュリティサービスXの運営者が故意または過失によって、セキュリティサービスXの情報処理サーバの一時記憶部102に一時的に記憶された暗号鍵Kyをデータベース記憶部に記憶する可能性があるためである。本来、暗号鍵KyはWebサービスYを使う利用者Aの情報を、セキュリティサービスXの運営事業者開示しないために用いているものである。従ってこの暗号鍵KyをセキュリティサービスXの運営者の管理下にある情報処理サーバ100に送ることは望ましくないと考えることもできる。さらに、実施形態1では、図13に示すように、暗号鍵Kyは、Webサービスのすべての利用者に共通である。このため、セキュリティサービスXの運営者が暗号鍵Kyをデータベース記憶部に記憶して悪用すれば、WebサービスYのすべての利用者の情報を平文に戻すことが可能となってしまう。
そこで、本実施形態2として、WebサービスYの有する暗号鍵Kyを、セキュリティサービスXのサーバに送信せずに、前記実施形態1と同様の効果を実現する実施形態について説明する。図14を参照する。実施形態1では、セキュリティサービスXで記憶する情報Iya1419を、Ky1413およびKxa1414の2つの鍵で二重暗号化する。これに対して、本実施形態で用いる鍵は3種類ある。まず、情報Iya1419を、セキュリティサービスXにおける利用者Aの暗号鍵Kxa1418で暗号化し、EKxa(Iya)の状態で、情報記憶サーバ120に記憶する。一方、暗号鍵Kxa1418は、セキュリティサービスXの暗号鍵Kxy1417およびWebサービスYの暗号鍵Ky1416で二重暗号化し、EKxy(EKy(Kxa))の状態で、セキュリティサービスXの情報記憶サーバ120に記憶する。ここに、Kxyとは、セキュリティサービスXが記憶する、WebサービスYの利用者のための暗号鍵である。これに対して本実施形態2におけるKyも、前記実施形態1と同様、WebサービスYが記憶するWebサービスYの利用者のための暗号鍵である。なお、本実施形態2で二重暗号化されるのは、KxaやKyaのような暗号鍵であるが、前記実施形態1と同じように、利用者Aが入力した情報を、本実施形態2の方法でKyおよびKxyによって二重暗号化をしてもよい。
次に、図15、図18、図19、および図20に示すフロー図を用いて、本実施形態2の処理について説明する。いま、利用者AはWebサービスYにログインしている(ステップS1501)。この時、WebサービスYのサーバのHTML生成部155がHTMLコードを生成し、送受信部151がHTMLコードを、ネットワーク190を通じて利用者Aの情報端末170に送る。利用者Aの情報端末の送受信部171がこれを受信し、HTML解析部172が解析した後、GUI表示部173が画像を表示する。この時点で利用者Aはログインしているので、利用者AをWebサービスYで一意に特定するためのIDyaは、すくなくともWebサービスYのサーバの一時記憶部154に記憶されている。
いまWebサービスYのサーバ150に記憶しない情報の入力を、WebサービスYのサーバが利用者Aに対して求めるとする。このとき、WebサービスYのサーバ150と利用者Aの情報端末170との接続が、セキュリティサービスXの情報処理サーバ100にリダイレクトされる(ステップS1502)。次にセキュリティサービスXの情報処理サーバのHTML生成部108がHTMLコードを生成し、送受信部101がHTMLコードを、ネットワーク190を通じて利用者Aの情報端末170に送る。利用者Aの情報端末の送受信部171がこれを受信し、HTML解析部172が解析した後、GUI表示部173が画像を表示する。ここで、本実施形態の一例として図8に示すような利用者Aおよび利用者Aの知人の名前と住所の入力フォームが表示されているとする。
GUI表示部173には、Webブラウザ表示ウィンドウ800が表示される。さらに、Webブラウザ表示ウィンドウ800には、利用者AがWebブラウザを通じてWebサービスYを現在使っていることを表す表示801がある。もし、WebサービスYが有する何らかの情報を表示したい場合には、WebサービスYのサーバ150からセキュリティサービスXの情報処理サーバ100にこのような情報を送信し、これを平文情報領域104に一時的に記憶した上で、セキュリティサービスのHTML生成部108が、これを利用して図8のような前記HTMLコードを生成表示してもよい。たとえば、図8の一例では、利用者Aの名前(Betty Thomas)802のような、WebサービスYの有する情報については、WebサービスYのサーバ150から、セキュリティサービスXの情報処理サーバ100に送られた上で、そのHTML生成部108によってHTMLコードに変換される。このような場合、WebサービスYのサーバ150から受信した情報は、ステップS1806またはステップS1908で他の情報とともに消去する。
次に、利用者Aが、情報端末170の入力部174を用いて、利用者Aが利用者A自身の情報およびその知人の情報を入力する。いま、ここで入力された文字列を、たとえばスペース区切りなどで結合したものを情報Iyaとする。利用者Aの情報端末の送受信部171が、Iyaを、送受信部171が、ネットワーク190を通じてサービスXの情報処理サーバ100に送信する(ステップS1503)。サービスXの情報処理サーバの送受信部101がIyaを受信し、一時記憶部102にある平文情報領域104に一時的に記憶する(ステップS1504)。ここでは簡単のために、名前と住所という複数の入力フィールドに対する入力文字列を結合した情報Iyaと表記したが、このような入力文字列は、複数の情報に分割されて送信、記憶されてもよい。
次にWebサービスYのサーバの検索部158は、一時記憶部154に記憶された利用者AのIDyaを検索キーとして、暗号鍵テーブル153を検索する。図9に暗号鍵テーブル153の一例を示す。ここでは、利用者AのWebサービスYにおけるIDである、IDya911を検索キーとして、セキュリティサービスXの列920を検索し、検索結果として利用者AのセキュリティサービスXのIDであるIDxa921を得る。
次に、WebサービスYのサーバの送受信部151が前記検索結果であるセキュリティサービスXにおける利用者AのIDであるIDxaを、ネットワーク190を通じてセキュリティサービスXの情報処理サーバ100に送信する(ステップS1505)。ここで、WebサービスYの暗号鍵Kyを、セキュリティサービスXの情報処理サーバ101に送らない点が、実施形態1と本実施形態との異なる点である。サービスXの情報処理サーバの送受信部101がIDxaを受信すると、IDxaを一時記憶部の平文情報領域104に一時的に記憶する。
次に、セキュリティサービスXの情報処理サーバの送受信部101は、暗号鍵KxyおよびセキュリティサービスXの記憶する利用者Aの二重暗号化鍵EKy(EKxy(Kxa))の要求を、サービスXの情報記憶サーバ120に送る。この要求には、上記ステップS1505でWebサービスYのサーバ150から受信したIDであり、利用者AのセキュリティサービスXにおけるIDであるIDxaおよびWebサービスを表す情報Yが含まれる(ステップS1506)。
セキュリティサービスXの情報記憶サーバの送受信部121がIDxa及びYを受信すると、検索部125がYを検索キーとしてデータベース記憶部122にあるサービス暗号鍵テーブル126を検索する。本実施形態2におけるサービス暗号鍵テーブルを図16に示す。検索部125がWebサービスYの暗号鍵Kxy1621を検索し、これを、送受信部121を通じてセキュリティサービスXの情報処理サーバに送る。これを受信したセキュリティサービスXの情報処理サーバは、これを一時記憶部の暗号鍵テーブル105に記憶する(ステップS1507)。なお、図14からわかるように、実施形態1で利用されるWebサービスYの暗号鍵は、WebサービスYのサーバ150で記憶されるKyである。一方、本実施形態では、2つのWebサービスYの暗号鍵が使われる点が、実施形態1と異なる。本実施形態ではKyおよびKxyの2つのWebサービスYの暗号鍵が使われ、KyはWebサービスYのサーバ150に、またKxyはセキュリティサービスXの情報記憶サーバ120に各々記憶されている。このステップS1507の処理は、この暗号鍵Kxyに係る処理である。
次に、セキュリティサービスXの情報記憶サーバの検索部125が、前記ステップS1506でセキュリティサービスXの情報処理サーバから送られた、利用者AのIDxaを検索キーとして、暗号化情報テーブル123の暗号鍵の列を検索する(ステップS1508)。本実施形態における暗号化情報テーブルの一例1701を図17に示す。本実施形態における暗号化情報テーブル123は、各々の利用者のIDに二重暗号化鍵1720および暗号化情報1730が関連づけられて記憶されている。暗号化情報テーブル1701に記憶された二重暗号化鍵では、暗号化情報を平文に戻すことはできない。たとえば、図17において、暗号化情報EKxa(Iya)1731は暗号鍵Kxaで暗号化されている。このテーブルに記憶された暗号鍵EKy(Exy(Kxa))1721は、鍵KyがWebサービスYのサーバ150に記憶されているため、セキュリティサービスXに記憶されている暗号鍵では平文に戻せない。したがってセキュリティサービスXの情報記憶サーバで暗号鍵Kxaを得ることはできず、このため暗号化情報1731を平文に戻すことはできない。
前記ステップS1508における検索において、検索部125は検索キーとなったIDxaに関連付けられた二重暗号化鍵が存在するかどうかを検索する(ステップS1509)。図17に示す一例のように、二重暗号化鍵が存在した場合には図18のステップS1801に進む。以前に、セキュリティサービスXのサーバでIDxaに対応する二重暗号化鍵が、まだ生成されていないために暗号化情報テーブル123に存在しない場合には、図19のステップS1901に進む。
次に、図18のフロー図を用いて、前記ステップS1509で、図17の一例のように、セキュリティサービスXの情報記憶サーバの暗号化情報テーブル123に二重暗号化鍵が存在した場合の処理について説明する。まず、セキュリティサービスXの情報記憶サーバの送受信部121が、前記ステップS1509で検索された二重暗号化鍵EKy(EKxy(Kxa))1721をWebサービスYのサーバに送信する(ステップS1801)。次に、WebサービスYのサーバの送受信部151がこれを受信し、一時記憶部154に一時的に記憶する。次に復号化部157が受信した二重暗号化鍵EKy(EKxy(Kxa))を、暗号鍵テーブル153に記憶された暗号鍵Kyで復号化し、EKxy(Kxa)を得る。次に送受信部151がこれをセキュリティサービスXの情報処理サービスXのサーバに送信する(ステップS1802)。この時、WebサービスYのサーバには、暗号鍵Kxyが記憶されていないので、WebサービスYのサーバに記憶されている情報では、EKxy(Kxa)を更に復号化してKxaを得ることはできない。このステップS1802の処理の後、セキュリティサービスXの情報記憶サーバから受信したEKy(EKxy(Kxa))および生成したEKxy(Kxa)は一時記憶部154から消去する。
次に、セキュリティサービスXの情報処理サーバの送受信部101が、ステップS1802でWebサービスYのサーバから送られたEKxy(Kxa)を受信し、一時記憶部の暗号化情報領域103に一時的に記憶する。次に、暗号化部107が、前記ステップS1507で暗号鍵テーブルに記憶した暗号鍵Kxyで、このEKxy(Kxa)を復号化し、Kxaを得る(ステップS1803)。次に、前記ステップS1504で一時記憶部の平文情報領域104に記憶した情報Iyaを、前記ステップS1803で得た暗号鍵Kxaで暗号化しEKxa(Iya)を生成する。次に、送受信部101がこのEKxa(Iya)をセキュリティサービスXの情報記憶サーバに送る(ステップS1804)。次に、セキュリティサービスXの情報記憶サーバの送受信部121がこのEKxa(Iya)を受信する。次に、これをデータベース記憶部の暗号化情報テーブル123に、利用者AのIDxaと関連づけて記憶する(ステップS1805)。図17の暗号化情報テーブル1701におけるEKxa(Iya)1931はこのステップS1805で記憶されたものである。次に、セキュリティサービスXの情報処理サーバの記憶部に記憶されているIDxa、EKxy(Kxa)、EKxa(Iya)、Kxy、Iyaを削除する(ステップS1806)。
図18に示すフロー図では、利用者Aがその情報端末に、ステップS1503情報Iyaを入力する以前に、二重暗号化鍵EKy(EKxy(Kxa))が、セキュリティサービスXの情報記憶サーバに記憶されている場合について説明した。次に図19を参照して説明するのは、情報Iyaが入力される時点で、二重暗号化鍵EKy(EKxy(Kxa))が、セキュリティサービスXの情報記憶サーバに記憶されていない場合である。
図19を参照する。ステップS1509において、IDxaに関連づけられた二重暗号化鍵が、セキュリティサービスXの情報記憶サーバの暗号化情報テーブル123に記憶されていない場合、セキュリティサービスXの情報記憶サーバの送受信部121は、IDxaに関連づけられた二重暗号化鍵がないことをセキュリティサービスXの情報処理サーバに通知する(ステップS1901)。セキュリティサービスXの情報処理サーバの送受信部101がこの通知を受信すると、暗号鍵生成部111が、利用者Aの暗号鍵Kxaを生成する(ステップS1902)。次に、前記ステップS1504において一時記憶部の平文情報領域104に記憶した情報Iyaを、この暗号鍵Kxaで暗号化し、EKxa(Iya)を生成する。次に、送受信部101がこれを、情報記憶サーバ120に送る(ステップS1903)。
セキュリティサービスXの情報記憶サーバ120の送受信部121がこのEKxa(Iya)を受信し、データベース記憶部の暗号化情報テーブル123に、利用者AのIDxaと関連づけて記憶する(ステップS1904)。図17の暗号化情報テーブル1701におけるEKxa(Iya)1931がこれに相当する。
次に、セキュリティサービスXの情報処理サーバの暗号化部107が、前記ステップS1902で生成した暗号鍵Kxaを、前記ステップS1507で暗号鍵テーブル105に記憶した暗号鍵Kxyで暗号化し、EKxy(Kxa)を得る。次に、送受信部101がこれをIDxaと関連づけてWebサービスYのサーバ150に送る(ステップS1905)。
次に、WebサービスYのサーバの送受信部151がこのEKxy(Kxa)を受信する。暗号化部159が、暗号鍵テーブル153に記憶されている暗号鍵Kyでこれを暗号化し、EKy(EKxy(Kxa))を生成する。次に送受信部151がこれをIDxaと関連づけてセキュリティサービスXのサーバ120に送信する(ステップS1906)。WebサービスYのサーバは、生成したEKy(EKxy(Kxa))および受信したEKxy(Kxa)は一時記憶部154から消去する。
次に、セキュリティサービスXの情報記憶サーバの送受信部121がこのEKy(EKxy(Kxa))を受信し、暗号化情報テーブル123にIDxaと関連づけて記憶する(ステップS1907)。この後、Xの情報処理サーバは、その揮発記憶領域に一時的に記憶されたIDxa、EKxy(Kxa)、Kxy、Kxa(Iya)およびIyaを消去して(ステップS1908)、処理を終了する。なお、図17からわかるように、本実施形態2では、二重暗号化鍵EKy(EKxy(Kxa))1721と暗号化情報EKxa(Iya)1731は同じセキュリティサービスXの情報記憶サーバに記憶されていた。しかし二重暗号化鍵と暗号化された情報は異なるサーバに記憶されてもよい。
次に、利用者AがWebサービスYを通じて、前記ステップS1503で入力した自分自身および知人の情報Iyaを閲覧する場合の処理について図20のフロー図を用いて簡単に説明する。
いま、利用者AはWebサービスYにログインしている(ステップS2001)。このとき、WebサービスYから送信されたHTMLコードを解析した結果が、利用者Aの情報端末のGUI表示部173に表示されている。ここで、利用者Aが入力部174を通じて前記ステップS1503で入力した利用者A自身、および知人に関する情報Iyaを要求する操作を実行する。すると、利用者Aの情報端末の送受信部171は、Iyaの表示要求を、ネットワーク190を通じてWebサービスYのサーバ150に送る(ステップS2002)。この要求を受信したWebサービスYのサーバの送受信部101が、利用者Aの情報端末170への接続を、セキュリティサービスXの情報処理サーバ100にリダイレクトする(ステップS2003)。
さらに、WebサービスYのサーバの検索部158が、利用者AをWebサービスYで一意に認識するためのIDyaを検索キーとして、データベース記憶部にある暗号鍵テーブル153を検索する。この検索結果として得たIDxa921を、Iyaの要求とともに、ネットワーク190を通じてセキュリティサービスXの情報記憶サーバ120に送る(ステップS2004)。
これをセキュリティサービスXの情報記憶サーバの送受信部121が受信すると、検索部125が受信したIDxaを検索キーとして、暗号化情報テーブル123を検索し、ステップS1805またはステップS1904で記憶したEKxa(Iya)1731、およびEKy(EKxy(Kxa))1721を得る。さらに、検索部125は、サービス暗号鍵テーブル126を検索して、WebサービスYの暗号鍵Kxyを得る。次に、送受信部121は、EKxa(Iya)およびKxyをIDxaに関連づけた状態で、セキュリティサービスXの情報処理サーバ100に送る。さらに送受信部121は、EKy(EKxy(Kxa))をIDxaに関連づけた状態でWebサービスYのサーバ150に送る(ステップS2005)。
セキュリティサービスXの情報処理サーバの送受信部101が、セキュリティサービスの情報記憶サーバ120から受信したEKxa(Iya)およびKxyを暗号化情報領域103に一時的に記憶する(ステップS2006)。
次に、WebサービスYのサーバの送受信部151が、ステップS2005でセキュリティサービスXの情報記憶サーバより送られたIDxaを検索キーとして、暗号鍵テーブル153を検索し、利用者Aの暗号鍵Kyを得る。次に、同じくステップS2005で受信したEKy(EKxy(Kxa))を、暗号鍵Kyで復号化したEKxy(Kxa)を生成し、これを一時記憶部154に一時的に記憶する。次に、送受信部151がEKxy(Kxa)を、ネットワーク190を通じて、セキュリティサービスXの情報処理サーバ100に送信する(ステップS2007)。この処理の後、受信したEKy(EKxy(Kxa))および生成したEKxy(Kxa)は一時記憶部154から消去する。
次に、セキュリティサービスXの情報処理サーバの送受信部101がこのEKxy(Kxa)を受信すると、これを一時記憶部の暗号化情報領域103に一時的に記憶する。次に、復号化部106が、ステップS2006で暗号化情報領域103に記憶したKxyで、このKxy(Kxa)を復号化し、利用者Aの暗号鍵Kxaを得る(ステップS2008)。さらに、このKxaを用いて前記ステップ2106で暗号化情報領域103に記憶したKxa(Iya)を復号化して情報Iyaを得、これを平文情報領域104に一時的に記憶する(ステップS2009)。次に、HTML生成部108がこの情報Iyaを含むHTMLコードを生成する。送受信部101が、情報Iyaを含むHTMLコードを利用者Aの情報端末170に送信する(ステップS2010)。利用者Aの情報端末の送受信部171がこのHTMLコードを受信する。次に、HTML解析部172がこのHTMLコードを解析し、その結果をGUI表示部173に表示する(ステップS2011)。ここで表示される情報は、情報Iyaの一部でも全てでもよく、またIya以外の情報が含まれていてもよい。Iyaの一部または全てを含む情報の表示を終了すると、その通知がセキュリティサービスXの情報処理サーバに送られる。この通知を受け取ったセキュリティサービスXの情報処理サーバは、その一時記憶部102に記憶されているIDxa、Kxy、Kxa、Iya、EKy(Exa(Iya))、およびEKxy(Kxa)を消去する(ステップS2012)。
前記実施形態1では、記憶する情報Iyaを、WebサービスYのサーバの記憶する暗号鍵KyとセキュリティサービスXの情報記憶サーバの記憶する暗号鍵Kxaとにより直接、二重暗号化していた。一方本実施形態2では、情報Iyaを暗号鍵Kxaで暗号化する。その上で、暗号鍵Kxaを、WebサービスYのサーバの記憶する暗号鍵KyとセキュリティサービスXの情報記憶サーバの記憶するKxyで二重暗号化する。これが実施形態1と本実施形態2の最大の違いである。
本実施形態2においては、セキュリティサービスXが暗号鍵Kyを受信することはないので、セキュリティサービスXの情報処理サーバと情報記憶サーバの処理は1つのサーバで実行してもよい。
次に、実施形態の効果について説明する。第1の効果は、実施形態1で説明した第1の効果と同じく、WebサービスYのサーバは、利用者が入力した情報、たとえばIyaのような情報、を記憶することなく、サービスの提供が可能という点である。本実施形態では、WebサービスYのサーバに記憶されるのは、図9を参照すると、WebサービスYの有するIDyaと暗号鍵Ky、およびセキュリティサービスXのIDxaのみである。このため、WebサービスYのサーバ150では、利用者Aがその情報端末に入力した情報Iyaを記憶しない。この結果、前記実施形態1の第1の効果で説明した、WebサービスYのサーバからの情報漏洩リスクの低減や、WebサービスY事業者による利用者の情報の利用の防止などの効果がある。
実施形態2の効果は、前記実施形態1に係わる第2の効果と同様、セキュリティサービスXの情報記憶サーバで、利用者Aが入力した情報Iyaを記憶する際の安全性が高い点である。セキュリティサービスXの情報記憶サーバに記憶された、暗号化情報EKxa(Iya)を復号化するために必要な暗号鍵はKxaである。しかし、セキュリティサービスXの情報記憶サーバにおいて、このKxaは二重暗号化され、EKy(EKxy(Kxa))の形で記憶されている。この二重暗号化されたEKy(EKxy(Kxa))からKxaを得るためには、WebサービスYのサーバのみに記憶された暗号鍵Kyが必要である。したがって、セキュリティサービスXの運営者が情報Iyaを平文にもどすことはできない。また万一、暗号化情報や二重暗号化鍵がセキュリティサービスXの情報記憶サーバ120から漏洩したとしても、平文の情報Iyaを得ることはできない。セキュリティサービスXの情報処理サーバの一時記憶部102には一時的に平文のIyaや暗号鍵Kxaが記憶されるが、これらはデータベース記憶部にデータベースとして記憶されることはない。このためセキュリティサービスXの外部より侵入して平文情報Iyaを入手することは困難である。
本実施形態2に係る第3の効果は、WebサービスYのサーバ150が記憶する暗号鍵Kyが、セキュリティサービスXの情報処理サーバ100に送信されない点である。本実施形態2に係る第3の効果は、実施形態1では述べられていない効果である。実施形態1では、セキュリティサービスXの情報処理サーバにKyが送られ、一時記憶部に一時的であれ、記憶された上、これを用いた情報Iyaの暗号化や、復号化が実行された。WebサービスYの有する暗号鍵Kyは、セキュリティサービスXの情報記憶サーバに記憶されることはなく、暗号化または復号化の処理後には、セキュリティサービスXの情報処理サーバより削除される(ステップS711またはステップS1211)。しかし、現実には、WebサービスYの運営者は、暗号鍵KyをセキュリティサービスXの管理下にあるサーバに送ることを望まないことが多い。セキュリティサービスXの運営者が、その情報処理サーバに一時的に記憶されたKyを情報記憶サーバなどに記憶してしまうと、セキュリティサービスXの鍵Kxaと組み合わせることで、WebサービスYに対して利用者Aが入力した情報Iyaを、セキュリティサービスXの運営者が入手可能になってしまうからである。さらに、セキュリティサービスXの運営者がKyを記憶すると、WebサービスYのすべての利用者の情報を入手可能になってしまうからである。図14を再び参照すると、たとえばセキュリティサービスXの運営者がKyを記憶しておけば、自らが記憶する利用者Bの暗号鍵Kxb1434と組み合わせることで、利用者BがWebサービスYに入力した情報Iyb1439をも入手可能となってしまう。
しかし、本実施形態によれば、暗号鍵KyはセキュリティサービスXの情報処理サーバに送信される必要がない。従ってセキュリティサービスXの運営者が、暗号鍵Kyを入手する方法はない。
本実施形態の第4の効果は、セキュリティサービスXに情報を記憶する利用者が、複数のWebサービスを同時に利用することが容易になる点である。実施形態の第4の効果は、実施形態1では述べられていない効果である。いま、利用者AがWebサービスYにログインしている状態で、図20を参照して説明した処理により、以前に利用者AがWebサービスY利用中に入力した情報Iyaを、利用者Aの情報端末に表示している(ステップS2011)とする。さらに、この状態で利用者Aは、以前にWebサービスZ利用中に入力した情報Izaも同時に表示させたいという要求があるとする。たとえば、図8に示したようにWebサービスYが自分および知人の名前や住所を管理する住所録サービスだったとする。また、WebサービスZも同様に、別の住所録サービスだったとする。このとき、利用者AはWebサービスYおよびZで個別に管理されている知人リストを、たとえば図21の一例に示すように、1つの画面にまとめて表示できれば便利である。図21は、利用者AがWebサービスYを利用している時の表示画面である。GUI表示部173には、Webブラウザウィンドウ2100が表示されている。図20のフロー図で説明したとおり、図21の画面のHTMLコードは、セキュリティサービスXの情報処理サーバのHTML生成部108が生成したものである。いま、図21において利用者Aの知人の名前John Brown2111およびその住所2112は、利用者AがWebサービスY利用中に入力した情報Iyaであるとする。また利用者Aの知人の名前Fred Mancini2121およびその住所2122は、利用者AがWebサービスZを利用中に入力した情報Izaだとする。図21のように、複数の異なるWebサービスに分散した知人の情報を一括して閲覧することができれば、利用者Aの住所録としての利便性は向上する。
以上の説明では、簡単のためにWebサービスYおよびWebサービスZともに住所録サービスであるとして説明したが、各Webサービスは、電子メール、チャット、SNS(Social Networking Service)、音声通話、物品販売、物品配送といったどのようなWebサービスでもよい。
実施形態2においては、利用者AがWebサービスYに対して入力した情報Iyaを図20を参照して説明した処理により、表示部173に表示している時点(ステップS2011)では、セキュリティサービスXの情報処理サーバの一時記憶部102には、暗号鍵Kxaが平文の状態で一時的に記憶されている。ここで再び図14を参照すると、本実施形態2では情報Iya1419情報Iza1439も、同じ暗号鍵Kxaで暗号化された状態で、情報記憶サーバ120に記憶されている。このため、セキュリティサービスXの情報処理サーバは、Izaに係るステップS2001からステップS2009に相当する処理を実行することなく、サーバと情報IyaおよびIzaを、図21に示すように同じ画面に表示することができる。
再び図14を参照する。前記実施形態1の場合、セキュリティサービスXの情報記憶サーバ120では、情報Iya1419は、Kxa1414およびKy1413で二重暗号化され、EKy(EKxa(Iya))の形で記憶されている。一方でIza1429は、Kxa1424およびKz1423で二重暗号化され、EKz(EKxa(Iza))の形で記憶されている。セキュリティサービスXの情報処理サーバが図21のような表示のためのHTMLコードを生成するためには、利用者AはWebサービスYとWebサービスZの両方について、図20のステップS2001からステップS2009に相当する処理を実行する必要がある。このために、利用者Aにさらなる操作を行う必要があり、またセキュリティサービスXの各サーバおよびWebサービスYおよびZのサーバにおいてもさらなる処理が必要とされる。しかし、実施形態においては、図21のような画面を簡単に表示することができる。図21のような画面において、表示だけでなく、情報追加や変更を実行することもできる。この場合は、図15、図18、図19、および図20に示した処理が実行される。
すなわち、本実施形態2の方法では、WebサービスYおよびWebサービスZを利用する利用者Aが各々のサービス利用時に入力した情報を、WebサービスYの運営者もWebサービスZの運営者も、さらにセキュリティサービスXの運営者も入手することができないにもかかわらず、図21のような複数のWebサービスを横断的に結びつける、従来の方法では不可能だったサービスを実現することが可能となる。

Claims (32)

  1. 第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、を備えるシステムであって、
    前記第1のサーバは、情報を第3の暗号鍵で暗号化した暗号化情報を記憶し、さらに、前記第3の暗号鍵を前記第2の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を記憶することを特徴とするシステム。
  2. 第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、を有するシステムであって、
    前記第1のサーバは、
    前記第1の暗号鍵を前記第3のサーバに送信する送信部を備え、
    前記第3のサーバは、
    前記第1の暗号鍵を受信する受信部と、
    第3の暗号鍵を生成し、前記第3の暗号鍵を前記第1の暗号鍵で暗号化した暗号化鍵を生成する暗号化鍵生成部と、
    前記暗号化鍵を前記第2のサーバに送信する送信部を備え、
    前記第2のサーバは、
    前記暗号化鍵を受信する受信部と、
    前記暗号化鍵を前記第2の暗号鍵で二重暗号化し二重暗号化鍵を生成する二重暗号化鍵生成部と、
    前記二重暗号化鍵を前記第1のサーバに送信する送信部を備え、
    前記第1のサーバは、前記二重暗号化鍵を記憶する記憶部を備えることを特徴とするシステム。
  3. 第1の暗号鍵を第2の暗号鍵および前記第3の暗号鍵で二重暗号化した二重暗号化鍵および前記第3の暗号鍵を記憶する第1のサーバと、前記第2の暗号鍵を記憶する第2のサーバと、第3のサーバとを備えるシステムであって、
    前記第1のサーバは、
    前記二重暗号化鍵を前記第2のサーバに、また前記第3の暗号鍵を前記第3のサーバに送信する送信部を備え、
    前記第2のサーバは、
    前記二重暗号化鍵を受信する受信部と、
    前記二重暗号化鍵を前記第2の暗号化鍵で復号化した暗号化鍵を生成する暗号化鍵生成部と、
    前記暗号化鍵を前記第3のサーバに送信する送信部とを備え、
    前記第3のサーバは、
    前記暗号化鍵を受信する受信部と、
    前記暗号化鍵を前記第3の暗号鍵で復号化して前記第1の暗号鍵を生成する暗号鍵生成部を備えることを特徴とするシステム。
  4. 第1の暗号鍵を記憶する記憶部と、
    第1のサーバから、情報を第2の暗号鍵で暗号化した暗号化情報を受信し、前記第2の暗号鍵を、第2のサーバの記憶する第3の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を前記第2のサーバより受信する受信部と、
    前記暗号化情報および前記二重暗号化鍵をID情報に関連づけて記憶する記憶部とを備えることを特徴とするサーバ。
  5. 情報端末から情報を受信する受信部と、
    第1の暗号鍵を生成する暗号鍵生成部と、
    前記情報を前記第1の暗号鍵で暗号化した暗号化情報を生成する暗号化部と、
    前記暗号化情報を第1のサーバに送信する送信部と、
    を備え、
    さらに、前記受信部は、前記第1のサーバより第2の暗号鍵を受信し、
    さらに、前記第1の暗号鍵を前記第2の暗号鍵で暗号化した暗号化鍵を生成する暗号化鍵生成部と、
    を備え、
    さらに前記送信部は、第2のサーバに記憶された第3の暗号鍵で前記暗号化鍵を二重暗号化し二重暗号化鍵を生成するために前記暗号化鍵を前記第2のサーバに送信することを特徴とするサーバ。
  6. 前記二重暗号化鍵は、前記第2のサーバから前記第1のサーバに送信され、前記第1のサーバに記憶されることを特徴とする請求項5記載のサーバ。
  7. 前記情報を、前記送信部が前記暗号化鍵を前記第2のサーバに送った後、消去することを特徴とする請求項5又は6記載のサーバ。
  8. 情報端末から情報を受信する受信部と、
    前記情報端末の利用者を一意に識別する認識票を第1のサーバに送信する送信部と、
    を備え、
    さらに前記受信部は、第1の暗号鍵を前記第1のサーバから受信し、
    前記認識票に関連づけられて第1のサーバに記憶された二重暗号化鍵であって、第2の暗号鍵を第3の暗号鍵と前記第1の暗号鍵とにより二重暗号化した二重暗号化鍵を、第2のサーバに記憶されている前記第3の暗号鍵により復号化した暗号化鍵を前記第2のサーバから受信し、
    さらに前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号鍵生成部とを備え、
    さらに前記送信部は、前記情報を前記第2の暗号鍵で暗号化した暗号化情報を前記第1のサーバに送信することを特徴とするサーバ。
  9. 前記暗号化情報を前記第1のサーバに送信した後に前記情報を消去することを特徴とする請求項8記載のサーバ。
  10. 情報端末から情報を受信する受信部と、
    前記情報端末の利用者を一意に識別する認識票を第1のサーバに送信する送信部、とを備え、
    さらに前記受信部は、
    第1の暗号鍵を前記第1のサーバから受信し、
    前記認識票に関連づけられて第1のサーバに記憶された、第2の暗号鍵を第3の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を、第2のサーバで記憶する前記第3の暗号鍵で復号化した暗号化鍵を前記第2のサーバから受信し、
    さらに、前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号鍵生成部を備え、
    さらに前記送信部は、前記情報を前記第2の暗号鍵で暗号化した暗号化情報を第4のサーバに送信することを特徴とするサーバ。
  11. 前記送信部が前記暗号化情報を前記第4のサーバに送信した後に、前記情報を消去することを特徴とする請求項10記載のサーバ。
  12. 第1の暗号鍵、第2の暗号鍵及び情報を前記第2の暗号鍵で暗号化した暗号化情報を、第1のサーバが記憶する第3の暗号鍵と前記第1の暗号鍵とで二重暗号化した二重暗号化鍵を記憶する記憶部と、
    前記第1の暗号鍵を第2のサーバに送信し、
    前記二重暗号化鍵を前記第1のサーバに送信する送信部と
    を備えることを特徴とするサーバ。
  13. 前記送信部は、前記第3の暗号鍵で前記二重暗号化鍵を復号化した暗号化鍵を生成し、さらに前記暗号化鍵を前記第2のサーバに送信し、
    前記第2のサーバは、前記暗号化鍵を前記第1の暗号化鍵で復号化して前記第2の暗号鍵を生成し、さらに前記暗号化情報を前記第2の暗号鍵で復号化して前記情報を生成することを特徴とする請求項12記載のサーバ。
  14. 第1のサーバから、第1の暗号鍵、および情報を第2の暗号鍵で暗号化した暗号化情報を受信し、第2のサーバから、前記第2の暗号鍵を前記第1の暗号鍵で暗号化した暗号化鍵を受信する受信部と、
    前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号化部と、
    前記暗号化情報を前記第2の暗号鍵で復号して前記情報を生成する復号化部と、
    前記情報を情報端末に送信する送信部と
    を備えることを特徴とするサーバ。
  15. 前記サーバが受信する前記暗号化鍵は、前記第2のサーバが前記第1のサーバより受信した、前記暗号化鍵を前記第2のサーバが記憶する第3の暗号化鍵で暗号化した二重暗号化鍵を、前記第2のサーバが前記第3の暗号鍵で復号化することによって得られる暗号鍵であることを特徴とする、請求項14記載のサーバ。
  16. 第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、を備えるシステムであって、
    前記第1のサーバは、情報を前記第1の暗号鍵と前記第2の暗号鍵で二重暗号化した二重暗号化情報を記憶する記憶部を備えることを特徴とするシステム。
  17. 第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、を備えるシステムであって、
    前記第3のサーバは、情報を前記第1の暗号鍵と前記第2の暗号鍵で二重暗号化した二重暗号化情報を記憶する記憶部を備えることを特徴とするシステム。
  18. 第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、情報端末と、を備えるシステムであって、
    前記第3のサーバは、
    前記情報端末より情報を、前記第1のサーバより前記第1の暗号鍵を、前記第2のサーバより前記第2の暗号鍵を受信する受信部と、
    前記情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化する暗号化部と
    を備え、
    前記第1のサーバは、
    前記二重暗号化情報を記憶する記憶部を備えることを特徴とするシステム。
  19. 第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、第4のサーバと、情報端末と、を備えるシステムであって、
    前記第3のサーバは、
    前記情報端末より情報を、前記第1のサーバより前記第1の暗号鍵を、前記第2のサーバより前記第2の暗号鍵を受信する受信部と、
    前記情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化する暗号化部と、
    前記第4のサーバは、
    前記二重暗号化情報を記憶する記憶部を備えることを特徴とするシステム。
  20. 情報端末から第1の情報を受信し、第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信する受信部と、
    前記第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を生成する暗号化部と、
    前記第1の二重暗号化情報を前記第1のサーバに送信する送信部と
    を備えることを特徴とするサーバ。
  21. 前記受信部が受信した前記第1の情報および前記第2の暗号鍵を、前記送信部が、前記第1の二重暗号化情報を前記第1のサーバに送信した後に、記憶部から消去することを特徴とする請求項20記載のサーバ。
  22. さらに、前記受信部は前記情報端末から第2の情報を受信し、第3のサーバから第3の暗号鍵を受信し、
    前記暗号化部は、前記第2の情報を前記第1の暗号鍵および前記第3の暗号鍵で二重暗号化した第2の二重暗号化情報を生成し、
    前記送信部は、前記第2の二重暗号化情報を前記第1のサーバに送信することを特徴とする請求項20または21記載のサーバ。
  23. 前記受信部が受信した前記第2の情報および前記第3の暗号鍵を、前記送信部が前記第2の二重暗号化情報を前記第1のサーバに送った後に、消去することを特徴とする請求項22記載のサーバ。
  24. 情報端末から第1の情報を受信し、第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信する受信部と、
    前記第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を生成する暗号化部と、
    前記第1の二重暗号化情報を第3のサーバに送信する送信部を
    備えることを特徴とするサーバ。
  25. 前記受信部が受信した前記第1の情報および前記第2の暗号鍵を、前記送信部が、前記第1の二重暗号化情報を前記第3のサーバに送った後に、消去することを特徴とする請求項24記載のサーバ。
  26. さらに、前記受信部は、前記情報端末から第2の情報を受信し、第4のサーバから第3の暗号鍵を受信し、
    前記暗号化部は、前記第2の情報を前記第1の暗号鍵および前記第3の暗号鍵で二重暗号化した第2の二重暗号化情報を生成し、
    前記送信部は、前記第2の二重暗号化情報を前記第3のサーバに送信することを特徴とする請求項24または25記載のサーバ。
  27. 前記受信部が受信した前記第2の情報および前記第3の暗号鍵を、前記送信部が前記第2の二重暗号化情報を前記第3のサーバに送った後に、消去することを特徴とする請求項26記載のサーバ。
  28. 第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信し、前記第1のサーバから第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を受信する受信部と、
    前記第1の二重暗号化情報を、前記第1の暗号鍵および前記第2の暗号鍵で復号化した前記第1の情報を復号化部と、
    前記第1の情報を情報端末に送信部を備えることを特徴とするサーバ。
  29. 前記送信部が前記第1の情報を前記情報端末に送信した後に、前記第1の情報と前記第2の暗号鍵を消去することを特徴とする請求項28記載のサーバ。
  30. さらに、前記受信部は、第3のサーバから第3の暗号鍵を受信し、前記第1のサーバから第2の情報を前記第1の暗号鍵および前記第3の暗号鍵で二重暗号化した第2の二重暗号化情報を受信し、
    前記復号化部は、前記第2の二重暗号化情報を前記第1の暗号鍵および前記第3の暗号鍵で復号化して前記第2の情報を生成し、
    前記送信部は、前記第2の情報を前記情報端末に送信することを特徴とする請求項28または請求項29記載のサーバ。
  31. 前記送信部が前記第2の情報を前記情報端末に送信した後に、前記第2の情報と前記第3の暗号鍵とを消去することを特徴とする請求項30記載のサーバ。
  32. さらに、前記第1の情報と前記第2の情報を同時に前記情報端末の表示部に表示するためのコードを生成するコード生成部を有することを特徴とする請求項30または請求項31記載のサーバ。
PCT/JP2009/065116 2009-08-28 2009-08-28 サービスシステム WO2011024298A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011528576A JPWO2011024298A1 (ja) 2009-08-28 2009-08-28 サービスシステム
PCT/JP2009/065116 WO2011024298A1 (ja) 2009-08-28 2009-08-28 サービスシステム
US13/403,031 US20120216041A1 (en) 2009-08-28 2012-02-23 Service system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2009/065116 WO2011024298A1 (ja) 2009-08-28 2009-08-28 サービスシステム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/403,031 Continuation US20120216041A1 (en) 2009-08-28 2012-02-23 Service system

Publications (1)

Publication Number Publication Date
WO2011024298A1 true WO2011024298A1 (ja) 2011-03-03

Family

ID=43627423

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/065116 WO2011024298A1 (ja) 2009-08-28 2009-08-28 サービスシステム

Country Status (3)

Country Link
US (1) US20120216041A1 (ja)
JP (1) JPWO2011024298A1 (ja)
WO (1) WO2011024298A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023635A (zh) * 2012-12-03 2013-04-03 广东欧珀移动通信有限公司 一种信息备份的方法及装置
US9369464B2 (en) 2012-03-09 2016-06-14 Distributed Management Systems Ltd. Scalable authentication system

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9386359B2 (en) * 2010-08-16 2016-07-05 Fujitsu Limited Selecting metadata for sensor data streams
US9107565B2 (en) 2010-08-16 2015-08-18 Fujitsu Limited Identifying an event occurrence from sensor data streams
EP2625820B1 (en) * 2010-10-08 2021-06-02 Brian Lee Moffat Private data sharing system
CA2870166C (en) 2012-04-13 2020-07-21 Ologn Technologies Ag Secure zone for digital communications
US9432348B2 (en) 2012-04-20 2016-08-30 Ologn Technologies Ag Secure zone for secure purchases
US9189647B2 (en) * 2012-04-24 2015-11-17 Nec Corporation Encrypted database system, linking method, and medium
US10075471B2 (en) * 2012-06-07 2018-09-11 Amazon Technologies, Inc. Data loss prevention techniques
US10084818B1 (en) 2012-06-07 2018-09-25 Amazon Technologies, Inc. Flexibly configurable data modification services
US9286491B2 (en) 2012-06-07 2016-03-15 Amazon Technologies, Inc. Virtual service provider zones
EP2973180B1 (en) * 2013-03-15 2020-01-15 OLogN Technologies AG Systems, methods and apparatuses for securely storing and providing payment information
SG11201508725SA (en) * 2013-04-25 2015-11-27 Treebox Solutions Pte Ltd Method performed by at least one server for processing a data packet from a first computing device to a second computing device to permit end-to-end encryption communication
US9407440B2 (en) * 2013-06-20 2016-08-02 Amazon Technologies, Inc. Multiple authority data security and access
KR102195900B1 (ko) 2013-12-20 2020-12-29 삼성전자주식회사 단말간 암호화된 메시지를 송수신하는 방법 및 장치
US9639687B2 (en) * 2014-11-18 2017-05-02 Cloudfare, Inc. Multiply-encrypting data requiring multiple keys for decryption
CN104601671A (zh) * 2014-12-26 2015-05-06 北京奇虎科技有限公司 移动终端的收藏夹数据存储、获取方法和装置
CN104580433B (zh) * 2014-12-26 2019-02-26 北京奇虎科技有限公司 收藏夹数据的调取方法和装置
WO2016122646A1 (en) * 2015-01-30 2016-08-04 Docusign, Inc. Systems and methods for providing data security services
CN104809156B (zh) * 2015-03-24 2019-02-01 北京锐安科技有限公司 记录证据信息的方法和装置
US9843929B2 (en) * 2015-08-21 2017-12-12 Afero, Inc. Apparatus and method for sharing WiFi security data in an internet of things (IoT) system
US9503969B1 (en) * 2015-08-25 2016-11-22 Afero, Inc. Apparatus and method for a dynamic scan interval for a wireless device
US10805344B2 (en) 2015-12-14 2020-10-13 Afero, Inc. Apparatus and method for obscuring wireless communication patterns
US10091242B2 (en) 2015-12-14 2018-10-02 Afero, Inc. System and method for establishing a secondary communication channel to control an internet of things (IOT) device
US10447784B2 (en) 2015-12-14 2019-10-15 Afero, Inc. Apparatus and method for modifying packet interval timing to identify a data transfer condition
US9992175B2 (en) * 2016-01-08 2018-06-05 Moneygram International, Inc. Systems and method for providing a data security service
US11194922B2 (en) * 2018-02-28 2021-12-07 International Business Machines Corporation Protecting study participant data for aggregate analysis

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08181689A (ja) * 1994-10-28 1996-07-12 Sony Corp デイジタル信号伝送方法、デイジタル信号受信装置及び記録媒体
JP2000067187A (ja) * 1998-08-20 2000-03-03 Toshiba Corp 携帯可能情報記憶媒体を使用した情報管理システム、および情報管理方法
JP2002245718A (ja) * 2001-02-16 2002-08-30 Hitachi Ltd ストリームデータ記録再生装置およびストリームデータの転送方法
JP2005539441A (ja) * 2002-09-17 2005-12-22 エリコス ピッツォス 公衆ネットワークを介して安全なデータ配信を供給するための方法及びシステム
JP2006211710A (ja) * 2006-03-27 2006-08-10 Toshiba Corp コンテンツ管理方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01225251A (ja) * 1988-03-04 1989-09-08 Toshiba Corp 秘密鍵配送方式
JPH01246979A (ja) * 1988-03-29 1989-10-02 Kondeishiyonaru Akusesu Technol Kenkyusho:Kk 有料番組分配装置及び暗号鍵の分配方法
US5504816A (en) * 1994-02-02 1996-04-02 Gi Corporation Method and apparatus for controlling access to digital signals
JPH08125651A (ja) * 1994-10-28 1996-05-17 Hitachi Ltd 信号処理装置
US6236727B1 (en) * 1997-06-24 2001-05-22 International Business Machines Corporation Apparatus, method and computer program product for protecting copyright data within a computer system
JP4043669B2 (ja) * 1999-10-15 2008-02-06 日本放送協会 限定受信方式における関連情報の処理装置
JP2005123883A (ja) * 2003-10-16 2005-05-12 Japan Science & Technology Agency 電子署名システム
EP1612636A1 (de) * 2004-07-01 2006-01-04 Tecnostore AG Verfahren zur Datenarchivierung mit automatischer Ver- und Entschlüsselung
JP4667235B2 (ja) * 2005-12-28 2011-04-06 日本電信電話株式会社 データの配信・受信システムおよびデータの配信・受信方法
US8281375B2 (en) * 2007-01-05 2012-10-02 Ebay Inc. One time password authentication of websites
US8363834B1 (en) * 2008-07-22 2013-01-29 Tara Chand Singhal Systems and methods for complex encryption keys

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08181689A (ja) * 1994-10-28 1996-07-12 Sony Corp デイジタル信号伝送方法、デイジタル信号受信装置及び記録媒体
JP2000067187A (ja) * 1998-08-20 2000-03-03 Toshiba Corp 携帯可能情報記憶媒体を使用した情報管理システム、および情報管理方法
JP2002245718A (ja) * 2001-02-16 2002-08-30 Hitachi Ltd ストリームデータ記録再生装置およびストリームデータの転送方法
JP2005539441A (ja) * 2002-09-17 2005-12-22 エリコス ピッツォス 公衆ネットワークを介して安全なデータ配信を供給するための方法及びシステム
JP2006211710A (ja) * 2006-03-27 2006-08-10 Toshiba Corp コンテンツ管理方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9369464B2 (en) 2012-03-09 2016-06-14 Distributed Management Systems Ltd. Scalable authentication system
CN103023635A (zh) * 2012-12-03 2013-04-03 广东欧珀移动通信有限公司 一种信息备份的方法及装置
CN103023635B (zh) * 2012-12-03 2015-10-07 广东欧珀移动通信有限公司 一种信息备份的方法及装置

Also Published As

Publication number Publication date
US20120216041A1 (en) 2012-08-23
JPWO2011024298A1 (ja) 2013-01-24

Similar Documents

Publication Publication Date Title
WO2011024298A1 (ja) サービスシステム
CN106202331B (zh) 分层次隐私保护的推荐系统及基于该推荐系统的作业方法
CN101512525B (zh) 加密的数据搜索
US8520842B2 (en) Maintaining privacy during user profiling
US20220343017A1 (en) Provision of risk information associated with compromised accounts
CN105593871B (zh) 属性信息提供方法以及属性信息提供系统
US20150229611A1 (en) Keyword ordered storage, search and retrieval on encrypted data for multiuser scenario
TWI749444B (zh) 可靠的使用者服務系統和方法
CN106471539A (zh) 用于混淆受众测量的系统和方法
US20140172830A1 (en) Secure search processing system and secure search processing method
US11687666B2 (en) System, method, and computer program product for conducting private set intersection (PSI) techniques with multiple parties using a data repository
JP2009005202A (ja) 情報交換装置
WO2016181904A1 (ja) データベースシステム、データベース処理方法
JPWO2018047698A1 (ja) 暗号化メッセージ検索方法、メッセージ送受信システム、サーバ、端末、プログラム
CN104956393B (zh) 使用用户描述符与社交网络系统用户进行的第三方通信
US10594473B2 (en) Terminal device, database server, and calculation system
JP2005122311A (ja) 広告提示方法、装置およびプログラム
KR102245886B1 (ko) 협력형으로 개인정보를 보호하는 통신환경에서의 분석서버 및 분석서버의 동작 방법, 서비스제공장치 및 서비스제공장치의 동작 방법
CN105721393A (zh) 数据安全加密的方法及装置
US20170200020A1 (en) Data management system, program recording medium, communication terminal, and data management server
US20230367902A1 (en) Common data determining methods, apparatuses, and systems for protecting privacy
JP2006189925A (ja) 個人情報管理システム、個人情報管理プログラムおよび個人情報保護方法
CN106961386A (zh) 一种签到服务中的位置隐私保护方法
US20210192025A1 (en) Service support system and service support method
Pidcock et al. Zerosquare: A privacy-friendly location hub for geosocial applications

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09848745

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011528576

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09848745

Country of ref document: EP

Kind code of ref document: A1