private function decryptPayloadToCache()
 {
     $keychain = $this->config->getKeychain();
     $payload = $keychain->serviceDecrypt($this->service, $this->encryptedPayload);
     $payload = json_decode($payload, true);
     if (empty($payload)) {
         throw new \InvalidArgumentException('Failed to decode data after decryption - invalid format or empty value');
     }
     $this->decryptedPayload = $payload;
     if (!isset($this->decryptedPayload['nonce'])) {
         throw new \InvalidArgumentException('Malformed data - nonce missing');
     }
 }