MIRACL (software)
Encyclopedia
MIRACL is an arbitrary-precision arithmetic
software package developed by Shamus Software. It is often used in encryption
and number theory
programs. The source code of this library is publicly available and it can be used for free for educational and non-commercial use. However, it is not considered free software
because it requires a fee for commercial use.
such as :
Arbitrary-precision arithmetic
In computer science, arbitrary-precision arithmetic indicates that calculations are performed on numbers whose digits of precision are limited only by the available memory of the host system. This contrasts with the faster fixed-precision arithmetic found in most ALU hardware, which typically...
software package developed by Shamus Software. It is often used in encryption
Encryption
In cryptography, encryption is the process of transforming information using an algorithm to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key. The result of the process is encrypted information...
and number theory
Number theory
Number theory is a branch of pure mathematics devoted primarily to the study of the integers. Number theorists study prime numbers as well...
programs. The source code of this library is publicly available and it can be used for free for educational and non-commercial use. However, it is not considered free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
because it requires a fee for commercial use.
Features
The MIRACL library implements algorithms for arbitrary-precision arithmetic and cryptographyCryptography
Cryptography is the practice and study of techniques for secure communication in the presence of third parties...
such as :
- Algorithms for elliptic curve cryptographyElliptic curve cryptographyElliptic curve cryptography is an approach to public-key cryptography based on the algebraic structure of elliptic curves over finite fields. The use of elliptic curves in cryptography was suggested independently by Neal Koblitz and Victor S...
. - Conventional Cryptography algorithms: AESAdvanced Encryption StandardAdvanced Encryption Standard is a specification for the encryption of electronic data. It has been adopted by the U.S. government and is now used worldwide. It supersedes DES...
, SHA-1, SHA-256,... - RSA algorithms.
- Experimental implementations of ID-based cryptographyID-based cryptographyID-based encryption is an important primitive of ID-based cryptography. As such it is a type of public-key encryption in which the public key of a user is some unique information about the identity of the user...
.