• DocumentCode
    2565743
  • Title

    A mathematical co-processor of modular arithmetic based on a FPGA

  • Author

    Bautista, Joel Noyola ; Alvarado-Nava, Oscar ; Pérez, Felipe Monroy

  • Author_Institution
    Dept. de Electron., Univ. Autonoma Metropolitana, México City, Mexico
  • fYear
    2012
  • fDate
    13-15 June 2012
  • Firstpage
    32
  • Lastpage
    37
  • Abstract
    Modern cryptographic systems of public key require multiplication and modular exponentiation of large integers represented in the range of 512 to 2048 bits. If the operations are carried out programming a traditional computer system, the time processing is quite long, because integers represented with more that 32 or 64 bits cannot be processed directly in the functional units of a general purpose CPU. In that case, it is necessary to separate the calculation in parts by developing software for arrays of integers of 32 bits. Known CAS, such as MATHEMATICA© or MAPLE© handle multiplication and modular exponentiation by creating special data types and using efficient algorithms for improving the calculation time. It is known that Montgomery algorithm for modular multiplication is one of the fastest methods for calculating a · b mod n, for large a, b and n. Through programmable devices such as FPGA´s, it is possible the implementation of digital circuits for carrying out efficiently arithmetic operations taking advantage of the intrinsic parallelism of the hardware. We present the design of a mathematical co-processor of integer arithmetic for numbers represented with 1024 bits in a FPGA. The co-processor carries out modular multiplication trough the hardware implementation of Montgomery´s algorithm, accelerating so, operations in cryptographic systems. The co-processor was integrated to a traditional computing system by means of a computer bus system.
  • Keywords
    coprocessors; digital arithmetic; field programmable gate arrays; mathematical analysis; public key cryptography; FPGA; MAPLE; MATHEMATICA; Montgomery algorithm; cryptographic systems; integer arithmetic; integer arrays; mathematical coprocessor; modular arithmetic; public key require modular exponentiation; public key require multiplication exponentiation; Algorithm design and analysis; Delta modulation; Field programmable gate arrays; Hardware; Random access memory; Registers; Vectors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Technologies Applied to Electronics Teaching (TAEE), 2012
  • Conference_Location
    Vigo
  • Print_ISBN
    978-1-4673-2485-4
  • Type

    conf

  • DOI
    10.1109/TAEE.2012.6235402
  • Filename
    6235402