A method for enabling a software application (12,14) to be executed on a mobile station in dependence of a subscriber identity module of the mobile station, the method characterised by, at runtime of the software application: inputting challenge data originating from the software application (12,14) to the subscriber identity module; generating first response data in the subscriber identity module, wherein the subscriber identity module is configured to perform a first security function based on data which is uniquely associated with the subscriber identity module and wherein the first response data is generated using the first security function with the challenge data as input to the first security function; transmitting the challenge data from the mobile station to a verification server; generating second response data in the verification server in dependence of the challenge data; and enabling the software application (12,14) to be executed in dependence of the first response data and the second response data; wherein the software application comprises a first secured software part, a second secured software part and an inverse module, wherein the challenge data comprises at least a part of runtime data of the software application at the end of the first secured software part when being executed in the mobile station, and the method further comprises: inputting the challenge data to a cryptographic function of the verification server; obtaining intermediate data from the cryptographic function using the challenge data and a first key as input to the cryptographic function; transmitting the second response data from the verification server to the mobile station, wherein the second response data is based on the intermediate data; inputting the second response data or a derivation of the second response data to an inverse cryptographic function in the inverse module to thereby obtain an inverted response data using a second key, wherein the inverted response data comprises the challenge data if the inverse function and the second key in the inverse module matches the cryptographic function and the first key in the verification server; and providing the inverted response data to the second secured software part to enable further execution of the software application. inputting challenge data originating from the software application (12,14) to the subscriber identity module; generating first response data in the subscriber identity module, wherein the subscriber identity module is configured to perform a first security function based on data which is uniquely associated with the subscriber identity module and wherein the first response data is generated using the first security function with the challenge data as input to the first security function; transmitting the challenge data from the mobile station to a verification server; generating second response data in the verification server in dependence of the challenge data; and enabling the software application (12,14) to be executed in dependence of the first response data and the second response data; wherein the software application comprises a first secured software part, a second secured software part and an inverse module, wherein the challenge data comprises at least a part of runtime data of the software application at the end of the first secured software part when being executed in the mobile station, and the method further comprises: inputting the challenge data to a cryptographic function of the verification server; obtaining intermediate data from the cryptographic function using the challenge data and a first key as input to the cryptographic function; transmitting the second response data from the verification server to the mobile station, wherein the second response data is based on the intermediate data; inputting the second response data or a derivation of the second response data to an inverse cryptographic function in the inverse module to thereby obtain an inverted response data using a second key, wherein the inverted response data comprises the challenge data if the inverse function and the second key in the inverse module matches the cryptographic function and the first key in the verification server; and providing the inverted response data to the second secured software part to enable further execution of the software application. inputting the challenge data to a cryptographic function of the verification server; obtaining intermediate data from the cryptographic function using the challenge data and a first key as input to the cryptographic function; transmitting the second response data from the verification server to the mobile station, wherein the second response data is based on the intermediate data; inputting the second response data or a derivation of the second response data to an inverse cryptographic function in the inverse module to thereby obtain an inverted response data using a second key, wherein the inverted response data comprises the challenge data if the inverse function and the second key in the inverse module matches the cryptographic function and the first key in the verification server; and providing the inverted response data to the second secured software part to enable further execution of the software application.