NFC shield for access control

Hi everyone,
I am currently using Arduino with NFC shield V2.0 from SeeedStudio.
I am working to identify a card and allow it to access something.
My progress at the moment is that I can work with Mifare Classic card and identify the card by its unique ID (UID) , but it seems that the UID of the card can be read by any readers (or I do not know how to prevent this stop happening), and since it depends on the UID, it can be cloned by UID writable card from China
I intend to use Mifare Ultralight C instead since it supports 3DES for security. But I don't know what this 3DES can do to enhance the security after searching around. I think that it will protect not to authenticate the card to read info insinde (read UID) unless the card and the reader do not share the same "secret" keys.
And I knew that for Mifare Ultralight, the shield will have to read differently with Mifare Classic. So do anyone have the library to work with Mifare Ultralight C for Arduino?
Can anyone give me advice, what I should do next?

stop cross posting

make a real design how you want the system to work first and seek the hardware then.

Security aplications are really hard, even for professionals.
You might do an investigation in triple DES (which is already broken IIRC by brute force attacks).

What is the function of the card-ID?

  • authentication (am I who I say I am)
  • authorization (what am I allowed to do)
  • accounting (what did I do)

Hi,
I am using 3DES, but I do not know how to write into Mifare Ultralight C tag from NFC shield of Seeedstudio, the given code is only for Mifare Classic 1K. And I don't know where to start with Host-based card emulation since I also want to use the phone to access.