Protect KML file from download or access

I am trying to protect my KML file from loading or its extracted data. All I want is a file that needs to be viewed on Google or Google Earth maps, but no one can download it or extract the data β€œeasily” (the kml file will not be publicly available). My kml files are the result of a deep and exclusive analysis, which is the signature that I want to hide from competitors.

There are also alternatives for converting kml to a format that cannot be obtained from it. My KML files have polygons in 3D.

I understand that the concept of everything that can be seen can be somehow loaded or retrieved,

+8
security google-maps kml google-earth data-protection
source share
4 answers

I have 4 answers or 0 answers, depending on your project.

  • Using Google Maps Api for Business (~ $ 10,000 per year), you can create a customer ID and use it to protect the Fusion table (can create on Google Drive), where you can import your KML and which you can then display using Google Maps Api. This would be an ideal solution, but without Google Maps Api for Business, your Fusion spreadsheet is not secure, and anyone can access this on Google Drive and browse and copy paste the Kml representation of the polygons.

  • Using the Google Maps Engine (/ Lite) , you can import your Kml for Google (if you use Lite, first you need to import My Maps into Google and from Google Maps Engine Lite you can then import from My Maps). I do not know the price of non-lite. The map of the Google Maps engine can be used together, so it can only be viewed in this only visible version, I have not found a way to download or view the raw-kml data that we want. It sounds good, but you are limited to 3 layers in Maps Engine Lite, and I have not found a way to import all my polygons (areas in my case) into one layer at a time. I can import them in different ways, as it seems (I managed to import 10 polygons with a total of 353 points in one layer). Each import leads to one layer, cannot move things from one layer to another, and for some reason there are several polygons that I cannot import. Edit :
    I can import all polygons, one polygon (due to the algorithmic simplification of my polygons) received an intersection (line intersection), and as soon as I fixed this part, the import no longer produced any errors, but now I see that I can only insert this map using an iframe with legend enabled, so this solution means nothing to me.

  • Limit access to KML on the server on Google servers only with the whitelist of Google Maps servers that your KML may request. Problem: I can’t find such a list on the Internet ... you need to put together some of them first of all.

  • There are also blog entries Protecting KML Files from Public Access on Google Maps and Protecting KML / KMZ Files from Unauthorized Access using Cryptography

+2
source share

Your question is based on a computer security bug known as "security through obscurity." The fallacy is this. You say you do not want it to boot "easily." You can do it hard, but as long as it's possible, as soon as one person finds out, they write a script to do it automatically, and then "easily." There is no answer to your question, because it is impossible. Any content that you provide is pirated and any data can be recovered.

0
source share

Why not just save the kml file and cut / paste to a disk with an encrypted password USB-drive, for example, Kingston or Kanguru. Then just open kml from your USB drive.

0
source share

you can check the variable $_SERVER["HTTP_USER_AGENT"] , and if it is from google, then generate kml from php.

 $agent = "Kml-Google"; $google = strpos($_SERVER["HTTP_USER_AGENT"], $agent); ($google !== FALSE) or die; header('Content-Type: application/vnd.google-earth.kml+xml kml'); header('Content-Disposition: attachment; filename="otras.kml"'); ?> <?xml version="1.0" encoding="UTF-8"?> <kml xml ... 
0
source share

All Articles