Implementing cryptographic pairings: a magma tutorial

If you're trying to understand how to implement a pairing, like you might need to do if you're going to implement one of the many forms of pairing-based cryptography, there's a good tutorial available here that's based on the 2009 paper Implementing cryptographic pairings: a magma tutorial by Luis J Dominguez Perez, Ezekiel J Kachisa, and Michael Scott that's available here.  This tutorial seems to do a reasonable job of walking you through the basics of how to calculate a pairing and includes lots of useful magma implementations, but it seems a bit inaccessible to someone who doesn't already know how to implement a pairing.

But that's a very hard problem to overcome. There's a big learning curve involved with getting up to the point where you understand pairings well enough to implement one. I'd say that it probably took me 80 hours or so of reading and thinking about what I had just read before I could comfortably implement the Tate pairing. (Other, smarter people can probably do it in less.) The tutorials that are available on-line these days (like this one) can probably reduce the effort involved in doing this, but I'd still expect it to be a fairly difficult step to make for the first time.

Leave a Reply

Your email address will not be published. Required fields are marked *