Key generation is the process of generating keys for cryptography.All security functions involve the use of keys and crypto algorithms for encryption, decryption, authentication, signatures and secure storage. Modern cryptographic systems include symmetric-key algorithms such as DES and AES and asymmetric-key algorithms such as ECC. Keys can be categorized into many types such as private keys, public keys, symmetric keys, shared keys, master keys and root keys, to name a few.
PUFkeygen uses the characteristics of NeoPUF and a circuit design to achieve a key generation function. As the part of the hardware root-of-trust, the keys derived from NeoPUF through PUFkeygen have the features of uniqueness and non-repudiation.
This can prevent the problems of key collisions or key tampering, which is common with other key-generation functions. PUFkeygen combines with unique identity generation to create a root key or a master key, a true random number generator as a nonce, a session key, keys for secure storage of encryption keys or a key wrapping function.
Hardware acceleration security solution with benefit of PUF: PUFkeygen
Generally, keys can be divided into two types, symmetric and asymmetric keys. The generation of symmetric keys may be derived from a secret value. The secret value, together with other information such as UID, is input into a key-derivation function that outputs the required key(s). For asymmetric keys, a static key pair is generated by the entity that owns the key pair. In the case of a signature-verification system, a public key is further distributed accordingly.
PUFkeygen is IP for hardware acceleration-based symmetric key generation. It is a comprehensive solution that contains NeoPUF, PUF-based IPs and AES crypto algorithms to achieve key-generation functions and other applications. Derived from NeoPUF, the master or root keys are unique and non-repudiated, making them very trustworthy. PUFkeygen has multiple advantages derived from NeoPUF and PUF-based IPs, including ideal uniqueness for root key generation inside the chip; high speed throughput for session keys or a nonce with efficient power consumption; injected shared key protection and more.