How to perform a PKHA Arithmetic Operation using a Black Key?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to perform a PKHA Arithmetic Operation using a Black Key?

2,015 Views
rcasallas
Contributor I

I have generated a black key. According to the documentation, I can use the KEY command to decrypt and load the black key into a key register (or PKHA E-Memory), but the PKHA functions read their inputs from the PKHA registers. So how can I load the decrypted black key into the PKHA register, or move the key value from a key register into a PKHA register?

 

Can PKHA E-Memory be used for this purpose? I haven't found any documentation regarding PKHA E-Memory, or how it relates to the PKHA functions.

We are trying to implement the ECPVS algorithm using a black key. Since the PKHA does not support it, we need to implement it using lower level arithmetic operations. The goal is to perform modular arithmetic using a black key.

0 Kudos
Reply
4 Replies

1,832 Views
igorpadykov
NXP Employee
NXP Employee

Hi Ricardo

documents were sent via mail.

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply

1,832 Views
rcasallas
Contributor I

The black key can be loaded into the PKHA E register, and thus can be used as scalar multiplier for the ECC Point Multiply functions, but the PKHA E register is not used in the Modular Multiplication function, so the black key can't be used by the arithmetic operation. Is there a way to copy a black key from the PKHA E register to the PKHA A or B registers?

0 Kudos
Reply

1,832 Views
youliang_guo
Contributor I

"The code that NXP sent us illustrates the use of a black key to perform a elliptic curve point multiply, and how to perform modular arithmetic in general. However, it does not illustrate how a black key can be used to perform modular arithmetic.

 

To be more specific, a black key can only be loaded onto the E register of the PKHA, which can be used for a point multiply operation. However, the E register cannot be used for modular arithmetic, and the content of the E register cannot be moved to another register in the PKHA. Therefore, we cannot find any way to implement modular arithmetic using a black key."  

We are questing a technical call on this topic. Otherwise, our GM project security design is at risk for Feb 2019 delivery. 

Can you propose time and call ? I am also asking US support team to help. Conti Team are in US time zone. 

Youli

 

0 Kudos
Reply

1,832 Views
igorpadykov
NXP Employee
NXP Employee

Hi Youli

also may be useful AN12554

Demo Application to Generate Red/Black Blobs Using CAAM and Encrypt/Decrypt Data

demo-caam-blobs - imx_sec_apps - i.MX Security Application Examples 

For development specific secure software may be suggested to apply to

Commercial Support and Engineering Services | NXP 

for call suggest to contact local marketing office.

Best regards
igor

0 Kudos
Reply