<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Taplinx iOS read Desfire EV2 fails on authentication in TapLinx SDK, TagWriter and TagInfo</title>
    <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2036114#M102</link>
    <description>&lt;P&gt;Hi Florian,&lt;BR /&gt;&lt;BR /&gt;I checked with both&amp;nbsp;&lt;SPAN&gt;withCommandSetForAuth: .ISO, and .native but in both cases getting crash that are untraceable.&lt;BR /&gt;&lt;BR /&gt;Can you please share the link of the data sheet?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 30 Jan 2025 12:17:03 GMT</pubDate>
    <dc:creator>sh4</dc:creator>
    <dc:date>2025-01-30T12:17:03Z</dc:date>
    <item>
      <title>Taplinx iOS read Desfire EV2 fails on authentication</title>
      <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2032432#M94</link>
      <description>&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;self&lt;/STRONG&gt;&lt;/SPAN&gt;.&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt;?.authenticate(withCardKeyNo: &lt;SPAN&gt;1&lt;/SPAN&gt;, withAuthenticationType: .&lt;SPAN&gt;AES&lt;/SPAN&gt;, withAuthKeyType: .AES128, withCommandSetForAuth: .ISO, withAuthkey: &lt;SPAN&gt;"AES_KEY"&lt;/SPAN&gt;.&lt;SPAN&gt;hexStringToData&lt;/SPAN&gt;()!, onCompletion: { [&lt;SPAN&gt;&lt;STRONG&gt;unowned&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN&gt;&lt;STRONG&gt;self&lt;/STRONG&gt;&lt;/SPAN&gt;] success &lt;SPAN&gt;&lt;STRONG&gt;in&lt;BR /&gt;print(success)&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;on authentication, the app crashes with untraceable records, even in crashlaytics not getting the traces.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;-----------------------------&lt;BR /&gt;Debug Print&lt;BR /&gt;-----------------------------&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Response received : AFD7AF4F60A515551FD8332907BDA43BAA&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;DES Session Key Before - &amp;lt;ComNxpNfclibDefaultimplKeyData: 0x1056e7340&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;AES Session Key Data After - &amp;lt;ComNxpNfclibDefaultimplKeyData: 0x1056e7340&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;AES Session Key Data Array After - {length = 16, bytes = AES_KEY}&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;------ AES, {length = 16, bytes = 0xd7af4f60a515551fd8332907bda43baa}, {length = 16, bytes = 0xAES_KEY}, {length = 16, bytes = 0x00000000000000000000000000000000} ------&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jan 2025 14:58:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2032432#M94</guid>
      <dc:creator>sh4</dc:creator>
      <dc:date>2025-01-22T14:58:40Z</dc:date>
    </item>
    <item>
      <title>Re: Taplinx iOS read Desfire EV2 fails on authentication</title>
      <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2032484#M95</link>
      <description>&lt;P&gt;I had the same issue. Please see the answer in the following post:&amp;nbsp;&lt;A href="https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-app-reading-Desfire-EV2/td-p/2013086" target="_blank"&gt;https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-app-reading-Desfire-EV2/td-p/2013086&lt;/A&gt;&lt;/P&gt;&lt;P&gt;The short answer is: Disable Debugging when running the app in Xcode.&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Select the scheme that you are using to run the application&lt;/LI&gt;&lt;LI&gt;Edit Scheme&lt;/LI&gt;&lt;LI&gt;In the Info Tab, uncheck the Debug executable option.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jan 2025 16:19:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2032484#M95</guid>
      <dc:creator>Octopussy</dc:creator>
      <dc:date>2025-01-22T16:19:02Z</dc:date>
    </item>
    <item>
      <title>Re: Taplinx iOS read Desfire EV2 fails on authentication</title>
      <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2032559#M96</link>
      <description>&lt;P&gt;Debug executable option already disabled.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jan 2025 18:37:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2032559#M96</guid>
      <dc:creator>sh4</dc:creator>
      <dc:date>2025-01-22T18:37:54Z</dc:date>
    </item>
    <item>
      <title>Re: Taplinx iOS read Desfire EV2 fails on authentication</title>
      <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2032577#M97</link>
      <description>&lt;P&gt;Hello sir,&lt;/P&gt;
&lt;P&gt;Thank you for using our community.&lt;/P&gt;
&lt;P&gt;This is NXP's customer support, would you mind sharing if the crashing only happens when trying to read the DESFire card with authentication?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Can you read an NDEF of the card? It is also important to know what procedure are you following for configuring the card. The more information we have about your setup the better we can assist.&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jan 2025 19:23:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2032577#M97</guid>
      <dc:creator>Fabian_R</dc:creator>
      <dc:date>2025-01-22T19:23:43Z</dc:date>
    </item>
    <item>
      <title>Re: Taplinx iOS read Desfire EV2 fails on authentication</title>
      <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2033060#M98</link>
      <description>&lt;P&gt;in other functions, I am getting success, such as selectApplication, getApplicationId and others. but while authenticating, getting untraced crashes.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;func&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN&gt;tagReaderSession&lt;/SPAN&gt;(&lt;SPAN&gt;_&lt;/SPAN&gt; session: &lt;SPAN&gt;NFCTagReaderSession&lt;/SPAN&gt;, &lt;SPAN&gt;didDetect&lt;/SPAN&gt; tags: [&lt;SPAN&gt;NFCTag&lt;/SPAN&gt;]) {&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;guard&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN&gt;&lt;STRONG&gt;let&lt;/STRONG&gt;&lt;/SPAN&gt; tag = tags.&lt;SPAN&gt;first&lt;/SPAN&gt; &lt;SPAN&gt;&lt;STRONG&gt;else&lt;/STRONG&gt;&lt;/SPAN&gt; { &lt;SPAN&gt;&lt;STRONG&gt;return&lt;/STRONG&gt;&lt;/SPAN&gt; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;// Connect to the tag&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;session.&lt;SPAN&gt;connect&lt;/SPAN&gt;(&lt;SPAN&gt;to&lt;/SPAN&gt;: tag) { [&lt;SPAN&gt;&lt;STRONG&gt;weak&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN&gt;&lt;STRONG&gt;self&lt;/STRONG&gt;&lt;/SPAN&gt;] error &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;STRONG&gt;guard&lt;/STRONG&gt; &lt;STRONG&gt;let&lt;/STRONG&gt;&lt;SPAN&gt; self = &lt;/SPAN&gt;&lt;STRONG&gt;self&lt;/STRONG&gt; &lt;STRONG&gt;else&lt;/STRONG&gt;&lt;SPAN&gt; { &lt;/SPAN&gt;&lt;STRONG&gt;return&lt;/STRONG&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;if&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN&gt;&lt;STRONG&gt;let&lt;/STRONG&gt;&lt;/SPAN&gt; error = error {&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;session.&lt;SPAN&gt;invalidate&lt;/SPAN&gt;(&lt;SPAN&gt;errorMessage&lt;/SPAN&gt;: &lt;SPAN&gt;"Failed to connect: &lt;/SPAN&gt;\(error.&lt;SPAN&gt;localizedDescription&lt;/SPAN&gt;)&lt;SPAN&gt;"&lt;/SPAN&gt;)&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;return&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;switch&lt;/STRONG&gt;&lt;/SPAN&gt; tag {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;case&lt;/STRONG&gt;&lt;/SPAN&gt; .&lt;SPAN&gt;miFare&lt;/SPAN&gt;(&lt;SPAN&gt;&lt;STRONG&gt;let&lt;/STRONG&gt;&lt;/SPAN&gt; mifare):&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;let&lt;/STRONG&gt;&lt;/SPAN&gt; reader = TL_IOSNFCReader(uid: mifare.&lt;SPAN&gt;identifier&lt;/SPAN&gt;, historicalBytes: mifare.&lt;SPAN&gt;historicalBytes&lt;/SPAN&gt;!)&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self.&lt;SPAN&gt;handler&lt;/SPAN&gt; = TapLinxApduHandler(reader: reader)&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self.&lt;SPAN&gt;handler&lt;/SPAN&gt;?.&lt;SPAN&gt;delegate&lt;/SPAN&gt; = self&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self.&lt;SPAN&gt;tagManager&lt;/SPAN&gt; = TLLibraryManager.&lt;SPAN&gt;shared&lt;/SPAN&gt;()&lt;/P&gt;&lt;P&gt;self.&lt;SPAN&gt;tagManager&lt;/SPAN&gt;?.setApduHandlerWithApduHandler(self.&lt;SPAN&gt;handler&lt;/SPAN&gt;)&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;var&lt;/STRONG&gt;&lt;/SPAN&gt; desfireWrapper = TL_DESFireWrapper(libraryManager: self.&lt;SPAN&gt;tagManager&lt;/SPAN&gt;!)&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;(desfireWrapper)&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;desfireWrapper.setCommandSet(.Native)&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt; = self.&lt;SPAN&gt;tagManager&lt;/SPAN&gt;?.getDESFireEV2Instance()&lt;BR /&gt;&lt;BR /&gt;self.&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt;?.selectApplication(withAppID: &lt;SPAN&gt;Int32&lt;/SPAN&gt;(&lt;SPAN&gt;"0"&lt;/SPAN&gt;)!) { success &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;"selectApplication: success &lt;SPAN&gt;\(success)&lt;/SPAN&gt;"&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self.&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt;?.getApplicationIDs() { success &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;"Get application IDs: success &lt;SPAN&gt;\(success)&lt;/SPAN&gt;"&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self.&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt;?.selectApplication(withAppID: &lt;SPAN&gt;Int32&lt;/SPAN&gt;(&lt;SPAN&gt;applicationId&lt;/SPAN&gt;)!) { success &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;"selectApplication: success &lt;SPAN&gt;\(success)&lt;/SPAN&gt;"&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self.&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt;?.getKeyVersion(forKeyNumber: &lt;SPAN&gt;1&lt;/SPAN&gt;) { value, success &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;"Get key version: success &lt;SPAN&gt;\(success)&lt;/SPAN&gt;"&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self.&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt;?.getFileIDs() { value, success &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;"Get file IDs: success &lt;SPAN&gt;\(success)&lt;/SPAN&gt;"&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self.&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt;?.authenticate(withCardKeyNo: &lt;SPAN&gt;1&lt;/SPAN&gt;, withAuthenticationType: .&lt;SPAN&gt;AES&lt;/SPAN&gt;, withAuthKeyType: .AES128, withCommandSetForAuth: .ISO, withAuthkey: &lt;SPAN&gt;aesKeyData&lt;/SPAN&gt;, onCompletion: { [&lt;SPAN&gt;&lt;STRONG&gt;weak&lt;/STRONG&gt;&lt;/SPAN&gt; self] success &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;"authenticate: success"&lt;SPAN&gt;, success)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;if&lt;/STRONG&gt;&lt;/SPAN&gt; success {&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;self?.&lt;SPAN&gt;desFireEV2&lt;/SPAN&gt;?.readData(withFileNo: &lt;SPAN&gt;1&lt;/SPAN&gt;, withOffset: &lt;SPAN&gt;0&lt;/SPAN&gt;, withLength: &lt;SPAN&gt;4&lt;/SPAN&gt;) { data, success &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;"readDataWithFileNo: success &lt;SPAN&gt;\(success)&lt;/SPAN&gt; - data = &lt;SPAN&gt;\(data)&lt;/SPAN&gt;"&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;})&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;func&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN&gt;apduExchange&lt;/SPAN&gt;(&lt;SPAN&gt;withByteArray&lt;/SPAN&gt; apduData: &lt;SPAN&gt;Data&lt;/SPAN&gt;) -&amp;gt; TL_TagAPDUResponse? {&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;var&lt;/STRONG&gt;&lt;/SPAN&gt; dataToreturn = &lt;SPAN&gt;Data&lt;/SPAN&gt;()&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;let&lt;/STRONG&gt;&lt;/SPAN&gt; semaphore = DispatchSemaphore(value: &lt;SPAN&gt;0&lt;/SPAN&gt;)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;mtag&lt;/SPAN&gt;?.&lt;SPAN&gt;sendMiFareCommand&lt;/SPAN&gt;(&lt;SPAN&gt;commandPacket&lt;/SPAN&gt;: apduData) { data, error &lt;SPAN&gt;&lt;STRONG&gt;in&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;dataToreturn = data&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;semaphore.&lt;SPAN&gt;signal&lt;/SPAN&gt;()&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;_ = semaphore.&lt;SPAN&gt;wait&lt;/SPAN&gt;(&lt;SPAN&gt;timeout&lt;/SPAN&gt;: .&lt;SPAN&gt;now&lt;/SPAN&gt;() + &lt;SPAN&gt;3.0&lt;/SPAN&gt;)&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;let&lt;/STRONG&gt;&lt;/SPAN&gt; tl = TL_TagAPDUResponse(responseData: dataToreturn, tag: &lt;SPAN&gt;tagInfo&lt;/SPAN&gt;)&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&lt;STRONG&gt;return&lt;/STRONG&gt;&lt;/SPAN&gt; tl&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&amp;nbsp; &lt;/SPAN&gt;}&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jan 2025 09:07:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2033060#M98</guid>
      <dc:creator>sh4</dc:creator>
      <dc:date>2025-01-23T09:07:26Z</dc:date>
    </item>
    <item>
      <title>Re: Taplinx iOS read Desfire EV2 fails on authentication</title>
      <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2033219#M99</link>
      <description>&lt;P&gt;Hi!&lt;/P&gt;
&lt;P&gt;As you probably know, all documentation from MIFARE DESFire is available only under NDA, so we can not discuss any details here. However, i see a descrepancy here, that might solve the problem:&lt;/P&gt;
&lt;P&gt;you are using the authenticate command,&amp;nbsp;&lt;SPAN data-teams="true"&gt; withCommandSetForAuth: .ISO&lt;/SPAN&gt;&amp;nbsp;and try to use AES keys. This seems not to fit together. MIFARE DESFire supports several authentication methods, each resulting in different secure messaging modes and each using different keys ONLY (e.g. AuthenticateISO only can be used with 3DES keys. Its crucial to use the correct combination of key and authentication. All of this can be found in the datasheet of MIFARE DESFire. In case of deeper support needed, please open a ticket with our online support team that enables us also to discuss topics protected by NDA.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks,&lt;/P&gt;
&lt;P&gt;Br,&lt;/P&gt;
&lt;P&gt;Florian&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jan 2025 13:38:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2033219#M99</guid>
      <dc:creator>Florian_Mikulik</dc:creator>
      <dc:date>2025-01-23T13:38:55Z</dc:date>
    </item>
    <item>
      <title>Re: Taplinx iOS read Desfire EV2 fails on authentication</title>
      <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2036114#M102</link>
      <description>&lt;P&gt;Hi Florian,&lt;BR /&gt;&lt;BR /&gt;I checked with both&amp;nbsp;&lt;SPAN&gt;withCommandSetForAuth: .ISO, and .native but in both cases getting crash that are untraceable.&lt;BR /&gt;&lt;BR /&gt;Can you please share the link of the data sheet?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jan 2025 12:17:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2036114#M102</guid>
      <dc:creator>sh4</dc:creator>
      <dc:date>2025-01-30T12:17:03Z</dc:date>
    </item>
    <item>
      <title>Re: Taplinx iOS read Desfire EV2 fails on authentication</title>
      <link>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2036129#M103</link>
      <description>&lt;P&gt;hello,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For the datasheet, please log in at nxp.com, and then request secure file access for your account. This will only be possible if an active NDA with nxp is in place. If you do not have an active NDA, please request one in the support section of nxp.com.&lt;/P&gt;
&lt;P&gt;Only once this is in place, the datasheet can be provided to your account.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;regards,&lt;/P&gt;
&lt;P&gt;Florian&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jan 2025 12:48:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/TapLinx-SDK-TagWriter-and/Taplinx-iOS-read-Desfire-EV2-fails-on-authentication/m-p/2036129#M103</guid>
      <dc:creator>Florian_Mikulik</dc:creator>
      <dc:date>2025-01-30T12:48:11Z</dc:date>
    </item>
  </channel>
</rss>

