Milagro Crypto Library

The Apache Milagro Crypto Library (MCL) is a completely self-contained, stand alone library for fast, performant pairing cryptography where size implementation is key. Mobile apps, IoT devices and embedded cryptographic applications can all benefit from MCL's mix of performance and speed. MCL is also the base cryptographic service provider for all Milagro services and applications.

MCL is portable - there is no assembly language. The original version is written in C, Java, Javascript, Go and Swift using only generic programming constructs, but AMCL is truly multi-lingual, and new compatible versions will be available in many other languages.

MMCL is small - some libraries boast of having hundreds of thousands of lines of code - MCL has less than 10,000. MCL takes up the minimum of ROM/RAM resources in order to fit into the smallest possible embedded footprint, consistent with other design constraints for an app-centric and IoT world.

Read the Milagro Crypto Library White Paper and get the code on GitHub.


Source code will be pushed live soon, and you will be able to find all updates and release notes here. In the meantime, please see the useful links below:

Join the Community

Apache Milagro (incubating) is a community-led, community-built program that relies on the participation and contributions of our users.