In this directory is a reference CA implementation of the Chocolate protocol, DV and signing mechanism. Set CHOCOLATESERVER environment variable for "make deploy"! chocolate.py - server-side, requires web.py (python-webpy), PyCrypto (python-crypto) 2.3 (not 2.1!!), redis, python-redis, python-protobuf, python-nss probably wants to run under a web server like lighttpd with fastcgi chocolate_protocol.proto - protocol definition; needs protobuf-compiler sni_challenge - Assumes Apache server with name based virtual hosts is running (for intended address). Call perform_sni_cert_challenge(address, r, nonce) to do the whole challenge. Example code is given in main method Right now requires full path specification of CSR/KEY in the Global Variables (how should this be specified?)