Abstract:
The disclosed embodiments relate to a method of exchanging information between at least one party and a plurality of intermediaries, the plurality of intermediaries including a selected intermediary. The method may comprise providing correct information to the selected intermediary, providing incorrect information to each of the plurality of intermediaries who are not the selected intermediary, receiving modified information based on the correct information from the selected intermediary, receiving modified information based on the incorrect information from each of the plurality of intermediaries who are not the selected intermediaries, and wherein the plurality of intermediaries do not know the identity of the selected intermediary.

Description:
BACKGROUND  
       [0001]     This section is intended to introduce the reader to various aspects of art, which may be related to various aspects of the present invention that are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present invention. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.  
         [0002]     In electronic commerce and data marketing, parties frequently exchange information and technology that is proprietary yet susceptible to misappropriation. For example, one party may have proprietary data which is useful with a proprietary program owned by a second party. It may be desirable to analyze the proprietary data with the proprietary program to provide useful and valuable results. However, risks are involved with such an exchange. Often times, parties desiring to exchange information and/or technology are mutually untrusting parties. In other words, a party that owns proprietary data may be suspicious that a party with a proprietary program might be inclined to sell or otherwise disclose the proprietary data in an inappropriate manner. Similarly, a party that has developed a proprietary program may not trust the party that owns the proprietary data with the program, fearing that the party that owns the proprietary data might reverse engineer the proprietary program and decipher a valuable algorithm or the like.  
         [0003]     Accordingly, the data owner may not wish to reveal the data to the program owner and the program owner may not wish to reveal the program to the data owner. One potential solution may be to employ a third party intermediary (i.e. a party who owns neither the proprietary data nor the proprietary program) to perform the analysis on the proprietary data using the proprietary program and provide the results to the requesting party. The use of a third party intermediary, however, is only appropriate in a situation in which both the owner of the proprietary data and the owner of the proprietary program trust that the intermediary will not inappropriately disclose or try to profit from its access to either the proprietary data or the proprietary program.  
         [0004]     In view of the potential misappropriation discussed above, it is desirable to have a technique for sharing information and/or technology that reduces the risk of revealing proprietary information and/or technology inappropriately to other participating parties or subjecting the information and/or technology to easy misappropriation by others not involved in the transaction at all and to provide other advantages. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0005]     Advantages of one or more disclosed embodiments may become apparent upon reading the following detailed description and upon reference to the drawings in which:  
         [0006]      FIG. 1  is a block diagram illustrating an algorithm for the sharing or exchange of information, data, and/or technology between parties through a plurality of intermediaries in accordance with certain embodiments of the present invention;  
         [0007]      FIG. 2  is a flow chart that illustrates a process in accordance with certain embodiments of the present invention;  
         [0008]      FIG. 3  is a flow chart that illustrates a process in accordance with certain embodiments of the present invention; and  
         [0009]      FIG. 4  is a flow chart that illustrates a process in accordance with certain embodiments of the present invention. 
     
    
     DETAILED DESCRIPTION  
       [0010]     One or more specific embodiments of the present invention will be described below. In an effort to provide a concise description of these embodiments, not all features of an actual implementation are described in the specification. It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation-specific decisions must be made to achieve the developers&#39; specific goals, such as compliance with system-related and business-related constraints, which may vary from one implementation to another. Moreover, it should be appreciated that such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking for those of ordinary skill having the benefit of this disclosure.  
         [0011]      FIG. 1  is a block diagram illustrating an algorithm  10  for the sharing or exchange of information, data, and/or technology between parties (Party-A  12  and Party-B  14 ) through a plurality of intermediaries  16 ,  18  in accordance with certain embodiments of the present invention. The algorithm  10 , for example, allows for the combination of proprietary information and/or technology from all of the parties  12 ,  14  to obtain further information or data without disclosing proprietary information of one of the parties to the other.  
         [0012]     All parties  12 ,  14  and intermediaries  16 ,  18  represented in  FIG. 1 , may be referred to collectively as participants  20 . And, while  FIG. 1  merely illustrates two intermediaries  16 ,  18  in direct communication with two parties  12 ,  14 , other embodiments can be envisaged wherein different numbers of participants  20  are involved in direct and indirect communications. For example, in one embodiment more than two intermediaries  16 ,  18  in direct communication with the parties  12 ,  14  are participants  20 . Alternatively, in another embodiment, multiple levels of intermediaries  16 ,  18  may be used such that some intermediaries  16 ,  18  communicate only with other intermediaries  16 ,  18 . Further, in another embodiment, the algorithm  10  may include a number of participants  20  configured such that the intermediaries  16 ,  18  cannot communicate with at least one of the parties  12 ,  14 . Additionally, other embodiments can be envisaged wherein more than two of the participants  20  are parties  12 ,  14 .  
         [0013]     While many different types of information and/or technology sharing can be envisaged,  FIG. 1  specifically illustrates the sharing of a proprietary program  22  and proprietary data  24  such that the program  22  interprets the data  24  and yields results  26  that can be disclosed to at least one of the parties  12 ,  14  that requests the analysis. Further, in the illustrated embodiment, the parties  12 ,  14  may agree at random on a selected intermediary  16  to receive the correct data  24  and the correct program  22 . The parties give plausible but incorrect data  24 A and a plausible but incorrect program  22 A to all but the selected intermediary  16 . Accordingly, the algorithm  10 , as illustrated in  FIG. 1 , is being used to prevent disclosure of the proprietary program  22  to Party-A  12  and also to prevent disclosure of the proprietary data  24  to Party-B  14 . Further, the algorithm  10  also prevents the intermediaries  16 ,  18  from misappropriating the proprietary data  24  and/or the proprietary program  22 .  
         [0014]     The algorithm  10  may be effective when there is little trust among the participants  20 . Additionally, it is desirable that the intermediaries  16 ,  18  merely know that other intermediaries  16 ,  18  exist without knowing the other intermediary  16 ,  18  identities. In the illustrated embodiment, the intermediaries  16 ,  18  do not know who the selected intermediary  16  is, but they do know that any participating intermediaries  16 ,  18  may potentially have the incorrect data  24 A and/or the incorrect program  22 A. Other embodiments can be envisaged wherein a single intermediary is utilized (not shown) instead of a plurality of intermediaries  16 ,  18 . In such an embodiment, the single intermediary would be given multiple sets of data, some correct, some incorrect and multiple programs, at least one being correct and others being incorrect. Additionally, the single intermediary would not be informed which of the programs or data sets were correct thus achieving similar results to other embodiments described herein. In another embodiment wherein a single intermediary is utilized, the single intermediary is given the correct data  24  and the correct program  22  but is told that many intermediaries are being used.  
         [0015]     Turning to the preventative aspects of the algorithm  10 , the algorithm  10  helps to prevent the proprietary program  22  and the proprietary data  24  from being respectively disclosed to Party-A  12  and/or Party-B  14  by requiring that the only recipients of the program  22  and data  24  be one of the intermediaries  16 ,  18 , who presumably do not share either the program  22  or the data  24  with the respective opposing party  12 ,  14 . Further, the algorithm  10  prevents the intermediaries  16 ,  18  from misappropriating either the program  22  or data  24  by causing it to be unknown to the intermediaries  16 ,  18  whether they received the erroneous but plausible data  24 A and/or the incorrect but plausible program  22 A or alternatively the correct version of the data  24  and/or the correct program  22 . Thus, for example, if one of the intermediaries  16 ,  18  attempts to utilize the program  22 , the data  24 , or the results  26 , the intermediary  16 ,  18  risks utilization of false results  26 A or false information resulting in an erroneous outcome. Further, if the intermediaries  16 ,  18  provide an outside party with such erroneous information, the intermediary  16 ,  18  risks establishing a bad reputation within that intermediary&#39;s business community.  
         [0016]     The illustration in  FIG. 1 , as discussed previously, represents Party-A  12  and Party-B  14  as respective owners of the data  24  and the program  22 . In the illustrated embodiment, both Party-A  12  and Party-B  14  receive the results  26  from the intermediaries  16 ,  18  who have obtained the results  26  by interpreting the data  24  with the program  24 . One reason for such a disbursement is that the interpreted data or results  26  are valuable to both Party-A  12  and Party-B  14 . However, in other embodiments, only one of Party-A  12  and Party-B  14  (the requesting party) may receive the results.  
         [0017]      FIG. 2  is a flow chart that illustrates a process in accordance with certain embodiments of the present invention. The process is generally referred to by the reference numeral  100 . The process  100  may be used for sharing a proprietary program owned by one party and proprietary data owned by a second party through a plurality of intermediaries. The intermediaries utilize the program to interpret the data, thus yielding results. The results are then shared with the owner of the program and the owner of the data without disclosing any proprietary information between the two. Specifically, in  FIG. 2 , block  102  represents the start of the process. Block  104  represents that in the illustrated embodiment, there are two parties, Party-A and Party-B, each respectively owning the proprietary data and the proprietary program. However, other embodiments can be envisaged wherein there are more than two parties and wherein the parties own other forms of proprietary information. For example, first and second parties having separate but combinable proprietary data and a third party having a program for analyzing the combined data may all be participants in one embodiment of the present invention.  
         [0018]     In block  106 , Party-A proposes an intermediary and in block  108 , requests that Party-B accept the proposed intermediary. Block  110  represents a decision by Party-B to either approve (YES) or disapprove (NO) of the proposed intermediary. If Party-B disapproves, the process  100  returns to the step illustrated by block  106  in  FIG. 2  and Party-A again proposes an intermediary. If the proposed intermediary is approved by Party-B, the process  100  continues to block  112 , which represents a question as to whether enough intermediaries have been designated (YES) or not (NO). If it is determined that not enough intermediaries have been designated (NO) the process  100  again returns to block  106  having already designated at least one intermediary. If it is determined that the parties designated enough intermediaries (at least one), the process  100  proceeds to block  114 . In other embodiments, different parties may make the initial proposal and in yet other embodiments, different methods may be used to determine the plurality of intermediaries.  
         [0019]     Once the parties have selected the plurality of intermediaries, Party-A proposes a selected intermediary from the plurality of intermediaries to receive correct data and a correct program, as illustrated by block  1   14 . Next, as illustrated by block  116 , Party-A requests that Party-B accept the selected intermediary. Block  118  represents the decision of Party-B to either accept (YES) or reject (NO) the proposed selected intermediary. If Party-B rejects the selected intermediary, the process returns to block  114 , Party-A proposes another selected intermediary from the plurality of intermediaries, and the process  100  continues. If Party-B accepts the selected intermediary, the process  100  moves on to providing data and the program, as illustrated in block  120 . This iterative process  100 , in part, helps to provide assurance that a given party is not cooperating with a given intermediary. In other embodiments, different parties may make the initial proposal and in still other embodiments, different methods are used to determine the select intermediary, for example, by a random selection process.  
         [0020]     Once a selected intermediary is agreed upon, Party-A and Party-B provide the correct data and the correct program, respectively, to the selected intermediary, as illustrated in block  120 . Other embodiments can be envisaged wherein there is more than one selected intermediary. Additionally, as shown by block  122 , incorrect but plausible data and incorrect but plausible programs are provided to the intermediaries other than the selected intermediary. Party-A and Party-B then collect results from all of the intermediaries, including the selected intermediary (block  124 ), and discard all but the selected intermediary&#39;s results (block  126 ). Thus, the end of the process is achieved (block  128 ). Other embodiments can be envisaged in which results from multiple selected intermediaries are combined to get the desired results. In other embodiments, a plurality of parties is involved and only one or less than all parties collect the results. Additionally, other embodiments can be envisaged wherein results are only collected from a certain number of intermediaries.  
         [0021]     As a result of the technique illustrated in  FIG. 2 , which is an exemplary embodiment of the claimed invention, no intermediary may safely use or resell either the program or the data because it may be incorrect. However, in order for this technique to be effective, it is preferable that the intermediaries know that they are not necessarily receiving correct data and/or the correct program, and that other intermediaries are being utilized.  
         [0022]      FIG. 3  is a flow chart that illustrates a process in accordance with embodiments of the present invention. The block diagram of  FIG. 3  illustrates an algorithm  200 , which operates to share data  202 A and a program  204 A between parties (data owner  206  and program owner  208 ) through a plurality of intermediaries  210 ,  212  in an anonymous fashion. The exemplary embodiment illustrated by  FIG. 3  may be desirous if, for example, there is a possibility that one of the intermediaries  210 ,  212  is in collusion with either the data owner  206  or program owner  208 . A path through an anonymizing network  214 , which in one embodiment comprises a series of intermediaries (not shown), can be constructed so that neither the data owner  206  nor the program owner  208  knows which intermediary  210 ,  212  produced the correct result  210 A because incorrect data  202 , an incorrect program  204 , and incorrect results  210  are also respectively submitted and obtained.  
         [0023]     Specifically,  FIG. 3  illustrates the data owner  206  submitting correct data  202 A and plausible but incorrect data  202  through the anonymizing network  214  to a plurality of intermediaries  210 ,  212 . Next, the program owner  208  submits the correct program  204 A and the plausible but incorrect program to the plurality of intermediaries through the anonymizing network  214 . The plurality of intermediaries  210 ,  212  then utilize the programs  204 ,  204 A to interpret the data  202 ,  202 A and are shown in the illustrated embodiment to submit the results  211 ,  21   1 A to the program owner  208  through the anonymizing network  214 . This submission process results in the data owner  206 , the program owner  208 , and the intermediaries  210 ,  212  not knowing which intermediary  210 ,  212  produced the correct result. In some embodiments, where the program  204 ,  204 A is modest enough and the program owner  208  can distinguish a correct result  211  A from an incorrect one  211 , for example, by verifying an account number, the data owner  206  and program owner  208  can assign intermediaries  210 ,  212  at random until the correct data  202 A and program  204 A come together.  
         [0024]      FIG. 4  is a flow chart that illustrates a process in accordance with embodiments of the present invention. The flow chart is generally referred to by the reference numeral  300  and it illustrates use of the present invention in place of a public key infrastructure protocol or a key exchange protocol between a consumer and seller by using an intermediary-A and an intermediary-B. This particular embodiment of the present invention, as illustrated, may be beneficial when, for example, the consumer trusts intermediaries with his encryption key but not with his account number. And, the consumer does not trust the seller with his encryption key. However, in the example scenario, the seller needs the consumer&#39;s account number. Further, in the illustrated scenario, the seller has a means of detecting correct account numbers, for example, by using a check sum.  
         [0025]     Specifically, in  FIG. 4 , block  302  designates the start of this particular embodiment of the disclosed invention. In block  304 , the consumer submits an encrypted account number to the intermediary-A, followed in block  306  by a submission of an encrypted false account number to the intermediary-B. The intermediaries have the consumer&#39;s encryption key and, as shown in block  308 , decrypt the account numbers. Next, in block  310 , the intermediaries again encrypt the account numbers using an encryption key shared with the seller. As shown in blocks  312  and  314 , the intermediaries forward the re-encrypted account numbers to the seller and the seller decrypts the account numbers using the appropriate shared encryption key. The seller then performs an account number verification, such as a checksum, to determine which account number is valid, as shown in block  316 . Finally, as shown in block  318 , the seller discards all but the correct account number. Thus, the process comes to an end (block  320 ). The embodiment of the present invention illustrated in  FIG. 4  works best if the account number can only be used once and/or the penalties for using an incorrect number are severe.  
         [0026]     While the invention may be susceptible to various modifications and alternative forms, specific embodiments have been shown by way of example in the drawings and will be described in detail herein. However, it should be understood that the invention is not intended to be limited to the particular forms disclosed. Rather, the invention is to cover all modifications, equivalents and alternatives falling within the spirit and scope of the invention as defined by the following appended claims.