Do you have a trick to use Key Values for more security?

The KeyValue challenge/response authentication is an effective method to protect against simulation of the system files. We suggest that you apply the KeyValue validation in many parts of your program to make it harder to crack.
Here is a trick. With 10 different keys and values, you have an index 0-9 of the key/value pairs to choose and send to the API. The API will return the corresponding value for validation check in your program. It is recommended that the program should not random all the indexes too frequently. This will make it harder for the cracker to learn all of the key/value pairs. For examples, you may change the key/value index based on the changing HD size e.g. every 100 MB (or more). Below is the code examples.
__int64 FreeBytesToCaller;
__int64 TotalBytes;
__int64 FreeBytes;
GetDiskFreeSpaceEx("c:\\", (PULARGE_INTEGER)&FreeBytesToCaller, (PULARGE_INTEGER)&TotalBytes, (PULARGE_INTEGER)&FreeBytes);
g_nKeyValueIdx = (FreeBytes & 0xffffffffff000000) % 10;
Or
__int64 FreeBytesToCaller;
__int64 TotalBytes;
__int64 FreeBytes;
GetDiskFreeSpaceEx("c:\\", (PULARGE_INTEGER)&FreeBytesToCaller, (PULARGE_INTEGER)&TotalBytes, (PULARGE_INTEGER)&FreeBytes);
g_nKeyValueIdx = (FreeBytes * 100 / TotalBytes) % 10;