A medical system comprising: an external medical device programmer comprising control circuitry and a wireless communications module for sending instructions selected from a set of instructions wirelessly to a specific implanted medical device, the set of instructions comprising restricted and non-restricted instructions, wherein restricted instructions include one or more of a system reset, a firmware update and reloading of software onto the implanted medical device; and a remote key authority configured to evaluate requests for permission received from the external medical device programmer; the external medical device programmer configured to receive input from a system user regarding which instructions from the set of instructions are to be delivered to the specific implanted medical device; the external medical device programmer configured to determine if the user input directs delivery of restricted or non-restricted instructions to the specific implanted medical device and to request permission from the remote key authority if the user input directs delivery of restricted instructions to the specific implanted medical device; the remote key authority configured to send a digital key to the external medical device programmer if the remote key authority grants permission to the external medical device programmer; and the external medical device programmer configured to receive the digital key from the remote key authority if permission is granted, the digital key effective to allow the external programmer to send restricted instructions to the specific implanted device, wherein the digital key is effective for a limited period of time. an external medical device programmer comprising control circuitry and a wireless communications module for sending instructions selected from a set of instructions wirelessly to a specific implanted medical device, the set of instructions comprising restricted and non-restricted instructions, wherein restricted instructions include one or more of a system reset, a firmware update and reloading of software onto the implanted medical device; and a remote key authority configured to evaluate requests for permission received from the external medical device programmer; the external medical device programmer configured to receive input from a system user regarding which instructions from the set of instructions are to be delivered to the specific implanted medical device; the external medical device programmer configured to determine if the user input directs delivery of restricted or non-restricted instructions to the specific implanted medical device and to request permission from the remote key authority if the user input directs delivery of restricted instructions to the specific implanted medical device; the remote key authority configured to send a digital key to the external medical device programmer if the remote key authority grants permission to the external medical device programmer; and the external medical device programmer configured to receive the digital key from the remote key authority if permission is granted, the digital key effective to allow the external programmer to send restricted instructions to the specific implanted device, wherein the digital key is effective for a limited period of time.