BITWISE HOMOMORPHIC OPERATIONS ON FLOATING POINT NUMBERS
Keywords:
Homomorphic encryption, cryptographic protection, methods and algorithms, floating point numbers, IEEE 754 standardAbstract
Homomorphic cryptography is a special kind of cryptography that allows you to perform operations
on encrypted data without first decrypting it. Due these features, homomorphic cryptography
can be effectively used to perform secure cloud computing. To solve various applied problems,
support for all mathematical operations is required, as well as support for rational numbers in order
to effectively implement the division operation and reduce the loss of accuracy during rounding of the
result. Also, to improve the accuracy of calculations, it is necessary to use numbers in floating point
format, but this topic has not been sufficiently researched. Support for all arithmetic and logical operations
within a single homomorphic encryption scheme will allow us to perform a homomorphic
implementation of almost any data processing algorithm, and the representation of numbers in floating
point format will improve the accuracy of calculations and the maximum dimension of the processed
data with the same amount of memory consumed, when compared with bitwise homomorphic algorithm over integers. For example, to solve SLAE by the Gaussian method, it is necessary to support
the operations of difference, multiplication, division, and comparison of numbers, and it is also
necessary to represent numbers in floating point format, otherwise, during the back substitution after
each division operation, rounding of the result will occur, and the error will accumulate. This article
discusses the possibility of performing homomorphic bitwise operations on numbers in floating point
format. The most common floating-point representation format, IEEE 754, is considered. Alternative
solutions for homomorphic processing of rational numbers are considered. An analysis is made of
the possibility of implementing bitwise homomorphic arithmetic operations - addition, difference,
multiplication and division, over homomorphically encrypted numbers in floating point format. Difficulties
arising in the implementation of homomorphic arithmetic operations are analyzed, methods
for solving them are considered, and the resulting algorithms for homomorphically encrypted data
are presented. The analysis of the results obtained is carried out and recommendations are given
regarding the choice of a method for representing homomorphically encrypted data, depending on
the problem being solved.








