The present invention relates to a method for coding a first data stream and a method for decoding a second data stream wherein the coding is the result of comparing the first data stream with a third data stream formed by a pseudorandom sequence by means of an exclusive comparison operation (XOR). Specifically, the invention relates to the methods based on hyperchaotic coding methods for generating the pseudorandom sequences used in coding and decoding.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A method for coding or decoding a message, the method includes computer instructions implemented in a coding or a decoding module having a processor and a memory, the method comprising: generating a pseudorandom sequence used to code or decode the message using, respectively, the coding module or the decoding module, wherein the pseudorandom sequence used to code the message is the same as the pseudorandom sequence used to decode the coded message, and wherein generating the pseudorandom sequence includes: a) providing a differential equation of initial value x′=f(x,t); b) providing an initial value for the differential equation x 0 =x(t 0 ); c) providing an integration step δ t for the differential equation for time discretization t k =t 0 +k·δ t ,k=1,2,3 . . . ; d) carrying out the numerical integration of the differential equation from the initial value and with the step δ t for obtaining the approximation to solution x k =x(t k ); e) generating a first sequence of values by sampling the values x k numerically representable in floating point in the form of 0.d 0 d 1 d 2 d 3 d 4 . . . d r . . . d w ·10 e , e being the exponent, w the length of the mantissa, d 0 the most representative digit of the mantissa and d r a digit such that it and all the digits to its left of the approximation to solution x k coincide with the exact value of the solution of the differential equation; f) generating the pseudorandom sequence with digits d i . . . d r from a selection of the sequence of values x k wherein i is a predetermined integer value verifying 0<i≦r; g) wherein the pseudorandom sequence is expanded into a sequence with a greater number of elements according to the following steps: pre-establishing a positive integer value DIM; constructing two vectors V 1 and V 2 of dimension DIM of integers from the pseudorandom sequence; constructing an expansion matrix M e of dimension DIM×DIM from the product V 1 ·V 2 T wherein V 2 T is the transposed vector of V 2 ; and generating the expanded sequence by means of concatenating the rows of the matrix M e .
A method for encoding or decoding a message, implemented as computer instructions in a coding/decoding module, generates a pseudorandom sequence. The same pseudorandom sequence is used for both encoding and decoding. The sequence generation involves solving a differential equation (x' = f(x,t)) with an initial value (x0) and a fixed integration step (delta t). This numerical integration yields approximate solutions (xk) representable as floating-point numbers. A sequence of values is created by sampling the values xk. A pseudorandom sequence is generated by selecting digits from a specific location in the floating-point representation. The sequence is expanded by creating two integer vectors (V1, V2) of dimension DIM. An expansion matrix (Me) of DIM x DIM is constructed from the product of V1 and the transpose of V2. The final expanded sequence is created by concatenating the rows of Me.
2. The method according to claim 1 , wherein the numerical integration of a system of n differential equations, x′ s =f s (x 1 , x 2 , . . . x n , p 1 , p 2 , . . . p m , t), s=1 . . . n, is carried out in step d), n also being the number of unknowns, and containing m parameters, p j , j=1 . . . m, such that the pseudorandom sequence in step f) is generated from one of the n variables preselected from the system of differential equations.
The method for encoding or decoding a message, as described previously, where the pseudorandom sequence generation uses a system of n differential equations (x's = fs(x1, x2, ..., xn, p1, p2, ..., pm, t), s=1...n) containing m parameters (pj, j=1...m). The pseudorandom sequence is generated using values derived from one of the 'n' variables selected from the system of differential equations. In other words, instead of a single differential equation, a system of equations is used, and the pseudorandom sequence is based on one of the variables in that system.
3. The method according to claim 1 , wherein after step f), each digit d is depicted in binary, with a pre-established word size D1, the concatenation of the digits forming a binary sequence.
The method for encoding or decoding a message, as described previously, where after generating the pseudorandom sequence, each digit 'd' of the sequence is converted into a binary representation using a pre-established word size D1. These binary representations are then concatenated to form a complete binary sequence. Effectively, each digit is represented in binary, and these binary numbers are strung together.
4. The method according to claim 1 , wherein after step f), each digit d is made to correspond to a binary expression, the concatenation of the digits forming a binary sequence.
The method for encoding or decoding a message, as described previously, where each digit 'd' of the generated pseudorandom sequence is mapped to a specific binary expression. The concatenation of these binary expressions forms a binary sequence. This is similar to Claim 3, but allows for non-standard binary representations of digits.
5. The method according to claim 3 , wherein a word size D 2 is pre-established and integer digits are formed from the binary sequence using words of D 2 bits.
The method for encoding or decoding a message with binary representation of digits, as described previously where each digit 'd' is depicted in binary with a pre-established word size D1, the concatenation of the digits forming a binary sequence, a pre-established word size D2 is used to group the binary sequence into integer digits, creating a new sequence of integer digits derived from the binary stream.
6. The method according to claim 1 , wherein: a value K 1 is pre-established; and before generating the expanded sequence each element of the matrix M e is substituted with the value resulting from calculating the K 1 -module thereof.
The method for encoding or decoding a message, as described previously, where prior to expanding the pseudorandom sequence using vectors and matrix operations, a value K1 is pre-established. Each element of the expansion matrix Me is then replaced by its modulo K1 value. This limits the range of values in the expanded sequence.
7. The method according to claim 1 , wherein: in addition to the vectors V 1 and V 2 , a vector V 3 of dimension DIM of integers is constructed from the pseudorandom sequence generated; and on each of the rows of the matrix M e , before generating the expanded sequence by means of concatenating the rows of the matrix M e , rearranging the sequence of the integers in each of the rows of M e by circularly rotating the position of the integers in a pre-established direction, according to the integer value established by the same row of the vector V 3 .
The method for encoding or decoding a message, as described previously, incorporates a third vector V3 of dimension DIM, also constructed from the pseudorandom sequence. Before concatenating the rows of the expansion matrix Me to generate the expanded sequence, the integers in each row of Me are circularly shifted (rotated) by an amount determined by the corresponding integer value in that row of the vector V3. The direction of the rotation is pre-established.
8. The method according to claim 1 , wherein: a value K 2 , preferably the DIM value, is pre-established; and each element of the vector V 3 is substituted with the value resulting from calculating the modulus-K 2 thereof.
The method for encoding or decoding a message using circular row shifting, as described previously where in addition to the vectors V 1 and V 2 , a vector V 3 of dimension DIM of integers is constructed from the pseudorandom sequence generated; and on each of the rows of the matrix M e , before generating the expanded sequence by means of concatenating the rows of the matrix M e , rearranging the sequence of the integers in each of the rows of M e by circularly rotating the position of the integers in a pre-established direction, according to the integer value established by the same row of the vector V 3 , a value K2 is pre-established, (preferably DIM). Each element of the vector V3 is then replaced by its modulo K2 value.
9. The method according to claim 1 , wherein for generating the expanded sequence by means of concatenating the rows of the matrix M e only the values of each row are calculated to avoid storing the complete matrix M e .
The method for encoding or decoding a message, as described previously, streamlines the expansion process. Instead of computing and storing the entire expansion matrix Me, it calculates only the values of each row as needed for concatenation, avoiding the memory overhead of storing the complete matrix.
10. A method for coding a data stream for the transmission of said data by means of a coded stream wherein the coding is the result of comparing the data stream with a second data stream formed by a pseudorandom sequence by means of an exclusive comparison operation (XOR), or a method for decoding a coded data stream wherein the decoding is the result of comparing the coded data stream with a second data stream formed by a pseudorandom sequence by means of an exclusive comparison operation (XOR), characterized in that the generation of the pseudorandom sequence is made by means of a method according to claim 1 .
A method for encoding a data stream for transmission using an exclusive OR (XOR) operation with a pseudorandom sequence, or decoding a coded data stream using an XOR operation with a pseudorandom sequence, uses the previously described method for generating the pseudorandom sequence. The pseudorandom sequence generation involves solving a differential equation (x' = f(x,t)) with an initial value (x0) and a fixed integration step (delta t). This numerical integration yields approximate solutions (xk) representable as floating-point numbers. A sequence of values is created by sampling the values xk. A pseudorandom sequence is generated by selecting digits from a specific location in the floating-point representation. The sequence is expanded by creating two integer vectors (V1, V2) of dimension DIM. An expansion matrix (Me) of DIM x DIM is constructed from the product of V1 and the transpose of V2. The final expanded sequence is created by concatenating the rows of Me.
12. The method according to claim 11 , wherein the exchange channel is encrypted by means of public key.
The method for encoding/decoding a message with XOR and a pseudorandom sequence, utilizes an exchange channel which is encrypted using a public key encryption method.
13. A system for coding messages for transmission on a transmission channel between a first device at a first end of a communication and a second device at a second end of the communication, the system comprising: a message coder at the first device configured to code a message for transmission to, and decoding at, the second device, wherein coding the message using the message coder includes: comparing a pseudorandom coding sequence to the message using an exclusive comparison operation (XOR), wherein the pseudorandom coding sequence is independently generated at the first device and at the second device enabling coding and decoding of the message without transmission of a key; wherein the message coder at the first device is configured to generate the pseudorandom coding sequence by: providing a differential equation of initial value x′=f(x,t); providing an initial value for the differential equation x 0 =x(t 0 ); providing an integration step δ t for the differential equation for time discretization t k =t 0 +k·δ t , k=1,2,3 . . . ; carrying out the numerical integration of the differential equation from the initial value and with the step δ t for obtaining the approximation to solution x k =x(t k ); generating a first sequence of values by sampling the values x k numerically representable in floating point in the form of 0.d 0 d 1 d 2 d 3 d 4 . . . d r . . . d w ·10 e , e being the exponent, w the length of the mantissa, d 0 the most representative digit of the mantissa and d r a digit such that it and all the digits to its left of the approximation to solution x k coincide with the exact value of the solution of the differential equation; generating the pseudorandom coding sequence with digits d i . . . d r from a selection of the sequence of values x k wherein i is a predetermined integer value verifying 0<i≦r, and wherein the pseudorandom coding sequence is expanded into a sequence with a greater number of elements by: pre-establishing a positive integer value DIM; constructing two vectors V 1 and V 2 of dimension DIM of integers from the pseudorandom sequence; constructing an expansion matrix M e of dimension DIM×DIM from the product V 1 ·V 2 T wherein V 2 T is the transposed vector of V 2 ; and generating the expanded sequence by means of concatenating the rows of the matrix M e .
A system for encoding messages for transmission between two devices comprises a message coder at the first device which codes a message for transmission. The message is coded by comparing it to a pseudorandom coding sequence using XOR. Critically, this pseudorandom sequence is independently generated at both devices, allowing for coding and decoding without transmitting a key. The pseudorandom sequence generation involves solving a differential equation (x' = f(x,t)) with an initial value (x0) and a fixed integration step (delta t). This numerical integration yields approximate solutions (xk) representable as floating-point numbers. A sequence of values is created by sampling the values xk. A pseudorandom sequence is generated by selecting digits from a specific location in the floating-point representation. The sequence is expanded by creating two integer vectors (V1, V2) of dimension DIM. An expansion matrix (Me) of DIM x DIM is constructed from the product of V1 and the transpose of V2. The final expanded sequence is created by concatenating the rows of Me.
14. A system for decoding coded messages received on a transmission channel established between first device at a first end of a communication and a second device at a second end of the communication, the system comprising: a message decoder at the second device configured to decode a coded message received from the second device, wherein decoding the coded message using the message decoder includes: comparing a pseudorandom coding sequence to the coded message using an exclusive comparison operation (XOR), wherein the pseudorandom coding sequence is independently generated at the first device and at the second device enabling coding and decoding of the message without transmission of a key; wherein the message decoder at the second device is configured to generate the pseudorandom coding sequence by: providing a differential equation of initial value x′=f(x,t); providing an initial value for the differential equation x 0 =x(t 0 ); providing an integration step δ t for the differential equation for time discretization t k =t 0 +k·δ t ·k=1,2,3 . . . ; carrying out the numerical integration of the differential equation from the initial value and with the step δ t for obtaining the approximation to solution x k =x(t k ); generating a first sequence of values by sampling the values x k numerically representable in floating point in the form of 0.d 0 d 1 d 2 d 3 d 4 . . . d r . . . d w ·10 e , e being the exponent, w the length of the mantissa, d 0 the most representative digit of the mantissa and d r a digit such that it and all the digits to its left of the approximation to solution x k coincide with the exact value of the solution of the differential equation; and generating the pseudorandom coding sequence with digits d i . . . d r from a selection of the sequence of values x k wherein i is a predetermined integer value verifying 0<i≦r, and wherein the pseudorandom coding sequence is expanded into a sequence with a greater number of elements by: pre-establishing a positive integer value DIM; constructing two vectors V 1 and V 2 of dimension DIM of integers from the pseudorandom sequence; constructing an expansion matrix M e of dimension DIM×DIM from the product V 1 ·V 2 T wherein V 2 T is the transposed vector of V 2 ; and generating the expanded sequence by means of concatenating the rows of the matrix M e .
A system for decoding coded messages received from another device comprises a message decoder that decodes the message using XOR with a pseudorandom coding sequence. This pseudorandom sequence is independently generated at both sender and receiver, meaning no key transmission is needed. The sequence generation involves solving a differential equation (x' = f(x,t)) with an initial value (x0) and a fixed integration step (delta t). This numerical integration yields approximate solutions (xk) representable as floating-point numbers. A sequence of values is created by sampling the values xk. A pseudorandom sequence is generated by selecting digits from a specific location in the floating-point representation. The sequence is expanded by creating two integer vectors (V1, V2) of dimension DIM. An expansion matrix (Me) of DIM x DIM is constructed from the product of V1 and the transpose of V2. The final expanded sequence is created by concatenating the rows of Me.
15. A communication system for providing secure communication of messages between a first terminal and a second terminal, the system comprising: a message coder at the first terminal configured to generate an encrypted message for transmission to the second terminal by comparing a message with an encryption sequence using an exclusive comparison operation (XOR); a message decoder at the second terminal configured to decrypt the encrypted message received by the first terminal by comparing the encrypted message with a decryption sequence using an exclusive comparison operation (XOR); and wherein the message coder and message decoder are configured to independently generate the encryption and decryption sequences at the first terminal and at the second terminal enabling encrypting and decrypting of the message without transmission of a key, and wherein the encryption and decryption sequences are identical pseudorandom sequences generated at the message coder and at the message decoder by: providing a differential equation of initial value x′=f(x,t); providing an initial value for the differential equation x 0 =x(t 0 ); providing an integration step δ t for the differential equation for time discretization t k =t 0 +k·δ t , k=1,2,3 . . . ; carrying out the numerical integration of the differential equation from the initial value and with the step δ t for obtaining the approximation to solution x k =x(t k ); generating a first sequence of values by sampling the values x k numerically representable in floating point in the form of 0.d 0 d 1 d 2 d 3 d 4 . . . d r . . . d w ·10 e , e being the exponent, w the length of the mantissa, d 0 the most representative digit of the mantissa and d r a digit such that it and all the digits to its left of the approximation to solution x k coincide with the exact value of the solution of the differential equation; and generating the pseudorandom sequence with digits d i . . . d r from a selection of the sequence of values x k wherein i is a predetermined integer value verifying 0<i≦r, and wherein the pseudorandom sequence is expanded into a sequence with a greater number of elements by: pre-establishing a positive integer value DIM; constructing two vectors V 1 and V 2 of dimension DIM of integers from the pseudorandom sequence; constructing an expansion matrix M e of dimension DIM×DIM from the product V 1 ·V 2 T wherein V 2 T is the transposed vector of V 2 ; and generating the expanded sequence by means of concatenating the rows of the matrix M e .
A communication system for secure message exchange between two terminals consists of a message coder at the first terminal that encrypts the message using XOR with an encryption sequence. A message decoder at the second terminal decrypts the received message using XOR with a decryption sequence. The key aspect is that both the encryption and decryption sequences are independently generated at each terminal, eliminating the need for key transmission. The encryption and decryption sequences are identical pseudorandom sequences. The pseudorandom sequence generation involves solving a differential equation (x' = f(x,t)) with an initial value (x0) and a fixed integration step (delta t). This numerical integration yields approximate solutions (xk) representable as floating-point numbers. A sequence of values is created by sampling the values xk. A pseudorandom sequence is generated by selecting digits from a specific location in the floating-point representation. The sequence is expanded by creating two integer vectors (V1, V2) of dimension DIM. An expansion matrix (Me) of DIM x DIM is constructed from the product of V1 and the transpose of V2. The final expanded sequence is created by concatenating the rows of Me.
16. The communication system according to claim 15 , wherein the pseudorandom sequences generated at the first terminal and the second terminal are the same.
The communication system for secure communication where both the encryption and decryption sequences are independently generated at each terminal as previously described, ensures that the pseudorandom sequences generated at the first and second terminals are the same.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
May 23, 2013
May 16, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.