=== Blind.ID ===
Contributors: blindid
Tags: login, authentication, identity, oidc, sso
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.0
Stable tag: 0.5.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Sign in with a government ID that never leaves the person's phone. A real human behind every account, and nothing about them for your site to lose.

== Description ==

Blind.ID is a sign-in service backed by a mobile driver's licence, state ID or
passport held in the person's own phone wallet. Your site learns that a real
person is behind the account and nothing else: no name, no date of birth, no
document number, no photo.

What this plugin adds beyond a generic OpenID Connect plugin:

* **Sign-in and sign-out**, including ending the Blind.ID session, not just the local one.
* **The data contract.** If your site needs a couple of things from the person, Blind.ID collects them during sign-in and hands them over, so your own sign-up form disappears.
* **The consent receipt.** A signed statement of what the person agreed to give you, and when, stored against their user.
* **Age verification.** With the Blind.ID age verification add-on, only let in people whose ID confirms they are 18 or over, and keep the signed receipt of each check.
* **One-button setup.** Connect to Blind.ID from the settings page; nothing to copy by hand.

== Installation ==

1. Install and activate this plugin.
2. Go to Settings, Blind.ID, and press Connect to Blind.ID.
3. Sign in to the Blind.ID developer console and confirm. You come back connected.

To set it up by hand instead, register the site in the console and paste its client ID and secret, then copy the addresses shown on the settings page into the console.

== Frequently Asked Questions ==

= Does my site receive anyone's ID details? =

No. Your site receives an identifier that is unique to your site, plus whatever
you asked for in your data contract, which the person typed themselves.

= What happens to existing WordPress users? =

Nothing, unless you turn on linking by email address, which only works when your
data contract asks for one.

== Changelog ==

= 0.5.2 =
* Fix: a caching plugin could cache the sign-in redirect, so pressing the button again replayed a used sign-in and reported "already signed in".

= 0.5.1 =
* The button's markup and styles now come from Blind.ID's brand source, generated rather than copied.

= 0.5.0 =
* The button now reads "Continue with Blind-ID" with "by Blind.ID" underneath, from the current brand kit.
* One wording everywhere: the shortcode no longer takes a label.

= 0.4.2 =
* The label is centred in its own space, to the right of the divider.

= 0.4.1 =
* The divider stays put when the button is stretched: only the label area grows.

= 0.4.0 =
* The button is Blind.ID's Blind-ID button from the brand kit, the same one the service uses on its own pages, light and dark.

= 0.3.0 =
* The button sits above the login box, with an "or" rule between it and the username and password form.
* On a desktop browser the sign-in happens in a window over the site instead of navigating away.

= 0.2.2 =
* Fix: the button's styles and mark were stripped on the login screen, printing CSS as text.

= 0.2.1 =
* The sign-in button is Blind.ID's own, with the mark, instead of WordPress's default button.

= 0.2.0 =
* Connect to Blind.ID with one button.
* Age verification: require a confirmed 18 or over, and keep each check's receipt against the user.

= 0.1.0 =
* First version: sign-in, sign-out, data contract, consent receipt.
