title: ISO 14443-3 anti-collision protocol is not correct
body: <p>I've been recently rewriting ISO 14443-3 anti-collision loop and found out that it is actually not correctly defined in the standard.</p>
  <p>Example: two cards in the field will enter anti-collision loop:</p>
  <ol>
  <li><p>card uid = <code>AB CD EF GH IJ KL xx xx xx</code> (10 bytes/tripple size UID)</p>
  </li>
  <li><p>card uid = <code>AB CD EF 88 GH IJ KL</code> (7 bytes/double size UID)</p>
  </li>
  </ol>
  <p>They will both get into anti-collision cascade level 2 where:</p>
  <ol>
  <li><p>will transmit: UID CL2 = <code>88 GH IJ KL</code> - as <code>88</code> is the cascade tag indicating that its UID is longer</p>
  </li>
  <li><p>will transmit: UID CL2 = <code>88 GH IJ KL</code> - as its actual UID</p>
  <p>=&gt; no colision.</p>
  </li>
  </ol>
  <p>PCB will send SELECT and both cards will respond with the SAK where there will be a collision in bit2.</p>
  <p>The ISO/IEC 14443-3 standard does not says anything about forbiding uid[3] to be <code>0x88</code>, only uid[0] is forbidden to be <code>0x88</code>.</p>
  <p>Am I right or did I miss something? I know it is very low probability (1 : 2^56) that two such cards appear in the field at the same time. But nevertheless it is not correct (and the general director of the company I am working for will definitely come to look at what we are doing with two such cards in his wallet).</p>