opensc/src/pkcs15init/rutoken.profile

182 lines
5.2 KiB
Plaintext

#
# PKCS15 profile, generic information.
# This profile is loaded before any card specific profile.
#
cardinfo {
label = "Rutoken S";
manufacturer = "Aktiv Co.";
max-pin-length = 16;
min-pin-length = 1;
pin-encoding = ascii-numeric;
pin-pad-char = 0xFF;
}
#
# The following controls some aspects of the PKCS15 we put onto
# the card.
#
pkcs15 {
# Put certificates into the CDF itself?
direct-certificates = no;
# Put the DF length into the ODF file?
encode-df-length = no;
# Have a lastUpdate field in the EF(TokenInfo)?
do-last-update = yes;
}
# Default settings.
# This option block will always be processed.
option default_32k {
macros {
ti-size = 128;
odf-size = 128;
aodf-size = 256;
dodf-size = 2048;
cdf-size = 2048;
prkdf-size = 2048;
pukdf-size = 2048;
}
}
# This option is for cards with very little memory.
# It sets the size of various PKCS15 directory files
# to 128 or 256, respectively.
#option small {
option default {
macros {
ti-size = 64;
odf-size = 128;
aodf-size = 128;
dodf-size = 512;
cdf-size = 512;
prkdf-size = 512;
pukdf-size = 512;
}
}
# Define reasonable limits for PINs and PUK
# Note that we do not set a file path or reference
# for the user pin; that is done dynamically.
PIN user-pin {
auth-id = 2;
reference = 2;
min-length = 8;
max-length = 16;
flags = case-sensitive, local, initialized;
}
PIN so-pin {
auth-id = 1;
reference = 1;
min-length = 8;
max-length = 16;
flags = case-sensitive, local, initialized, soPin;
}
filesystem {
DF MF {
path = 3F00;
type = DF;
acl = *=NEVER, SELECT=NONE, DELETE=NEVER, CREATE=CHV2, READ=NONE;
EF DIR {
type = EF;
file-id = 2F00;
size = 128;
acl = *=NEVER, READ=NONE, UPDATE=CHV2, WRITE=CHV2, DELETE=CHV2;
}
# Here comes the application DF
DF PKCS15-AppDF {
type = DF;
file-id = 5015;
acl = *=NEVER, SELECT=NONE, DELETE=CHV2, CREATE=CHV2, READ=NONE;
EF PKCS15-ODF {
file-id = 5031;
size = $odf-size;
acl = *=NEVER, READ=NONE, UPDATE=CHV2, WRITE=CHV2, DELETE=CHV2;
}
EF PKCS15-TokenInfo {
file-id = 5032;
size = $ti-size;
acl = *=NEVER, READ=NONE, UPDATE=CHV2, WRITE=CHV2, DELETE=CHV2;
}
EF PKCS15-AODF {
file-id = 4401;
size = $aodf-size;
acl = *=NEVER, READ=NONE, UPDATE=CHV2, WRITE=CHV2, DELETE=CHV2;
}
EF PKCS15-PrKDF {
file-id = 4402;
size = $prkdf-size;
acl = *=NEVER, READ=NONE, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
EF PKCS15-PuKDF {
file-id = 4403;
size = $pukdf-size;
acl = *=NEVER, READ=NONE, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
EF PKCS15-CDF {
file-id = 4404;
size = $cdf-size;
acl = *=NEVER, READ=NONE, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
EF PKCS15-DODF {
file-id = 4405;
size = $dodf-size;
acl = *=NEVER, READ=NONE, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
# This template defines files for keys, certificates etc.
#
# When instantiating the template, each file id will be
# combined with the last octet of the object's pkcs15 id
# to form a unique file ID.
template key-domain {
EF private-key {
file-id = 0100;
structure = transparent;
acl = *=NEVER, READ=$PIN, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
EF public-key {
file-id = 0200;
structure = transparent;
acl = *=NEVER, READ=NONE, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
# Certificate template
EF certificate {
file-id = 0300;
structure = transparent;
acl = *=NEVER, READ=NONE, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
# data objects are stored in transparent EFs.
EF data {
file-id = 0400;
structure = transparent;
acl = *=NEVER, READ=NONE, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
# private data objects are stored in transparent EFs.
EF privdata {
file-id = 0500;
structure = transparent;
acl = *=NEVER, READ=$PIN, UPDATE=$PIN, WRITE=$PIN, DELETE=$PIN;
}
}
}
}
}