安装包图标

Clockwork: 2FA Authenticator

Offline 2FA authenticator: TOTP codes, no network permission, no accounts.
新版本 2.0.1
Clockwork 2.0 is a native Android app, rewritten in Kotlin and Jetpack Compose — no browser engine any more.

• Android 8.0 or newer. On Android 7, 1.5.4 stays the final version.
• An existing vault is carried over on update — nothing to export, nothing to type again.
• Unlock with your fingerprint. The passphrase stays the only way back in.
• Still no INTERNET permission.
Clockwork is a two-factor authenticator (2FA) that generates TOTP codes entirely on your device. It declares no INTERNET permission at all — the app cannot open a connection, and you can check that in the manifest before you believe a word of this.

That is the difference. Most authenticator apps hold network access for sync, service icons or update checks. Clockwork does not have the permission, so the question never comes up.

WHAT IT DOES
• Generates TOTP codes (RFC 6238) — SHA-1, SHA-256 or SHA-512, 6 to 8 digits, any period.
• Add accounts the way you happen to have them: scan a QR code, import a QR image, paste an otpauth:// link, or type a Base32 secret. A full Google Authenticator export is converted automatically.
• A dial with 30 marks and a moving hand shows the time left — a position you read at a glance, not a shrinking bar.
• One tap copies the code, and the next one is on screen before it becomes valid.
• Broken input is explained line by line, never silently swallowed.

YOUR SECRETS STAY YOURS
• By default nothing is stored at all. Close the app and the secrets are gone.
• Switch the vault on and they stay here, encrypted with your passphrase: AES-256-GCM, key derived by PBKDF2-SHA-256 with 600,000 iterations. Only the sealed envelope is written to disk — never the plaintext, never the passphrase, never the derived key.
• Unlock with your fingerprint if you want to. The passphrase stays the only way back in.
• Locks automatically after a time you choose and when you leave the app. Screenshots and preview images can be blocked.
• Android backup is switched off, so the encrypted vault never leaves the device.

PRIVACY
Nothing is collected, because there is nowhere for it to go. No analytics, no telemetry, no update pings, no advertising identifiers, no accounts, no ads. The camera permission serves the QR scanner alone and is declared optional hardware — importing a QR image works without it.

BUILT TO BE CHECKED
Open source under the MIT licence. The OTP algorithms are written from scratch against the RFC test vectors — no OTP library. Source code, test suite and the measurement scripts behind every claim above are public at github.com/keco216/clockwork.

Speaks 37 languages, all bundled, including right-to-left layouts.

Android 8.0 or newer. On Android 7, 1.5.4 stays the final version.

One thing, independent of this app: set up backup codes with every provider before you rely on any authenticator. They are the only thing that gets you back in when a secret is gone.

版本

尽管下面提供了 APK 安装包的下载选项,但你应该注意,以这种方式安装将不会收到更新通知,这是一种不太安全的下载方式。 我们建议你安装使用 F-Droid 客户端。

下载 F-Droid
  • 版本 2.0.1 (20001) 推荐 更新于 2026-08-19

    arm64-v8a armeabi-v7a x86 x86_64

    该版本需要 Android 8.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 拍摄照片和视频
      当你使用此应用时,它可以使用相机拍摄照片和录制视频。
    • 使用生物特征硬件
      允许此应用使用生物识别硬件进行身份验证
    • 使用指纹硬件
      允许此应用使用指纹硬件进行身份验证
    • io.github.keco216.clockwork.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 3.2 MiB PGP 签名 | 构建日志

  • 新版本 1.5.4
    The app is unchanged. This reverts a build flag from 1.5.3: PNG recompression is enabled again, which shrinks the APK by 53 kB. It had been switched off to make the build reproducible, on the assumption that the icons this project generates itself are deterministic — they are only so on the same Node version, and disabling the recompression exposed that instead of hiding it. Reproducibility against F-Droid's build server has not been reached and is not claimed.
  • 版本 1.5.4 (10504) - 更新于 2026-08-14

    该版本需要 Android 7.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 拍摄照片和视频
      当你使用此应用时,它可以使用相机拍摄照片和录制视频。
    • io.github.keco216.clockwork.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 1.2 MiB PGP 签名 | 构建日志

  • 新版本 1.5.3
    The app is unchanged. This release was an attempt to make the build byte-for-byte reproducible, so that F-Droid could ship the APK published here instead of its own: the ART baseline profile and AAPT2's PNG recompression were switched off, both being sources of byte-level noise. The attempt failed — the toolchains still differ, and disabling PNG recompression made it worse while costing 53 kB. Version 1.5.4 reverts that part. Reproducibility is not claimed.
  • 版本 1.5.3 (10503) - 更新于 2026-08-13

    该版本需要 Android 7.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 拍摄照片和视频
      当你使用此应用时,它可以使用相机拍摄照片和录制视频。
    • io.github.keco216.clockwork.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 1.3 MiB PGP 签名 | 构建日志