11 ms·
Show HN: Keygen – A dead-simple software licensing API built for developers
- fermion_now 9y agoThis doesn't look like a product I'd use myself (web dev) - but I'm sure a lot of native developers will find it useful. I really like the landing page - particularly the section with examples in different programming languages. I'd maybe suggest a little more copy on uptime-related matters. I see you have a status page, maybe link to this a little more prominently? Good luck!
- beefhash 9y agoThe developer(s) of this may really want to rethink the name. Not only is it pretty un-googleable due to other, older results likely taking priority, it's also likely that a potential customer accidentally lands on a website full of malvertising. That aside, the word "keygen" is probably morally negative to many people. The technology looks fascinating, however.
- ezekg 9y agoFounder here--appreciate the feedback! The name is both tongue-and-cheek as well as an attempt to redeem the word. Years from now, you might search ”keygen for X” and be shown pages of results related to this product instead of pirated software. And since the product is primarily geared towards developers, I think it works (and also invokes a little curiosity). Also, I haven't seen any SEO issues thus far, especially since I'm not really trying to rank for searches that contain ‘keygen’ right now.
- _e 9y agoI like the name and the TLD. It definitely got my attention. For UI, try IBM code page 437 and include a cracktro.
- TylerE 9y ago> Years from now, you might search ”keygen for X” and be shown pages of results related to this product instead of pirated software. Care to bet money on that? That's rather shocking hubris.
- ezekg 9y agoNot really... but what's the point of starting a business if you don't believe in it? I wasn't stating it as fact; it was more of a 'wouldn't this be cool' statement--sorry if I came off wrong.
- _e 9y agoActually, this gave me an idea. The founder of keygen.sh can generate landing pages advertising cracks/serials/keygens for download on tons and tons of different software. When the search engines index these landing pages, whoever has an alert setup to monitor their products will get a notification about your website. Let google automate your marketing. The other benefit is that you can use your logs as a sales tool when pitching your product to developers. "Hey Developer, 38 people came to <<url>> today looking for a crack/serial to your <<software name>>." Hopefully those developers will then visit your page for more information which turns into a sale.
- rl3 9y agoThis is brilliant in principle. However, does it run afoul of acceptable SEO practices? Namely those covering autogenerated content.
- _e 9y agoThank you. It would come down to execution. One way to solve that is to track "scene releases" [0] and download the releases for software you think could become keygen.sh customers. Then reverse engineer the cracks or patches and document the process. Next, show how keygen.sh would have prevented this cracking technique. Now you have original content that will help you sell keygen.sh. A byproduct of this will continuously give you ideas on how to improve keygen.sh. It is very important to note that keygen.sh or any licensing platform will ever be uncrackable but if you can delay the time software gets cracked by a week or two then it could possibly translate into more sales for the keygen.sh customer. At the end of the day, it is on the keygen.sh customer to sell their product and keygen.sh to delay the release of a crack for it. [0] https://torrentfreak.com/27-years-of-warez-scene-release-info-leaked-in-giant-database/ https://torrentfreak.com/27-years-of-warez-scene-release-inf...
- brobinson 9y agoI'm worried about SMB and corporate firewalls blocking access to your site just because of the presence of the word "keygen". Very, very nice-looking site, though!
- ezekg 9y agoGood thing I'm focusing on small- and medium-sized businesses right now, not enterprise. :)
- ythn 9y ago> Not only is it pretty un-googleable due to other, older results likely taking priority Is there a name for this phenomenon? The creators of Angular fell victim to this effect. They changed around the naming so that "Angular" is supposed to refer to versions 2.X+ and "AngularJS" refers to versions 1.X, but unfortunately the search engines are all poisoned such that "Angular" searches lead you to 1.X results, etc...
- tmsldd 9y agoI refer to this as "GCC - Google ConfliCt".
- KenanSulayman 9y agoNot to sound too negative, but NOPing out the invocation bypasses the licensing. At least in the native version. I like approaches where parts of the app are downloaded after licensing went through and the license key is actually a public key. But maybe I’m missing the point?
- X-Istence 9y agoNOP'ing out the invocation has always been an issue. There are a variety of frameworks for the Mac that make license keys using public/private key pairs, and a simple change to the ASM to return early and report success is easy enough to do. There is: https://github.com/glebd/cocoafob https://github.com/glebd/cocoafob For example, there is one other one that I can't remember the name for off the top of my head.
- gruez 9y agoThe respectable frameworks I've seen also offer obsfucation/virtualization to deter tampering. Thats the harder and more critical part.
- timvdalen 9y agoI think the point you're missing is that this is designed to be used on the server-side so you don't have to roll your own licensing. It seems to be mainly for APIs that provide a service, not for protecting client-side applications.
- c0wb0yc0d3r 9y ago> It seems to be mainly for APIs that provide a service, not for protecting client-side applications. I'm not so sure about that, right at the top of the page is has the line: "For licensing desktop apps, on-premise software, and other digital products." That certainly sounds like it is meant for client side applications. The FAQ seems to indicate that it's meant for client side apps as well.
- 9y ago
- timvdalen 9y agoPrevious discussion: https://news.ycombinator.com/item?id=12870031 https://news.ycombinator.com/item?id=12870031
- ezekg 9y agoFounder here--I definitely recommend reading through that thread if you have time. That was back whenever this was simply an idea in my head (scratching my own itch) and I created a landing page for it to gauge interest. I admit that I didn't handle myself/answer questions as well as I could have in that thread (confusing cracking w/ key generation was embarrassing--and I do know the difference--but nerves got the best of me a few times in that thread so I didn't read things as well as I should have). I honestly didn't expect to hit the front page so was a little thrown off/overly excited because of it. ;P Anyways, I launched Keygen last month after a 3-month beta and am stoked to get some more feedback from HN now that the product is real. I put a considerable amount of work into the documentation (and the design), so be sure to look around!
- timvdalen 9y agoI will definitely check it out - I had Keygen bookmarked from that thread back then so I could play with it once it launched.
- r1ch 9y agoThe hard part with software licensing is making it resistant to cracking. This doesn't attempt to make things difficult, it would take under an hour to crack any app that uses this for licensing. I suppose the target for this service are app developers who don't have their own website / server infrastructure. It seems trivial to issue your own license tokens and have clients check in with your website for an OK / BAD response.
- etwigg 9y agoI sell a niche desktop application to engineering companies. They self-police themselves pretty well - we're really not concerned with them cracking our software at all. We built our own stupid-simple licensing system. True, it wasn't that hard, but it would totally be worth $100/mo to have this maintained by somebody else, so we could focus only on our product. Their competition (FlexLM, etc) is horrific. This looks much better.
- gfody 9y agoFlexLM is horrific and does terrible things like stashing data in unused/unformatted areas of your disk as well as dropping litter all over the registry and filesystem. I have to use Tableau which I actually really like but because it uses FlexLM that shit will never touch my bare metal.. VM only.
- dfox 9y agoThe part that does this is not FlexLM itself, but safecast with which it is frequently bundled, but many specialized engineering products use only FlexLM without additional DRM layer (FlexLM itself is originally meant for Unix and mostly portable, Safecast is probably Windows-only). On the other hand many things use FlexLM only to provide node-locking which is thing that it can do, but is to some extent an afterthought. The thing was originally designed to be used over network to provide floating licensing, with some minimal resistance to cheating and cracking. In fact it seems that it's original author(s) (wikipedia says that the whole "team", but it mostly looks like one guy) got fed up with managment and marketing so much that he went on to implement and sell RLM on their own, which mostly seems like slightly better FlexLM without completely nonsensical features.
- dgudkov 9y agoOffline mode still not available?
- ezekg 9y agoSince my initial product is an API, it's going to have limited support simply due to the nature of the product. You can set up licenses to require periodic check-ins (e.g. phone check-ins or something similar via an online form may work), but other than that, Keygen needs a periodic internet connection. How would you envision Keygen working offline?
- asmosoinio 9y agoNot OP, but something like like: 1. Receive code in an email 2. Enter code in app X to license 3. Use app X So maybe a scenario you purposely are not supporting
- ezekg 9y agoDefinitely a popular choice. There are open source libararies for public/private key license validation (CocoaFob is a popular one for macOS), and I don't really think this aligns with the current product i.e. the API. Maybe in the future I can expand if there's demand for it, but I'm not sure what I could offer that the open source community can't already offer. :)
- jetti 9y ago> I'm not sure what I could offer that the open source community can't already offer. Support! Offering support when things go wrong is huge.
- dgudkov 9y agoCustomer logs into a web portal and pastes some hash generated by his/her instance. Then downloads a generated license key for offline use. Alternatively, a license manager installed on-premises that dispatches licenses locally based on a master license key. PS. Internet connection is frequently not available for enterprise software.
- ianamartin 9y agoI'm not sure how this holds up to the promise of "Sell outside the app store and pocket that extra 30%." If you're selling iOS apps, you have no choice but the app store. You could try giving the app away for free on the iOS App Store and shunting people to a website to purchase the license after a certain amount of time, but I'm certain that breaks Apple's rules. Same goes for the Mac App Store. You'd get shut down pretty quickly if you ever managed to squeak through the approval process. Based on the code examples provided on the website, I don't see any of the most popular languages use for apps that go in an "app store" of any kind (Obj-C, Swift, Java) I'm sure intent is not to be misleading, but I don't see how this can recoup a 30% app store take. Could you explain that in more detail, since you are replying in this thread?
- asteadman 9y agoTo be fair, this is exactly how I use Netflix. I have a free app that I pay to use completely outside the app store. Not sure of the actual rules, but it's definitely possible.
- firloop 9y agoIt's fine to have out of band payments for subscription services on the App Store, so long as it's possible to subscribe to the service through an in app purchase and you don't advertise paying outside the app within the app. Apple takes these matters pretty seriously, it is their bottom line after all. I once had an app get rejected by App Review because it was possible to buy a subscription from the WebView that opened the Forgot Password page.
- ianamartin 9y agoIt's not Apple's bottom line. Not in any way. But they will shut down any out-of-band payment options. There is nothing even remotely fine about this.
- ezekg 9y agoCorrect. In my experience in talking with Apple/Google, that is most definitely not a good idea and could get your developer license revoked. Maybe someday they'll open up the walled garden (lmao ok), but for now devs should stick to only selling desktop apps independently.
- tunnuz 9y agoLove the website.
- theprop 9y agoWay too expensive in respect to users...at $.20/user/year...for 100k users, it's $20k/year. This vs. most installers that actually pay you...
- ezekg 9y agoI don't currently offer usage-based plans, so not sure where that came from. I offer $24, $49 and $99/mo plans with custom plans offered to companies who have more than 5,000 active users (which is a lot if you've ever launched a product before). Either way, at the lowest plan you're spending $288/yr, which is far less than the average cost it would take to build a homegrown licensing solution, assuming you don't value your time at $0 (which developers tend to do when opting to build things themselves--Mike Perham of Sidekiq has a good tidbit on this[0]). [0]: https://github.com/mperham/sidekiq/wiki/Build-vs-Buy https://github.com/mperham/sidekiq/wiki/Build-vs-Buy
- wingerlang 9y agoDid you make the website? I've thought and tried to make a similar one (angled style) but never gotten the design nice. Made it yourself or got someone (who?).
- ezekg 9y agoYes, I made the website. Feel free to dissect it and see how it's built. :)
- top_post 9y agoI had this exact same idea but never executed on it. I like everything about this, implementation to web design. I hope you slay with this.
- JCharante 9y agoI'm not an English major, but in the FAQ section under "Does Keygen prevent cracking?" you wrote "requring" instead of "requiring".
- ezekg 9y agoThanks! That's now fixed.
- dsr_ 9y agoMy company used to use a library which had an enforced license. It was a major headache -- and it was the simplest possible kind of license, where they sent us an encrypted key file and we placed it on each server. As soon as we could, we negotiated an end to that. Instead, they ask us each year how many licenses we need and send us a bill. They have an audit right, but they've never used it. It won't be a problem if they do, because we are fully compliant.
- eopkg 9y agoWhat language did you use for the backend?
- ezekg 9y agoMarketing site is static HTML/JS, dashboard app is in Ember, and the API itself is written in Rails w/ PostgreSQL, Sidekiq and Puma, most notably.
- rrosen326 9y agoSince I know you are figuring this all out, here’s some pricing feedback for you: I’m a weekender - building a desktop app (OS X & Win) for individuals and small businesses. I hope it turns into a real business some day, but as experience would show, it probably won’t. On the low end, $24/month is way too much for me. I would find it offensive to pay $24/month for a licensing solution, when I pay $0 for python, flask, electron, NPM, Vue, and the myriad other technologies I rely on heavily. (Note, I don’t think it is offensive - but I feel it.) My gut feel on pricing - don’t try to squeeze money from a stone. Give away the low end. You won’t make much money there anyway and you will almost certainly turn off many potential users and proponents. Get them hooked. Let them promote for you. Don’t let them find an alternative. Then, when they start making money, you start making money. If I have a viable business going I will have a totally different feel on how I would see this expenditure. 2 cents for you.
- ezekg 9y agoAppreciate the feedback. (Seriously, helps a lot!) What would be a price point that works for you? I definitely think there's room for a smaller plan, so I'd love to hear your thoughts. I've done smaller custom plans in the past for makers who are just getting started with an app (or in the process of building one) with a low active user limit. But in the end, $288/yr is not that much for something that helps you make money--especially considering that you'll likely have to spend money to make money as an app developer. And lastly, I don't think comparing a product to open source is the right thing to do--especially considering that you have to host Flask, distribute Electron, etc., all which cost money.
- onion2k 9y ago$288/yr is not that much for something that helps you make money Whether it's a lot or not depends entirely on how much you're making. For someone who has a $500/year side project $288 is half your revenue. For someone who has a $50,000/year side project $288 is trivial. If you're marketing to people who haven't yet launched then most of your customers are in the first group - and that makes your product sound quite expensive. If I had the need for your product I'd be much more likely to use it if the cost was something like $1/user/month, capped at $30/month.
- sjg007 9y agoI would charge per successful activation.
- ezekg 9y agoI was on the fence about this for awhile. So what about the customers who use Keygen for feature-licensing? They would pay more while the customer who uses Keygen to license their entire product pays way less--not exactly fair. For the time being, I think the flat-monthly-fee works. Though, I'm all for discussing a custom plan if that doesn't work for you, as mentioned on the pricing page. :)
- sjg007 9y agoNo reason not to offer both models. Pay per use is generally higher than a subscription which explains the benefit of the subscription to the customer. As the provider you sacrifice some overall peak for guaranteed revenue.
- Walkman 9y agoI'm curious about the tech stack you are using for this service.
- ezekg 9y agoMarketing site is static HTML/JS, dashboard app is in Ember, and the API itself is written in Rails w/ PostgreSQL, Sidekiq and Puma, most notably.