Hardware-software co-design of embedded systems: the POLIS approach
Hardware-software co-design of embedded systems: the POLIS approach
Practical genetic algorithms
A method for obtaining digital signatures and public-key cryptosystems
Communications of the ACM
VHDL: Analysis and Modeling of Digital Systems
VHDL: Analysis and Modeling of Digital Systems
Systolic Modular Multiplication
IEEE Transactions on Computers
Using Genetic Algorithms to Solve NP-Complete Problems
Proceedings of the 3rd International Conference on Genetic Algorithms
Minimal Addition Chain for Efficient Modular Exponentiation Using Genetic Algorithms
IEA/AIE '02 Proceedings of the 15th international conference on Industrial and engineering applications of artificial intelligence and expert systems: developments in applied artificial intelligence
Montgomery Modular Exponentiation on Reconfigurable Hardware
ARITH '99 Proceedings of the 14th IEEE Symposium on Computer Arithmetic
Two Hardware Implementations for the Montgomery Modular Multiplication: Sequential versus Parallel
Proceedings of the 15th symposium on Integrated circuits and systems design
Modern development methods and tools for embedded reconfigurable systems: A survey
Integration, the VLSI Journal
International Journal of Parallel Programming - Special issue on the 19th international symposium on computer architecture and high performance computing (SBAC-PAD 2007)
Hi-index | 0.00 |
Most of cryptographic systems are based on modular exponentiation, wherein the operands are considerably large. Generally, modular exponentiation is implemented using a chain of modular multiplications. One way of improving the throughput of a cryptographic system implementation is reducing the number of the required modular multiplications. Given the exponent, finding the minimal number of multiplications that are necessary to reach the exponentiation results is a hard problem. We take advantage of an evolutionary stochastic process, commonly called genetic algorithms, to compute minimal addition chains, allow us to reduce drastically the number of the required modular multiplications. In this paper, we investigate two different ways to implement modular exponentiation based on the evolved addition chain: the first approach consists of implementing all the exponentiation operation on hardware and the second approach combines software and hardware. While the first approach attempts to optimise the encryption/decryption throughput regardless of the cost of system implementation, the second attempts to reach a balance between the throughput and the cost of the implementation.