This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit


Jump to: navigation, search
OWASP Project Header.jpg


OWASP jOTP is a microservice implemented in Java that can be used to generate, validate, and automatically expire one-time use password tokens.


A common use case for jOTP is as follows: 1. Client applications displays a login page requesting the user enter his/her username and password. 2. If the credentials check passes, the user's email is looked up and a message containing the token is sent. 3. The application then requests that the OTP token that was sent be entered in a text box. Once entered, it is sent to jOTP. 4. jOTP validates the token. If the token was valid, the application finishes authenticating the user. If the token was not valid, the user is redirected to the login page.


OWASP jOTP is available under the BSD 2-Clause License.

What is jOTP?

OWASP jOTP provides:

  • OTP token generation, validation, and expiration.

Project Leader

Rob Upcraft

Quick Download

Email List

OWASP jOTP Mailing List NOTE: Include "jOTP" in the subject heading of all emails to this list.

News and Events


New projects.png Owasp-builders-small.png
Project Type Files CODE.jpg
Where can OWASP jOTP be downloaded?
The source code, along with basic documentation, is located here: GitHub Repository
I can see the /sys/monitor endpoint, but when I try to test the other endpoints (eg. /otp/validate), I don't get anything in the response.
The endpoints under /otp only respond to POST requests, and will return an empty response if they are requested via GET.


OWASP jOTP is developed by a worldwide team of volunteers. The primary contributors to date have been:

  • Rob Upcraft

As of April 2014, the priorities are:

Development work for jOTP is largely complete as of now. Because it is intended to be lightweight and focused on this use case, the feature set is not planned to grow significantly, if at all. Most future work will include bug fixes, and additional customization options developed on an as-needed basis.

Involvement in the development and promotion of OWASP jOTP is actively encouraged! You do not have to be a security expert in order to contribute.

Some of the ways you can help:

  • Submit issues to the GitHub repository.
  • Submit pull requests for fixes to the GitHub repository.