The two-key mechanism is related to the refund policy. After purchasing the application you have 14 days to ask for a refund, but with the application I want to deliver the keys that do not require additional verification on the Internet. The only solution is to provide a time-limited key, which after the expiry of the refund period will be transformed into an unlimited key.
When you make a purchase, 2 keys are generated. The first of them - a 30-day one - is sent to you when you buy the application. The second becomes active after 2 weeks from the date of purchase. It is then sent automatically, to the email address provided when making the purchase.
If the application has access to the Internet and sees that the first 30-day key slowly expires (or has expired), then at the start of the application the unlimited key is downloaded.