I have created a map for using with GPS devices. The map is copied to a microSD card and then, GPS can read the map data from the card. How can I create copy/clone protection of my data on microSD cards? Because my business depends on it.

  • Of data? Of some common, open format? Practically impossible. The way you protect data (temporarily) is by using a proprietary format, and creating your own programs or hardware to run it (you get better results if you make the hardware). For non-connected devices (ie, standard GPS receivers) there's nothing you could conceivably do to prevent people sharing some sort of unlock key. Who provides the card? What happens if somebody gets a new GPS unit, are they supposed to buy a new copy of your map? Commented Apr 9, 2015 at 11:12
  • 1
    By its very nature, data on an SD card is meant to be read. Unless you control the program reading the file, you cannot do anything with the file that would protect it in any way. In other words, if you make the GPS units, or the GPS software, you could perhaps integrate a solution that would tie the data to the unit at hand, at the very least make it more difficult to get the data working on another unit. If the map data is read by 3rd party software, you have no way to secure it. Commented Apr 9, 2015 at 12:49

3 Answers 3


I think the OP is after the DRM protection built into SD cards: http://en.wikipedia.org/wiki/Secure_Digital

Thats why they're called "SD" as in "Secure Digital".

The access to the DRM encoding Equipment for SD cards is limited to those buying a license, so I would suggest you Contact the SD Association for purchasing a license: http://www.sdcard.org/

This DRM protection can perform a challenge-response type of authentication before allowing access to the content on SD-card, which will be encrypted during transmission. Preferably, your GPS device will contain a "smart card chip" containing keys, and your map SD card will communicate with this chip to create a encrypted channel. Then you could generate symmetric keys using a secret algorithm based on the GPS device's serial number + a secret master key as input. The master key is only stored in your production equipment.

When a customer wants to purchase a map, they will have to specify the GPS device serial number, they will then be sent a SD card tailored for that GPS device.

  • Hunh, didn't know about that feature, good find. Of course, then he still has some other problems: 1) has to purchase and implement an encryption license. 2) Limited in what GPS devices can be used, and potentially who is willing to work with you. 3) Required to read from SD card (can't permanently load to device) 4) Have to sell/ship (potentially unique) physical goods. A cursory check shows at least Garmin to be using this feature, dunno about any other company Commented Apr 10, 2015 at 4:05
  • You can permanently load it into device too. You just need to have some sort of secure storage inside the GPS device too. You could also sell the GPS file encrypted by a unique key inside each GPS device, but there is higher risk that such a scheme is cracked. Commented Apr 10, 2015 at 16:25
  • If you load it to the device, you'd have to erase it from the card (or they could load it into a different device) Commented Apr 11, 2015 at 1:56
  • No. Note how I did mention that you ask for the GPS device's serial number at sale, preventing the SD card from being used with a Another device. You can also have a system where the SD card "marries" with the first device it sees. Commented Apr 14, 2015 at 11:18
  • @Clockwork-Muse Good find? Its like the only real defining difference between SD and MMC.
    – Aron
    Commented Jan 27, 2016 at 10:40

At best you can do obfuscation of the data with some crypto. The key will have to be stored somewhere in the program then, so it can be reversed. Making a foolproof DRM to prevent copying is not possible. Many have tried, all have failed.


Not sure any here have nailed exactly how SD cards secure data.

My take on how it works is that the SD card itself is the secure device and cannot be cloned by normal methods. The software is tied to that particular card which has embedded code in an unwritable section which is read by the software. Good luck finding and changing that part of the code in the software which itself can be obfuscated such that only the most knowledgeable could attempt a hack if it was even worth it.

A European map and GPS manufacturer have been using this technique for years for handhelds and especially their premium marine-based maps and equipment.

An Australian digital map seller uses the same tech. Its damn near foolproof really and I wonder why Garmin don't use it but my guess is it haven't suffered greatly profit-wise since their 25 digit software code was cracked a few years ago. The real money is in the hardware I believe.

  • Additionally SD cards have a flag named COPY in the card specific data register (CSD). This can only be programmed once. Many devices that accept updates (e.g. maps) will set the COPY flag at the end of a successful update, preventing the SD card from being used again. It can still be read fine in a computer (if using a normal file system) but devices will refuse to update from it.
    – David
    Commented May 22, 2019 at 19:17
  • Interesting; I was under the impression that the DRM capabilities were never actually used.
    – Sparkette
    Commented Feb 16, 2022 at 20:13

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .