ABSTRACT
Abstract
A hybrid method and system for data encryption significantly reduces the computational cost of encryption and reduces the cost of the processors needed to perform encryption and decryption.
Description
RELATED APPLICATIONS
This application is a U. S. National Stage Application of International Application No, PCT/US2017/068028, filed on Dec. 21, 2017, which claims priority of U. S. Provisional Application No. 62/437,611, filed on Dec. 21, 2016. The entire contents of these applications are incorporated herein by reference.
CROSS REFERENCE TO RELATED APPLICATION
This application claims benefit of U.S. Provisional Application No. 62/437,611, filed Dec. 21, 2016, the contents of which are hereby incorporated by reference herein.
FIELD OF THE INVENTION
The disclosed invention is in the field of cryptography.
BACKGROUND OF THE INVENTION
Computer networks and systems often comprise sensitive information that must be protected at all times to ensure the reliability and confidentiality of the systems and networks. One common approach to securing sensitive information is cryptography. There are many types of cryptography available for a myriad of different applications. One such type of cryptography is RSA cryptography, which involves the use of randomly generated prime numbers that are kept private. These numbers are then used to calculate different private keys. RSA cryptography uses the private keys in conjunction with public keys, which are shared with entities that wish to communicate with the entity that generated the private keys. Messages are encrypted using the public keys of a device receiving the message, and decrypted using the private key(s) of the device receiving the message.
The problem with RSA cryptography is that it is computationally expensive due to the possibility of using division operations, which makes RSA cryptography impractical for a cost-effective solution for real-time data transmissions.
Another type of cryptography is Chaotic Neural Network (CNN) cryptography. CNN cryptography is a faster method of encrypting information than RSA cryptography, while still maintaining security comparable to that of more computationally expensive ciphers. This permits CNN cryptography to have applications in devices that do not have as much computational power as a desktop computer.
The problem with CNN cryptography is that the initial values shared between devices are not secured, thus there is some vulnerability.
Therefore, there is a need for systems and methods to perform secure real-time encryption and decryption using minimal processing power in a Defense-in Depth (DiD) approach to help secure systems from cyberattack, for example industrial control systems.
SUMMARY OF THE INVENTION
The DiD strategy is a driving philosophy behind combining multiply types of encryption, for example a RSA-CNN cipher. It has been proven time and time again that no cybersecurity cipher or system architecture is hack proof. The goal is to make cracking the cipher take longer than the time required to detect the intrusion and start either manual or automated countermeasures. The present application combines several layers of defenses, for example by combining RSA encryption with CNN encryption, to achieve secure encryption and decryption using minimal processing power.
A first layer is the RSA encryption of two values, α and x o , that are used to start a CNN encryption process. Without the correct public and private key, α and x o will not be correct. The second layer is the α and x o that is needed in the CNN process; if those two values are incorrect, then the CNN will not decrypt to the correct values. The third layer is the CNN itself, if the neural network is not structured and trained in exactly the same way as the encrypting CNN, then it will not properly decrypt the values. A hostile entity would have to break through all three layers of that encryption at a minimum in order to gain access to the data. In addition, if there is any change to the RSA keys or the CNN, then the hostile entity essentially has to restart the attempt to crack the cypher. There can be multiple levels of authentication as well that can help prevent an unwanted entity from accessing these devices, such as passwords, password length, or device ID. By further encrypting these extra authentications in separate instances of CNN encryption, the multiple instances of random α and x o further increase the security of the cypher.
The present invention provides hybrid encryption methods, comprising the steps of: at a first device, generating a first set of initial values corresponding to a password and generating a second set of initial values corresponding to data to be encrypted; encrypting the password by chaotic neural network (CNN) encryption using the first set of initial values; encrypting the data by CNN encryption using the second set of initial values; RSA-encrypting first set of initial values and the second set of initial values; and transmitting all encrypted data to a second device.
The present invention provides hybrid encryption methods, comprising the steps of: at a first device, generating a plurality of initial values; passing the plurality of initial values into a first function and generating a chaotic noise vector; RSA-encrypting the plurality of initial values; passing plaintext and the chaotic noise vector into a chaotic function logic block and generating ciphertext; and transmitting the ciphertext and the RSA-encrypted initial values to a second device.
The present invention provides hybrid encryption methods, comprising the steps of: at a first device, passing an initial value through a first non-linear function and obtaining an encrypted value; and transmitting the encrypted value over a public domain to a second device; at a second device, receiving the encrypted value decrypting the encrypted value by using an inverse or an approximation of the inverse of the first non-linear function, resulting in a decrypted value; passing the decrypted value through at least one operation in order to determine whether a consensus between the first device and the second device is reached; outputting an encrypted predicted value from the at least one operation; passing the encrypted predicted value through at least a second non-linear function to obtain a new value; and transmitting the new value to the first device; and at the first device: receiving the new value and decrypting the new value by using an inverse or an approximation of the inverse of the second non-linear function, resulting in a new decrypted value; and passing the new decrypted value through at least one operation in order to determine whether a consensus between the first device and the second device is reached.
The general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as defined in the appended claims. Other aspects of the present invention will be apparent to those skilled in the art in view of the detailed description of the invention as provided herein.
BRIEF DESCRIPTION OF THE DRAWINGS
The summary, as well as the following detailed description, is further understood when read in conjunction with the appended drawings. For the purpose of illustrating the invention, there are shown in the drawings exemplary embodiments of the invention; however, the invention is not limited to the specific methods and devices disclosed. In addition, the drawings are not necessarily drawn to scale. In the drawings:
FIG. 1 is a flow diagram illustrating a hybrid encryption method in accordance with an embodiment;
FIG. 2 is a flow diagram of a hybrid encryption method according to an embodiment.
FIG. 3 is a flow diagram illustrating another hybrid encryption method in accordance with an embodiment;
FIG. 4 is a flow diagram illustrating another hybrid encryption method 300 in accordance with an embodiment;
FIG. 5 is a flow diagram illustrating a method for encrypting data in accordance with an embodiment;
FIG. 6 is a flow diagram illustrating a method of reaching a consensus among a plurality of devices in accordance with an embodiment;
FIG. 7 is a flow diagram illustrating a method of reaching a consensus among a plurality of devices before transmitting an encrypted RSA key in accordance with an embodiment;
FIG. 8 is a flow diagram illustrating a method of reaching a consensus among a plurality of devices before transmitting a key register in accordance with an embodiment; and
FIG. 9 is a flow diagram illustrating a method for obtaining consensus between a plurality of devices in accordance with an embodiment.
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
The present invention may be understood more readily by reference to the following detailed description taken in connection with the accompanying figures and examples, which form a part of this disclosure. It is to be understood that this invention is not limited to the specific devices, methods, applications, conditions or parameters described and/or shown herein, and that the terminology used herein is for the purpose of describing particular embodiments by way of example only and is not intended to be limiting of the claimed invention. Also, as used in the specification including the appended claims, the singular forms âa,â âan,â and âtheâ include the plural, and reference to a particular numerical value includes at least that particular value, unless the context clearly dictates otherwise. The term âpluralityâ, as used herein, means more than one. When a range of values is expressed, another embodiment includes from the one particular value and/or to the other particular value. Similarly, when values are expressed as approximations, by use of the antecedent âabout,â it will be understood that the particular value forms another embodiment. All ranges are inclusive and combinable.
It is to be appreciated that certain features of the invention which are, for clarity, described herein in the context of separate embodiments, may also be provided in combination in a single embodiment. Conversely, various features of the invention that are, for brevity, described in the context of a single embodiment, may also be provided separately or in any subcombination. Further, references to values stated in ranges include each and every value within that range.
A key idea behind CNN cryptography is that without the correct initial values and conditions in the CNN, then the results cannot be decrypted into anything of value to a hostile actor. Even a small difference between initial conditions would result in a vastly different signal being sent due to the random and chaotic nature of CNN encryption. Thus, the initial conditions, variables corresponding to the password and actual data (alphas), and the length of the password must be protected.
The initial CNN conditions may be transmitted in a safe, reliable manner by pairing CNN cryptography with another type of encryption, for example with RSA encryption. While RSA encryption is computationally expensive and thus impractical for devices with low computing power, it can be used in a more limited capacity when paired with CNN cryptography. For example, RSA encryption may be used to transmit initial conditions for the CNN functions used in the encryption, the two alphas (one for the password and one for the actual data), and the length of the password. The CNN encryption is used for both the password itself, and the actual data that is being transmitted, which allows for real-time encrypted communication between smaller, less computationally powerful devices. When the parameters of the CNN functions or the password changes, then another RSA encrypted communication occurs.
Generally, at a first device, a password is first changed from a string of letters to a double vector of numbers. Then the length of the password, the initial conditions of the CNN, and the alphas used in the CNN functions are encrypted using the RSA keys. The second device that receives the encrypted password then decrypts the password length using the RSA keys and determines if the password length matches the one it considers valid from the authorized database. If the length is correct, then the password is decrypted to see if the password is a verified one. This double step to verification of the password increases the security of the transmissions. The passwords that are exchanged are authorized and registered in a database identifying each device for security and organizational reasons. In addition, a device's password and the passwords of the devices that it is authorized to communicate with, are stored on the hardware of the device itself. If the password is deemed correct, then the CNN encrypted data is downloaded and decrypted using the RSA decrypted initial values and alphas for the CNN functions that encrypted the desired data. If, during any step of the password decryption, it is determined to not be correct in any way, a request is sent back to the original sender, requesting the correct password. The CNN encrypted data is not accepted and decrypted.
Depending on the security standards for the use of the device, the time frame between CNN encryption changes or new RSA key calculations can be changed. This combination of encryption schemes makes for a secure system to transmit data. In order to decrypt the transmitted data, or perhaps insert falsified data, the attacker would need knowledge on both RSA and CNN cryptography and how they are implemented with each other.
Turning now to FIG. 1 , a flow diagram illustrating a hybrid encryption method 100 in accordance with an embodiment is illustrated. Two initial values, a 102 and x o 104 are randomly generated by a first device to start a chaotic sequence. The first device may be any device with a processor or microcontroller, for example appliances, smart meters, mobile communication devices, sensors, cameras, microphones, monitoring and measurement equipment, etc. The initial values α 102 and x o 104 are passed through a first function 106 to generate a chaotic noise vector 108 . The chaotic noise vector 108 and the plaintext vector 110 are passed through chaotic functions 112 in order to encrypt the plaintext 110 into ciphertext 114 . The initial values α 102 and x o 104 are also encrypted using RSA encryption. Alternatively, other forms of encryption may be used to encrypt initial values α 102 and x o 104 , for example Blowfish, Twofish, AES, etc. Both the ciphertext 114 and the encrypted initial values α 102 and x o 104 are then transmitted to a second device.
The neural network used in the hybrid encryption method is known as a chaotic neural network. The initial values put into the network's input layer are randomized. This means that the path the input takes through the layers is different each time and without the correct initial value, the initial value cannot be decrypted. The input is randomized in the CNN through two values, α and x o . These values themselves are randomized every time an e
RELATED APPLICATIONS
This application is a U. S. National Stage Application of International Application No, PCT/US2017/068028, filed on Dec. 21, 2017, which claims priority of U. S. Provisional Application No. 62/437,611, filed on Dec. 21, 2016. The entire contents of these applications are incorporated herein by reference.
CROSS REFERENCE TO RELATED APPLICATION
This application claims benefit of U.S. Provisional Application No. 62/437,611, filed Dec. 21, 2016, the contents of which are hereby incorporated by reference herein.
FIELD OF THE INVENTION
The disclosed invention is in the field of cryptography.
BACKGROUND OF THE INVENTION
Computer networks and systems often comprise sensitive information that must be protected at all times to ensure the reliability and confidentiality of the systems and networks. One common approach to securing sensitive information is cryptography. There are many types of cryptography available for a myriad of different applications. One such type of cryptography is RSA cryptography, which involves the use of randomly generated prime numbers that are kept private. These numbers are then used to calculate different private keys. RSA cryptography uses the private keys in conjunction with public keys, which are shared with entities that wish to communicate with the entity that generated the private keys. Messages are encrypted using the public keys of a device receiving the message, and decrypted using the private key(s) of the device receiving the message.
The problem with RSA cryptography is that it is computationally expensive due to the possibility of using division operations, which makes RSA cryptography impractical for a cost-effective solution for real-time data transmissions.
Another type of cryptography is Chaotic Neural Network (CNN) cryptography. CNN cryptography is a faster method of encrypting information than RSA cryptography, while still maintaining security comparable to that of more computationally expensive ciphers. This permits CNN cryptography to have applications in devices that do not have as much computational power as a desktop computer.
The problem with CNN cryptography is that the initial values shared between devices are not secured, thus there is some vulnerability.
Therefore, there is a need for systems and methods to perform secure real-time encryption and decryption using minimal processing power in a Defense-in Depth (DiD) approach to help secure systems from cyberattack, for example industrial control systems.
SUMMARY OF THE INVENTION
The DiD strategy is a driving philosophy behind combining multiply types of encryption, for example a RSA-CNN cipher. It has been proven time and time again that no cybersecurity cipher or system architecture is hack proof. The goal is to make cracking the cipher take longer than the time required to detect the intrusion and start either manual or automated countermeasures. The present application combines several layers of defenses, for example by combining RSA encryption with CNN encryption, to achieve secure encryption and decryption using minimal processing power.
A first layer is the RSA encryption of two values, α and x o , that are used to start a CNN encryption process. Without the correct public and private key, α and x o will not be correct. The second layer is the α and x o that is needed in the CNN process; if those two values are incorrect, then the CNN will not decrypt to the correct values. The third layer is the CNN itself, if the neural network is not structured and trained in exactly the same way as the encrypting CNN, then it will not properly decrypt the values. A hostile entity would have to break through all three layers of that encryption at a minimum in order to gain access to the data. In addition, if there is any change to the RSA keys or the CNN, then the hostile entity essentially has to restart the attempt to crack the cypher. There can be multiple levels of authentication as well that can help prevent an unwanted entity from accessing these devices, such as passwords, password length, or device ID. By further encrypting these extra authentications in separate instances of CNN encryption, the multiple instances of random α and x o further increase the security of the cypher.
The present invention provides hybrid encryption methods, comprising the steps of: at a first device, generating a first set of initial values corresponding to a password and generating a second set of initial values corresponding to data to be encrypted; encrypting the password by chaotic neural network (CNN) encryption using the first set of initial values; encrypting the data by CNN encryption using the second set of initial values; RSA-encrypting first set of initial values and the second set of initial values; and transmitting all encrypted data to a second device.
The present invention provides hybrid encryption methods, comprising the steps of: at a first device, generating a plurality of initial values; passing the plurality of initial values into a first function and generating a chaotic noise vector; RSA-encrypting the plurality of initial values; passing plaintext and the chaotic noise vector into a chaotic function logic block and generating ciphertext; and transmitting the ciphertext and the RSA-encrypted initial values to a second device.
The present invention provides hybrid encryption methods, comprising the steps of: at a first device, passing an initial value through a first non-linear function and obtaining an encrypted value; and transmitting the encrypted value over a public domain to a second device; at a second device, receiving the encrypted value decrypting the encrypted value by using an inverse or an approximation of the inverse of the first non-linear function, resulting in a decrypted value; passing the decrypted value through at least one operation in order to determine whether a consensus between the first device and the second device is reached; outputting an encrypted predicted value from the at least one operation; passing the encrypted predicted value through at least a second non-linear function to obtain a new value; and transmitting the new value to the first device; and at the first device: receiving the new value and decrypting the new value by using an inverse or an approximation of the inverse of the second non-linear function, resulting in a new decrypted value; and passing the new decrypted value through at least one operation in order to determine whether a consensus between the first device and the second device is reached.
The general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as defined in the appended claims. Other aspects of the present invention will be apparent to those skilled in the art in view of the detailed description of the invention as provided herein.
BRIEF DESCRIPTION OF THE DRAWINGS
The summary, as well as the following detailed description, is further understood when read in conjunction with the appended drawings. For the purpose of illustrating the invention, there are shown in the drawings exemplary embodiments of the invention; however, the invention is not limited to the specific methods and devices disclosed. In addition, the drawings are not necessarily drawn to scale. In the drawings:
FIG. 1 is a flow diagram illustrating a hybrid encryption method in accordance with an embodiment;
FIG. 2 is a flow diagram of a hybrid encryption method according to an embodiment.
FIG. 3 is a flow diagram illustrating another hybrid encryption method in accordance with an embodiment;
FIG. 4 is a flow diagram illustrating another hybrid encryption method 300 in accordance with an embodiment;
FIG. 5 is a flow diagram illustrating a method for encrypting data in accordance with an embodiment;
FIG. 6 is a flow diagram illustrating a method of reaching a consensus among a plurality of devices in accordance with an embodiment;
FIG. 7 is a flow diagram illustrating a method of reaching a consensus among a plurality of devices before transmitting an encrypted RSA key in accordance with an embodiment;
FIG. 8 is a flow diagram illustrating a method of reaching a consensus among a plurality of devices before transmitting a key register in accordance with an embodiment; and
FIG. 9 is a flow diagram illustrating a method for obtaining consensus between a plurality of devices in accordance with an embodiment.
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
The present invention may be understood more readily by reference to the following detailed description taken in connection with the accompanying figures and examples, which form a part of this disclosure. It is to be understood that this invention is not limited to the specific devices, methods, applications, conditions or parameters described and/or shown herein, and that the terminology used herein is for the purpose of describing particular embodiments by way of example only and is not intended to be limiting of the claimed invention. Also, as used in the specification including the appended claims, the singular forms âa,â âan,â and âtheâ include the plural, and reference to a particular numerical value includes at least that particular value, unless the context clearly dictates otherwise. The term âpluralityâ, as used herein, means more than one. When a range of values is expressed, another embodiment includes from the one particular value and/or to the other particular value. Similarly, when values are expressed as approximations, by use of the antecedent âabout,â it will be understood that the particular value forms another embodiment. All ranges are inclusive and combinable.
It is to be appreciated that certain features of the invention which are, for clarity, described herein in the context of separate embodiments, may also be provided in combination in a single embodiment. Conversely, various features of the invention that are, for brevity, described in the context of a single embodiment, may also be provided separately or in any subcombination. Further, references to values stated in ranges include each and every value within that range.
A key idea behind CNN cryptography is that without the correct initial values and conditions in the CNN, then the results cannot be decrypted into anything of value to a hostile actor. Even a small difference between initial conditions would result in a vastly different signal being sent due to the random and chaotic nature of CNN encryption. Thus, the initial conditions, variables corresponding to the password and actual data (alphas), and the length of the password must be protected.
The initial CNN conditions may be transmitted in a safe, reliable manner by pairing CNN cryptography with another type of encryption, for example with RSA encryption. While RSA encryption is computationally expensive and thus impractical for devices with low computing power, it can be used in a more limited capacity when paired with CNN cryptography. For example, RSA encryption may be used to transmit initial conditions for the CNN functions used in the encryption, the two alphas (one for the password and one for the actual data), and the length of the password. The CNN encryption is used for both the password itself, and the actual data that is being transmitted, which allows for real-time encrypted communication between smaller, less computationally powerful devices. When the parameters of the CNN functions or the password changes, then another RSA encrypted communication occurs.
Generally, at a first device, a password is first changed from a string of letters to a double vector of numbers. Then the length of the password, the initial conditions of the CNN, and the alphas used in the CNN functions are encrypted using the RSA keys. The second device that receives the encrypted password then decrypts the password length using the RSA keys and determines if the password length matches the one it considers valid from the authorized database. If the length is correct, then the password is decrypted to see if the password is a verified one. This double step to verification of the password increases the security of the transmissions. The passwords that are exchanged are authorized and registered in a database identifying each device for security and organizational reasons. In addition, a device's password and the passwords of the devices that it is authorized to communicate with, are stored on the hardware of the device itself. If the password is deemed correct, then the CNN encrypted data is downloaded and decrypted using the RSA decrypted initial values and alphas for the CNN functions that encrypted the desired data. If, during any step of the password decryption, it is determined to not be correct in any way, a request is sent back to the original sender, requesting the correct password. The CNN encrypted data is not accepted and decrypted.
Depending on the security standards for the use of the device, the time frame between CNN encryption changes or new RSA key calculations can be changed. This combination of encryption schemes makes for a secure system to transmit data. In order to decrypt the transmitted data, or perhaps insert falsified data, the attacker would need knowledge on both RSA and CNN cryptography and how they are implemented with each other.
Turning now to FIG. 1 , a flow diagram illustrating a hybrid encryption method 100 in accordance with an embodiment is illustrated. Two initial values, a 102 and x o 104 are randomly generated by a first device to start a chaotic sequence. The first device may be any device with a processor or microcontroller, for example appliances, smart meters, mobile communication devices, sensors, cameras, microphones, monitoring and measurement equipment, etc. The initial values α 102 and x o 104 are passed through a first function 106 to generate a chaotic noise vector 108 . The chaotic noise vector 108 and the plaintext vector 110 are passed through chaotic functions 112 in order to encrypt the plaintext 110 into ciphertext 114 . The initial values α 102 and x o 104 are also encrypted using RSA encryption. Alternatively, other forms of encryption may be used to encrypt initial values α 102 and x o 104 , for example Blowfish, Twofish, AES, etc. Both the ciphertext 114 and the encrypted initial values α 102 and x o 104 are then transmitted to a second device.
The neural network used in the hybrid encryption method is known as a chaotic neural network. The initial values put into the network's input layer are randomized. This means that the path the input takes through the layers is different each time and without the correct initial value, the initial value cannot be decrypted. The input is randomized in the CNN through two values, α and x o . These values themselves are randomized every time an encrypted message is sent. The CNN used in herein may have several layers, for example three layers, that serve to scramble the binary values of the data being encrypted.
The following paragraph details some of the code and math behind the CNN. First, the values of α and x o are randomly generated using the following equations:
α=0.45*rand+0.04ââ(1)
a=α,b= 1âαââ(2)
x o =( bâa )*rand+ a ââ(3)
Next, the values of μ and λ are created from α.
μ =
4
1 -
2 * λ
( 4 )
λ =
α *
(
2 * α
- 3
)
(
1 -
2 * α
)
( 5 )
After μ and λ are generated, then the remaining values of x are generated using the following equation:
x=μ*x ( iâ 1)*(1â x ( iâ 1))+λââ(6)
From x, the matrix b is generated and contains the binary representation of the values in x. The matrix b is then the input into the neural network to be encrypted further. First, each byte is given a weight and a value of θ in the first input layer.
â
for i=1:n
âfor j=1:n
ââif (b(c,i)==0)&&(i==j)
âââweight(i,j)=1;
ââelseif (b(c,i)==1)&&(i==j)
âââweight(i,j)=-1;
ââelseif i~=j
âââweight(i,j)=0;
ââend
âend
âif (b(c,i)==0)
ââtheta(i)=-1/2;
âelse
ââtheta(i)=1/2;
âend
end
Then the values of weight, the original data in binary form, XX, and θ are used to generate a matrix, dx, in the second layer of the network.
ââ
for i=1:n
ââ%dx(c,i) = hardlim(sum(weight(i,:).*XX(c,:))+theta(i));
ââif sum(weight(i,:).*XX(c,:))+theta(i) >= 0
âââdx(c,i)=1;
ââelse
âââdx(c,i)=0;
ââend
âend
The final layer of the network takes the binary values generated in the second layer and reconstitutes them as an 8-bit integer:
â
for i=1:n
âY(c)=Y(c)+uint8(dx(c,i))*(2{circumflex over (â)}(n-i));
end
The decryption code is structured similarly, but does not use the equations to generate the values of α and x o . Instead, the correct α and x o are sent over in the data to ensure that the neural network goes along the same path. In an embodiment, only the α and x o values are encrypted using RSA encryption, while the rest of the data that is being sent is being encrypted using the CNN. It is to be understood that the above-example is one embodiment for implementing the CNN. However, a person of ordinary skill in the art would understand that other suitable implementations of CNN may also be used and remain within the scope of the invention.
FIG. 2 illustrates a flow diagram of an RSA- CNN encryption method 200 according to an embodiment. A first device 202 acquires data, encrypts the data, and sends the data to a second device 204 . The first device 202 acquire data 208 from a data input 206 . The first device then generates values for α and x o 210 , and next CNN encrypts 212 the data 206 and password using a different α and x o . Next, the first device 202 RSA encrypts 214 the α and x o used for the data, and also the α and x o used for the password. Finally, the first device sends 216 the encrypted data 218 to the second device 204 .
The second device 204 receives the encrypted data 220 . Next, the second device 204 RSA- decrypts 222 the α and x o corresponding to the password, and CNN decrypts the password itself. If the password matches, then the second device 204 RSA decrypts the α and x o associated with the data, and CNN decrypts the data itself 224 , resulting in the decrypted data 226 .
FIG. 3 is a flow diagram illustrating another hybrid encryption method 300 in accordance with an embodiment. Method 300 is similar to method 100 , but breaks the chaotic function logic box into a plurality of parallel chaotic function logic blocks to more rapidly encrypt the plaintext message. The additional chaotic function logic blocks (four total) can expedite the encryption by approximately a factor of four. The chaotic function logic blocks circuit blocks can perform parallel computations at each iteration, and thus with more chaotic function logic blocks, rapid encryption becomes possible.
Two initial values, a 302 and x o 304 are randomly generated by a first device to start a chaotic sequence. The initial values α 302 and x o 304 are passed through a first function 306 to generate a chaotic noise vector 308 . The chaotic noise vector 308 and segments of a plaintext vector 310 are passed through parallel chaotic functions 312 in order to encrypt the plaintext 310 into ciphertext 314 . The plaintext 310 may be broken up into small pieces, for example, 8 bits of the message may be sent to each parallel chaotic function 312 block at a time. Other lengths of the plaintext 310 may also be used. Furthermore, while FIG. 2 illustrates four parallel chaotic function blocks, it is understood that more or less chaotic function blocks may be employed depending on the application. Generally, the more parallel chaotic function blocks available, the faster the overall encryption process.
The initial values α 302 and x o 304 are encrypted using RSA encryption 316 . Alternatively, other forms of encryption may be used to encrypt a 302 and x o 304 , for example Blowfish, Twofish, AES, PGP (Pretty Good Privacy), etc. The segments of encrypted ciphertext are reassembled, and then the reassembled ciphertext 314 and the encrypted initial values α 302 and x o 304 are transmitted to a second device.
FIG. 4 is a flow diagram illustrating another hybrid encryption method 400 in accordance with an embodiment. The method 400 is similar to the method 200 , but further includes a key register 420 , which is passed through an exclusive-or (XOR) logic gate 422 along with the plaintext 410 .
Two initial values, α 402 and x o 404 are randomly generated by a first device to start a chaotic sequence. The initial values α 402 and x o 404 are passed through a first function 406 to generate a chaotic noise vector 408 . The chaotic noise vector 408 and segments of the XOR- ed plaintext 424 are passed through parallel chaotic function logic blocks 412 in order to encrypt the XOR- ed plaintext 424 into ciphertext 414 . The XOR- ed plaintext 424 may be broken up into small pieces, for example, 8 bits of the message may be sent to each parallel chaotic function logic block 412 at a time. Other lengths of the XOR- ed plaintext 424 may also be used. Furthermore, while FIG. 4 illustrates four parallel chaotic function blocks, it is understood that more or less chaotic function blocks may be employed depending on the application.
The initial values α 402 and x o 404 are encrypted using RSA encryption 416 . Alternatively, other forms of encryption may be used to encrypt initial values α 402 and x o 404 . The segments of encrypted ciphertext are reassembled, and then the reassembled ciphertext 414 and the encrypted initial values α 402 and x o 404 are transmitted to a second device.
FIG. 5 is a flow diagram illustrating a method 500 for encrypting data. Key register 502 and plaintext 504 are passed through an XOR logic gate 506 . The resulting vector is passed through a chaotic function logic box 508 to encrypt the data. Meanwhile, the key register 510 is updated. These steps repeat n times until the key register 510 is updated for the final operation. Then the final key register 514 and transformed plaintext 504 are passed through the XOR logic gate 516 , and the resulting ciphertext 518 is transmitted to another device. This method provides alternatives to hashing with light-weight encryption. For example, this method may be used when a signature needs to be sent for verification. Other applications may include cryptocurrency or blockchain, among others.
FIG. 6 is a flow diagram illustrating a method 600 of reaching a consensus among a plurality of devices before a key register is transmitted to each of the plurality of devices. The consensus problem is one of the basic problems arising in distributed coordination and control. Such a problem arises in a number of applications including, for example, heterogeneous devices in large-scale networks, and information processing and estimation in sensor networks such as a power grid. In a consensus problem, a set of devices each has some different initial value. The objective is to get the devices to agree on a common value by utilizing a distributed and local algorithm. The local algorithm can perform local computations and communicate with immediate neighboring devices.
A first device 602 starts with an initial value 608 that is passed through a set of functions 610 and converted to encrypted value 612 . The set of functions 610 may be any non-linear function that adds noise to the initial value 608 or modifies it in some manner. For example, the set of functions may comprise a neural network or other non-linear functions generally known to persons of ordinary skill in the art. Next, the encrypted value 612 is transmitted over the public domain 606 to a second device 604 . The second device 604 receives encrypted value 612 and decrypts the encrypted value 612 by using an inverse or an approximation of the inverse 614 of the set of functions 610 , resulting in a decrypted value 616 . The second device 604 then runs operations 618 to see if the value received from the first device 602 reaches a consensus. For example, the operations may utilize the following formula:
a ( k+ 1)= A ( k ) x ( k )=α k ξ( k ),ââ(7)
where k is the number of communication cycles that has occurred, A is a matrix defined as A(k)=(1âα k )I+α k W(k), and W is a matrix of weights that are changed as each communication cycle occurs in order to gain consensus.
The operations 618 output an encrypted predicted value 620 , which is passed through a set of functions 622 , resulting in a value 624 . As described above, the set of functions 622 may be any non-linear set of functions. The value 624 is transmitted to the first device 602 , where the first device 602 decrypts the value 624 by using an inverse or an approximation of the inverse 626 of the set of functions 622 , resulting in a decrypted value 628 . The first device 602 then runs operations 630 to check if the value received from the second device 604 reaches a consensus. The operations 630 may be the same or similar to the operations performed on the second device 604 .
The communication cycle in FIG. 6 continues until consensus is reached between the first device 602 and the second device 604 . For the beginning of each cycle, a new initial value 608 is passed into the set of functions 610 , converted to the encrypted value 612 , and transmitted to the second device 604 . The method 600 may require n number of cycles until consensus is reached. Once consensus is reached, a key register for future encrypted communications between the first and second devices
602 , 604 is transmitted to the first and second devices
602 , 604 . These steps allow the devices to obtain the public keys securely, without requiring another means of communication to acquire the public keys as is typically required, such as e-mail, sms message, etc.
FIG. 7 is a flow diagram illustrating a method 700 of reaching a consensus among a plurality of devices before transmitting an encrypted RSA key to each of the plurality of devices. A first device 702 starts with an initial value 708 that is passed through a set of functions 710 and converted to encrypted value 712 . The set of functions 710 may be any non-linear function that adds noise to the initial value 608 or modifies it in some manner, for example a neural network or other non-linear functions generally known to persons of ordinary skill in the art. Next, the encrypted value 712 is transmitted over the public domain 706 to a second device 704 . The second device 704 receives encrypted value 712 and decrypts the encrypted value 712 by using an inverse or an approximation of the inverse 714 of the set of functions 710 , resulting in a decrypted value 716 . The second device 704 then runs operations 718 to see if the value received from the first device 702 reaches a consensus. For example, the operations 718 may utilize Formula (7) described above, where k is the number of communication cycles that has occurred, A is a matrix defined as A(k)=(1âα k )I+α k W(k), and W is a matrix of weights that are changed as each communication cycle occurs in order to gain consensus.
The operations 718 output an encrypted predicted value 720 , which is passed through a set of functions 722 , resulting in a value 724 . As described above, the set of functions 722 may be any non-linear set of functions. The value 724 is transmitted to the first device 702 , where the first device 702 decrypts the value 724 by using an inverse or an approximation of the <figure-callout id="726" label="inverse" filenames="US11184147-2
CLAIMS
Claims ( 20 )
What is claimed is:
1. A hybrid encryption method, the method comprising:
providing an encrypting chaotic neural network (CNN) having a plurality of paths through a plurality of layers to a first device, each layer being configured to scramble data, each path through the plurality of layers being dependent upon a set of initial values;
generating a set of initial values by the first device;
encrypting data, by the first device using the encrypting CNN and the set of initial values, to form an encrypted ciphertext;
encrypting the initial values, by the first device, to form encrypted initial values;
transmitting the encrypted ciphertext and the encrypted initial values, by the first device, to a second device, the second device being configured to decrypt the encrypted initial values and to use the decrypted initial values and a decrypting CNN to decrypt the encrypted ciphertext, the decrypting CNN being structured and trained in exactly the same way as the encrypting CNN;
generating, by the first device, a second set of initial values corresponding to a password;
encrypting the password, by the first device using the encrypting CNN and the second set of initial values, to form an encrypted password;
encrypting the second set of initial values to form a second set of encrypted initial values; and
transmitting the encrypted password and the second set of encrypted initial values to the second device, the second device being configured to decrypt the second set of encrypted initial values and to use the second set of initial values and the decrypting CNN to decrypt the password.
2. The method according to claim 1 , further comprising:
decrypting the second set of initial values;
decrypting the password, by the second device, using the decrypting CNN and the second set of initial values;
confirming the decrypted password is correct;
decrypting the set of initial values by the second device; and
decrypting the data, by the second device, using the decrypting CNN and the set of initial values.
3. The method according to claim 1 , wherein:
the data is plaintext;
a first function uses the initial values to generate a chaotic noise vector; and
the encrypting CNN is a chaotic function logic block that uses the chaotic noise vector to generate the ciphertext.
4. The method according to claim 3 , wherein the chaotic function logic block comprises a plurality of chaotic function logic blocks in parallel.
5. The method according to claim 4 , wherein the plaintext is broken into segments to be passed into the parallel chaotic function logic blocks.
6. The method according to claim 5 , wherein the segments are reassembled after passing through the parallel chaotic function logic blocks into one segment of ciphertext.
7. The method according to claim 6 , further comprising the steps of:
prior to passing the plaintext into the parallel chaotic function logic blocks, passing the plaintext and a key register into a logic gate, and outputting the result to the parallel chaotic function logic blocks.
8. The method according to claim 7 , wherein the logic gate is an exclusive-or logic gate.
9. The method according to claim 3 , further comprising the step of:
at the second device:
RSA-decrypting the plurality of initial values.
10. The method according to claim 9 , further comprising the step of:
CNN-decrypting the ciphertext using the decrypted plurality of initial values.
11. A method for reaching a consensus among a plurality of devices, the method comprising:
passing an initial value through a first non-linear function, by a first device, to obtain an encrypted value;
transmitting the encrypted value by the first device to a second device over a public domain;
receiving the encrypted value by the second device;
decrypting the encrypted value, by the second device using an inverse or an approximation of the inverse of the first non-linear function, to obtain a decrypted value;
passing the decrypted value through at least one operation, by the second device, to determine whether a consensus is reached between the first device and the second device, the at least one operation generating an encrypted predicted value;
passing the encrypted predicted value through at least a second non-linear function, by the second device, to obtain a new value;
transmitting the new value by the second device to the first device;
receiving the new value by the first device;
decrypting the new value, by the first device using an inverse or an approximation of the inverse of the second non-linear function, to generate a new decrypted value; and
passing the new decrypted value through at least one operation, by the first device, to determine whether a consensus is reached between the first device and the second device.
12. The method of claim 11 , wherein all steps of claim 11 are repeated until a consensus is reached.
13. The method of claim 11 , wherein:
the first device RSA-encrypts the encrypted value before transmitting it to the second device over the public domain; and
the second device RSA-decrypts the RSA-encrypted value.
14. The method of claim 11 , further comprising:
exchanging a key register, by the first device and the second device, after consensus is reached.
15. The method of claim 11 , further comprising:
after a consensus value is reached, passing a first RSA public key for the first device and the new decrypted value through a logic gate, resulting in an encrypted RSA key for the first device;
transmitting the encrypted RSA key for the first device by the first device to the second device; and
decrypting the RSA key for the first device by the second device.
16. The method of claim 15 , further comprising the steps of:
after a consensus value is reached, passing a second RSA public key for the second device and the new decrypted value through a logic gate, resulting in an encrypted RSA key for the second device;
transmitting the encrypted RSA key for the second device by the second device to the first device; and
decrypting the RSA key for the second device by the first device.
17. The method according to claim 16 , further comprising:
after exchanging the key register and the encrypted RSA keys between the first and second devices,
generating a plurality of initial values by the first device;
passing the plurality of initial values into a first function, by the first device, to generate a chaotic noise vector;
RSA-encrypting the plurality of initial values by the first device;
passing plaintext and the chaotic noise vector into a chaotic function logic block, by the first device, to generate ciphertext; and
transmitting the ciphertext and the RSA-encrypted initial values by the first device to the second device.
18. The method according to claim 17 , further comprising:
receiving the ciphertext and the RSA-encrypted initial values by the second device;
RSA-decrypting the RSA-encrypted initial values; and
decrypting the ciphertext, by the second device, using a chaotic function block and the RSA-decrypted initial values.
19. The method according to claim 14 , further comprising:
after exchanging the key register between the first and second devices,
generating a plurality of initial values by the first device;
passing the plurality of initial values into a first function, by the first device, to generate a chaotic noise vector;
RSA-encrypting the plurality of initial values;
passing plaintext and the chaotic noise vector into a chaotic function logic block, by the first device, to generate ciphertext; and
transmitting the ciphertext and the RSA-encrypted initial values to the second device.
20. A hybrid encryption system, comprising:
an encrypting chaotic neural network (CNN) having a plurality of paths through a plurality of layers to a first device, each layer being configured to scramble data, each path through the plurality of layers being dependent upon a set of initial values;
a decrypting CNN that is structured and trained in exactly the same way as the encrypting CNN;
a first device that:
generates a set of initial values;
encrypts data using the encrypting CNN and the set of initial values to form an encrypted ciphertext;
encrypts the initial values to form encrypted initial values;
transmits the encrypted ciphertext and the encrypted initial values;
generates a second set of initial values corresponding to a password;
encrypts the password, using the encrypting CNN and the second set of initial values, to form an encrypted password;
encrypts the second set of initial values to form a second set of encrypted initial values;
transmits the encrypted password and the second set of encrypted initial values to the second device; and
a second device that:
receives the encrypted ciphertext and the encrypted initial values;
decrypts the encrypted initial values;
uses the decrypted initial values and the decrypting CNN to decrypt the encrypted ciphertext;
receives the encrypted password and the encrypted initial values;
decrypts the set of values;
decrypts the password using the decrypting CNN and the second set of initial values; and
confirms that the decrypted password is correct.
US16/471,974
2016-12-21
2017-12-21
Hybrid encryption for cyber security of control systems
Expired - Fee Related
US11184147B2
( en )
Priority Applications (1)
Application Number
Priority Date
Filing Date
Title
US16/471,974
US11184147B2
( en )
2016-12-21
2017-12-21
Hybrid encryption for cyber security of control systems
Applications Claiming Priority (3)
Application Number
Priority Date
Filing Date
Title
US201662437611P
2016-12-21
2016-12-21
US16/471,974
US11184147B2
( en )
2016-12-21
2017-12-21
Hybrid encryption for cyber security of control systems
PCT/US2017/068028
WO2018119315A1
( en )
2016-12-21
2017-12-21
Hybrid encryption for cyber security of control systems
Publications (2)
Publication Number
Publication Date
US20200099508A1
US20200099508A1 ( en )
2020-03-26
US11184147B2
true
US11184147B2 ( en )
2021-11-23
Family
ID=62627563
Family Applications (1)
Application Number
Title
Priority Date
Filing Date
US16/471,974
Expired - Fee Related
US11184147B2
( en )
2016-12-21
2017-12-21
Hybrid encryption for cyber security of control systems
Country Status (2)
Country
Link
US
( 1 )
US11184147B2
( en )
WO
( 1 )
WO2018119315A1
( en )
Cited By (7)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US20240204984A1
( en )
*
2022-12-20
2024-06-20
New Keys Lab Ltd.
Chaotic-based encryption
US20250007686A1
( en )
*
2023-06-30
2025-01-02
Scatr Llc
Network traffic obfuscation
US12335160B2
( en )
2023-06-30
2025-06-17
Scatr Llc
Secure data routing with dynamic packet spoofing
US12519631B2
( en )
2023-06-30
2026-01-06
Scatr Corp
Out of band key exchange
US12519755B2
( en )
2023-07-28
2026-01-06
Scatr Corp
Secure data routing and randomization in windows
US12567966B2
( en )
2023-06-30
2026-03-03
Scatr Corp
Endpoint validation security
US12615284B2
( en )
2024-01-24
2026-04-28
Scatr, Corp
Optimizing network traffic obfuscation based on aggregated network performance
Families Citing this family (19)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US11392802B2
( en )
2018-03-07
2022-07-19
Private Identity Llc
Systems and methods for privacy-enabled biometric processing
US11138333B2
( en )
2018-03-07
2021-10-05
Private Identity Llc
Systems and methods for privacy-enabled biometric processing
US10721070B2
( en )
2018-03-07
2020-07-21
Private Identity Llc
Systems and methods for privacy-enabled biometric processing
US10938852B1
( en )
2020-08-14
2021-03-02
Private Identity Llc
Systems and methods for private authentication with helper networks
US11394552B2
( en )
2018-03-07
2022-07-19
Private Identity Llc
Systems and methods for privacy-enabled biometric processing
US11170084B2
( en )
2018-06-28
2021-11-09
Private Identity Llc
Biometric authentication
US11489866B2
( en )
2018-03-07
2022-11-01
Private Identity Llc
Systems and methods for private authentication with helper networks
US11210375B2
( en )
2018-03-07
2021-12-28
Private Identity Llc
Systems and methods for biometric processing with liveness
US11265168B2
( en )
2018-03-07
2022-03-01
Private Identity Llc
Systems and methods for privacy-enabled biometric processing
US11502841B2
( en )
2018-03-07
2022-11-15
Private Identity Llc
Systems and methods for privacy-enabled biometric processing
US11789699B2
( en )
2018-03-07
2023-10-17
Private Identity Llc
Systems and methods for private authentication with helper networks
CN109672517B
( en )
*
2018-12-20
2021-07-27
æå·çµåç§æå¤§å¦
Encryption and Decryption Method of OFDM-PON System Based on Cellular Neural Network
CN111105338B
( en )
*
2019-12-20
2023-04-25
é¿æ¥ç工大å¦
Image encryption method based on GAN and chaotic system
LT6793B
( en )
*
2020-05-18
2020-12-28
Timofey Mochalov
Method for protecting data transfer using neural cryptography
CN112149111A
( en )
2020-08-25
2020-12-29
æå·å®æä¿¡æ¯ææ¯è¡ä»½æéå ¬å¸
Weak password detection method and device based on deep learning and electronic device
CN113726752A
( en )
*
2021-08-19
2021-11-30
严èå«
Encryption method for network security
CN113872747B
( en )
*
2021-09-18
2023-06-30
大è¿å¤§å¦
Image encryption method based on improved class lifting scheme
CN113992810B
( en )
*
2021-10-21
2023-06-27
æµæ±å·¥å大å¦
Agile image encryption method based on deep learning
CN115865524B
( en )
*
2023-02-15
2023-05-05
æ±è¥¿æ±è¾°ä¿¡æ¯ææ¯è¡ä»½æéå ¬å¸
Data security transmission method and system
Citations (12)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US6014445A
( en )
*
1995-10-23
2000-01-11
Kabushiki Kaisha Toshiba
Enciphering/deciphering apparatus and method incorporating random variable and keystream generation
US20030161467A1
( en )
*
2001-04-19
2003-08-28
Cheng Lee Ming
Compact crypto-engine for random number and stream cipher generation
US20030182246A1
( en )
*
1999-12-10
2003-09-25
Johnson William Nevil Heaton
Applications of fractal and/or chaotic techniques
US7093137B1
( en )
*
1999-09-30
2006-08-15
Casio Computer Co., Ltd.
Database management apparatus and encrypting/decrypting system
US20100219858A1
( en )
*
2003-10-07
2010-09-02
University Of Florida Research Foundation, Inc.
Logic based on the evolution of nonlinear dynamical systems
CN101977112A
( en )
2010-11-04
2011-02-16
å¦é¨å¤§å¦
Public key cipher encrypting and decrypting method based on neural network chaotic attractor
US20120250863A1
( en )
*
2009-02-19
2012-10-04
Leonid Bukshpun
Chaotic cipher system and method for secure communication
US8917871B2
( en )
*
2010-06-18
2014-12-23
Empire Technology Development Llc
Asymmetrical chaotic encryption
US20160350648A1
( en )
*
2014-11-07
2016-12-01
Microsoft Technology Licensing, Llc.
Neural networks for encrypted data
US20160357980A1
( en )
*
2015-06-04
2016-12-08
Microsoft Technology Licensing, Llc
Secure storage and sharing of data by hybrid encryption using predefined schema
US10417650B1
( en )
*
2015-12-04
2019-09-17
Google Llc
Distributed and automated system for predicting customer lifetime value
US20200285983A1
( en )
*
2019-03-04
2020-09-10
Iocurrents, Inc.
Data compression and communication using machine learning
2017
2017-12-21
US
US16/471,974
patent/US11184147B2/en
not_active
Expired - Fee Related
2017-12-21
WO
PCT/US2017/068028
patent/WO2018119315A1/en
not_active
Ceased
Patent Citations (13)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US6014445A
( en )
*
1995-10-23
2000-01-11
Kabushiki Kaisha Toshiba
Enciphering/deciphering apparatus and method incorporating random variable and keystream generation
US7093137B1
( en )
*
1999-09-30
2006-08-15
Casio Computer Co., Ltd.
Database management apparatus and encrypting/decrypting system
US20030182246A1
( en )
*
1999-12-10
2003-09-25
Johnson William Nevil Heaton
Applications of fractal and/or chaotic techniques
US20030161467A1
( en )
*
2001-04-19
2003-08-28
Cheng Lee Ming
Compact crypto-engine for random number and stream cipher generation
US20100219858A1
( en )
*
2003-10-07
2010-09-02
University Of Florida Research Foundation, Inc.
Logic based on the evolution of nonlinear dynamical systems
US20120250863A1
( en )
*
2009-02-19
2012-10-04
Leonid Bukshpun
Chaotic cipher system and method for secure communication
US8687810B2
( en )
*
2009-02-19
2014-04-01
Physical Optics Corporation
Chaotic cipher system and method for secure communication
US8917871B2
( en )
*
2010-06-18
2014-12-23
Empire Technology Development Llc
Asymmetrical chaotic encryption
CN101977112A
( en )
2010-11-04
2011-02-16
å¦é¨å¤§å¦
Public key cipher encrypting and decrypting method based on neural network chaotic attractor
US20160350648A1
( en )
*
2014-11-07
2016-12-01
Microsoft Technology Licensing, Llc.
Neural networks for encrypted data
US20160357980A1
( en )
*
2015-06-04
2016-12-08
Microsoft Technology Licensing, Llc
Secure storage and sharing of data by hybrid encryption using predefined schema
US10417650B1
( en )
*
2015-12-04
2019-09-17
Google Llc
Distributed and automated system for predicting customer lifetime value
US20200285983A1
( en )
*
2019-03-04
2020-09-10
Iocurrents, Inc.
Data compression and communication using machine learning
Non-Patent Citations (1)
* Cited by examiner, â Cited by third party
Title
Kaur H. et al. " Cryptography Using Chaotic Neural Network "; International Journal of Information Technology and Knowledge Management, vol. 4, No. 2; Publication [online]. Dec. 2011 [retrieved Feb. 1, 2018]. Retrieved from the Internet: pp. 417-422.
Cited By (9)
* Cited by examiner, â Cited by third party
Publication number
Priority date
Publication date
Assignee
Title
US20240204984A1
( en )
*
2022-12-20
2024-06-20
New Keys Lab Ltd.
Chaotic-based encryption
US12413386B2
( en )
*
2022-12-20
2025-09-09
New Keys Lab Ltd.
Chaotic-based encryption
US20250007686A1
( en )
*
2023-06-30
2025-01-02
Scatr Llc
Network traffic obfuscation
US12335160B2
( en )
2023-06-30
2025-06-17
Scatr Llc
Secure data routing with dynamic packet spoofing
US12432042B2
( en )
*
2023-06-30
2025-09-30
Scatr, Corp
Network traffic obfuscation
US12519631B2
( en )
2023-06-30
2026-01-06
Scatr Corp
Out of band key exchange
US12567966B2
( en )
2023-06-30
2026-03-03
Scatr Corp
Endpoint validation security
US12519755B2
( en )
2023-07-28
2026-01-06
Scatr Corp
Secure data routing and randomization in windows
US12615284B2
( en )
2024-01-24
2026-04-28
Scatr, Corp
Optimizing network traffic obfuscation based on aggregated network performance
Also Published As
Publication number
Publication date
WO2018119315A1
( en )
2018-06-28
US20200099508A1
( en )
2020-03-26
Similar Documents
Publication
Publication Date
Title
US20200099508A1
( en )
2020-03-26
Hybrid encryption for cyber security of control systems
JP6448668B2
( en )
2019-01-09
Password-based authentication
US11256478B2
( en )
2022-02-22
Method for securing a cryptographic process with SBOX against high-order side-channel attacks
CN102227887A
( en )
2011-10-26
Method for generating encryption/decryption key
WO2005041474A1
( en )
2005-05-06
Authentication system, and remotely distributed storage system
CN109039596B
( en )
2022-12-06
White-box implementation with scrambling circuitry
JP2016167037A
( en )
2016-09-15
Cipher processing device, cipher processing method, and cipher processing program
Mousavi et al.
2021
Security of Internet of Things using RC4 and ECC algorithms (case study: smart irrigation systems)
CA2639649A1
( en )
2010-01-21
Cryptography method and system
GB2529633A
( en )
2016-03-02
Password-based generation and management of secret cryptographic keys
US7779272B2
( en )
2010-08-17
Hardware cryptographic engine and encryption method
Almoysheer et al.
2021
Enhancing Cloud Data Security using Multilevel Encryption Techniques.
CN114679270B
( en )
2022-09-06
Data cross-domain encryption and decryption method based on privacy calculation
Nutalapati
2018
Advanced Data Encryption Techniques for Secure Cloud Storage in Fintech Applications
Qian et al.
2019
A trusted-ID referenced key scheme for securing SCADA communication in iron and steel plants
Toorani et al.
2011
A secure cryptosystem based on affine transformation
Malathy et al.
2025
A secure framework for multimedia transmission in medical images using DNA cryptography
CN111464304B
( en )
2021-04-20
Hybrid encryption method and system for controlling system network security
Priyadharshini et al.
2022
Efficient Key Management System Based Lightweight Devices in IoT.
Daddala et al.
2017
Design and implementation of a customized encryption algorithm for authentication and secure communication between devices
Nazarov et al.
2019
An architecture model for active cyber attacks on intelligence info-communication systems: Application based on advance system encryption (AES-512) using pre-encrypted search table and pseudo-random Functions (PRFs)
Riyadi et al.
2021
The Dynamic Symmetric Four-Key-Generators System for Securing Data Transmission in the Industrial Control System.
Tayal et al.
2016
Analysis of various cryptography techniques: a survey
Sathwik et al.
2025
Securing the Quantum Transition: A Cumulative Review of RSA, AES, Classical Hybrid Cryptography, and Post-Quantum Systems
Vadladi et al.
2024
FPGA Enactment of Biological Feature Based Authentication Algorithm Using Elliptic Curve Cryptography for IoT Communication
Legal Events
Date
Code
Title
Description
2019-06-20
FEPP
Fee payment procedure
Free format text : ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY
2019-07-03
FEPP
Fee payment procedure
Free format text : ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY
2021-01-28
STPP
Information on status: patent application and granting procedure in general
Free format text : NON FINAL ACTION MAILED
2021-04-08
STPP
Information on status: patent application and granting procedure in general
Free format text : RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER
2021-05-19
STPP
Information on status: patent application and granting procedure in general
Free format text : FINAL REJECTION MAILED
2021-07-08
STPP
Information on status: patent application and granting procedure in general
Free format text : RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER
2021-07-15
STPP
Information on status: patent application and granting procedure in general
Free format text : NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS
2021-10-19
AS
Assignment
Owner name : UNIVERSITY OF HAWAII, HAWAII
Free format text : ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GHORBANI, REZA;REEL/FRAME:057835/0248
Effective date : 20211018
2021-10-21
STPP
Information on status: patent application and granting procedure in general
Free format text : PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED
2021-11-03
STCF
Information on status: patent grant
Free format text : PATENTED CASE
2025-07-14
FEPP
Fee payment procedure
Free format text : MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY
2025-12-29
LAPS
Lapse for failure to pay maintenance fees
Free format text : PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY
2025-12-29
STCH
Information on status: patent discontinuation
Free format text : PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362
2026-01-20
FP
Lapsed due to failure to pay maintenance fee
Effective date : 20251123