diff --git a/Sources/XXClient/Callbacks/AuthCallbacks.swift b/Sources/XXClient/Callbacks/AuthCallbacks.swift
index c6d2b867fe7964e44f17d16aee4e7ac8a0964467..83e6f9361559fb6d5897f13ad07755de84c74451 100644
--- a/Sources/XXClient/Callbacks/AuthCallbacks.swift
+++ b/Sources/XXClient/Callbacks/AuthCallbacks.swift
@@ -3,9 +3,9 @@ import XCTestDynamicOverlay
 
 public struct AuthCallbacks {
   public enum Callback: Equatable {
-    case confirm(contact: Data, receptionId: Data, ephemeralId: Int64, roundId: Int64)
-    case request(contact: Data, receptionId: Data, ephemeralId: Int64, roundId: Int64)
-    case reset(contact: Data, receptionId: Data, ephemeralId: Int64, roundId: Int64)
+    case confirm(contact: Contact, receptionId: Data, ephemeralId: Int64, roundId: Int64)
+    case request(contact: Contact, receptionId: Data, ephemeralId: Int64, roundId: Int64)
+    case reset(contact: Contact, receptionId: Data, ephemeralId: Int64, roundId: Int64)
   }
 
   public init(handle: @escaping (Callback) -> Void) {
@@ -38,7 +38,7 @@ extension AuthCallbacks {
           fatalError("BindingsAuthCallbacks.confirm received `nil` receptionId")
         }
         callback.handle(.confirm(
-          contact: contact,
+          contact: Contact.live(contact),
           receptionId: receptionId,
           ephemeralId: ephemeralId,
           roundId: roundId
@@ -53,7 +53,7 @@ extension AuthCallbacks {
           fatalError("BindingsAuthCallbacks.request received `nil` receptionId")
         }
         callback.handle(.request(
-          contact: contact,
+          contact: Contact.live(contact),
           receptionId: receptionId,
           ephemeralId: ephemeralId,
           roundId: roundId
@@ -68,7 +68,7 @@ extension AuthCallbacks {
           fatalError("BindingsAuthCallbacks.reset received `nil` receptionId")
         }
         callback.handle(.reset(
-          contact: contact,
+          contact: Contact.live(contact),
           receptionId: receptionId,
           ephemeralId: ephemeralId,
           roundId: roundId
diff --git a/Tests/XXMessengerClientTests/TestHelpers/AuthCallback.Callback+stubs.swift b/Tests/XXMessengerClientTests/TestHelpers/AuthCallback.Callback+stubs.swift
index 9617c0b21319cb7d5624e0bcd3a6b22fbff3bc69..0da805adadd17fbc77c098cf94e8183e3069c215 100644
--- a/Tests/XXMessengerClientTests/TestHelpers/AuthCallback.Callback+stubs.swift
+++ b/Tests/XXMessengerClientTests/TestHelpers/AuthCallback.Callback+stubs.swift
@@ -3,19 +3,19 @@ import XXClient
 extension Array where Element == AuthCallbacks.Callback {
   static let stubs: [AuthCallbacks.Callback] = [
     .confirm(
-      contact: "contact-1".data(using: .utf8)!,
+      contact: .unimplemented("contact-1".data(using: .utf8)!),
       receptionId: "reception-id-1".data(using: .utf8)!,
       ephemeralId: 1,
       roundId: 1
     ),
     .request(
-      contact: "contact-2".data(using: .utf8)!,
+      contact: .unimplemented("contact-2".data(using: .utf8)!),
       receptionId: "reception-id-2".data(using: .utf8)!,
       ephemeralId: 2,
       roundId: 2
     ),
     .reset(
-      contact: "contact-3".data(using: .utf8)!,
+      contact: .unimplemented("contact-3".data(using: .utf8)!),
       receptionId: "reception-id-3".data(using: .utf8)!,
       ephemeralId: 3,
       roundId: 3