If you give the key to every government that demands it (USA, UK, France, Germany, Japan... ), and every agency (CIA, NSA, FBI, DHS, DEA...) then how long will that remain secure? The key will leak and then you have no security.
You only give it to the government entities your country is asking you to. Heck, you could even encrypt each user's data with their own government's key.