-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
52 changed files
with
208 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
#  totp-me - TOTP for Java ME | ||
|
||
Java ME TOTP ([RFC 6238](http://tools.ietf.org/html/rfc6238)) authenticator. It can be used as a token generator for | ||
|
||
* Google's two phase authentication | ||
* LinOTP authentication | ||
* other authentication servers which support TOTP | ||
|
||
|
||
|
||
## Download | ||
|
||
Download the [latest binaries](https://sourceforge.net/projects/totpme/files/latest/download) | ||
from the [SourceForge project pages](https://sourceforge.net/projects/totpme/). | ||
|
||
If you want to use direct installation to your device, use either [JAD](http://totpme.sourceforge.net/totp-me.jad) | ||
or [JAR](http://totpme.sourceforge.net/totp-me.jar). | ||
|
||
## Features | ||
|
||
Key (and only) features: | ||
|
||
* multiple profiles/accounts supported | ||
* configurable parameters | ||
- secret key | ||
- profile name | ||
- digest algorithm: SHA-1 (default), SHA-256, SHA-512 | ||
- number of token digits (default is 6) | ||
- time step (default is 30) | ||
- time correction (default is 0) - advanced feature, the value (may be negative) is added to the device's system time | ||
during computing a token value | ||
* input validation | ||
* key generator with Base32 and HEX output | ||
|
||
### Change log | ||
|
||
Check [Release notes](https://github.com/kwart/totp-me/blob/master/ReleaseNotes-README.md) for the list of changes. | ||
|
||
## Screenshots | ||
|
||
 | ||
 | ||
|
||
 | ||
 | ||
|
||
## How to install it | ||
|
||
Unzip files from the distribution package and copy `totp-me.jar` to your device which supports Java ME. | ||
Some devices may also need the description file `totp-me.jad` to be copied together with the JAR. | ||
|
||
## How to use it | ||
|
||
You either have already a secret key, then fill it as Base32 encoded String after the start (Options | ||
form is displayed if no key is set already). Or you can generate the secret key directly by the application and then | ||
fill it as a shared secret in the authentication server. | ||
|
||
### Generate new secret key | ||
|
||
* choose your preferred digest algorithm in the `Options` screen (the default is `SHA-1`) | ||
* choose `Key generator` from the menu - it will switch you to screen for generating the new key | ||
* use `New key` command to generate a new key, you can use it more times if you are not satisfied with the generated value | ||
* fill the `HEX` value in you authentication server configuration | ||
* press `OK` command and you will be switched back to the `Options` screen; confirm your configuration and press `OK` command again | ||
* if no problem occurs, you are switched to the main application screen, where the `Token` value is already present | ||
* _you can synchronize the authentication server with your token now_ | ||
|
||
## Development | ||
|
||
You can simply build the software yourself. | ||
|
||
### How to get the sources | ||
|
||
You should have [git](http://git-scm.com/) installed | ||
|
||
$ git clone git://github.com/kwart/totp-me.git | ||
|
||
or you can download [current sources as a zip file](https://github.com/kwart/totp-me/archive/master.zip) | ||
|
||
### How to build it | ||
|
||
You need to have [Maven](http://maven.apache.org/) installed | ||
|
||
$ cd totp-me | ||
$ mvn clean package | ||
|
||
This default build uses Microemulator API implementation to simplify the build process, but it's only MIDP-2.0 | ||
implementation. To be sure the source code is __MIDP-1.0 compatible__, you should install Oracle WTK and provide | ||
path to it to Maven as `wtk.home` system property | ||
|
||
$ mvn clean package -Dwtk.home=/opt/WTK2.5.2 | ||
|
||
### How to run it in the Microemulator | ||
|
||
Just use `exec:java` goal after you've successfully built the project | ||
|
||
$ mvn exec:java | ||
|
||
## License | ||
|
||
* [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
# Tutorial: totp-me as Google Authenticator - 2 step verification | ||
|
||
*Have you ever wondered, how to enable Google 2 phase authentication on your older, not so smart, but Java enabled phone?* | ||
|
||
This tutorial drives you step-by-step by the process, using **totp-me** Java ME application. | ||
|
||
1. Go to http://www.google.com/landing/2step/ | ||
 | ||
|
||
1. Log into your Google account | ||
 | ||
|
||
1. Click `Start setup` | ||
 | ||
|
||
1. Complete 4 steps | ||
2. Provide info about your mobile phone | ||
 | ||
2. You receive an SMS with verification code from Google - rewrite the code to the verification field | ||
 | ||
2. Check or uncheck `Trust this computer` field | ||
 | ||
2. and click `Continue` | ||
 | ||
|
||
1. Follow `Android` link in Mobile applications section | ||
 | ||
|
||
1. Click on the `Can't scan the barcode?` | ||
 | ||
|
||
1. You will see newly generated secret key (Base32 encoded) | ||
 | ||
|
||
1. Start the **totp-me** application on your phone | ||
 | ||
|
||
1. Fill the Google generated key in `Secret key (Base32)` text input, you can also change the `Profile name`, then | ||
confirm the options by using `OK` command | ||
 | ||
|
||
1. You will see newly generated key | ||
 | ||
|
||
1. Fill the **totp-me** generated key in Google's `Code` field and click `Verify and Save` | ||
 | ||
|
||
1. If the steps were finished succesfully, then you should see this information | ||
 | ||
|
||
1. You'll be asked for a new login ... | ||
 | ||
|
||
1. ... and confirmation, the settings are up-to-date (use `Looks good` button, if you're satisfied) | ||
 | ||
|
||
1. *(Optional)* Print or backup some one-time codes (e.g. useful when you loose your phone or if it's discharged) | ||
2. Follow `Show backup codes` link | ||
 | ||
2. Print or store the codes | ||
 | ||
|
||
1. *(Optional)* Try to login to your Google account from another computer or browser | ||
2. Let's try [GMail](https://mail.google.com/) for instance | ||
 | ||
2. You should be asked for verification code. Run **totp-me**, and fill the newly generated one in `Enter code:` field | ||
 | ||
2. It's all, you've completed 2-step verification settings using **totp-me** | ||
 | ||
|
||
## That's all | ||
Congratulations, You, brave reader! You have 2-step verification enabled now. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<project name="totp-me" xmlns="http://maven.apache.org/DECORATION/1.0.0" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd"> | ||
|
||
<skin> | ||
<groupId>org.apache.maven.skins</groupId> | ||
<artifactId>maven-fluido-skin</artifactId> | ||
<version>1.3.0</version> | ||
</skin> | ||
|
||
<body> | ||
<menu name="totp-me"> | ||
<item name="About" href="index.html" /> | ||
<item name="totp-me as Google Authenticator" href="totp-me_as_GoogleAuthenticator.html" /> | ||
<item name="Download" href="http://sourceforge.net/projects/totpme/files/" /> | ||
</menu> | ||
</body> | ||
</project> |