5.3 Extens˜oes da Entrada da LCR
6.1.2 Inicializa¸c˜ao
A fase de inicializa¸c˜ao estabelece onze estados vari´aveis baseados nas nove entradas: (a) valid policy tree: Uma ´arvore de pol´ıticas de certificado com seus qualificadores
opcionais; cada uma das folhas da ´arvore representam uma pol´ıtica v´alida nesta faze da valida¸c˜ao do caminho de certifica¸c˜ao. Se uma pol´ıtica v´alida existe nessa fase da valida¸c˜ao do caminho de certifica¸c˜ao, a profundidade da ´arvore ´e igual ao n´umero de certificados na cadeia que est´a sendo processada. Se n˜ao existirem pol´ıticas v´alidas nesta fase da valida¸c˜ao do caminho de certifica¸c˜ao, a ´arvore ´e definida como NULL (nula). Uma vez que a ´arvore seja definida como NULL, o processamento de pol´ıtica ´e encerrado.
Cada nodo na valid policy tree inclui trˆes objetos de dados: a pol´ıtica v´alida, um conjunto de qualificadores associados `a pol´ıtica, e um conjunto de um ou mais va- lores esperados para a pol´ıtica. Se o nodo possui a profundidade x, os componentes do nodo tˆem a seguinte semˆantica:
(1) A valid policy ´e um OID ´unico de pol´ıtica que representa uma pol´ıtica v´alida para o caminho de comprimento x.
(2) O qualifier set ´e um conjunto de qualificadores de pol´ıtica associados com a pol´ıtica v´alida do certificado x.
(3) O expected policy set cont´em um ou mais OIDs de pol´ıtica que satisfaria esta pol´ıtica no certificado x+1.
O valor inicial de valid policy tree ´e um nodo ´unico com valid policy anypolicy, um conjunto vazio de qualifier set, e um expected policy set com o valor anyPolicy ´
unico. A profundidade deste nodo ´e considerada como zero.
A figura 3 ´e uma representa¸c˜ao gr´afica do estado inicial da valid policy tree. Fi- guras adicionais usar˜ao este formato para descrever mudan¸cas na valid policy tree durante o processamento do caminho.
(b) permitted subtree: um conjunto de nomes raiz para cada tipo de nome (ex: nomes distintos X.500, endere¸cos de email, ou endere¸cos IP) que definem um conjunto de sub-´arvores nas quais todos os nomes de sujeito nos certificados subsequentes no caminho de certifica¸c˜ao DEVEM ocorrer. Esta vari´avel inclui um conjunto para cada tipo de nome, e o valor inicial ´e initial-permitted-subtrees.
Ern
an
des
67 +---+ | anyPolicy | <--- valid_policy +---+ | {} | <--- qualifier_set +---+ | {anyPolicy} | <--- expected_policy_set +---+Figura 3: Valor Inicial da Vari´avel de Estado valid policy tree
(c) excluded subtrees: um inteiro que indica se ´e necess´ario uma valid policy tree non- NULL (n˜ao nula). O inteiro indica o n´umero de certificados n˜ao-auto-assinados a serem processados antes deste requisito ser imposto. Uma vez estabelecida, esta vari´avel pode ser decrementada, mas n˜ao pode ser incrementada. Ou seja, se um certificado no caminho requer uma valid policy tree n˜ao nula, um certificado pos- terior n˜ao pode remover este requisito. Se a initial-explicit-policy estiver definida, ent˜ao o valor inicial ´e 0, de outra forma o valor inicial ´e n+1.
(d) inhibit anyPolicy: um inteiro que indica se o identificador de pol´ıtica anyPolicy ´e considerado na correspondˆencia. O inteiro indica o n´umero de certificados n˜ao- auto-assinados a serem processados antes do OID anyPolicy, se atribu´ıdo em um certificado diferente de um certificado intermedi´ario auto-assinado, ´e ignorado. Uma vez definida, esta vari´avel pode ser decrementada, mas n˜ao pode ser in- crementada. Ou seja, se um certificado no caminho inibir o processamento de anyPolicy, um certificado posterior n˜ao poder´a permiti-lo. Se a initial-any-policy- inhibit estiver definida, ent˜ao o valor inicial ´e 0, de outra forma, o valor inicial ´e n+1.
(e) policy mapping: um inteiro que indica se o mapeamento de pol´ıtica ´e permitido. O inteiro indica o n´umero de certificados n˜ao-auto-assinados a serem processado antes do mapeamento de pol´ıtica ser inibido. Um vez definida, esta vari´avel pode ser decrementada, mas n˜ao pode ser incrementada. Ou seja, se um certificado no caminho especificar que o mapeamento de pol´ıtica n˜ao ´e permitido, esta defini¸c˜ao n˜ao poder´a ser substitu´ıda por um certificado posterior da cadeia. Se a vari´avel initial-policy-mapping-inhibit for definida, ent˜ao o valor inicial ´e 0, de outra forma o valor inicial ´e n+1.
(f) working public key algorithm: ´e o algoritmo de assinatura digital utilizado para verificar a assinatura do certificado. A vari´avel working public key algorithm ´e inicializada a partir do algoritmo de chave p´ublica confi´avel fornecido na informa¸c˜ao da ˆancora de confian¸ca.
(g) working public key: a chave p´ublica usada para verificar a assinatura de um certi- ficado. A vari´avel working public key ´e inicializada com a chave p´ublica confi´avel fornecida na informa¸c˜ao da ˆancora de confian¸ca.
(h) working public key parameters: parˆametros associados `a chave p´ublica atual que pode ser requerido para verificar uma assinatura (dependendo do algoritmo). A vari´avel working public key parameters ´e inicializada a partir dos parˆametros de chave p´ublica confi´avel fornecidos pela informa¸c˜ao da ˆancora confi´avel.
Ern
an
des
68
(i) working issuer name: o nome distinto de emissor esperado no pr´oximo certificado da cadeia. A vari´avel working issuer name ´e inicializada com o nome de emissor confi´avel fornecido na informa¸c˜ao da ˆancora confi´avel.
(j) max path length: este inteiro ´e inicializado com n, ´e decrementado para cada certificado n˜ao-auto-assinado do caminho, e pode ser reduzido ao valor constante do campo path length constraint da extens˜ao basic constraints de um certificado de AC.
Ap´os a conclus˜ao das etapas de inicializa¸c˜ao, execute as etapas b´asicas de processamento de certificados especificadas em 6.1.3.