Key Lifecycle/PROTOCOL

Ragnarök: Account Disposal

The off-boarding protocol. Deliberate governance-gated reconstruction and export of the organization's VVK, followed by transition from distributed Tide-based authentication to standard single-key operation.

25 min read

Overview

Every other protocol in this series maintains a single invariant: the key never materializes. Keys are born fragmented (Protocol: Account Creation / KeyGen), maintained fragmented (Protocol: Key Healing, Protocol: PRISM Password Change, Protocol: Decentralized Account Recovery), and exercised fragmented (Protocol: CMK Authentication).
Ragnarök is the deliberate, sole deviation to the 'never assemble' invariant, but not as an exception, as it operates outside the Tide paradigm.
An exit protocol is essential to the trust model. A system that can never release keys creates vendor lock-in - a different form of centralized authority over the organization's data. Ragnarök ensures the organization retains ultimate sovereignty: it can depart the Tide network and operate independently, under governance-controlled conditions with verifiable completion. This deviation strengthens the architecture. Tide's value proposition must be sustained by operational merit, not by captive custody.
Ragnarök operates on the organization's VVK (Vendor Verifiable Key) - not on individual users' CMKs. The VVK governs JWT signing, authorization, and E2EE. It is reconstructed and exported as a standard EdDSA key; Tide-based authentication is disabled; users must re-establish credentials via mass password reset. The protocol supports two disposal paths: Scenario A (Off-Boarding) releases RGK shards directly to TideCloak, and Scenario B (Backup / "Nuclear Codes") distributes the reconstruction capability across the admin quorum so that no single actor ever holds the complete RGK.
Loading diagram...

Preconditions

ConditionDetail
VVK and RGK generatedBoth keys created via Nested Shamir DKG (same construction as Protocol: Account Creation / KeyGen) during vendor onboarding. Each ORK holds VVKiVVK_i and RGKiRGK_i shards.
Encrypted VVK shards storedEach ORK has pre-encrypted its VVK shard under gRGKgRGK: eVVKi=EncgRGK(VVKi)eVVK_i = \textsf{Enc}_{gRGK}(VVK_i). These are stored on TideCloak, grouped per VRK cycle. TideCloak cannot decrypt without the RGK.
Ragnarök enabledTideCloak extension active. Email collection mandated, duplicate emails prohibited, user database scanned.
Admin quorum configuredTide-IGA active with a governance quorum (t>0t > 0). Multiple administrators required for Ragnarök authorization.

Protocol Flow

Phase 0: Setup (Ragnarök Enablement)

Loading diagram...
The organization prepares for its own exit at onboarding. Each ORK generates its VVK and RGK shards via the standard Nested Shamir DKG (see Protocol: Account Creation / KeyGen for the construction), encrypts its VVK shard under gRGKgRGK, and deposits the ciphertext on TideCloak. The RGK is purpose-built and dormant - never used for authentication, signing, or any operational task. It exists solely to enable Ragnarök.
Ragnarök enforces email collection and uniqueness during all subsequent user signups. This forward constraint ensures every user is reachable for the post-Ragnarök mass password reset.

Phase 1: Ragnarök Initiation (Governance Gating)

Loading diagram...
An admin initiates Ragnarök on TideCloak. TideCloak verifies that Tide-IGA is active and that a governance quorum with t>0t > 0 is configured. It creates a formal Ragnarök Draft requiring sequential approvals from tt distinct administrators before the initiating admin can execute the Ragnarök Commit. The specific quorum mechanisms are detailed in Article 5: Governance Without God Mode.
After commit, TideCloak submits the fully signed approval to the VVK ORK swarm. Each ORK independently validates the governance signatures. The protocol then branches into one of two disposal scenarios.

Phase 2: VVK Disposal - Two Scenarios

Scenario A: Off-Boarding (Direct)

The simpler path - used when the organization is departing Tide and the RGK can be released directly.
Each ORK unlicenses the VRK (marking it invalid for future operations) and revokes it (destroying the distributed key's operational validity), then encrypts its dormant RGK shard under the vendor's ephemeral public key: ENCgVRK(RGKi)\textsf{ENC}_{gVRK}(RGK_i). These ciphertexts are returned to TideCloak, which decrypts them using VRKVRK and interpolates the RGK shards to reconstruct the complete RGK. Revocation occurs before release - there is no window of dual validity.

Scenario B: Backup (Admin Share Distribution - "Nuclear Codes")

The more secure path - distributes the reconstruction capability across the admin quorum so that no single actor (including TideCloak) holds the complete RGK until all parties converge.
Loading diagram...
After ORK-swarm approval, TideCloak creates a secondary Ragnarök init draft. Each admin independently requests their "Nuclear Codes" through the Secure Web Enclave (SWE). Each ORK verifies the approval, generates a deterministic admin-specific sub-share of its RGK shard (Algorithm 1), unlicenses and revokes the VVK, and returns the sub-share. The SWE interpolates the 20 sub-shares into a single consolidated admin_share\text{admin\_share} - this admin's fragment of the global RGK.
After an off-boarding period, tt administrators contribute their shares to TideCloak, which interpolates them to reconstruct the complete RGK. The nested threshold ensures that reconstruction requires both an ORK quorum (inner, during share distribution) and an admin quorum (outer, during contribution).

Phase 3: VVK Recovery and System Transition

With the RGK reconstructed (from either scenario), TideCloak decrypts the pre-stored eVVKeVVK shards and assembles the complete VVK private key. The system then executes a clean transition: the reconstructed VVK is installed as a standard EdDSA signing key in TideCloak, the Tide-IdP is disabled, the VVK license cancellation is verified against the ORK network, authentication flows are replaced with standard (non-Tide) modules, IdP-less IGA is toggled on, and all user accounts are placed on mandatory password reset. TideCloak generates new SignedSettings\text{SignedSettings} designating itself as the Home ORK, permanently redirecting client software away from the decentralized network.
TideCloak prompts the admin to authorize a mass email dispatching password-reset links to all users - the operational reason Ragnarök mandated email collection and uniqueness from Phase 0.

Phase 4: Post-Ragnarök Operation

Loading diagram...
The system operates as a standard Keycloak deployment. Users authenticate via email-and-password credentials, receiving Dokens that embed TideCloak's URL as the Home ORK. Heimdall then continues to processes decryption and signing requests from the client using the recovered VVK as a conventional EdDSA key, with no ORK involvement.
Loading diagram...

Algorithms

Algorithm 1:

Notation Reference

SymbolDescription
VVKVVK, VVKiVVK_iVendor Verifiable Key / ORK ii's shard
gVVKgVVKVVK public key
RGKRGK, RGKiRGK_iRagnarök Key (dormant, purpose-built) / ORK ii's shard
gRGKgRGKRGK public key
eVVKieVVK_iEncrypted VVK shard: EncgRGK(VVKi)\textsf{Enc}_{gRGK}(VVK_i) - stored on TideCloak
gVRKgVRK, VRKVRKVendor's ephemeral public / private key (Scenario A encryption)
DokenDokenVoucher-derived token; input to deterministic coefficient chain
ORKkeyiORKkey_iORK ii's long-term key; paired with Doken in HMAC
c0,ckc_0, c_kDeterministic Shamir coefficients: c0=HMAC(H(Doken),ORKkeyi)c_0 = \textsf{HMAC}(H(Doken), ORKkey_i), ck=H(ck1)c_k = H(c_{k-1})
SSS(s,c)\textsf{SSS}(s, \mathbf{c})Shamir Secret Sharing with deterministic coefficients c\mathbf{c}
admin_sharei\text{admin\_share}_iAdmin aa's sub-share from ORK ii
admin_share\text{admin\_share}Admin aa's consolidated RGK share (interpolated from 20 sub-shares)
ttAdmin governance quorum threshold
nnORKs in VVK swarm (20)
EncK(M)\textsf{Enc}_K(M)Encryption of MM under key KK

Actors and Trust Assumptions

ActorDescriptionTrust Assumption
Admin (Quorum)Authorize Ragnarök via multi-admin draft/approval/commit. In Scenario B, each admin receives and later contributes an RGK share.Quorum assumption: no single admin can trigger Ragnarök. tt must act independently.
UserNot involved in the Ragnarök decision. Affected post-disposal: must re-establish credentials via email-based password reset.-
SWEBrowser agent. In Scenario B: sends approved Ragnarök to ORKs, collects admin-specific sub-shares, interpolates into consolidated admin share.Standard SWE trust. Handles one admin's sub-shares, never the complete RGK.
TideCloakVendor's IAM server with Ragnarök extension. Stores eVVKeVVK. Orchestrates governance. Scenario A: receives RGK shards. Scenario B: collects admin shares. Post-Ragnarök: holds complete VVK as standard EdDSA key.Under organization's control. Cannot decrypt eVVKeVVK without RGK.
RagnarökTideCloak extension (plugin + DLL). Stores encrypted VVK shards, orchestrates Ragnarök workflows, hosts post-Ragnarök SWE replacement.Within TideCloak's trust boundary.
HeimdallPost-Ragnarök auth handler. Replaces ORK-based authentication; processes requests using recovered VVK as conventional EdDSA key.Standard IAM trust.
ORK Swarm (VVK)20 nodes holding VVK and RGK shards. Validate governance approval. Revoke VVK. Release RGK material (directly or as admin sub-shares).Standard threshold assumption. Each ORK independently validates governance before releasing material.

Layer Traversal

LayerHow Ragnarök Engages It
LegitimacyMulti-admin governance approval and ORK-swarm ratification qualify the Ragnarök request. In Scenario B, the Doken provides entropy for deterministic coefficient generation.
AuthorityPrimary layer. Ragnarök is the terminal Authority Layer operation - the disposal of key shares. Encrypted VVK shards are decrypted, RGK shards are released, the distributed VVK is permanently revoked. The key transitions from "fragmented across the Fabric" to "conventional key held by the organization."
AgencyTransitional. The VVK's purpose (JWT signing, authorization, E2EE) transitions from threshold MPC operations to standard single-key operations. Post-Ragnarök, Heimdall exercises the VVK as a conventional EdDSA key.
SettlementThe Doken participates in deterministic coefficient generation (Scenario B). Accountability is provided by governance audit trail and ORK dLog entries during revocation.

Security Properties

PropertyMechanismAssumption
Governance-gated disposalMulti-admin draft + sequential quorum approvals + commit + ORK-swarm ratification. No single actor can trigger Ragnarök.Tide-IGA quorum integrity
Revocation before releaseEach ORK unlicenses and revokes VVK before releasing RGK material. No window of dual validity.-
Pre-encryption independenceeVVKeVVK shards encrypted and deposited at setup. Ragnarök does not require all ORKs online at disposal time.Encryption scheme security
RGK isolationThe Ragnarök Key is dormant from creation. Never used for authentication, signing, or any operational task. Zero operational attack surface.-
Deterministic admin shares (Scenario B)HMAC-chain-derived Shamir coefficients from Doken+ORKkeyDoken + ORKkey. Consistent polynomials across ORKs without coordination.SHA-256 collision resistance
Nested threshold (Scenario B)Reconstruction requires admin quorum (outer) contributing shares, each interpolated from ORK sub-shares (inner). No single admin, ORK, or system holds complete RGK.Shamir reconstruction hardness
Complete system transitionTide-IdP disabled, standard EdDSA replaces threshold, email login enforced, all accounts require password reset. No hybrid state or residual Tide dependencies.-
Email mandate as forward constraintRagnarök enforces email collection and uniqueness from signup. Ensures all users reachable for post-Ragnarök password reset.-
Audit trailGovernance approvals, ORK ratification, VVK revocation all produce verifiable records (governance logs, dLog).-
IrreversibilityAfter Ragnarök, the distributed VVK no longer exists. Returning to Tide requires new VVK generation.-

Call Summary

Phase / CallDirectionPurpose
Enable BackupAdmin → TideCloakActivate Ragnarök. Trigger VVK+RGK generation.
Generate VVK + RGKTideCloak → ORK SwarmNested Shamir DKG for both keys.
eVVKeVVK storageORK Swarm → TideCloakPre-encrypted VVK shards deposited for future recovery.
Ragnarök draft/approval/commitAdmin Quorum ↔ TideCloakMulti-admin governance ceremony.
Sign Ragnarök approvalTideCloak → ORK SwarmORKs validate governance signatures.
ENCgVRK(RGKi)\textsf{ENC}_{gVRK}(RGK_i)ORK Swarm → TideCloakScenario A: Direct RGK shard release (after VVK revocation).
Request Nuclear CodesSWE → ORK SwarmScenario B: Admin requests deterministic sub-share.
admin_sharei\text{admin\_share}_iORK Swarm → SWEScenario B: Per-ORK sub-share (after VVK revocation).
admin_share\text{admin\_share}SWE → AdminScenario B: Consolidated share after interpolation.
Admin share contributionAdmin Quorum → TideCloakScenario B: tt admins deposit shares for RGK reconstruction.
VVK decryption + transitionTideCloak (internal)Decrypt eVVKeVVK, install EdDSA key, disable Tide-IdP, enforce email login.
Mass password resetTideCloak → All usersEmail-based credential re-establishment.

References

  • Hall, J. L., Hertzog, Y., et al. (2023). Manifesting Unobtainable Secrets: Threshold Elliptic Curve Key Generation using Nested Shamir Secret Sharing. arXiv:2309.00915. Presented at AustMS 2021.
  • Tide Developer Documentation: docs.tidecloak.com
Related Protocol Articles: