The Qilin Crypto SDK

An Open-Source Java SDK for rapid prototyping of cryptographic protocols.

A Qilin

(written and maintained by Tal Moran)

Overview

Qilin is a Java SDK for rapid prototyping of cryptographic protocols. The purpose of the Qilin project is to make it easier to implement the new cryptographic protocol you just read (or wrote) about in a recent theory paper. To this end, the API attempts to use the concepts and language from the theory of cryptography.

Qilin is not intended for writing the most efficient implementation of a cryptographic protocol, or even the most secure implementation (although it does attempt to provide reasonable efficiency and security). Instead Qilin is optimized for rapid development and generality.

Get Qilin

Qilin is an open-source project (released under the MIT/X11 license). We use the Mercurial version-control system for development. If you have Mercurial installed, you can clone the repository using the command:

hg clone http://qilin.seas.harvard.edu/repo qilin-sdk

You can also browse the repository and download the entire source as a tarball or zip file using the web interface.

Documentation

The SDK is documented with Javadoc. Some more background on the project can be found in the qilin package summary. Qilin grew out of an implementation of the Phish-Market protocol; this implementation is distributed with the SDK and serves as example code. The phishmarket package summary contains an overview.

Developing Qilin

If you're looking for an interesting programming project and/or want to contribute your time to a worthy cause, there are plenty of things you can do to help Qilin:

Submitting Patches

Since Mercurial is a distributed version-control system, you can develop new features on private repository clones and merge with the main repository once they're done. If you would like to submit a patch, a comment or to participate some other way, please let me know. You can find my contact details on my homepage.

Qilin?

A Qilin is a Cryptid from Chinese mythology. The preferred pronunciation for the project name is "Chillin" (as in "Get Chillin'").