Hi,
I'm having a problem with protecting SLIX2 by a write password from overwriting. Even when I protect the page I am able to overwrite the tag with Android NXP Tag Writer, which makes me think that I didn't protect all the pages correctly.
Here's the code that I am using:
tag.getReader().connect();
randomNumber = tag.getRandomNumber( NFCV_FLAG_DATARATE | NFCV_FLAG_ADDRESS);
xored_password = CustomModules.getUtility().xor(CustomModules.getUtility().append(randomNumber, randomNumber),{0, 0, 0, 0});
tag.setPasswordRead(xored_password, NFCV_FLAG_DATARATE | NFCV_FLAG_ADDRESS);
tag.setPasswordWrite(xored_password, NFCV_FLAG_DATARATE | NFCV_FLAG_ADDRESS);
for (int i=0;i<79;++i) { // based on SLIX2 docs there's 79 blocks, i've also tried to use 2 "pages" but it's not better
tag.protectPage((byte)i, (byte)0x10, NFCV_FLAG_DATARATE | NFCV_FLAG_ADDRESS);
}
tag.writePasswordWrite(newPassword, NFCV_FLAG_DATARATE | NFCV_FLAG_ADDRESS);All of the above functions succeed, yet it's possible to break the tag without write password.