<!--
{
  "availability" : [

  ],
  "documentType" : "symbol",
  "framework" : "Tor",
  "identifier" : "/documentation/Tor/OnionKeySpec/providedV3(_:)",
  "metadataVersion" : "0.1.0",
  "role" : "Case",
  "symbol" : {
    "kind" : "Case",
    "modules" : [
      "Tor"
    ],
    "preciseIdentifier" : "s:3Tor12OnionKeySpecO10providedV3yACSScACmF"
  },
  "title" : "OnionKeySpec.providedV3(_:)"
}
-->

# OnionKeySpec.providedV3(_:)

Re-adopt a previously-registered v3 service by its private key.

```
case providedV3(String)
```

## Parameters

`key`

The ED25519-V3 private key in Tor’s
base64-encoded expanded-secret form (rend-spec-v3 §2.5).

## Discussion

Corresponds to `ADD_ONION ED25519-V3:<key>` in control-spec.txt
§3.27. The blob must be exactly the string Tor handed back in
an earlier `ADD_ONION` reply or via `GETINFO onions/current`.

> Important: Treat the key as a secret. Persisting it to disk
> or logs compromises the onion identity; use Keychain on Apple
> platforms.