MCPcopy Index your code
hub / github.com/cernekee/EasyToken

github.com/cernekee/EasyToken @v0.91

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.91 ↗ · + Follow
238 symbols 543 edges 24 files 13 documented · 5% updated 3y ago★ 517 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Easy Token

Easy Token is an RSA SecurID-compatible software authenticator for Android with advanced usability features:

  • Convenient lock screen and home screen widgets provide instant tokencodes without navigating to an app.
  • Optionally save your PIN.
  • Supports SDTID files, importing http://127.0.0.1/... tokens from email, and QR tokens.
  • 100% open source: https://github.com/cernekee/EasyToken

Downloads

Official releases are posted in the XDA thread and on Google Play.

No registration is required to download from XDA.

Support

To report issues, please email the author at cernekee@gmail.com or post in the XDA thread.

Screenshots

screenshot-0  screenshot-1

screenshot-2  screenshot-3

Building from source

On the host side you'll need to install:

  • NDK r10d, nominally under /opt/android-ndk-r10d
  • Host-side gcc, make, etc. (Red Hat "Development Tools" group or Debian build-essential)
  • git, autoconf, automake, and libtool
  • Android SDK in your $PATH (both platform-tools/ and tools/ directories)
  • javac 1.6 and a recent version of Apache ant
  • Use the Android SDK Manager to install API 19

First, clone the source trees:

git clone git://github.com/cernekee/EasyToken
cd EasyToken
git submodule update --init

Then build the binary components (libs/ directory):

make -C external NDK=/opt/android-ndk-r10d

Then build the Java components:

android update project -p .
ant debug

Build logs can be found on this project's Travis CI page.

Security considerations

Please use Easy Token responsibly and avoid taking unnecessary risks with sensitive data. All software tokens are at risk of theft by malware; for high-security applications a hardware token is strongly preferred.

Saving your PIN is convenient, but can be risky if your device is stolen.

If you use the lock screen widget, your tokencode is available to anybody with access to your phone (even if they cannot unlock it). For this case, you may want to ask your system administrator to issue a 6-digit PIN-less software token, which will require you to enter PIN + TOKENCODE when logging in, instead of just a tokencode.

Extension points exported contracts — how you extend this code

OnTokencodeUpdateListener (Interface)
(no doc) [2 implementers]
src/app/easytoken/TokencodeBackend.java
OnImportButtonClickedListener (Interface)
(no doc) [1 implementers]
src/app/easytoken/GettingStartedFragment.java
OnManualEntryDoneListener (Interface)
(no doc) [1 implementers]
src/app/easytoken/ImportManualEntryFragment.java
OnUnlockDoneListener (Interface)
(no doc) [1 implementers]
src/app/easytoken/ImportUnlockFragment.java
OnImportMethodSelectedListener (Interface)
(no doc) [1 implementers]
src/app/easytoken/ImportMethodFragment.java

Core symbols most depended-on inside this repo

toString
called by 18
src/com/google/zxing/integration/android/IntentResult.java
destroy
called by 13
src/app/easytoken/TokencodeBackend.java
setTitle
called by 8
src/com/google/zxing/integration/android/IntentIntegrator.java
handleImportStep
called by 7
src/app/easytoken/ImportActivity.java
showFrag
called by 6
src/app/easytoken/ImportActivity.java
writeStatusField
called by 6
src/app/easytoken/TokencodeFragment.java
setHtml
called by 5
src/app/easytoken/ImportInstructionsFragment.java
getDefaultToken
called by 5
src/app/easytoken/TokenInfo.java

Shape

Method 206
Class 26
Interface 6

Languages

Java100%

Modules by API surface

src/com/google/zxing/integration/android/IntentIntegrator.java30 symbols
src/app/easytoken/TokencodeFragment.java19 symbols
src/app/easytoken/ImportActivity.java18 symbols
src/app/easytoken/TokencodeWidgetService.java16 symbols
src/app/easytoken/TokenInfo.java16 symbols
src/de/blinkt/openvpn/FileSelect.java15 symbols
src/app/easytoken/TokencodeBackend.java14 symbols
src/app/easytoken/ImportManualEntryFragment.java13 symbols
src/de/blinkt/openvpn/FileSelectionFragment.java11 symbols
src/app/easytoken/MainActivity.java10 symbols
src/app/easytoken/ImportUnlockFragment.java9 symbols
src/app/easytoken/ImportMethodFragment.java9 symbols

For agents

$ claude mcp add EasyToken \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page