{% extends "base.html" %}
{% block title %}my signing identity — dossier{% endblock %}
{% block content %}
my signing identity
This is your cryptographic signing identity. Every action you take in dossier is signed with this key, making it tamper-evident and attributable to you.
{% if principal_key %}
key status
| fingerprint |
{{ principal_key.fingerprint[:32] }}… |
| status |
{% if principal_key.status == "active" %}
active
{% elif principal_key.status == "rotation-due" %}
rotation-due
{% elif principal_key.status == "revoked" %}
revoked
{% else %}
{{ principal_key.status }}
{% endif %}
|
| created |
{{ principal_key.valid_from or principal_key.registered_at or '—' }} |
{% if principal_key.valid_to %}
| {{ 'rotation due' if principal_key.status == 'rotation-due' else 'expires' }} |
{{ principal_key.valid_to }} |
{% endif %}
| key id |
{{ principal_key.key_id }} |
| scheme |
{{ principal_key.scheme }} |
{% if principal_key.revoked_at %}
| revoked |
{{ principal_key.revoked_at }} |
{% if principal_key.revoked_reason %}
| reason |
{{ principal_key.revoked_reason }} |
{% endif %}
{% endif %}
{% if principal_key.status in ("active", "rotation-due") %}
{% if rotation_allowed %}
{% else %}
Rotation is rate-limited. Try again later.
{% endif %}
Rotation is rate-limited to prevent accidental churn.
{% endif %}
{% if key_events %}
key history
| transition |
timestamp |
key id |
fingerprint |
{% for ev in key_events %}
| {{ ev.transition }} |
{{ ev.timestamp }} |
{{ ev.key_id or '—' }} |
{{ (ev.fingerprint[:32] ~ '…') if ev.fingerprint else '—' }} |
{% endfor %}
{% endif %}
You will never see or handle the private key. Rotation is handled by the backend.
{% else %}
You are not enrolled for signing. Contact an admin to enroll.
{% endif %}
{% endblock %}