The OP is just asking if using the digital signature of Bitcoin addresses is a feasible method of verifying software licenses.
Try to make it decentralized that would be awesome!
Most commercial software are designed to be supported for only up to 5-10 years. If you are using software that is over 10 years old, then you are using outdated software that has not been patched for any possible exploits. It may still work, but it is pretty much guaranteed that faster and more efficient variants of that software had been written within that span of time.
Centralization is obviously involved -- in fact, it is required. The point is to make sure that the end-user paid for the license to use the software. Why would a business need to decentralize that? What point is there in decentralizing it?
If I were using the OP's method, then I would add an "Invalidate this license" feature to the software. That way, if a private key was being shared around to pirate the software, then the software vendor (or anyone) could simply use that same key to invalidate the license key of every copy of the software using it. If the software required the user to connect online every 15 minutes or so, then the license key can still be invalidated post-verification.