Patent ID: 8433758

Claim:
A method for user information processing in a network environment, the method comprising the steps of: performing an orthogonal transform on a first vector representing information related to a first user at a first user device, thus obtaining a first transformed vector; splitting the first transformed vector into a plurality of parts at the first user device, wherein the first vector or part thereof cannot be derived from any part of the first transformed vector and wherein each part has a part order number; sending a part of the first transformed vector from the first user device to a second user device, retaining another part of the first transformed vector and, if the first transformed vector was split into more than two parts, sending any additional parts to one or more additional user devices, wherein all the devices are connected with the first user device via a network, and wherein the parts are sent such that each part is sent to a different user device; receiving, at the first user device, a part of a second transformed vector from the second user device, wherein (i) the part of the second transformed vector was obtained by performing the orthogonal transform on a second vector representing the information related to the second user to obtain a second transformed vector, (ii) the second transformed vector was split correspondingly into an equal number of parts at the second user device as in the first user device, (iii) the second vector or part thereof cannot be derived from any part of the second transformed vector, and (iv) the part of the second transformed vector received by the first user device has a same part order number as the part retained by the first user device; calculating, at the first user device, an inner product of the part of the first transformed vector retained by the first user device and the part of the second transformed vector received by the first user device to obtain a first inner product; receiving, at the first user device, a second inner product from the second user device, wherein the second inner product was obtained by calculating an inner product of the part of the first transformed vector sent to the second user device and the part of the second transformed vector at the second user device having the same part order number; receiving, at the first user device, any additional inner products from any additional user devices that were sent a part of the first transformed vector from the first user device, wherein the inner product was calculated at the additional user device by calculating an inner product of the part of the first transformed vector sent to the additional user device and the part of the second transformed vector sent by the second user device to the additional user device having the same part order number; and summing, at the first user device, the first inner product, the second inner product, and any additional inner products as an inner product of the first vector and second vector at the first user device.