Asymmetric Public Key Cryptography IP
RSA and ECC are public-key cryptosystems (the encryption key is public while the decryption key is private) widely used for secure data transmission.
Secure-IC’s Public Key Cryptography IP is composed of three parts
- A hardware accelerator and its dedicated RAM.
- A RSA software library running on the host CPU.
- A ECC software library running on the host CPU.
This CPU can be the main CPU or a dedicated CPU. Secure-IC is able to provide this dedicated CPU.
The figure below shows the block diagram: the hardware accelerator, whose interface is described in the following figure, and the two portable software libraries.
Secure-IC’s portfolio includes the following supported protocols:
- RSASSA-PKCS1 v1.5
- RSAES-PKCS1 v1.5
- RSASSA-PSS
- RSAES-OAEP
- ECDSA
- ECDH/ECDHE
- ECIES
- EdDSA
- SM2
Asymmetric Cryptography IP offers the following features:
- Constant time of the basic arithmetic unit: protection against timing attacks.
- Regular modular exponentiation (RSA): protection against SPA.
- Regular ECSM: protection against SPA.
- Protection against CPA and collision attacks.
- Protection against Address-bit CPA.
- Protection against fault attacks.
- Available with different levels of protection.
- Ready for security certification (including Common Criteria).
- Secure-IC’s VirtualyzrTM is the only available tool on the market to perform security checks based on pre-silicon design information. All our IPs have successfully passed the security test.
- 1024-bit to 4096-bit key size supported for RSA.
- Up to 521-bit key size supported for ECC.
- ECC supported curves: NIST P curves, SM2 curves, BSI curves, ANSSI curves, SECG curves, etc.
- Hybrid hardware-software tunable solution.
- AMBA (APB, AHB, AXI) interface