code: def step3(self):
          
          ios_device_x = hkdf_expand(
              'Pair-Setup-Controller-Sign-Salt',
              'Pair-Setup-Controller-Sign-Info',
              binascii.unhexlify(self._client_session_key))
  
          self._session_key = hkdf_expand(
              'Pair-Setup-Encrypt-Salt',
              'Pair-Setup-Encrypt-Info',
              binascii.unhexlify(self._client_session_key))
  
          device_info = ios_device_x + self.pairing_id + self._auth_public
          device_signature = self._signing_key.sign(device_info)
  
          tlv = tlv8.write_tlv({tlv8.TLV_IDENTIFIER: self.pairing_id,
                                tlv8.TLV_PUBLIC_KEY: self._auth_public,
                                tlv8.TLV_SIGNATURE: device_signature})
  
          chacha = chacha20.Chacha20Cipher(self._session_key, self._session_key)
          encrypted_data = chacha.encrypt(tlv, nounce='PS-Msg05'.encode())
          log_binary(_LOGGER, 'Data', Encrypted=encrypted_data)
          return encrypted_data
docs: Third pairing step.