Created: 2008-07-07 04:33
Updated: 2016-05-08 10:27
License: mit

Encrypted Sessions Test Suite

This is a test suite for client implementations of XEP-0116 (Encrypted Session Negotiation) and the XEPs it is based on.

It was originally written as part of Google Summer of Code 2007 for the XMPP Software Foundation by Brendan Taylor, and is released under the MIT/X11 license (see the LICENSE file).


  • PyCrypto
  • (in Python 2.5's stdlib)


The suite is implemented as a server component that responds to a number of different JIDs, each responsible for a different set of tests:

  • xep201@[component]
    • tests
  • xep155@[component]:
    • simple generic session negotiation
  • xep200@[component]
    • message encryption and decryption with hardcoded keys
  • xep217@[component]
    • a simplified profile of XEP-0116
  • sigmai@[component]
    • XEP-0116 3-message negotiation
  • tampered@[component]
    • runs a XEP-0116 negotiation with data that your client should reject

To run the suite, you'll need to set up your server to accept a component connection. Then:

./ <component-name> <server-hostname> <port> <secret>

There should also be a copy of the suite running at

Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more