The X.509 key usage extension is used to specify for what purpose a key should be used. When an application goes through the verification process, it typically checks whether the key is being used for a purpose that it was not intended for.
The value of this extension is returned in a pointer to a nuint16 by NPKIT_x509KeyUsageInfo where each bit specifies a key usage. Any combination of key usages can be present but not all are appropriate combinations or are appropriate for all types of keys.
The following values for key usages are defined: