The present invention relates to methods and systems for a zero-knowledge cyber-notary for protecting digital transactions against various types of fraudulent activities. In particular, such methods and systems verify transaction content and approval by a third party having ‘zero knowledge_ about the transaction data itself.
In a world that is rapidly transitioning, traditional business activities are increasingly being performed digitally. Organizations are seeking to employ new payment mechanisms, and expand distribution channels into online, mobile, and international sectors.
Of course, with such widespread growth in the online industry comes an increasing number of threats in cybersecurity. Enabling such online transactions exposes commercial institutions to threats, such as a network breach that can compromise the transaction logs and credibility or customers' potentially denying the authenticity of transactions due to misunderstanding and fraud.
There are three main threats.
1. Computer Hacking
2. Chargebacks (examples below refer to credit-card fraud)
3. Insider Fraud
While some of these scenarios have different solutions (e.g., multi factor authentication—potentially helpful in countering true fraud, but not so much in dealing with chargeback fraud, or enforcing internal-security flow—which can safeguard from insider fraud, but wont help protecting systems from network hacking), a comprehensive solution for the different scenarios is not presently available.
It would be desirable to have methods and systems for a zero-knowledge cyber-notary for protecting digital transactions against various types of fraudulent activities. Such methods and systems would, inter alia, overcome the various limitations mentioned above.
It is the purpose of the present invention to provide methods and systems for a zero-knowledge cyber-notary for protecting digital transactions.
It is noted that the term ‘exemplary_ is used herein to refer to examples of embodiments and/or implementations, and is not meant to necessarily convey a more-desirable use-case. Similarly, the terms ‘alternative_ and ‘alternatively_ are used herein to refer to an example out of an assortment of contemplated embodiments and/or implementations, and is not meant to necessarily convey a more-desirable use-case. Therefore, it is understood from the above that ‘exemplary_ and ‘alternative_ may be applied herein to multiple embodiments and/or implementations. Various combinations of such alternative and/or exemplary embodiments are al so contemplated herein.
For purposes of clarity, several terms are defined herein. The term ‘partner networks_ is used herein to refer to multiple, independent networks in which the term ‘independent_ is used in order to emphasize that each partner is a separate entity with its own secure infrastructure and personnel, and does not depend or rely in any way on any other partner network. The term ‘cyber-notary_ is used herein to refer to a transaction authority which utilizes independent, partner networks having zero knowledge of the transactions to securely approve and authenticate such transactions.
Embodiments of the present invention utilize trusted third parties to authenticate the transaction parties (both the transaction provider and the transaction consumer), verify the transaction details, and provide an external and independent copy of the transaction that cannot be altered even if the transaction-provider network is breached, while the trusted third parties remain completely ‘blind_ (i.e., have zero knowledge) to the transaction data itself. Such a transaction-process functionality is referred to herein as serving as a ‘cyber-notary._
Such cyber-notary capabilities are achieved by using an array of external networks (i.e., external to the transaction-provider network) in order to collectively accomplish the above aspects of a transaction authority.
Consider the scenario in which a user (i.e., a transaction consumer) wants to make a financial transaction (e.g., purchase capital-market stocks) at a bank (i.e., a transaction provider) using the banks network (i.e., a transaction-provider network). The user performs the transaction over the banks online system. The user decides which stocks to purchase, the amount of stock, an agreeable purchase price, and any other ‘transaction parameters_ required to perform the transaction. The user approves the order, and the bank executes the transaction. Such a simple transaction scenario is exposed to potential fraud as mentioned above.
The user can deny aspects of the transaction at a later time (for true or false reasons), such as denying he or she requested the transaction, or denying some of the transaction details (e.g., ‘the purchase was for 1,000 shares, not 100 shares_). In such a case, the bank needs to prove the authenticity of the user and of the transaction details. This can be problematic for several reasons.
As mentioned above, another potential scenario involves a specific transaction not even originating from a valid user, but from an insider (e.g., a bank employee) who forges transactions on behalf of real users, or a hacker who alters system logs and databases to create the appearance of genuine transactions.
Embodiments of the present invention provide various security features and benefits beyond state-of-the-art security techniques. Such features and benefits include the following aspects.
Therefore, according to the present invention, there is provided for the first time a method for protecting digital transactions using a zero-knowledge cyber-notary, the method including the steps of: (a) upon receiving a transaction request for securely performing a transaction wherein the transaction request includes transaction details, cryptographically splitting the transaction details into at least two data portions; (b) independently sending at least two exclusive unique portions of at least two data portions exclusively to each of an array of at least two independent partner networks; wherein a given exclusive unique portion, of at least two exclusive unique portions, of a given independent partner network, is neither: (i) sent, neither whole nor in part, to another independent partner network other than the given independent partner network; nor (ii) accessible, neither whole nor in part, to another independent partner network other than the given independent partner network; (c) upon each independent partner network of the array independently identifying and authenticating a transaction consumer device associated with the transaction request, enabling the transaction consumer device to independently receive at least two data portions from each independent partner network of the array; (d) enabling reassembly of at least two data portions on the transaction consumer device to produce the transaction details; (e) enabling an approval/disapproval response of the transaction request to be entered on the transaction consumer device; (f) enabling independent transmittal of the approval/disapproval response from the transaction consumer device to each independent partner network of the array; (g) authorizing the transaction request based on receiving approval responses from an approval subset of at least two said approval/disapproval responses said at least two independent partner networks of said array; and (h) declining the transaction request based on receiving disapproval responses from a disapproval subset of at least two approval/disapproval responses from at least two independent partner networks of the array.
Alternatively, the step of cryptographically splitting includes splitting the transaction details into at least two data portions which employs Optimal Asymmetric Encryption Padding (OAEP) by adding random padding to a byte array of the transaction details.
Most alternatively, the step of cryptographically splitting further includes performing a XOR operation between a random data array and a transaction array of the byte array with the random padding.
Alternatively, each independent partner network neither receives nor has access to, neither whole nor in part, to the transaction details.
Alternatively, the reassembly of at least two data portions into the transaction details requires all the data portions from each independent partner network of the array.
Alternatively, any data portion cannot be modified by any independent partner network of the array without being detected.
Alternatively, the step of independently sending includes independently sending a given, unique hash signature, of another independent partner network other than the given independent partner network, to the given independent partner network.
Alternatively, the step of authorizing and the step of declining are based on obtaining a final transaction authorization/denial, and wherein the final transaction authorization/denial includes multiple approval/disapproval responses, associated with more than one transaction request, from at least a critical subset of authorizing transaction consumers who received or initiated identical transaction requests for a given transaction.
Alternatively, the method further including the step of: (i) enabling subsequent reassembly of at least two data portions for a historical transaction record to produce the transaction details of the historical transaction record.
According to the present invention, there is provided for the first time a system for protecting digital transactions using a zero-knowledge cyber-notary, the system including: (a) a CPU for performing computational operations; (b) a memory module for storing data; (c) a network connection for communicating across a data-exchange protocol system; and (d) a cyber-notary module configured for: (i) upon receiving a transaction request for securely performing a transaction wherein the transaction request includes transaction details, cryptographically splitting the transaction details into at least two data portions; (ii) independently sending at least two exclusive unique portions of at least two data portions exclusively to each of an array of at least two independent partner networks; wherein a given exclusive unique portion, of at least two exclusive unique portions, of a given independent partner network, is neither: (A) sent, neither whole nor in part, to another independent partner network other than the given independent partner network; nor (B) accessible, neither whole nor in part, to another independent partner network other than the given independent partner network; (iii) upon each independent partner network of the array independently identifying and authenticating a transaction consumer device associated with the transaction request, enabling the transaction consumer device to independently receive at least two data portions from each independent partner network of the array; (iv) enabling reassembly of at least two data portions on the transaction consumer device to produce the transaction details; (v) enabling an approval/disapproval response of the transaction request to be entered on the transaction consumer device; (vi) enabling independent transmittal of the approval/disapproval response from the transaction consumer device to each independent partner network of the array; (vii) authorizing the transaction request based on receiving approval responses from an approval subset of at least two approval/disapproval responses from at least two independent partner networks of the array; and (viii) declining the transaction request based on receiving disapproval responses from a disapproval subset of at least two approval/disapproval responses from at least two independent partner networks of the array.
Alternatively, the cryptographically splitting includes splitting the transaction details into at least two data portions which employs Optimal Asymmetric Encryption Padding (OAEP) by adding random padding to a byte array of the transaction details.
Most alternatively, the cryptographically splitting further includes performing a XOR operation between a random data array and a transaction array of the byte array with the random padding.
Alternatively, each independent partner network neither receives nor has access to, neither whole nor in part, to the transaction details.
Alternatively, the reassembly of at least two data portions into the transaction details requires all the data portions from each independent partner network of the array.
Alternatively, any data portion cannot be modified by any independent partner network of the array without being detected.
Alternatively, the independently sending includes independently sending a given, unique hash signature, of another independent partner network other than the given independent partner network, to the given independent partner network.
Alternatively, the authorizing and the declining are based on obtaining a final transaction authorization/denial, and wherein the final transaction authorization/denial includes multiple approval/disapproval responses, associated with more than one transaction request, from at least a critical subset of authorizing transaction consumers who received or initiated identical transaction requests for a given transaction.
Alternatively, the cyber-notary module is further configured for: (ix) enabling subsequent reassembly of at least two data portions for a historical transaction record to produce the transaction details of the historical transaction record.
According to the present invention, there is provided for the first time a non-transitory computer-readable storage medium, having computer-readable code embodied on the non-transitory computer-readable storage medium, for protecting digital transactions using a zero-knowledge cyber-notary, the computer-readable code including: (a) program code for, upon receiving a transaction request for securely performing a transaction wherein the transaction request includes transaction details, cryptographically splitting the transaction details into at least two data portions; (b) program code for independently sending at least two exclusive unique portions of at least two data portions exclusively to each of an array of at least two independent partner networks; wherein a given exclusive unique portion, of at least two exclusive unique portions, of a given independent partner network, is neither: (i) sent, neither whole nor in part, to another independent partner network other than the given independent partner network; nor (ii) accessible, neither whole nor in part, to another independent partner network other than the given independent partner network; (c) program code for, upon each independent partner network of the array independently identifying and authenticating a transaction consumer device associated with the transaction request, enabling the transaction consumer device to independently receive at least two data portions from each independent partner network of the array; (d) program code for enabling reassembly of at least two data portions on the transaction consumer device to produce the transaction details; (e) program code for enabling an approval/disapproval response of the transaction request to be entered on the transaction consumer device; (f) program code for enabling independent transmittal of the approval/disapproval response from the transaction consumer device to each independent partner network of the array; (g) program code for authorizing the transaction request based on receiving approval responses from an approval subset of at least two approval/disapproval responses from at least two independent partner networks of the array; and (h) program code for declining the transaction request based on receiving disapproval responses from a disapproval subset of at least two approval/disapproval responses from at least two independent partner networks of the array.
Alternatively, the cryptographically splitting includes splitting the transaction details into at least two data portions which employs Optimal Asymmetric Encryption Padding (OAEP) by adding random padding to a byte array of the transaction details.
Most alternatively, the cryptographically splitting further includes performing a XOR operation between a random data array and a transaction array of the byte array with the random padding.
Alternatively, each independent partner network neither receives nor has access to, neither whole nor in part, to the transaction details.
Alternatively, the reassembly of at least two data portions into the transaction details requires all the data portions from each independent partner network of the array.
Alternatively, any data portion cannot be modified by any independent partner network of the array without being detected.
Alternatively, the independently sending includes independently sending a given, unique hash signature, of another independent partner network other than the given independent partner network, to the given independent partner network.
Alternatively, the authorizing and the declining are based on obtaining a final transaction authorization/denial, and wherein the final transaction authorization/denial includes multiple the approval/disapproval responses, associated with more than one transaction request, from at least a critical subset of authorizing transaction consumers who received or initiated identical transaction requests for a given transaction.
Alternatively, the computer-readable code further includes: (i) program code for enabling subsequent reassembly of at least two data portions for a historical transaction record to produce the transaction details of the historical transaction record.
These and further embodiments will be apparent from the detailed description and examples that follow.
The present invention is herein described, by way of example only, with reference to the accompanying drawings, wherein:
The present invention relates to methods and systems for a zero-knowledge cyber-notary for protecting digital transactions. The principles and operation for providing such methods and systems, according to the present invention, may be better understood with reference to the accompanying description and the drawings.
Referring to the drawings,
A transaction provider 2 serves to initiate and engage the partner networks, which in turn manages the cyber-notary process. Transaction provider 2 is operationally connected independently to each of independent, partner networks 4 and 6 and to a consumer transaction device 8 (e.g., a network-enabled smartphone, PC, laptop, tablet, or dedicated transaction device running a cyber-notary program). Consumer transaction device 8 can also be an automated and integrated third-party system processing transactions in a B2B context.
The functionality of independent, partner networks 4 and 6 can be considered collectively as a cyber notary. In the exemplary embodiment of
Transaction-Path Segments B1 and B2 involve transaction provider 2 independently sending portions of the transaction details to partner networks 4 and 6, respectively. In turn, Transaction-Path Segments C1 and C2 involve respective partner networks 4 and 6 independently sending their transaction-detail portions to consumer transaction device 8 via a cyber-notary app (i.e., the cyber-notary program) after consumer transaction device 8 had independently identified and authenticated itself to each of the partner networks (not shown). The cyber-notary app, residing on consumer transaction device 8, is administered and managed by transaction provider 2. Transaction-Path Segments B1, B2, C1, and C2 are collectively designated as ‘Cyber-Notary Verification Transmittals (Consumer Direction)_ in
Upon consumer confirmation, the ‘second half_ of the process involves the transaction approval response (detailed below with regard to
The process starts when transaction provider 2 and the transaction consumer (via consumer transaction device 8) decide on the transaction details in the transaction-providers system (Step 20). It is noted that the consumer may communicate the transaction details by other means (e.g., verbal communication); however, ultimately the transaction details are authorized once they are entered into the cyber-notary program of transaction provider 2, and approved by the transaction consumer via the cyber-notary system.
Transaction provider 2 then independently sends portions of the transaction details to independent, partner networks 4 and 6 in a ‘cryptosplit_ format (Step 22). The transaction data is split by transaction provider 2 into parts with the number of parts corresponding to the number of independent partner networks.
The splitting process must meet the following conditions.
As an exemplary solution and implementation for the splitting process, assume there are N partner networks. If the transaction data is considered as an array of bytes, random padding can be added to the byte array. An exemplary cryptographic implementation could employ Optimal Asymmetric Encryption Padding (OAEP).
A random array of bytes could be generated having the same size as the transaction data. A xor operation could then be performed between the random array and the transaction array. By performing a xor operation, every bit of the data yields a complementary bit.
It is noted that such an example relates to N partner networks that would all have to be breached/legally accessed in order to gain access to the data. However, in some implementations, for the sake of high availability and performance, it is possible to use a larger number of partner networks (e.g., M partner networks, wherein M>N) in which the data parts are stored, and from which any subset of N partner networks could be selected for retrieving and reconstructing the original data. Such installation may use Shamir's secret-sharing scheme or similar schemes rather than xor operation as the basis for the cryptographic splitting.
To continue with the example, Step 22 of
A transaction portion, with another portion's unique hash signature, can then be independently sent to each partner network. It is important to note that integrity of the protocol is maintained by ensuring that a partner network doesn't receive its own portion signature, but rather the portion signature of another partner network. As an illustrative elaboration on this, a partner network i would receive Pi and Hi+1. The last partner network (i.e., N) would receive Pn and H1. After this part of the overall cyber-notary process is complete, each partner network has a transaction portion (Pi) and a different portion signature (Hi+1).
There are instances in which the transaction data needs to be reassembled. For example, the transaction consumer needs to view the transaction data during the approval process, or later the transaction provider/consumer may want to verify old transactions. In such cases, the transaction data can be reassembled as follows. Continuing with the exemplary implementation, the transaction portions (P1, P2, {hacek over (u)}, Pn) and their corresponding signatures (H1, H2, {hacek over (u)}, Hn) are gathered from the partner networks. Each transaction portion (Pi) is validated to match its portion signature (Hi). The transaction is then reassembled by performing a xor operation on all the portions to compute the original transaction array with the padding. The padding can then be removed, producing the original transaction's byte-array representation.
Every partner network has no knowledge about the transaction data itself, since Pi and Hi+1 are meaningless without all the other portions and signatures. Note that Hi+1 is the resultant of performing hash function, exposing the portion signatures to be potentially inverted using a brute-force attack. For such considerations, the padding implemented is significant. As the length (in bytes) of the padding is increases, so does the length of the byte array to be split as well as the length of each portion Pi. With increasing portion length, it becomes increasingly harder to successfully hack the portions. Nowadays, such brute-force attacks of the resultants of common cryptographic hash functions, computed on long-enough values, are considered infeasible.
The portion signatures are important to achieve the third criterion defined above regarding the splitting process. Every partner network cannot become a fraudulent party by modifying its own stored, transaction-data portion (Pi) because its portion signature is saved in a different partner network. Such an act would cause an incompatibility when trying to reassemble the transaction, meaning that a malicious party cannot alter a transaction without breaching all partner networks.
Returning to
Each of partner networks 4 and 6 then independently sends its own transaction-detail portion to consumer transaction device 8 via the cyber-notary app (Step 26). The cyber-notary app enables the consumer to authenticate consumer transaction device 8 to partner networks 4 and 6, to view the transaction details, and to approve/decline the transaction.
The transaction details are then decrypted and reassembled (as detailed above) in the cyber-notary app and displayed to transaction consumer (Step 28). The transaction consumer then approves or declines the transaction in the cyber-notary app (Step 30). The cyber-notary app then sends a response (i.e., approved or declined) to each of partner networks 4 and 6 (Step 32). At this point in the process, each of partner networks 4 and 6 has a consumer approval/disapproval response of the transaction.
Each of partner networks 4 and 6 then separately notifies transaction provider 2 of the approval status (Step 34). Finally, each of partner networks 4 and 6 maintains a copy of its transaction-data portion with the transaction-consumer response (Step 36). Each of transaction provider 2 and the transaction consumer has unique links to the transaction-data portions saved on partner networks 4 and 6, which connects to the transaction that was saved on the systems of transaction provider 2.
It is noted that when validating a transaction, each party (i.e., transaction provider 2 and consumer transaction device 8) can validate the transaction with the third party (i.e., the cyber-notary) in order to ensure the transaction matches its expectations. For example, a bank (i.e., transaction provider 2 of
It is further noted that implementations may involve several transaction consumers going through the cyber-notary process described above in order to obtain a final transaction approval. For example, an organization may have several managers (e.g., CEO, CFO, and Chairman of the Board) be required (or at least a critical subset of such authorizing agents/consumers) to provide a transaction approval for the transaction provider to ultimately authorize a transaction.
While the present invention has been described with respect to a limited number of embodiments, it will be appreciated that many variations, modifications, and other applications of the present invention may be made.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/IL2017/050090 | 1/24/2017 | WO | 00 |