US-20260127663-A1 - HOMOMORPHIC ENCRYPTION FOR ONLINE BIDDING
Abstract
Encrypted bids from a group of users responsive to a bidding process request for bids, such as an auction or tender, are modified homomorphically to select a winning bid and identify a winner bidder (or multiple winning bidders) in an online bidding system. The encrypted results can be validated homomorphically prior to the bid selection and bidder identification. Validation can comprise nullifying bids with values outside the bidding specification, or those tendered in an inappropriate format. Validation may comprise masking a vectored bid response to nullify any non-compliant values in invalid positions in the vector, while allowing the compliant value or values to remain. Multi-bid vectors are supported. Validation can support reserve bidding by eliminating bids that are below a specified minimum (e.g. in an auction) or above a specified maximum (e.g. in a tender). The modified bids can optionally be anonymized to remove any indication about the pre-modification bid value.
Inventors
- Naveen Seenivasagam
- Panimalar Aravindan
- Nandini Malhotra
- Keerthana Sethuraman Mallika
- Ramprakash Ramamoorthy
- Shailesh Kumar Davey
Assignees
- Zoho Corporation Private Limited
Dates
- Publication Date
- 20260507
- Application Date
- 20251105
- Priority Date
- 20241106
Claims (20)
- 1 . A method comprising: performing, by a processing device, a mathematical operation on an encrypted bid to produce an encrypted result, wherein the mathematical operation applied to the encrypted bid corresponds to an operation that, when applied to plaintext of the encrypted bid, changes the plaintext bid.
- 2 . The method of claim 1 , wherein the first-mentioned mathematical operation is a function of an encrypted bid-selection value, the method further comprising performing a second mathematical operation on the encrypted bid and one or more additional encrypted bids to produce the encrypted bid-selection value.
- 3 . The method of claim 2 , further comprising performing a third mathematical operation on the encrypted bid to invalidate the encrypted bid when does not conform to a bidding process constraint.
- 4 . The method of claim 3 , wherein the bidding process constraint is a reserve price and the third mathematical operation invalidates the encrypted bid when the plaintext of the encrypted bid does not meet the reserve price.
- 5 . The method of claim 1 further comprising: decrypting the encrypted result; and comparing the decrypted result with a predetermined value.
- 6 . The method of claim 5 , wherein the encrypted bid is associated with a bidder, further comprising identifying the bidder when the decrypted result matches the predetermined value.
- 7 . The method of claim 2 , further comprising: performing the first-mentioned mathematical operation on the one or more additional encrypted bids to produce one or more additional encrypted results; decrypting the first-mentioned encrypted result and one or more additional results to form a set of decrypted results; and comparing each of the set of decrypted results with a predetermined value.
- 8 . The method of claim 7 , further comprising performing a third mathematical operation on the first-mentioned encrypted result and the one or more additional encrypted results, wherein the third mathematical operation applied to the encrypted result corresponds to an operation that, when applied to plaintext of the encrypted result, changes the value of the plaintext responsive to the plaintext not equaling the predetermined value.
- 9 . The method of claim 8 , wherein the third mathematical operation comprises multiplying each of the first-mentioned encrypted result and the one or more additional results by one of a set of non-zero random numbers.
- 10 . The method of claim 8 , wherein the third mathematical operation comprises operative steps that, when applied to plaintext of the encrypted result, changes the value of the plaintext to a second predetermined value responsive to the plaintext not equaling the first-mentioned predetermined value.
- 11 . The method of claim 6 , wherein each of the first-mentioned encrypted bid and the one or more additional encrypted bids are associated with one of a plurality of bidders, the method further comprising identifying one or more bidders when the decrypted result deriving from the encrypted bid associated with the bidder equals the predetermined value.
- 12 . The method of claim 11 , wherein a bidder identification of the bidder is associated with each encrypted bid.
- 13 . The method claim 11 , wherein the set of decrypted results have an order, the one or more decrypted results equaling the predetermined values having one or more respective positions in the order, and the one or more bidders are identified by selecting one or more bidder identifications from a list of bidder identifications having the same respective positions in the order.
- 14 . The method of claim 2 , wherein the second mathematical function applied to the encrypted bid and the one or more additional encrypted bids results in the encrypted bid-selection value being the maximum of the encrypted bid and the one or more additional encrypted bids.
- 15 . The method of claim 2 , wherein the second mathematical function applied to the encrypted bid and the one or more additional encrypted bids results in the encrypted bid-selection value being the minimum of the encrypted bid and the one or more additional encrypted bids.
- 16 . The method of claim 2 , further comprising performing a third mathematical operation on the encrypted bid, wherein the third mathematical operation results in the encrypted bid being replaced with the encrypted replacement value responsive to the encrypted bid having a plaintext value of zero.
- 17 . The method of claim 16 , wherein the encrypted replacement value is computed as the maximum of the encrypted bid and the one or more additional encrypted bids added to a positive offset value.
- 18 . The method of claim 2 , wherein the first mathematical operation comprises subtracting the encrypted bid-selection value from the encrypted bid.
- 19 . The method of claim 2 , wherein an encrypted winning bid value is determined as the encrypted bid-selection value.
- 20 . The method of claim 1 , wherein the encrypted bid comprises two or more bid values, each of the bid values associated with one of two or more bidding processes, and the mathematical operation corresponds to an operation that, when applied to plaintext of the encrypted bid comprising two or more bid values, changes the plaintext value of each of the two or more bid values.
Description
FIELD OF THE INVENTION Embodiments of the present disclosure are related, in general, to online bidding and more particularly, but not exclusively, to homomorphic bid selection from and validation of encrypted bids. CROSS REFERENCE TO RELATED APPLICATIONS This application is related to Indian Provisional Application 202441085173, filed 6 Nov. 2024, and U.S. Provisional Application 63/735,447, filed 18 Dec. 2024, entitled “HOMOMORPHIC ENCRYPTION FOR ONLINE BIDDING”, both of which are incorporated herein by reference. BRIEF DESCRIPTION OF THE DRAWINGS The subject matter disclosed is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which: FIG. 1 depicts homomorphic bidding system 100. FIG. 2 is a flowchart 200 illustrating bidding, bid selection, and bidder identification in an example embodiment. FIG. 3 illustrates example bids and bidder identifications encoded into vectors in preparation for encryption. FIG. 4 shows an example scheme 400 for encryption, decryption, and homomorphic computing useful for performing validation and analysis of encrypted bids. FIG. 5 identifies various homomorphic operations which may be used for manipulating encrypted bids for validation, bid selection, and bidder identification. FIG. 6 is a flowchart 600 illustrating a process for homomorphic bid selection and bidder identification for a bidding process seeking the highest or maximum bid, such as an auction. FIG. 7 is a flowchart 700 illustrating a process for homomorphic bid selection and bidder identification for a bidding process seeking the lowest or minimum bid, such as a tender. FIG. 8 illustrates results of a bidding process seeking a maximum bid with no validation. FIG. 9 illustrates results of a bidding process seeking a minimum bid with no validation. FIG. 10 is a flowchart 1000 illustrating a process for validating a bid, referred to as validation option 1. FIG. 11 is a flowchart 1100 illustrating another process for validating a bid, referred to as validation option 2. FIG. 12 illustrates the results of applying validation option 1 to the example bids detailed in FIG. 3. FIG. 13 illustrates the results of applying validation option 2 to the example bids detailed in FIG. 3. FIG. 14 illustrates results of a bidding process seeking a maximum bid using the bids validated using option 1. FIG. 15 illustrates results of a bidding process seeking a maximum bid using the bids validated using option 2. FIGS. 16 and 17 illustrate results for bidding processes seeking a minimum bid using the bids validated using options 1 and 2, respectively. FIG. 18 is a flowchart 1800 illustrating a bid validation process for removing zeros. FIGS. 19A and 19B are flowcharts 1900 and 1950 illustrating anonymizing processes. FIG. 20 shows the results of minimum bid selection and bidder identification after zero substitution as well as the benefits of optional bid anonymization. FIG. 21 is a flowchart 2100 illustrating validation of bids in a bidding process seeking a maximum bid and supporting a minimum reserve value. FIG. 22 illustrates results for an example seeking a maximum bid with a minimum reserve value of 5. FIG. 23 illustrates results for an example seeking a maximum bid with a minimum reserve value of 10. FIG. 24 is a flowchart 2400 illustrating validating bids for a bidding process seeking a minimum bid with a maximum reserve value. FIG. 25 illustrates results for an example seeking a minimum bid with a maximum reserve value of 4. FIG. 26 illustrates example multi-bid results with differing reserve values. FIG. 27 is an example bidding system 2700. FIG. 28 illustrates a process flow 2800 for bidding system 2700. FIG. 29 is a flowchart 2900 illustrating an example bidding creation process. FIG. 30 is a flowchart 3000 illustrating a process for online bidding by a user. FIG. 31 (prior art) depicts a general-purpose computing system 3100 that can serve as a client or a server depending on the program modules and components included. DETAILED DESCRIPTION Online auction systems exist to facilitate distributed, convenient, safe, and secure bidding access to a population of bidders participating in an auction or a tender. A bidding system should provide for secure and accurate bids from identity-authenticated users who are authorized to participate in a particular auction. Bid analysis should be performed on responses that have been validated, to provide accurate and untampered results. The winner of any bidding process should be identifiable, and the winning bid recorded accurately. Additionally, in some bidding systems, it will be desirable to provide privacy and/or anonymity to users or bidders participating in an auction or tender. Encrypted bids from a group of users responsive to a bidding process request for bids, such as an auction or tender, are modified homomorphically to select a winning bid and identify a