Patent ID: 7908374
Filing Date: 2011-03-15
Classification: H04L

Abstract:
1. A non-transitory storage medium storing program for a service provider for providing a matching service performed on a computer for the service provider, wherein said program causes a computer to perform: receiving from each computer for a user of each member in two groups who uses a service via a plurality of mediating computers that mediate information sent to the service provider, a set of his or her identification information that is transferred by a first transfer function that is selected in his or her computer, a priority list in which identification information of each member in the other group, which is permuted in said his or her priority order and transferred by said first transfer function, is permuted by a permuting function that is selected in said his or her computer, a parameter composing a transfer inverse function which is an inverse function of said first transfer function, and a parameter composing a permuting inverse function which is an inverse function of said permuting function, both of which are encrypted with a first encrypting key of said computer for the service provider, and processing information to be used in processing a matching result in a state in which the result is decrypted by only the computer for a person concerned, wherein said his or her identification information and the identification information of each member in said other group that is listed in said priority list are respectively transferred by a plurality of second transfer functions, each of which is selected in each of said mediating computers; storing said priority list, said parameter composing said transfer inverse function and said parameter composing said permuting inverse function, and said processing information in a matching information storing section in relation with his or her identification information for said received set for each member; decrypting said parameter composing said transfer inverse function and said parameter composing said permuting inverse function of each member that are read out from said matching information storing section with a first decrypting key that is kept in said computer for said service provider corresponding to said first encrypting key of said service provider; applying said transfer inverse function of each member to said his or her identification information that is read out from said matching information storing section; applying said transfer inverse function of each member and permuting inverse function of each member to said his or her priority list that is read out from said matching information storing section; performing matching between said two groups based on said his or her identification information and said priority list of all members in the two groups, with said his or her identification information and the identification information of each member in said other group on said priority list being transferred by said plurality of second transfer functions; generating a plurality of second different encrypting keys for each pair obtained as a result of the matching; processing, for each member in the two groups, his or her second encrypting key and his or her matching result in a state in which they are decrypted by only his or her computer for a user based on said processing information that is stored in said matching information storing section in relation with his or her identification information; and publicizing said processed second encrypting key and matching result of said each member, wherein said each member can make an encrypted communication with said counterpart member who makes a pair with him or her by using said his or her second encrypting key, which can be decrypted in his or her computer.