Modern algorithms for symmetric and asymmetric encryptions are not suitable to provide security of data that needs data processing. They cannot perform calculations over encrypted data without first decrypting it when risks are high. Residue Number System (RNS) as a homomorphic encryption allows ensuring the confidentiality of the stored information and performing calculations over encrypted data without preliminary decoding but with unacceptable time and resource consumption. An important operation for encrypted data processing is a number comparison. In RNS, it consists of two steps: the computation of the positional characteristic of the number in RNS representation and comparison of its positional characteristics in the positional number system. In this paper, we propose a new efficient method to compute the positional characteristic based on the approximate method. The approximate method as a tool to compare numbers does not require resource-consuming non-modular operations that are replaced by fast bit right shift operations and taking the least significant bits. We prove that in case when the dynamic range of RNS is an odd number, the size of the operands is reduced by the size of the module. If one of the RNS moduli is a power of two, then the size of the operands is less than the dynamic range. We simulate proposed method in the ISE Design Suite environment on the FPGA Xilinx Spartan-6 SP605 and show that it gains 31% in time and 37% in the area on average with respect to the known approximate method. It makes our method efficient for hardware implementation of cryptographic primitives constructed over a prime finite field.
Despite all the benefits a cloud data storages offer to customers, there is a high risk of breach of confidentiality, integrity, and availability related with the uncertainty of errors and falsifications, loss of information, denial of access for a long time, information leakage, conspiracy, and technical failures. In this article, we propose a configurable, reliable, and secure distributed data storage scheme with improved data redundancy, reliability, and encoding/decoding speed. Our system utilizes a Polynomial Residue Number System (PRNS) with a new method of error correction codes and secret sharing schemes. We introduce the concept of an approximate value of a rank (AR) of a polynomial. It reduces the computational complexity of the encoding/decoding and PRNS coefficients size. Based on the properties of the approximate value and PRNS, we introduce the AR-PRNS method for error detection, correction, and controlling computational results with capabilities of scalable parallel computing. We provide a theoretical basis to configure and optimize the redundancy of stored data and encoding/decoding speed to cope with different objective preferences, workloads, and storage properties. Theoretical analysis shows that, by appropriate selection of AR-PRNS parameters, the proposed scheme increases the safety, reliability, and reduces the overhead of data storage.
In this article we propose the implementation of different RNS moduli sets on FPGA. We also reviewed methods for calculation of remainder of division by modules of special form. In addition, the application of logical sharing schemes with effective distributing of FPGA resources is presented in the paper. We modified the algorithm of residue calculation by using distributed arithmetic's methods and shared resources of FPGA. Proposed algorithm allows to improve scheme performance by 14% while hardware costs were increased only by 1%. The simulation of described algorithms of residues finding is performed by FPGA Xilinx Spartan-6 SP605.
Fully Homomorphic Encryption (FHE) permits processing information in the form of ciphertexts without decryption. It can ensure the security of information in common technologies used today, such as cloud computing, the Internet of Things, and machine learning, among others. A primary disadvantage for its practical application is the low efficiency of sign and comparison operations. Several FHE schemes use the Residue Number System (RNS) to decrease the time complexity of these operations. Converting from the RNS to the positional number system and calculating the positional characteristic of a number are standard approaches for both operations in the RNS domain. In this paper, we propose a new method for comparing numbers and determining the sign of a number in RNS. We focus on the even ranges that are computationally simple due to their peculiarities. We compare the performance of several state-of-art algorithms based on an implementation in C++ and relatively simple moduli with a bit depth from 24 to 64 bits. The experimental analysis shows a better performance of our approach for all the test cases; it improves the sign detection between 1.93 and 15.3 times and the number comparison within 1.55–11.35 times with respect to all the methods and configurations.
The article considers the application of the Residue Number System (RNS) for matrix calculations. This can be useful to improve the performance and reliability of calculations in digital signal processing and artificial neural networks. We have reviewed the algorithms for calculating the scalar product. Their modeling and comparison with the standard means of the NumPy library of the Python are carried out. Methods of translation between the positional numeral system and RNS are described and simulated. Conclusions about the applicability of methods for calculations on Python are made. We have present the fault-tolerant scheme for error detection and correction. The examples of error occurrence and their correction by the presented scheme are considered.
About Me
Junior Researcher, North Caucasus Federal University
Junior Researcher, North Caucasus Federal University