Re: best way to implement unlock features in app
If you want some kind of control on the user experience, you can use PotionStore[2] to build the online-store and CocoaFob[1] to integrate with your app. I haven’t used them myself, but judging from the code they seem to be simple enough to use and take most of burden off of yourself. [1] https://github.com/glebd/cocoafob [2] https://github.com/potionfactory/potionstore > On 6 Νοε 2014, at 16:40, sqwarqDev wrote: > > >> On 6 Nov 2014, at 21:31, Bill Cheeseman wrote: >> >> >> One answer, which I prefer, is to contract with a commercial e-commerce >> provider. > > > Thanks, Bill. I had looked at Kagi in the past, but I didn't realise > e-commerce providers would actually help with incorporating all the necessary > the code. That's a weight off. > > Like yourself, I'm equally not worried about paying the commission, and it > sounds like good value for money. > > Thanks for the tip. > > > Phil > > > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/akiskesoglou%40gmail.com > > This email sent to akiskesog...@gmail.com ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: best way to implement unlock features in app
On 6 Nov 2014, at 16:53, sqwarqDev wrote: I didn't understand this bit though: If you do not need to encrypt a payload (as in my post) then I suggest making the license be just a serial number followed by a signature on that number (maybe include a short hash of the owner name) If anyone can link me to a tutorial on how to create these signatures and hashes, that'd be really useful. The blog post does give a step-by-step example of creating a hash of the owner name and then encrypting that with a private key (which is basically what a signature is). Apple’s recommended API for the latter is documented here: https://developer.apple.com/library/mac/documentation/security/Conceptual/SecTransformPG/SigningandVerifying/SigningandVerifying.html For creating a hash, you should probably use the CommonCrypto API. Googling for this returned a blog post by Mike Ash: https://www.mikeash.com/pyblog/friday-qa-2012-08-10-a-tour-of-commoncrypto.html ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: best way to implement unlock features in app
> On 6 Nov 2014, at 22:35, Allan Odgaard wrote: > I wrote this post about the general principles of a secure license key > scheme: > http://sigpipe.macromates.com/2004/09/05/using-openssl-for-license-keys/ Ahh nice. Thanks. That's the kind of nitty gritty I've been looking for and struggling to find. I'll probably go more towards Bill's suggestion in the end, but I love getting an understanding of this low level stuff works. I didn't understand this bit though: > If you do not need to encrypt a payload (as in my post) then I suggest making > the license be just a serial number followed by a signature on that number > (maybe include a short hash of the owner name) If anyone can link me to a tutorial on how to create these signatures and hashes, that'd be really useful. TIA ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: best way to implement unlock features in app
On 6 Nov 2014, at 15:00, sqwarqDev wrote: […] I can't find any guidance on exactly how do I generate and test for valid licence keys at run time? I wrote this post about the general principles of a secure license key scheme: http://sigpipe.macromates.com/2004/09/05/using-openssl-for-license-keys/ Today you shouldn’t rely on openssl (as it’s deprecated on OS X). If you do not need to encrypt a payload (as in my post) then I suggest making the license be just a serial number followed by a signature on that number (maybe include a short hash of the owner name) — this should give a shorter license key and is also a more commonly supported operation of crypto libraries (generating a digital signature). ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: best way to implement unlock features in app
> On 6 Nov 2014, at 21:31, Bill Cheeseman wrote: > > > One answer, which I prefer, is to contract with a commercial e-commerce > provider. Thanks, Bill. I had looked at Kagi in the past, but I didn't realise e-commerce providers would actually help with incorporating all the necessary the code. That's a weight off. Like yourself, I'm equally not worried about paying the commission, and it sounds like good value for money. Thanks for the tip. Phil ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: best way to implement unlock features in app
> On Nov 6, 2014, at 9:00 AM, sqwarqDev wrote: > > I have a reasonably well-developed free OS X app (i.e., by well-developed I > mean I've got a stable user base), and I'm now wanting to add extra features > that require purchasing a licence. This seems a common model, but I can't > find any guidance on exactly how do I generate and test for valid licence > keys at run time? One answer, which I prefer, is to contract with a commercial e-commerce provider. I use eSellerate, a Digital River company, but others like Kagi are also available. They handle credit card, PayPal and similar processing and foreign currency exchange for you, and they normally produce the license keys and issue them for you. In the case of eSellerate, they provide OS X frameworks that you incorporate into your application to allow in-app purchase over the Internet and/or an Internet "Buy Now" button that you can incorporate in your website. You can choose from a variety of ways to have your application check the vailidity of a user's key, including online validity checks that are completely invisible unless the key is invalid or has been blackballed (these systems seem to handle the user being offline occasionally just fine). They charge varying fees, perhaps something like 8% for an application with a modest customer base. I am delighted to pay this fee for the service I get -- I have no interest in figuring out how to implement a registration key issuing and monitoring framework myself. You normally do have to write some code to integrate the e-commerce provider's software into your application, if you support in-app purchase. The eSellerate software comes with a very detailed programmer's guide and example code that makes the process reasonably easy. -- Bill Cheeseman - b...@cheeseman.name ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com