One time pad encryption hub
A centralized OTP encryption scheme using hubs to manage and distribute OTPs addresses key management challenges, enhancing security and efficiency in multi-user networks by minimizing exposure and optimizing key handling.
Patent Information
- Application Number
- JP2025002681
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2019-01-08
- Filing Date
- 2025-01-08
- Publication Date
- 2025-04-10
AI Technical Summary
One-time pad (OTP) cryptography faces challenges in secure generation, exchange, and disposal of encryption keys, which are difficult to manage as the number of communicating parties increases, leading to inefficiencies and security risks.
A centralized OTP encryption scheme using hubs to manage and distribute OTPs among multiple network users, ensuring secure handling and distribution by encrypting and decrypting messages with customized pads, minimizing the need for individual key management at each endpoint.
This approach provides a practical, secure, and efficient OTP-based encryption system for multi-user environments, optimizing key handling and minimizing exposure to security threats while ensuring message integrity and user authentication.
Smart Images

Figure 2025061093000001_ABST
Abstract
Description
[Technical field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit of priority to U.S. Provisional Patent Application No. 62 / 789,636, filed January 8, 2019, the contents of which are incorporated herein by reference in their entirety. [Background technology]
[0002] The present invention relates to the field of data encryption.
[0003] In cryptography, a one-time pad (OTP) is an unbreakable encryption technique that requires the use of a one-time pre-shared key at least as large as the message being sent. In this technique, the plaintext is paired with a random secret key (also called a one-time pad). Each bit or character of the plaintext is then encrypted by combining it with the corresponding bit or character from the pad using one of several functions.
[0004] If the key is truly random, never reused in whole or in part, and kept secret, then it is obviously mathematically impossible to decrypt the ciphertext without copying the pad. OTP encryption represents a perfect, unbreakable encryption method, as it adds no information to the encrypted text, only random noise.
[0005] However, one-time pad cryptography faces several implementation difficulties. First, it is difficult to achieve secure generation, exchange, and disposal of the OTP material, which must be at least as long as the message. Furthermore, the possibility of interception, copying, or forensic recovery of the pad by a third party completely jeopardizes the security of the method.
[0006] The foregoing examples of the related art and limitations associated therewith are intended to be illustrative and not exhaustive. Other limitations of the related art will become apparent to those of ordinary skill in the art upon reading this specification and studying the drawings. Summary of the Invention
[0007] The following embodiments and aspects thereof are described and illustrated in conjunction with systems, tools, and methods that are meant to be exemplary and illustrative, not limiting in scope.
[0008] In one embodiment, a system is provided comprising at least one hardware processor and a non-transitory computer-readable storage medium having program instructions stored thereon, the program instructions being executable by the at least one hardware processor to receive, by a routing hub in a computer network, a communication from an origin node directed to a destination node, the communication being encrypted with a one-time pad (OTP) associated with the origin node; applying, by the routing hub, to the communication a customized OTP configured to simultaneously (i) encrypt the communication with the OTP associated with the destination node and (ii) decrypt the communication with the OTP associated with the origin node; and delivering the communication to the destination node for decrypting the communication with the OTP associated with the destination node.
[0009] In one embodiment, a method is also provided that includes receiving, by a routing hub in a computer network, a communication from an origin node directed to a destination node, the communication being encrypted with a one-time pad (OTP) associated with the origin node; applying, by the routing hub, to the communication a customized OTP configured to simultaneously (i) encrypt the communication with the OTP associated with the destination node and (ii) decrypt the communication with the OTP associated with the origin node; and delivering the communication to the destination node for decrypting the communication with the OTP associated with the destination node.
[0010] In one embodiment, there is further provided a computer program product including a non-transitory computer-readable storage medium having program instructions embodied therein, the program instructions being executable by at least one hardware processor to: receive, by a routing hub in a computer network, a communication from an origin node directed to a destination node, the communication being encrypted with a one-time pad (OTP) associated with the origin node; apply, by the routing hub, to the communication a customized OTP configured to simultaneously (i) encrypt the communication with the OTP associated with the destination node and (ii) decrypt the communication with the OTP associated with the origin node; and deliver the communication to the destination node for decrypting the communication with the OTP associated with the destination node.
[0011] In some embodiments, the routing hub includes a series of at least two routing hubs, and for each pair of routing hubs in the series, the applying includes applying, by a first routing hub of the pair, a first inter-hub customized OTP to the communication configured to simultaneously (i) decrypt the communication with an OTP associated with a preceding hop of a route of the communication and (ii) encrypt the communication with an OTP associated with a second routing hub of the pair, and delivering the communication to the second routing hub; applying, by the second routing hub of the pair, a second inter-hub customized OTP to the communication configured to simultaneously (iii) encrypt the communication with an OTP associated with a subsequent hop of the route of the communication, and (iv) decrypt the communication with the OTP associated with the second routing hub of the pair, and delivering the communication to the subsequent hop.
[0012] In some embodiments, each of the hops of said route of said communication is one of a network node, an end user, a server, a remote server, and an end user.
[0013] In some embodiments, each customized OTP represents a computerized difference between a pair of OTPs.
[0014] In some embodiments, the computer network includes a plurality of nodes, each of which stores only the OTP associated with that node.
[0015] In some embodiments, the program instructions are further executable to perform network user authentication based at least in part on universal hashing.
[0016] In some embodiments, at least a portion of the OTP is discarded by overwriting at least a portion of it with erroneous data.
[0017] In some embodiments, at least some of the routing hubs further include at least one of a random number generator (RNG) and an automated teller machine configured to dispense OTPs to said computer network users.
[0018] In some embodiments, the OTP is delivered to the automated teller machine using at least one of quantum key distribution (QKD) communication and physically secure delivery means.
[0019] In some embodiments, the routing is based at least in part on a routing table, the routing table taking into account an OTP usage metric, the OTP usage metric being a key performance indicator (KPI) for the computer network.
[0020] In one embodiment, a system is further provided comprising at least one hardware processor and a non-transitory computer-readable storage medium having program instructions stored thereon, the program instructions being executable by the at least one hardware processor to: receive, by an OTP hub in a computer network, an indication associated with a communication from a first network node to one or more other network nodes; transmit, by the OTP hub, an OTP to the first network node and each of the other network nodes; encrypt, by the first node, the communication with the OTP; and transmit, by the first node, the communication to at least one of the one or more other network nodes.
[0021] In one embodiment, a method is further provided that includes receiving, by an OTP hub in a computer network, an indication associated with a communication from a first network node to one or more other network nodes, transmitting, by the OTP hub, an OTP to the first network node and each of the other network nodes, encrypting, by the first node, the communication with the OTP, and transmitting, by the first node, the communication to at least one of the one or more other network nodes.
[0022] In one embodiment, a system is further provided, the system including a non-transitory computer-readable storage medium having program instructions embodied therein that are executable by at least one hardware processor to: receive, by an OTP hub in a computer network, an indication associated with a communication from a first network node to one or more other network nodes; transmit, by the OTP hub, an OTP to the first network node and each of the other network nodes; encrypt, by the first node, the communication with the OTP; and transmit, by the first node, the communication to at least one of the one or more other network nodes.
[0023] In some embodiments, at least one of the one or more network nodes further decrypts the communication with the OTP.
[0024] In some embodiments, the indication is received from any of the network nodes.
[0025] In some embodiments, each of the network nodes stores an authentication OTP, said authentication OTP configured for use in connection with two-stage user authentication of said network node.
[0026] In some embodiments, the OTP is disposed of by overwriting at least a portion of it with erroneous data.
[0027] In some embodiments, the OTP hub further includes at least one of a random number generator (RNG) and an automated teller machine configured to distribute OTPs to the network nodes.
[0028] In some embodiments, the OTP is delivered to the automated teller machine using at least one of quantum key distribution (QKD) communication and physically secure delivery means.
[0029] In addition to the exemplary aspects and embodiments described above, further aspects and embodiments will become apparent by reference to the figures and by study of the following detailed description. [Brief description of the drawings]
[0030] Exemplary embodiments are illustrated in the reference figures. Dimensions of components and features shown in the figures have generally been chosen for convenience and clarity of presentation and have not necessarily been drawn to scale. The figures are as follows:
[0031] [Figure 1A] 1 illustrates an exemplary centralized OTP encryption scheme, according to one embodiment. [Figure 1B] 1 illustrates an exemplary centralized OTP encryption scheme in which an OTP hub is implemented in two or more physical devices, according to one embodiment. [Figure 1C] 1 illustrates an exemplary centralized OTP encryption scheme comprising two or more separate OTP hubs, according to one embodiment. [Figure 2A] 1 illustrates an encryption scheme with a two-tier OTP hub arrangement, according to one embodiment. [Figure 2B] 1 illustrates an encryption scheme with a two-tier OTP hub arrangement, according to one embodiment. [Diagram 3] 1 illustrates a peer-to-peer encrypted network, according to one embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0032] Disclosed herein are systems, methods, and computer program products for securely routing messages between two or more users using One-Time Pad (OTP) cryptography.
[0033] As mentioned above, OTP cryptography typically faces significant practical difficulties. First, to provide absolute cryptographic stability, an OTP must have a truly random encryption key, be equal in size to the message it encrypts, not be reused, and be properly disposed of immediately after use. Current random number generators are capable of generating random key material of sufficient quality for use in OTP cryptography. Furthermore, as a practical matter, modern computer systems are capable of storing and handling the necessary amount of random key data.
[0034] However, the security of an OTP-based cryptography system still relies on secure pad handling and distribution, as interception and copying of the pad by a third party compromises the security of the method. This problem is exacerbated as the number of communicating parties in the network increases, because each sender / receiver pair must maintain a unique pad that is shared only between those two parties. As the number of network users increases, the number of unique pads required grows as a power of two, so at some point, it becomes unmanageable how many pads each network component needs to maintain.
[0035] Thus, in some embodiments, the present invention provides a centralized OTP encryption scheme in which one or more OTP hubs are responsible for routing encrypted messages among multiple network users. In some embodiments, the OTP encryption scheme of the present invention involves encrypting each bit or character of the plaintext by combining it with a corresponding bit or character from the pad using modular addition, any table exchange group that is an injective or one-to-one transformation function, and / or any other homomorphic or homomorphic encryption function.
[0036] In some exemplary embodiments, the OTP encryption scheme described herein can be utilized to enable OTP encrypted communications between multiple sender / receiver end users to enable OTP encrypted video / audio conferencing, email exchange, file exchange, multi-party digital telephone voice communications, gaming, and the like. In other exemplary embodiments, the OTP encryption scheme described herein can be used to exchange messages utilizing push and pull network communication techniques, including but not limited to unicast, multicast, and broadcast messages such as SMS, instant messages, and the like. In still other exemplary embodiments, such communications can be enabled over wired and wireless networks, and through any number and type of gateways and proxies. In some embodiments, there can be any number of OTP hubs geographically distributed in various locations and regions. In some embodiments, one or more of the OTP hubs can be cloud-based OTP hubs. In some embodiments, any type of communication channel may be encrypted using the disclosed invention, e.g., end-to-end communication tunnels, publish / subscribe protocol based communications, TCP / UDP based communications, and non-TCP communications. The disclosed encryption scheme can also be used in addition to any other data protection techniques, such as TLS / SSL.
[0037] In some embodiments, the OTP hub of the present invention may be implemented in hardware only, software only, or a combination of both hardware and software. For example, the OTP hub may be a personal computer, a tablet, a smartphone, an embedded device, a handheld device coupled with a wireless module, a hidden device, a device with electronic circuitry, etc. In some embodiments, the OTP hub may include one or more hardware processors and a non-transitory computer-readable storage device. In various embodiments, the OTP hub may include one or more dedicated hardware devices, one or more software modules, and / or may form an addition or extension to an existing device. In some embodiments, a centralized OTP hub includes two or more separate hardware devices, and no single hardware device holds all the pads necessary to decrypt a message.
[0038] In some embodiments, one or more dedicated hardware devices may be located at different locations. The storage medium of the OTP hub may have software instructions or components encoded thereon configured to operate one or more hardware processors. In some embodiments, the software components may include various software components and / or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and an operating system that facilitates communication between the various hardware and software components. In some embodiments, the program instructions are segmented into one or more software modules that may include, for example, an encryption / decryption module, a communication module, and a user interface module.
[0039] In some embodiments, by centralizing the distribution and retention of pads at OTP hubs, the present invention also avoids the need to distribute multiple pads to end users, thereby potentially exposing the pads to hostile misuse and compromising the security of the overall system. Thus, pads for the entire system need only be distributed to a limited number of OTP hubs, which can be handled by secure electronic and / or physical distribution.
[0040] In some embodiments, the present invention provides a two-tiered arrangement for handling OTPs, where one or more routing OTP hubs are solely responsible for encryption / decryption and routing of messages between network users, while one or more other network nodes, such as local or external OTP hubs and / or cloud-based servers, are responsible for storing and / or generating appropriate pads for use by the one or more routing OTP hubs.
[0041] In some embodiments, pad generation may occur on-demand based on requests from one or more users and / or routing of an OTP hub in the network. In some embodiments, such a two-tier arrangement may be configured for secure routing of messages between one or more clusters of users in a remote network.
[0042] In some embodiments, the present invention provides a peer-to-peer OTP encryption scheme between multiple network users.
[0043] In some embodiments, the network of the present invention provides multiple possible encrypted messaging routes between each sender / receiver pair to ensure redundancy in the event of a hub failure or malfunction.
[0044] In some embodiments, the present invention further provides for optimizing OTP-based message routing between multiple users and / or networks based on minimizing an OTP usage metric and / or additional routing parameters. In some embodiments, the OTP usage metric can also be used as a key performance indicator (KPI) for operational issues.
[0045] In some embodiments, the present invention further provides one or more of random number generation, message authentication, secure OTP key distribution to end users, and / or secure OTP key disposal.
[0046] Thus, a potential advantage of the present invention is that it provides a practical, real-world, OTP-based encryption scheme that is optimized for local and / or remote multi-user environments while ensuring secure pad handling and distribution.
[0047] 1A illustrates an exemplary centralized OTP encryption scheme according to one embodiment. OTP Hub A maintains a corresponding pad associated with each network user, e.g., Sender 1 and Receiver 2. OTP Hub A receives a message from Sender 1 encrypted with the sender pad. OTP Hub A then encrypts the message with the receiver pad, removes the sender pad, and transmits the message to the receiver, in each case using the corresponding pad maintained by Hub A. Thus, Sender 1 and Receiver 2 can communicate through Hub A without each having to maintain both their respective pads.
[0048] In some embodiments, OTP Hub A may be configured to first encrypt the message with the recipient pad and only then remove the sender pad to ensure that the message is not held in an unencrypted state by any network component.
[0049] As noted above, in some embodiments, an OTP hub of the present invention, such as OTP hub A, may be implemented on a server. In some embodiments, such a server may include one or more physical devices and / or a distribution system having two or more hardware processors and associated storage media. In some embodiments, one or more OTP hubs may be implemented on a single hardware device and / or one or more OTP hubs may be implemented as two or more separate hardware devices, where no single hardware device holds all the pads necessary to decrypt a message.
[0050] FIG. 1B illustrates an exemplary centralized OTP encryption scheme in which OTP Hub A is implemented in two or more separate hardware devices, e.g., part A1 and part A2, with each part holding a different set of end-user pads. For example, part A1 may receive a message encrypted with a sender pad and encrypt the message with a recipient pad. The message is then transmitted to a second part A2, where the sender pad is removed and the message is transmitted to the recipient with only the recipient pad. This configuration provides increased security because no single physical device holds all the pads necessary to decrypt the message. Additionally, as noted above, the message itself always remains encrypted with at least one pad as it is transferred through the separate hardware devices.
[0051] FIG. 1C illustrates an exemplary centralized OTP encryption scheme that includes two or more separate OTP hubs. In this configuration, a message may be routed through multiple hubs, e.g., hubs A and B. Each inter-hub hop involves encrypting the message with an inter-hub pad, and only then deleting the previous pad. For example, a hop from hub A to hub B involves encrypting the message with an inter-hub pad specific to the AB pair, and only then deleting the sender pad. When the message reaches the last hub in the chain (hub B in this case), the message is encrypted with the recipient pad, and only then the most recent inter-hub pad is deleted.
[0052] In all configurations of the present invention, when a message transmission is re-encrypted with a different pad, the OTP Hub or any equivalent server, network component, and / or network node is configured to first encrypt the transmission with a subsequent pad before removing the existing pad, so that the transmission always remains subject to at least one layer of encryption.
[0053] In some embodiments, the present invention provides a customized "delta" pad which, when applied to a transmission, has the effect of encrypting the transmission with the subsequent pad and deleting the existing pad.
[0054] In some embodiments, the encryption / deletion is simultaneous. In some embodiments, the encryption / deletion is sequential, with the "delta" pad first encrypting the transmission with a subsequent pad and then deleting the existing pad. In some embodiments, the sequential encryption and deletion is performed instantaneously. In some embodiments, the application of the "delta" pad ensures that the transmission always remains subject to encryption. In some embodiments, customized "delta" pads are generated on-demand by nodes of the network in response to requests and / or indications related to transmissions between users of the network.
[0055] 2A, in some embodiments, the centralized OTP encryption scheme of the present invention may be configured as a two-tier arrangement in which one or more routing OTP hubs are responsible for encrypting / decrypting and routing messages between network users, and another network node, such as a local or external OTP hub and / or a cloud-based server, is responsible for storing and / or generating appropriate pads for use by the one or more routing OTP hubs. In some embodiments, pad generation may be performed on-demand for a particular sender / one or more recipient combination based on requests from one or more users and / or routing OTP hubs of the network. In some embodiments, such a two-tier arrangement may be configured for secure routing of messages between one or more clusters of users in a remote network.
[0056] In some embodiments, the two-tier arrangement may provide several advantages, including improved pad security. This may be achieved by ensuring separation between the network routing hubs and the pad handling hubs. This means that the pads cannot be exploited, for example, by intrusion into the network routing hubs, which handle network communications and are therefore more susceptible to intrusion attempts. Conversely, the OTP hubs are less susceptible to intrusion attempts, since they do not represent normal network access points. Furthermore, in most cases, the pads created by the OTP hubs are customized "delta" pads configured for combined message encryption / decryption and therefore cannot be used solely for decryption.
[0057] Thus, when sending a message from User 1 to User 2, with continued reference to FIG. 2A, the following steps may be taken. (i) User 1 sending a message encrypted on User 1's pad to routing OTP Hub A, the message being destined for User 2. (ii) Network node B is notified of the intended message from user 1 to user 2, for example via routing OTP hub A and / or any other network user, node or component. (iii) the network node B receives the OTP for the intended transmission; NEW generating and sending a customized "delta" denoted by "DELTA" to routing OTP Hub A, the customized "delta" having the effect of the simultaneous or sequential application of User 2's pad and the removal of User 1's pad when applied to a transmission (e.g., the "delta" pad is a pad that ... NEW =OTP USER2 -OTP USER1 (which may be described as (iv) Routing OTP Hub A routes the OTP so that the transmission is encrypted only at User 2's pad. NEW and applying it to the transmission before sending the transmission to User 2, who can decode the transmission using his or her own pad.
[0058] In some embodiments, the "delta" pad of the present invention may work as follows: Given massage A{0x2A}, OTP1{0x39}, and OTP2{0xB6}, and the encryption operation is done by bitwise XOR, encryption and decryption are the same operations as bitwise XOR. Thus, message A encrypted with OTP1 can be expressed as:
number
[0059] Similarly, message A encrypted with OTP2 can be expressed as:
number
[0060] As explained below, this result is mathematically equivalent to encrypting message A1 with OTP2 and then further decrypting (encrypting) this encrypted message with OTP1.
number
[0061] It further converts message A1 into a customized "delta" pad OTP that represents the difference between OTP1 and OTP2. NEW is mathematically equivalent to simply encrypting it with
number
[0062] Therefore, we convert message A1 into an OTP NEW If we encrypt A with OTP2, the result is, as expected, equivalent to simply encrypting message A with OTP2 in the first place.
number
[0063] In some embodiments, this method can be applied not only by using a bitwise XOR operation, but also by an operation such as the Vernam cipher, for example. If the symbols are bytes and the operation is a cyclic shift of the symbols as a set of ascending symbols, then encryption is a cyclic shift in one direction and decryption is a shift in the other direction. This means that encryption means adding 256 and then doing a modulo operation 256, and decryption means adding 256 and subtracting the value of the symbols and then doing a modulo operation 256. Thus, for A{0x2A}, OTP1{0x39}, and OTP2{0xB6}, we have: A1=mod(A+OTP1,256)=mod({0x2A}+{0x39},256)={0x63} A2=mod(A+OTP2,256)=mod({0x2A}+{0xB6},256)={0xD0}
[0064] As explained below, this result is mathematically equivalent to encrypting message A1 with OTP2 and then further decrypting this encrypted message with OTP1. A2=mod(mod(A1+OTP2,256)+256-OTP1,256)= =mod(mod({0x63}+{0xB6},256)+256-{0x39},256)={0xD0}.
[0065] It further converts message A1 into a customized "delta" pad OTP that represents the difference between OTP1 and OTP2. NEW is mathematically equivalent to simply encrypting it with OTP NEW =OTP2-OTP1=mod(OTP2+256-OTP1, 256)=mod({0xB6}+256-{0x39}, 256)={0x7D}.
[0066] Therefore, we convert message A1 into an OTP NEW If we encrypt message A with OTP2, the result is, as expected, equivalent to simply encrypting message A with OTP2 in the first place. mod(A1+OTP NEW , 256) = mod({0x63} + {0x7D}, 256) = {0xD0}.
[0067] In an exemplary embodiment, for added security, network node B of FIG. 2A may further encrypt the inter-hub pad with OTP so that transmissions between network node B and routing OTP hub A are further encrypted with another layer of encryption specific to the AB pair. NEW It may further be applicable to
[0068] Figure 2B illustrates a centralized OTP encryption scheme of the present invention configured to securely transmit messages across a cluster of users in a remote network using a two-tier arrangement similar to that shown in Figure 2A. Thus, when sending a message from User 3 to User 6, the following steps may occur: (i) A step in which a user 3 in a first cluster I sends a message encrypted with user 3's pad via a routing OTP hub A of cluster I, the message being destined for a user 6 in a second cluster II. (ii) A first network node B associated with cluster I is notified of the intended message from user 3 to user 6, for example via a routing OTP hub A of cluster I and / or any other network user, node or component. (iii) the network node B generates a unique pad OTP for the intended transmission; NEW3 and transmitting to routing OTP Hub A a pad, which when applied to the transmission has the effect of simultaneously or sequentially applying an inter-cluster pad for secure transmission to routing OTP Hub C of Cluster II and deleting User 3's pad (e.g., a unique pad may be applied to the OTP NEW3 =OTP C -OTP USER3 (which may be described as (iv) Routing OTP Hub A receives the OTP NEW3 , apply it to the transmission, and then send the transmission to routing OTP hub C in cluster II. (v) A second network node D associated with cluster II then receives a second unique pad OTP for the intended transmission. NEW6 and transmitting to the routing OTP hub C, the pads of users 6 being applied simultaneously or sequentially when the pads are applied to the transmission, and C The sending step (e.g., the OTP NEW6 =OTP USER6 -OTP C ). (vi) Routing OTP Hub C routes the OTP NEW6 and applying it to the transmission before sending the transmission to user 6.
[0069] In an exemplary embodiment, for added security, network nodes B and D each have their inter-hub pads encrypted with OTP hub encryption, such that transmissions between network node B and routing OTP hub A, as well as transmissions between network node D and routing OTP hub C, are further encrypted with another layer of encryption specific to the particular pair. NEW3 and OTP NEW6 It may further be applicable to
[0070] In some embodiments, the present invention may be configured to provide a peer-to-peer OTP encryption scheme between multiple network users, where secure messages may pass directly between pairs of end users without being routed through one or more OTP hubs. The term "direct" refers to either the direct transmission of data between the users' devices, without any intermediate devices, or more generally, the transmission from the users over the network, where the server through which the transmission passes is a standard network node, not an OTP hub. In some embodiments, an on-demand pad may be generated and / or stored, for example, by an OTP hub of the present invention, and provided to the associated end user to facilitate the secure transmission. That is, the provision of the OTP may be performed by a hub that does not participate in the actual transmission of the encrypted messages between the parties. In some embodiments, the OTP hub may be a local network component, may be part of a remote network, or may be a cloud-based OTP hub.
[0071] Thus, when sending a message from user 1 to one or more other network users, say users 2 and 3, the following steps may be taken. (i) An OTP hub A, which may for example be cloud-based, is notified of a message of interest from user 1 to user 2, for example via any network user, node or component. (ii) OTP Hub A receives the appropriate pad OTP X and sending it as an encrypted message to users 1, 2, and 3. (iii) User 1 then enters the OTP X , can transmit an encrypted message to users 2 and 3, who then X The received message may be decrypted using the
[0072] In some embodiments, the centralized OTP encryption scheme of the present invention may provide multiple OTP hubs, each OTP hub comprising a set of specific end user pads associated with at least some end users of the network. Such a multiple hub network may provide multiple routing paths between each pair of users, thus providing redundancy, for example, in case of a hub failure, and / or providing selection of the best route, for example, to optimize the use of hub pads. In some embodiments, one or more routing algorithms may be implemented to select the appropriate and / or optimized route. In some embodiments, the OTP usage metric may also be used as a KPI for operational issues.
[0073] In some embodiments, increasing the number of hubs in the network and / or the number of pads per hub increases the redundancy of routing options in the network.
[0074] In some embodiments, to avoid having different hubs holding the same pads, two or more hubs holding pads for the same user may be provided with different versions of that user's pads.
[0075] In some embodiments, two or more secure networks of the present invention may provide inter-network communication by providing a shared pad to each hub in each network. In some embodiments, each hub in a network may maintain a different shared pad to avoid duplication of shared pads across multiple hubs. The shared pad may be stored in a separate dedicated hub or multiple hubs (e.g., for redundancy purposes) for connectivity between networks, or may be stored by a regular hub.
[0076] Message Routing Optimization In some embodiments, as described above, the present invention provides a communications network layout with multiple optional message routes from a sender to a receiver through one or more hubs in the network and / or through one or more remote networks, which in some embodiments can provide redundancy in the event of a hub failure, for example.
[0077] In some embodiments, the present invention may be further configured to optimize message routing according to specified criteria, including but not limited to those based on OTP usage metrics. In some embodiments, additional and / or other optimization criteria may be used, including network bandwidth, network storage capacity, network delay, OTP hub hop count, actual usage cost of the route, load, MTU (maximum transmission unit), reliability, and / or communication cost. In some embodiments, the OTP usage metric may also be used as a KPI for operational issues.
[0078] Because OTPs are a consumable resource, every transmission between hubs (FIGS. 2A-2B) and / or network clusters (FIG. 3) involves the use and depletion of at least a portion of one or more OTPs. Thus, in some embodiments, optimized route selection is configured to minimize OTP usage along the route, for example, by minimizing the number of hops between hubs and / or network clusters. In some embodiments, the invention may be configured to calculate a route from sender to receiver that has a minimum total OTP usage metric. In some embodiments, the OTP usage metric may also be used as a KPI for operational issues.
[0079] By way of background, in the context of computer networks, message routing is the process of selecting a route for traffic within or across multiple networks. In packet-switched networks, routing typically involves forwarding packets based on routing tables that maintain a record of routes to various network destinations. A routing table, or Routing Information Base (RIB), is a data table stored in a network node, such as a router, a networked computer, or a server, that lists routes to specific network destinations and associated metrics such as distance, operational cost, or delay. A routing table contains information about the topology of networks in its immediate vicinity, built using routing protocols, for example, based on manual entries during network initialization. For example, a routing table may contain network / next-hop associations, which inform a router that a particular network destination can be optimally reached by sending a packet to a particular router that represents the "next hop" on the way to the final destination. In some cases, one or more remote networks may be added to a routing table, either during initialization or via a dynamic routing protocol.
[0080] However, in this case, routing optimization cannot be determined based on a static routing table since the routing optimization metric involves dynamic exhaustible resources. Thus, in some embodiments, the centralized encryption scheme of the present invention may be configured to generate a routing table, and each network node, such as an OTP hub and / or an end user, may be configured to collect information about all other network nodes to which it may connect. In some embodiments, each network node may then independently assemble this information into a routing table and / or network map. In some embodiments, based on these individual routing tables, each network node may independently determine the least-cost path from itself to all other nodes using one or more known shortest path algorithms, such as distance vector algorithms (e.g., Bellman-Ford algorithm, Dijkstra's algorithm, Viterbi algorithm), list short path algorithms, path vector protocols, etc. The result may be a tree graph rooted at the current node, and a path through the tree from the root to another node will be the least-cost path to that node. This tree is then responsible for building a routing table that specifies the best next hop to reach the other node from the current node.
[0081] In some embodiments, a communication network from the present invention may provide a centralized message routing control that may be used to manage routing in the network or any portion thereof. In such a case, OTP usage metrics determined by one or more network nodes may be communicated to a control function that may then determine the routing path. In some embodiments, OTP usage metrics may also be used as KPIs for operational issues.
[0082] In some embodiments, the optimized route may be determined based solely on the pad usage matrix and / or may represent a combination of multiple parameters including, but not limited to, bandwidth, network delay, hop count, actual usage cost of the route, load, MTU (maximum transmission unit), reliability, and / or communication cost. In some embodiments, the OTP usage metric may also be used as a KPI for operational issues.
[0083] Message Authentication In some embodiments, the present invention provides positive identification and authentication of end-users in a network.
[0084] As mentioned above, in OTP-based encryption schemes, user authentication becomes important because an end user's pad can be compromised and / or duplicated by a bad actor and then used to impersonate an actual user of the network.
[0085] The one-time pad itself does not provide message authentication, and this lack of authentication can pose a security threat in real-world applications. A simple XOR with the keystream creates a potential vulnerability in message integrity that is particularly easy to exploit. For example, an attacker who knows that at a particular time a message contains the string "See you, Jane and I, tomorrow at 3:30 pm", could replace that content with any other content of exactly the same length, such as "The 3:30 meeting has been canceled, please stay home", without access to the one-time pad.
[0086] Thus, in some embodiments, the present invention provides a user authentication pad that can be memorized by a user and used to authenticate and verify the user, for example, if the original user pad has been compromised.
[0087] For example, when a user joins the network of the present invention, the user may be assigned a Primary Authentication One-Time Pad (PAOTP), which may be provided on a physical portable memory device, such as a memory card or a disk-on-key. A copy of the PAOTP may also be stored in one or more centralized OTP hubs of the network and / or split among two or more OTP hubs, such that each split is different from the other parts. When communicating for the first time within the network, for example, a portion of the PAOTP may be used for initial identification and authentication. Upon initial authentication, the used portion of the PAOTP may then be discarded. The user may then receive a runtime pad for use in normal ongoing communication over the network. The PAOTP may then be stored by the user in a secure location in case it may be needed again in the future for the user's two-step authentication.
[0088] During ongoing runtime network communication, parts of the runtime pad can be used to identify the user. However, in some cases a stronger two-step verification process is required. For example, the user may want to revoke the runtime user pad, or the user may be requested by the network to update / replace its runtime pad, for example in case of suspicious activity. In such cases POTP can be used to authenticate the end user.
[0089] In some embodiments, universal hashing can also be used as an additional authentication mechanism. The universal hashing mechanism provides a way to authenticate messages up to any security boundary (i.e., for any p>0, a sufficiently large hash ensures that even a computationally unlimited attacker has a chance of successful forgery less than p). However, universal hashing comes at the cost of using additional random data from the encryption pad.
[0090] Random Number Generation In some embodiments, OTPs for use in connection with the present invention may be generated in multiple locations, including but not limited to in an OTP hub, or at a centralized location.
[0091] In some embodiments, one or more of the OTP hubs may comprise devices and / or functionality responsible for generating large amounts of truly random data. In some embodiments, the random data generation may be based on one or more physical processes, for example, based on microscopic phenomena such as thermal noise, the photoelectric effect, other quantum phenomena, chaotic dynamics, and / or any other similar process. In some embodiments, the invention may provide for testing the generated random data as described below, for example, through entropy and similar tests.
[0092] Automatic teller machine for OTP delivery In some embodiments, the present invention may utilize a physical distribution network such as an automated teller machine (ATM) and / or similar safe box mechanism for the delivery and distribution of OTPs to end users. For example, such an ATM may distribute an external memory device such as a disk on key containing the OTP. In some embodiments, an ATM of the present invention may have a hard drive containing the OTP and distribute to an external memory device such as a portable memory device (e.g., flash drive) provided by a user. In some embodiments, an ATM of the present invention may be configured to generate OTPs locally using suitable random data generation hardware and / or may include an externally generated OTP, for example, via an OTP hub. The ATM may also be responsible for updating the system's OTP hub regarding OTPs distributed to end users.
[0093] In some embodiments, one or more OTP hubs of the present invention may include an ATM in addition to OTP generation capabilities. Each such OTP hub may form a standalone, physically secure device that generates and distributes OTPs to end users and handles the resulting network encrypted traffic. Thus, using one or more such devices, it becomes possible to establish a centralized OTP encryption scheme from any desired location.
[0094] In some embodiments, the stand-alone ATM of the present invention may be placed at various desired locations to distribute OTPs to end users as needed. The OTPs may then be generated locally and / or remotely within the ATM and securely delivered to the ATM for further distribution to end users at the location. Secure delivery of the OTP to the ATM may be through quantum key distribution (QKD) communication and / or physically secure means such as, for example, a secure vehicle and / or container. The end user may then access the ATM and obtain the OTP, for example, by loading or replacing a memory device. Once distributed to a user, the OTP is indicated by the system as associated with that user and may be used to route messages to that user.
[0095] In some embodiments, the OTP may be delivered directly to the OTP hub and / or end user via physically secure means such as QKD and / or a secured vehicle and / or container.
[0096] QKD is a process that uses quantum communication to establish a shared key between two parties without a third party knowing anything about that key, even if the third party is able to eavesdrop on all communications between the two parties. Thus, the QKD key can be used to deliver an OTP to a specific defined destination in the system.
[0097] Disposal of OTP As noted above, used OTPs must be deleted and disposed of to prevent misuse. In some embodiments, the OTPs of the present invention may be disposed of by overwriting all or part of the OTP with erroneous data.
[0098] The present invention may be a system, a method, and / or a computer program product. The computer program product may include a computer-readable storage medium (or media) having computer-readable program instructions thereon for causing a processor to perform aspects of the present invention.
[0099] A computer-readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media includes the following: portable computer diskettes, hard disks, random access memories (RAMs), read-only memories (ROMs), erasable programmable read-only memories (EPROMs or flash memories), static random access memories (SRAMs), portable compact disk read-only memories (CD-ROMs), digital versatile disks (DVDs), memory sticks, floppy disks, mechanically encoded devices with instructions recorded thereon, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium should not be interpreted as being a transitory signal, such as an electric wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a wave guide or other transmission medium (e.g., a light pulse passing through a fiber optic cable), or an electrical signal transmitted through a wire. Rather, the computer-readable storage medium is a non-transitory (ie, non-volatile) medium.
[0100] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to the respective computing / processing device or to an external computer or storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, optical transmission fiber, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in the respective computing / processing device.
[0101] The computer readable program instructions for carrying out the operations of the present invention may be either source code or object code written in any combination of one or more programming languages, including assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state setting data, or object oriented programming languages such as Java, Smalltalk, C++, and traditional procedural programming languages such as the "C" programming language, or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or wide area network (WAN), or the connection may be made to an external computer (e.g., via the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA) can execute computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry to perform aspects of the invention.
[0102] Aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer readable program instructions.
[0103] These computer readable program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to generate a machine such that the instructions, executed via the processor of the computer or other programmable data processing apparatus, create means for implementing the function / act specified in the block or blocks of the flowcharts and / or block diagrams. These computer readable program instructions can also be stored within a computer readable storage medium that can instruct a computer, programmable data processing apparatus, and / or other device to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions that implement an aspect of the function / act specified in the block or blocks of the flowcharts and / or block diagrams.
[0104] The computer-readable program instructions may also be loaded into a computer, other programmable data processing apparatus, or other device and cause the computer, other programmable apparatus, or other device to execute a series of operational steps to generate a computer-implemented process, such that the instructions executing on the computer, other programmable apparatus, or other device implement the function / operation specified in a block or blocks of the flowcharts and / or block diagrams.
[0105] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowcharts or block diagrams may represent a module, segment, or portion of instructions that includes one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions described in the blocks may occur in a different order than that described in the figures. For example, two blocks shown in succession may in fact be executed substantially simultaneously, or the blocks may be executed in reverse order depending on the functionality involved. It should also be noted that each block of the block diagrams and / or flowchart diagrams, and combinations of blocks in the block diagrams and / or flowchart diagrams, may be implemented by a special-purpose hardware-based system that performs the specified functions or operations or executes a combination of dedicated hardware and computer instructions.
[0106] The description of various embodiments of the present invention is presented for illustrative purposes, but is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terms used in this specification are selected to best explain the principles of the embodiments, practical applications, or technical improvements to the technology found in the market, or to enable people other than those skilled in the art to understand the embodiments disclosed herein.
Claims
[Claim 1] The invention as described in the description and / or drawings.
Citation Information
Patent Citations
Central key provision and one-time pad encryption with keyable characters
JP2004501532A
Method and apparatus for managing encryption key in private communication network
JP2008306633A
Generating session key for authentication and secure data transfer
JP2011010291A
Information processing program and information processing apparatus
JP2011022743A
Encryption communication system, encryption communication repeater, encryption communication terminal, and encryption communication method
JP2014078875A