I think this needs to be proof of concept, because you aren't giving a lot of technical details to go off.
The OP is just asking if using the digital signature of Bitcoin addresses is a feasible method of verifying software licenses.
Also what if I use your software for a 10000000 years but in 10 years you are out of business, now I can't unlock the message cause it sounds like some centralization is involved.
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?
Your idea would work, but wouldn't stop piracy. All someone would have to do is drain the bitcoin wallet and create a new one. Then distribute the private key so anyone can use the software.
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.