locked
Creating a unique key for a software that can be used oly once. RRS feed

  • Question

  • Hi there,

    Im have created a software application which is windows based. Soon im going to make it live. Means my clients will be able to use it after they download it from my website. Also to mention i have made the software in a way that it works only with the key that i provide. Initially its gonna be a free trial.

    Here im generating 35 digit key and its a unique one. Means once the user requests me for the key and i send him/her the key, he/she may be able to use my application. But the real problem arises from here.

    I want the code to be used only once.

    Ex: If my application is downloaded by the user, he can use the key to use my application but the same key cannot be used by any one else. Lets suppose my key is xxx the same code xxx should not work for any other person who has downloaded my application. Just to make the software to be used only by genuine users.

    i have also gone through this link

    http://social.msdn.microsoft.com/Forums/zh/winformssetup/thread/301913a0-ecf9-4095-8d66-a3f4baeea6eb

    by Danny Staten

    I still haven't met my requirements.

    First of all i thought to get the Ip address of the person who is registering to download my application and based on that i can limit my key to be used only by the person whose ip address would be stored in my database. But i think it would be wrong/ unnecessary process. And to use my application the persons network cable should have been plugged each and every time. But it wouldn't solve my purpose.

    Secondly i thought of creating a process of the application pinging to my server or to me.

      Like initially when the user runs the application(online or offline) the application should work, but as soon as he connects the network cable/plug to network an alert should be provided to my server or to me. And from my side i can make a check if the user is using the key that i have provided to him. If in either way the user is not genuine i should be able to stop him from using my application anymore. From my side i have decided to store the keys inside the database which have been provided by me. And each requested keys in another table. Im not sure if im going the right. But as of now this is the thing that has come into my mind.

    But to summarize, in the end i want that a key should be used by only one user. Just to avoid a million different users using my application with a single key.

    Im not sure with any idea that i have provided.

    Now is there a way i can achieve tat?

    • Moved by Annabella Luo Friday, August 24, 2012 9:02 AM (From:Windows Presentation Foundation (WPF))
    Friday, August 10, 2012 10:57 AM

Answers

  • Create a WCF service, make sure when logs in or in regular interval try to check, whether you will be able to access the service, if you can do successfully with return values then  it means he is connected on the internet

    __________________________________________________________________________

    Do Vote the response and Propose the answer for the same

    Sunday, August 12, 2012 2:58 PM

All replies

  • Create a WCF service, make sure when logs in or in regular interval try to check, whether you will be able to access the service, if you can do successfully with return values then  it means he is connected on the internet

    __________________________________________________________________________

    Do Vote the response and Propose the answer for the same

    Sunday, August 12, 2012 2:58 PM
  • Hi Vikneshwar,

    Thank you for your post.

    Due to your issue is not a WPF specific one, so I'm moving your thread so that you can in a correct chanel to get a better help.

    Thank you for your understanding and support.

    Have a nice day.


    Annabella Luo[MSFT]
    MSDN Community Support | Feedback to us

    Friday, August 24, 2012 9:01 AM