A method for customizing an integrated circuit, IC, the method comprising performing, by a manufacturer of the IC, the following steps: - providing, for manufacturing a device, the IC wherein are inserted: a unique ID, UID, an IC-specific initial public, A, and private key, a, pair, and an IC-specific secret key derivation data KDD; and - providing, to a customer of the manufacturer, a manufacturer diversification parameter MDP together with a smartcard having stored thereon customer-unique configuration data related to the IC including a manufacturer configuration parameter MCP; performing, by the customer, the following steps: - inserting a product-specific key PSK in the smartcard and providing a product-specific parameter PSP for insertion into the IC during device manufacturing; - in response to the smartcard receiving the UID and the initial public key certificate signed by the IC manufacturer from the IC: - generating, by the smartcard, a customization value k, a customized public key D, and a certificate of the customized public key D signed by the customer to the IC; - deriving, by the smartcard, a device-specific key DSK as (PSK ∗ MCP).UID; - sending the certificate of the customized public key D and the customization value k encrypted with DSK to the IC; performing, by the IC, the following steps: - in response to the IC receiving the certificate of the customized public key D and the encrypted customization value: - deriving the device-specific key DSK as KDD.PSP; - decrypting the encrypted customization value; - reconstructing the customized private key d=a+k from the initial private key and the decrypted customization value k; - reconstructing the customized public key as D=d.G using the customized private key; wherein an elliptic group generator G and a random secret PK are chosen by the IC manufacturer; and wherein UID=(KDD ∗ PK).G, PSP=PSK.MDP, MDP=(MCP ∗ PK).G. - providing, for manufacturing a device, the IC wherein are inserted: a unique ID, UID, an IC-specific initial public, A, and private key, a, pair, and an IC-specific secret key derivation data KDD; and - providing, to a customer of the manufacturer, a manufacturer diversification parameter MDP together with a smartcard having stored thereon customer-unique configuration data related to the IC including a manufacturer configuration parameter MCP; - inserting a product-specific key PSK in the smartcard and providing a product-specific parameter PSP for insertion into the IC during device manufacturing; - in response to the smartcard receiving the UID and the initial public key certificate signed by the IC manufacturer from the IC: - generating, by the smartcard, a customization value k, a customized public key D, and a certificate of the customized public key D signed by the customer to the IC; - deriving, by the smartcard, a device-specific key DSK as (PSK ∗ MCP).UID; - sending the certificate of the customized public key D and the customization value k encrypted with DSK to the IC; - generating, by the smartcard, a customization value k, a customized public key D, and a certificate of the customized public key D signed by the customer to the IC; - deriving, by the smartcard, a device-specific key DSK as (PSK ∗ MCP).UID; - sending the certificate of the customized public key D and the customization value k encrypted with DSK to the IC; - in response to the IC receiving the certificate of the customized public key D and the encrypted customization value: - deriving the device-specific key DSK as KDD.PSP; - decrypting the encrypted customization value; - reconstructing the customized private key d=a+k from the initial private key and the decrypted customization value k; - reconstructing the customized public key as D=d.G using the customized private key; - deriving the device-specific key DSK as KDD.PSP; - decrypting the encrypted customization value; - reconstructing the customized private key d=a+k from the initial private key and the decrypted customization value k; - reconstructing the customized public key as D=d.G using the customized private key;