<!--
{
  "availability" : [
    "iOS: 26.5.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AccessoryTransportExtension",
  "identifier" : "/documentation/AccessoryTransportExtension/AccessorySecuritySession/EventHandler",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Accessory Transport Extension",
      "AccessoryTransportExtension"
    ],
    "preciseIdentifier" : "s:27AccessoryTransportExtension0A15SecuritySessionC12EventHandlerP"
  },
  "title" : "AccessorySecuritySession.EventHandler"
}
-->

# AccessorySecuritySession.EventHandler

A protocol that defines methods for handling security session events.

```
protocol EventHandler
```

## Overview

Implement this protocol to respond to key exchange messages and session invalidation during the cryptographic key exchange process.

## Topics

### Handling security messages

[`func messageReceived(SecurityMessage, completion: (AccessoryMessage.Result) -> Void)`](/documentation/AccessoryTransportExtension/AccessorySecuritySession/EventHandler/messageReceived(_:completion:))

Handles incoming key material from the system during key exchange.

### Handling session life cycle

[`func sessionInvalidated(error: AccessorySecuritySession.Error?)`](/documentation/AccessoryTransportExtension/AccessorySecuritySession/EventHandler/sessionInvalidated(error:))

Handles session invalidation.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)