This is a valuable lesson I learned when I worked with someone, not at Elastic, but who had previously worked at Elastic. Elastic was one of the original companies who made FOSS but with enterprise licensing work well. We were discussing in a meeting at this place we worked how to design license checking into the product.
What the guy said I found very insightful: he said that you don’t really need to spend a bunch of time and effort creating sophisticated license checks, you just need perhaps a single phone call to a server or something else that can be trivially defeated for anyone with a reasonable amount of technical knowledge. Why? Because the people who would defeat it are the kind of people who make horrible enterprise customers anyway. So in a way it’s just like a cheap lock. Won’t defeat anyone determined, because it’s not designed to. It’s designed to keep already honest people honest
What the guy said I found very insightful: he said that you don’t really need to spend a bunch of time and effort creating sophisticated license checks, you just need perhaps a single phone call to a server or something else that can be trivially defeated for anyone with a reasonable amount of technical knowledge. Why? Because the people who would defeat it are the kind of people who make horrible enterprise customers anyway. So in a way it’s just like a cheap lock. Won’t defeat anyone determined, because it’s not designed to. It’s designed to keep already honest people honest