Projects

Sponsors

edit SideBar

Guide to Pairing Based Cryptography book - selected code

Abstract

The following site was created as a central repository for the SAGE and MAGMA code written in the development of the Hashing to Curves, Final Exponentiation, and Software Implementation Chapters of the Guide to Pairing Based Cryptography book.

Some of the code here shown may not be included in the final version of the book; nevertheless, all of the code is presented to the reader as a help in the understanding of those chapters.

Keywords: pairing-based cryptography, hashing to curves, final exponentiation, software implementation, SAGE, Magma


Download:


Requirements

Typical run

For SAGE: load('file.sage')
For Magma: load "file.magma";

Final Exponentiation

Sage code: (from SAGE console)
  • load ('BNcurves.sage')
  • load ('BW12curves.sage')
Magma code: (from Magma)
  • load "KSSk18curves.magma";
  • load "BLSk24curves.magma";

Hash function

Sage code: (from SAGE console)
  • load ('Hash_to_BN_curves.sage')
  • load ('Hash_to_KSS18_curves.sage')
  • load ('Hash_to_BN_curves_Like_C.sage')
  • load ('Hash_to_KSS18_curves_Like_C.sage')

Software Implementation (BN curves, SAGE)

Sage Arithmetic:
  • load ('')
Full arithmetic:
  • load ('TestFp.sage')
  • load ('TestG1.sage')
  • load ('TestG2.sage')
  • load ('TestPairing.sage')

Authors

Final Exponentiation chapter

Hashing into curves

Software Implementation


Contact


Page last modified on October 23, 2015, at 10:09 PM EST
Search Crypto group CINVESTAV

Projects

Sponsors

edit SideBar