# # General purpose PKCS15 profile for SetCOS4.4 cards # cardinfo { max-pin-length = 8; pin-encoding = ascii-numeric; pin-pad-char = 0x00; } # Additional default settings option default { macros { protected = *=$SOPIN, READ=NONE; mf_prot = *=NONE, CREATE=$SOPIN; # Allow to delete the MF p15_prot = *=$SOPIN, SELECT=NONE, FILES=NONE, CREATE=NONE; pin_prot = *=NEVER, WRITE=$SOPIN, UPDATE=$SOPIN; # WATCH OUT IF YOU CHANGE THESE!! prkey_prot = *=NEVER, ERASE=$SOPIN, READ=NONE, CRYPTO=$PIN, UPDATE=$SOPIN; exkey_prot = *=NEVER, ERASE=$SOPIN, READ=$PIN, UPDATE=$SOPIN; so-pin-flags = initialized, soPin; } } # Additional onepin option settings option onepin { macros { protected = *=$PIN, READ=NONE; mf_prot = *=NONE, CREATE=$PIN; # Allow to delete the MF p15_prot = *=$PIN, SELECT=NONE, FILES=NONE, CREATE=NONE; pin_prot = *=NEVER, WRITE=$PIN, UPDATE=$PIN; # WATCH OUT IF YOU CHANGE THESE!! prkey_prot = *=NEVER, ERASE=$PIN, READ=NONE, CRYPTO=$PIN, UPDATE=$PIN; # READ: only applies on public key exkey_prot = *=NEVER, ERASE=$PIN, READ=$PIN, UPDATE=$PIN; so-pin-flags = initialized; } } # Define reasonable limits for PINs and PUK PIN user-pin { attempts = 3; flags = initialized, needs-padding; } PIN user-puk { attempts = 5; } PIN so-pin { reference = 1; flags = $so-pin-flags; } # Additional filesystem info. # This is added to the file system info specified in the # main profile. filesystem { DF MF { ACL = $mf_prot; size = 42; # size = 2 + 2*(number of sub-files) -> 20 sub-files # There's 1 pin/key file EF pinfile { file-id = 0080; # Recommended by Setec structure = 0x22; # ISF key-file, Setcos V4.4 specific record-length = 28; size = 112; # 28 * 4 = 112 -> 1 SO + 3 user pins/puks ACL = $pin_prot; } DF PKCS15-AppDF { ACL = *=$SOPIN, SELECT=NONE, FILES=NONE, CREATE=NONE; size = 82; # size = 2 + 2*(number of sub-files) -> 40 sub-files EF PKCS15-PrKDF { file-id = 4402; size = 480; acl = $protected; } EF PKCS15-PuKDF { file-id = 4403; size = 480; acl = $protected; } EF PKCS15-CDF { file-id = 4404; size = 960; acl = $protected; } EF PKCS15-DODF { file-id = 4405; size = 480; acl = $protected; } EF template-private-key { file-id = 5100; type = internal-ef; size = 512; # enough for a 1024 bit RSA key ACL = $prkey_prot; } EF template-extractable-key { file-id = 5300; type = internal-ef; size = 512; # enough for a 1024 bit RSA key ACL = $exkey_prot; } EF template-public-key { file-id = 5200; acl = $protected; } EF template-certificate { file-id = 5500; acl = $protected; } EF template-data { file-id = 5000; structure = transparent; acl = $protected; } } } }