EA protection by license code
-
I want to be able to provide a license key that has to be filled in as input parameter that converts to and account number that can be used as check if the EA can be used or be terminated. The logic to program that would be to use Condition/Login number. I am looking for a way to use an algorithm that converts a account number to a license that I can provide to my users of my EA. So they supply me the account number on which they want to use my EA, I run it through an algorithm an this gives a key (the license key that I supply back). My EA uses that same (secret) algorithm to convert the supplied license number to an account number that can be used to validate it's use.
Do you have examples on how to do that ? I imagine this is by using a custom piece of code that should be used for that. Any help on this is appreciated. -
Condition number == number if not terminate, this process can also be used to check account number
-
Let me elaborate on what I am looking for. I want to use the FXD function block to check the account number on which the EA is running BUT I want the EA user send me the account number he wants the EA to work on. I use a algorithm (external to the EA) that generates from the (account) number that the EA user is telling me, a 'license' code. This code I am sending back to the user that he can use as input parameter to the EA. Within the EA I use the same algorithm logic that generates back, from this license code, the account number that I used to generated the license code.
So is there a standard (hash) functionality in FDX that I can feed with a license code that outputs a number (that is an account number) ? or how would I implement this method? In this way I can use one single compiled EA and distribute that, instead for each account number one unique compiled EA. So in this way I control on which account number the EA can be used. -
@doeveR
What you mean may be a standard private key and public key concept. Use a public key to lock and then a private key to unlock.It is not difficult but quite technical. Maybe ChatGPT can help in this case.
-
Ah yes, that is correct. The public key would be the account number that is used in the EA that allows the EA user to use the EA on the account number they send me and the private key is generated inside the EA using the license code that is supplied. Is that correct or the other way arround
? -
@doeveR
Not quite. A public key is used to combine with the account number to create the licence code. The private key, on the other hand, is the one in your EA to check the licence code -
ChatGP has helped me a lot but it tells me: Functions like Base64Decode and AES_decrypt should be declared outside the Custom Code block, in the global area of your EA (i.e., before the OnInit() or OnTick() functions). Do you have any idea what that means ?
-
I'm currently building similar and i have the answer/figured it out. The only thing holding me back is not being able to store the response of a http request to my database, anybody know how to store responses of http requests? i have been trying for days but cannot figure this out