Rounding Theorem the Possibility of Applying the Cryptosystems on the Decimal Numbers

: The possibility of using the decimal numbers in cryptography as the base of the encryption and decryption is proposed by introducing the "Rounding Theorem". Until now, cryptosystems are used the integer numbers to avoid the fractions of the decimal numbers. That is to avoid losing the original plaintext after the decryption. This theorem is proved that there is no lost for any bit of information during communications when using a cryptosystem that is based on decimal numbers. The purpose of moving from integer numbers to decimal numbers is the decimal numbers are much faster during calculations than the integer numbers. We design a new function called "The Rounding off Function", which plays the primary role in proving this theorem. The security of using the decimal numbers in cryptosystems is studied and analyzed.


INTRODUCTION
This paper is introduced that there is no losing of the information when the cryptosystem depends on decimal numbers.Using the decimal numbers in cryptography gives the risk of losing some information of the plaintext (as an integer number) during the encryption and the decryption; as we all know that the decimal numbers are not specific numbers as the integers.There is always a fraction in decimal numbers, especially when we talk about the recurring type such as ... 4747474747 .0 and the nonrecurring or not exact type such as pi.Despite this fact, the questions are, if the plaintext is an integer number then, is there possibility for constructing a secure cryptosystem depends on the decimal numbers and which concept can control the fraction of the decimal numbers?Mathematically , that means there would be some fractions.But, in either case of the real number definition, the rounding off will handle the calculations and put it as 43567 exactly.Our observation is, these fractions cannot change the mathematical result.The question is, why these differences in the result should stay under the controlling of the theoretical result?In our example, why the computer cannot gives the result either as 8976120655 .43567 or as 10436205 .43566 where it is obvious, for these two numbers, the result after the rounding off would be either 43568 or 43566 respectively, which they are not the same as the mathematical (theoretical) result, there would be some differences These differences lie in the interval (0,1).Here, we prove that these "differences" cannot overstep out of the controlling of the mathematical result and we prove that it will be not possible for the computer to give the last two numbers through introducing a theorem called "Rounding theorem".For this concept, we design a function called "Rounding off function" that plays the main role of proving this theorem.Our concern relates to involve the decimal numbers in the cryptography field, because of the advantages for the security and the speed of the communications regarding this kind of numbers.For instance, when we want to calculate the value 456784 2 , then the time needed is more than 394000 millisecond.From the other hand, and on the same processor, the time needed to calculate the value 456784 .0 2 is less than 1 millisecond.According to this fact, we can compare between using the large prime and integer numbers and using decimal numbers, even if both of the two different types of the numbers have the same key size.The theory of the security of any cryptosystem that is based on the decimal numbers, it depends on the properties of this kind of numbers.The unknown keys are decimal numbers and that means the attacks should be through using the methods of the approximation (numerically).However, the methods of the approximation will not give the exact values, the attacker needs to the exact value of the key with the same number of digits.This strong point does not exist in other cryptosystems that depend on integer numbers because the attacker does not know really how many digits he will lose during the approximation.The methods of recovering the keys in the decimal cryptosystem should depend on numerical methods then, defiantly, the attacker will face the cumulative error.Therefore, he will not get the same decimal number.From the other hand, there are no numerical methods in applying the algorithms of this new decimal cryptosystem, so we can call it as 'one way operation', the user applies the cryptosystem without losing for any bit information, but the attacker will lose some of the information because approximation.This paper contains three sections.In the first section, we define the terms that we use to prove the Rounding theorem [2,3,4,6] .In the second section, we construct a cryptosystem depends on the decimal numbers [1] .In the third section, we discuss the security regarding the decimal numbers [5] .

THE ROUNDING OFF FUNCTION
We use the term "decimal numbers" from the viewpoint of the mathematics not from the viewpoint of the computer.So that, the decimal numbers are the numbers that belong to the uncountable interval ) 1 , 0 ( and they have the expressions would not equal to m exactly.There would be some difference, this difference lie in the interval ) 1 , 0 ( , and these differences disappear when we define them as an integers.Here, in this section we prove that this "differences" cannot overstep out of the controlling of the mathematical result.What we mean by 'the controlling' of the mathematical result is, the computer calculations cannot give the result of ⋅ x x m in a way that makes the decimal part of the number and the last digit of its integer part change the exact value m after applying the rounding off on the number.
We call R the rounding off function.
It is easy to check that R is well-defined function.
Definition 3: For any real number r , we mean by Round(r) is the integer number that resulted after applying the rounding off on r.
where J is the integer part and k 1 k 2 1 j j j j − is the decimal part of the real number r respectively, then , where (.) R is the rounding off function.
if and only if the number ( ) We want to prove the number ( ) gives the same theoretical result only if condition (i) or (ii) is satisfied.The proof will be by using the contradiction.
Rounding theorem concludes that the decimal part that occurs by the computer calculation cannot change the theoretical results as an integer number.
For example, we choose three integer numbers:

THE DECIMAL CRYPTOSYSTEM
Of course, if we want to design a cryptosystem that depends only on the decimal numbers, then we must design it such that it will not depend on group structure, finite field, discrete logarithm or prime numbers.We construct the cryptosystem by using nonlinear function; this function produces the decimal numbers under this cryptosystem.We use the notation J(.); we will call it Jay function to represent this function.All the keys in this cryptosystem are decimal numbers except the plaintext, which is an integer number.
This cryptosystem is symmetric and asymmetric, it depends on a sharing secret key between the users and each one of the users has their private key to construct his public key by using the main equation of the cryptosystem, which is: where, g is the secret key, x is a random decimal number as the private key and Y is the public key.x and Y are changed every block message.That mean the decimal cryptosystem is depended on one time key.Then we construct the encryption and decryption algorithms by assisting of what we call it the encryption key: k which is also random decimal number; so the encryption algorithms are: where, c 1 is decimal number, c 2 is a real number and m is an integer number which represent the plaintext.Then we build the decryption Algorithm as follows: Proof: When the user does the calculation of Eq. 4, then he gets the message m because: by using Eq. 2, we get, This proof should be enough no matter what the type of the numbers are, because the left hand side of the equation is equal to the right hand side.
However, the issue here is not that simple because the calculations have been done by the computer program, there would be fraction, so that we want to make sure that the plaintext before the encryption is the same after the decryption.This point is actually an advantage for the security of the system because the attacker will never know how many digits after the decimal point he will lose after applying any backward substitution.Below we will prove that even with using the computer program, then the decryption algorithm (4) still gives the same integer plaintext, but before we give this prove we have to say that the nature of decimal cryptosystem depends on using the decimal numbers but the calculations is not done numerically or iteratively.That means, there is no numerical method involved with this cryptosystem and each number is used only one time for each block message, so that, there is no cumulative error on the algorithms of this cryptosystem.
Proposition: In the decimal cryptosystem, if the decryption algorithm is c c m 0.j j j j where R(0.j j j j ) 0 That means after the decryption we will get the same integer number that represents the plaintext m.
For example, we give three messages 32541276897621, 67119840812567 and 33681209794882 as a plaintext, we will see below two decryption texts for each plaintext because we apply Eq. 4 separately by using different encryption keys.The advantage of doing this approach is to show that the different decimal parts still give the same plaintext.

THE SECURITY
The security of this new cryptosystem depends on new theory from the viewpoint of the cryptography.As we mentioned in section one, this cryptosystem does not depend on group structure, finite field or discrete logarithmic equation and most importantly, it does not depend on the integer numbers.It depends on nonlinear equation and the concept of the decimal numbers.Practically, the methods of the attack will fail because they will face the dealing with numerical methods to recover the unknown keys because of the nonlinear equations and the decimal numbers, which is the thing that will produce the 'cumulative' error.
The size of the key: For some cryptosystems that are depending on group structure and/or finite field; there is no doubt that the plaintext before the encryption is the same plaintext after the decryption exactly.Also for these cryptosystems, the attacker knows exactly what numbers that he should trial, so that they trend to use a huge size for the keys to increase the possibilities of solving the algorithms that depend on these keys.However, these cryptosystems will be compromised once we have high-speed computers.For the decimal cryptosystem, the attacker has the problem of what exactly the numbers that he should trial.Even if we fixed the digits after the decimal point then still the difficulty in following the numbers that picked randomly by the computer itself and also, the difficulty in following the numbers that resulted from applying the algorithms of this cryptosystem.According to this fact, this theory of the security does not really depend on the size of the key because regardless of the time needed for doing the calculations, the decimal cryptosystem depends on decimal numbers between 0 and 1 which they belong to uncountable set of numbers.Therefore, increasing the size of the key will not increase or decrease the security of the cryptosystem.
The security of algorithms: We have explained in details in section two how the decryption algorithm gives the same plaintext because it is an integer number.If the plaintext was not integer number, then definitely we cannot apply the decimal numbers in cryptography, because as we saw, if we put the plaintext in Eq. ( 4) as a real number then it will not give the same integer plaintext integer number, unless we apply the rounding theorem on it.If the attacker is working with 'numerical methods field' then he can accept a 'small error'.But, he is working with the 'cryptography field' so that he cannot accept any error.This fact will protect the keys of the decimal cryptosystem.
Attack 1: Theoretically, the 'Brute-Force attack' can break the decimal cryptosystem.Practically, this attack will fail because it should deal with the imprecise decimal numbers under the "backward substitution" and this will produce "cumulative and truncation error".Brute-force attack is typically a known-plaintext attack.Now, the attacker will begin with backward substitution by using this information together with the algorithms of the decryption and the public key, so that he will get the private and then the secret keys.Table (3) gives the results of applying this attack, by following the algorithms in section two, the attacker does not get the exact keys, a small error in the first step produce a big error in the last step.We have to mention here that we are using 9 digits after the decimal point just for the purpose of the example.Therefore, the steps of the attack will be: Given the plaintext m : Apply this information on Eq. ( 4) recover the private key will produce 1 a ε + where a is private key and 1 ε is the first error.By using backward substitution again on the public keys algorithms to recover the secret key will produce 2 g ε + where g is secret key and 2 ε is the second cumulative error.This time, 2 ε is not 'small' error.This attack shows us that the attacker cannot apply the rounding theorem on a and g because they are not integer numbers, so that the errors ε 1 and ε 2 will not be zero.Moreover, the relation between the error and the number of digits of the decimal number is directly proportional and finally, the trial and error method might be helpful for the attacker to adjust the keys.Therefore, we can notice that, in the decimal cryptosystem, the attacker have to apply the attack itself and then he have to begin with the adjusting.
Attack 2: Ciphertext-only attack and chosen-ciphertext attack will fail because we change the encryption key for every block message.
Attack 3: All the algorithms of the decimal cryptosystem depend on nonlinear function and the decimal numbers, so that if the attacker wants to choose any algorithm to attack separately then he should use one of the numerical methods.Any numerical method has an error percentage, and he will come back again to the same theory in the first attack.Moreover, the attacker does not have a system of nonlinear equations to recover the unknown variables in each algorithm, which is the only way for him to get the keys without errors.
There is a claim that Newton method can find the solution of the nonlinear equation of decimal cryptosystem.We test this claim and we found that there is no Newton's for nonlinear equation with two variables unless there is a system of equations and even with that, there is no prove until now that this cryptosystem can be solving by using Newton method.Moreover, Newton method is still one of the numerical methods which will also produce error.The approximation or any (fitting method) will not work because the attacker needs exactly the same numbers, not approximated numbers.

CONCLUSION
In the field numerical methods, we can accept the error that occur during applying the methods, because this concept depending on "iterative" procedures.In cryptography, we cannot accept any error.The risk was by using the decimal numbers, we proved that there is no error could be occur in applying the new decimal cryptosystem.We achieve this proof by putting the rounding off operation as a function, so that we could calculate exactly the effect of the decimal numbers and we could control the cases that resulted by using the encryption and decryption through this new concept.

Definition 1 :
Let r be any real number, of integers between 0 and 9.We call the first sequence n 1 i i J = the integer part of the real number r , which is the part before the decimal point, while we call the second sequence of the real number r , which is the part after the decimal point.As we said in section one, mathematically, if we have such like the value: then the result would be m , no matter what the type of the number x is.We want to discuss the result of this value when it should be doing by the computer.The very important note here is, If we definex the results would be respectively 1 and m exactly.But if we give order to the computer program to define x is the same plaintext before the encryption.
number; it means have the integer part and the decimal part.Now by applying Rounding theorem on the equation above we will get:

Table 1
, each time with different x, and we define the output two times, as integer (that means applying the rounding off) and as real number (that means the number as it is).The table below shows the results:

Table 2 :
The decryption algorithm gives the same plaintext

Table 3 :
The numerical and the exact keys under Brute-Force attack