WordPress plugin intelligence profile

Keyless Login

Passwordless WebAuthn/FIDO2 login for WordPress. 100% pure PHP, zero external dependencies.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 6.9
Current version1.0.0
WordPress coverageTested up to WordPress 6.9
Minimum stackWP 6.4 · PHP 8.0
Directory statusactive
Last directory update20 May 20265mo ago
Active installationsNewAdoption metric — not a quality score
WordPress.org ratingNo WordPress.org ratings yet
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records Keyless Login version 1.0.0 as active, updated 5mo ago and tested up to WordPress 6.9.

Overview

About this plugin

Keyless Login brings modern, phishing-resistant authentication to your WordPress site.

Log in with your fingerprint, face, or a hardware security key — no password ever required or transmitted. Implemented entirely in pure PHP using only the built-in openssl extension. No Composer, no vendor folder, no third-party libraries.

How It Works

KeylessWP implements the W3C WebAuthn Level 2 specification from scratch:

  • A custom CBOR decoder parses authenticator data
  • Custom ASN.1/DER builders construct public keys
  • PHP’s built-in openssl_verify() verifies ECDSA P-256 (ES256) and RSA-2048 (RS256) signatures
  • Credentials are stored in a dedicated database table with sign-count clone detection

Supported Authentication Methods

  • 🖐 Fingerprint sensors (Touch ID, Windows Hello)
  • 😊 Face recognition (Face ID, Windows Hello face camera)
  • 🔑 Hardware security keys (YubiKey, Google Titan Key, Feitian)
  • 🔐 Platform passkey managers (iCloud Keychain, Google Password Manager)

Features

  • Full FIDO2 / WebAuthn Level 2 implementation — pure PHP
  • ECDSA P-256 (ES256) and RSA-2048 (RS256) signature verification
  • Zero external libraries — only PHP’s built-in openssl extension required
  • Passkey registration and management from the user profile page
  • Per-credential device naming, creation date, and last-used tracking
  • Sign-count verification on every authentication (clone detection)
  • Phishing-resistant: credentials are cryptographically bound to your domain
  • Admin settings page with live usage statistics
  • Graceful fallback: the standard password form remains available
  • Translatable — all strings use __() with the keylesswp text domain

Privacy

KeylessWP does not collect, transmit, or share any user data. No external services are contacted. Biometric data never leaves the user’s device — only a cryptographic public key is stored on the server.

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • fido2
  • passkey
  • passwordless
  • security
  • webauthn
Compatibility & maintenance

Compatibility & maintenance

Tested up to WordPress 6.9

Not yet marked as tested with WordPress 7.1. WordPress.org currently lists Tested up to 6.9.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to6.9
Minimum requirementsWordPress 6.4 · PHP 8.0
Update activity20 May 20265mo ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

No tracked version or compatibility changes have been recorded by WP PlugIndex yet.

Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.