Opção do menu principal: 5 - Export
Exporta chaves e objetos para fora do HSM. Para exportar um objeto é necessário que ele tenha o atributo de exportação habilitado. A exportação pode ser feita para um arquivo na estação ou servidor onda roda o programa de console remota ou ainda para a tela, conforme a opção.
Através da interfaces do console podem ser exportados os seguintes tipos de objetos:
1. | Chaves simétricas: chaves tipo DES, 3DES ou AES. |
2. | Chaves assimétricas: chave tipo RSA. |
Chaves Simétricas
As chaves simétricas podem ser exportadas com os seguintes métodos:
1. | Protegidas por uma chave de cifragem de chave (Key Encryption Key - KEK) DES ou 3DES. O método adotado para cálculo do KCV (Key Check Value), assim como o padrão de uso da KEK está descrito no documento VISA Payment Technology Standards Manual, october 2007; Este método pode ser usado para chaves DES e 3DES. Há duas opções para o método de KEKing : |
a. | Raw: a chave usada na operação de KEKing é a própria KEK informada (que normalmente é uma ZCMK, Zone Control Master Key), sem derivação; |
b. | VISA 1: a chave usada na operação de KEKing é derivada da KEK informada (que normalmente é uma ZCMK) usando o método Variant-1 (um XOR da KEK com 0800000000000000). Este método geralmente é usado no ambiente do Serviço Dynamic Key Exchange (DKE) da VISA. Para detalhes consulte o documento VISA Payment Technology Standards Manual, october 2007. |
2. | Protegidas pela chave de cifragem LMK (Local Master Key), que é a própria SVMK do HSM. Este método pode ser usado para chaves DES e 3DES. |
3. | Protegidas por uma chave de cifragem de chave (Key Encryption Key - KEK) RSA. O método de envelopamento utilizado é o padrão PKCS#1 versão 2.1, com esquema de cifragem RSAES-OAEP. As chaves simétricas exportáveis no HSM devem ser exportadas cifradas com uma chave pública. O destinatário deverá possuir a chave privada equivalente e abrir o envelope digital seguindo as regras do esquema de cifragem. |
4. | Usando o método de três componentes, com KCV (Key Check Value) de cada parte e também um KCV final; este método normalmente é usado para exportação de ZPK (Zone PIN Key) para input em sistemas de autorização de transferência eletrônica de fundos (como sistemas adquirentes ou de rede de captura), onde cada componente é entregue a um custodiante, e somente com a reunião das três partes componentes é possível reconstruir a chave; o conhecimento de dois componentes do ponto de vista criptográfico não traz qualquer informação sobre a chave. Os componentes são gerados com operações XOR (EXCLUSIVE OR) e partes randômicas, que são depois consumidas e descartadas no momento de reconstrução da chave. O KCV é um valor de seis dígitos hexadecimais obtido com a criptografia de um bloco de zeros com determinada chave; os primeiros seis dígitos do criptograma resultante são o KCV daquela chave, conforme padrão ANSI X9.24. O processo de geração dos componentes e cálculo do KCV está conforme o documento VISA Payment Technology Standards Manual, october 2007. |
Para exportar uma chave k são gerados três valore randômicos (p1, p2 e p3) de mesmo tamanho que k e os componentes (P1, P2 e P3) são calculados como:
P1 = p2 xor p3 xor k
P2 = p1 xor p3 xor k
P3 = p1 xor p2 xor k
Estes três componentes são distribuídos aos custodiantes, e no momento da importação é feita o seguinte cálculo, no interior do HSM:
K = P1 xor P2 xor P3
Utilizando as propriedades de operação XOR neste processo, o valor calculado de K é exatamente o valor de k, a chave originalmente exportada.
K = k
5. | Em texto claro (para um arquivo binário ou dump em tela com o material da chave); este método é recomendado apenas para ambientes altamente controlados e protegidos por outras medidas de segurança, pois o material da chave estará totalmente exposto. |
Chaves Assimétricas
As chaves assimétricas podem ser exportadas através dos métodos:
1. | Padrão PKCS#8; nesta opção a chave privada RSA pode ser exportada em texto claro ou protegida por envelope digital. Para detalhes sobre os padrões, consulte os documentos Public-Key Cryptography Standards (PKCS) da RSA Labs. No modo FIPS as chaves RSA exportáveis só podem ser exportadas via o padrão PKCS#8 com uso de envelope digital, derivando uma chave AES 256 a partir de uma senha de exatos 16 (dezesseis) caracteres, sendo a derivação feita conforme o padrão PKCS#5 versão 2.0. |
2. | Padrão PKCS#1; a chave pública e/ou privada RSA é exportada em texto claro com a representação DER. No caso de exportação de chave privada o formato do arquivo de saída será uma concatenação dos formatos ASN.1 de chave pública e chave privada definidos no padrão PKCS#1 v1.5, nas seções 7.1 e 7.2, com DER enconding. Na exportação da chave pública o arquivo de saída conterá a representação da seção 7.2. |
Exportação das chaves pública e privada concatenadas:
RSAPublicKey ::= SEQUENCE {
modulus INTEGER, -- n
publicExponent INTEGER -- e }
RSAPrivateKey ::= SEQUENCE {
version Version,
modulus INTEGER, -- n
publicExponent INTEGER, -- e
privateExponent INTEGER, -- d
prime1 INTEGER, -- p
prime2 INTEGER, -- q
exponent1 INTEGER, -- d mod (p-1)
exponent2 INTEGER, -- d mod (q-1)
coefficient INTEGER -- (inverse of q) mod p }
Exportação da chave pública:
RSAPublicKey ::= SEQUENCE {
modulus INTEGER, -- n
publicExponent INTEGER -- e }
Outros Objetos
Em outros objetos podem ser importados os seguintes tipos de objetos:
1. | File: objetos genéricos no HSM. |
2. | SoftToken: software gerado para autenticação OTP, um midlet Java padrão J2ME. A configuração mínima do ambiente Java no dispositivo para receber e rodar o aplicativo é MIDP 1.0 e CLDC 1.0. Consulte o tópico HOTP no Manual de Desenvolvedor para maiores detalhes. |
3. | Requisição de certificados: arquivos CSR (Certificate Signing Request) gerados a partir da assinatura com uma chave privada, para ser enviado a uma Autoridade Certificadora, que fará e emissão do certificado correspondente. O padrão pode ser o PKCS#10 ou o EMV (usado especificamente para solicitação de certificados junto às administradores de cartões VISA e Mastercard). |
No caso de padrão PKCS#10 campos no DN (Distinguished Name) X.509 devem ser precedidos de '/', conforme representação definida na RFC 1779. Separação por ',' não é aceita.
Exemplos:
/CN=Banco XPTO P001/OU=SISBACEN-12345678/OU=ISPB-12345678/O=ICP-Brasil/L=Sao Paulo/S=Sao Paulo/C=BR
/CN=Elias Jacob/O=TAC/OU=Engenharia/L=Brasilia/ST=Distrito Federal/C=BR/EMAIL=elias@tac.com
O DN aceita os seguintes campos:
▪ | EMAIL: e-mail (ou E: email) |
Se não for informado um DN, a CSR gerada ter um DN default com formação /CN=<user_id>_<key_id>.
No caso de emissão de requisição de certificado para EMV, os dois padrões suportados são:
a. | VISA: conforme o documento Visa Smart Debit/Credit Certification Authority Technical Requirements, version 2.1, december 2005, Amended april 2006. |
b. | Mastercard: conforme o documento Public Key Infrastructure (PKI) — Certification Authority Interface Specification, january 2005. |
Nas operações de importação e exportação a indicação (local) refere-se sempre a um nome de arquivo na estação ou servidor onde roda o programa console e a indicação (HSM) refere-se a um nome de objeto dentro do namespace do HSM.
Desde que o usuário autenticado tenha permissão de ler objetos em outro(s) namespace(s), a operação pode ser executada indicando o nome do namespace e o nome do objeto com a regra de formação:
namespace/objeto
Importante: quando operando em modo FIPS estão disponíveis para exportação de chave simétrica (3DES e AES) o método com KEK RSA e para exportação de chave assimétrica (RSA) o método PKCS#8 com derivação de chave de cifragem AES 256 por senha de 16 caracteres.
Menu Export
Pocket - Remote Management Console v. 1.92.0.8 2007 (c) Dinamo Networks
HSM 10.0.62.44 e - Engine 1.6.0.37 (DXP) - SN TCA0000000 - ID master
Keys/Objects - Export
1 - Symmetric Keys
2 - Asymmetric Keys
3 - Others
0 - Main Menu
Option:
|
Exportação chaves simétricas em componentes
Pocket - Remote Management Console v. 1.92.0.8 2007 (c) Dinamo Networks
HSM 10.0.62.44 e - Engine 1.6.0.37 (DXP) - SN TCA0000000 - ID master
Keys/Objects - Export - Symmetric Keys - Zone PIN Key(three components)
Name : MasterKey_01
Exportable : Yes
Key material Part 1:
08 AD 58 DA 76 91 5D AD EA F2 1C FD 9B 94 46 2A E9 34 E0 32 67 2F FD 2F
Key Check Value:
9E A8 30
Press ENTER key to continue...
|
Exportação chaves assimétricas em padrão PKCS#8
Pocket - Remote Management Console v. 1.93.0.0 2007 (c) Dinamo Networks
HSM 10.0.62.44 e - Engine 1.6.0.37 (DXP) - SN TCA0000000 - ID master
Keys/Objects - Export - Asymmetric Keys - PKCS#8
RSA Key name : AC_Key_Root_01
Password (ENTER for clear text export): ****************
Confirm password: ****************
Output File Path (local): AC_Key_Root_01.p8
File exported successfully.
Press ENTER key to continue...
|
Geração 1 de arquivo CSR em padrão PKCS#10
Pocket - Remote Management Console v. 1.93.0.0 2007 (c) Dinamo Networks
HSM 10.0.62.44 e - Engine 1.6.0.37 (DXP) - SN TCA0000000 - ID master
Keys/Objects - Export - Others - Certificate Request - PKCS#10 CSR
RSA Key name : Intermediate_AC_Key_03
DN (ENTER for default, /CN=<user_id>_<key_id>):
Output File Path (local) (ENTER to dump on screen) :
-----BEGIN CERTIFICATE REQUEST-----
MIICtjCCAZ4CAQAwIDEeMBwGA1UEAxQVbWFzdGVyX0FDX0tleV9Sb290XzAxMIIB
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6MJVYXPCP9xK89bIM9ArYcYR
uQ7oICx3q7OJttOhJZCNnIxvZnHQDq6nowQCM7m66jV7WXj8vvS25dL8X+qeB7cB
oMhVF+dYRxkvk3Vju2PIbukpgNxXsErNi7ub4RybmjPs52sLKDdK8iF6NU5SbAjM
cm9mGn8JH/fjogBdH5r3EjCfrpA7xyMxVoGVl+IA6VSTEFq9P/jZ9Lnweqfn+5ks
Khj5iIbbYh832sJLuT/B0ACVUJZT1yRW+jLW7y8w2gYvObDhYmnL1vSAT2e3T5Y2
TjOS31nrK1pIFEPvxYhosi7+M98VzHk9OsePqUeEVcY4kkDazKVuZbeH4pdrJwID
AQABoFEwGQYLKwYBBAGCmhMBAQExChMIMS42LjAuMzcwNAYJKoZIhvcNAQkOMScw
JTAOBgNVHQ8BAf8EBAMCBPAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcN
AQEFBQADggEBAG2ElKjgEp3jaxqe7DT0W9LxP4OI1545sxLiIBWukQA0t1PoM831
AEDTsbX2J2CZs3N4MzdV/0GiX4T2+mKreyYq5FxcBvSbV4KwZ1jfz9kjiN7Js4M5
eugCK0AFv8K47vlxDAxholwPnf6KVcIGQpIhpfc/pLYoV2ITA+UCr4b5Z394n+AM
THpLgc7dRxtTFHFSw1D0wTLV2g8ienYyGQCJwBXh1ta0g7JzlCSOD5pRytKCSZV0
eLn+GXHFlHwPn1/GQG9D/EYLAJUDN/5bBSlT61a6bv0wWmQF0BmJKQ99W2sqmRfc
k8dMKJf8BP6SZJMcbnr21EyDUeTQcflH0Zo=
-----END CERTIFICATE REQUEST-----
File exported successfully.
Press ENTER key to continue...
|
Geração 2 de arquivo CSR em padrão PKCS#10
Pocket - Remote Management Console v. 1.93.0.0 2007 (c) Dinamo Networks
HSM 10.0.62.44 e - Engine 1.6.0.37 (DXP) - SN TCA0000000 - ID master
Keys/Objects - Export - Others - Certificate Request - PKCS#10 CSR
RSA Key name : bankkey
DN (ENTER for default, /CN=<user_id>_<key_id>): /CN=Banco XPTO P001/OU=SISBACEN-12345678/OU=ISPB-12345678/O=ICP-Brasil/L=Sao Paulo/S=Sao Paulo/C=BR
Output File Path (local) (ENTER to dump on screen) :
-----BEGIN CERTIFICATE REQUEST-----
MIIC/zCCAecCAQAwgZgxGDAWBgNVBAMTD0JhbmNvIFhQVE8gUDAwMTEaMBgGA1UE
CxMRU0lTQkFDRU4tMTIzNDU2NzgxFjAUBgNVBAsTDUlTUEItMTIzNDU2NzgxEzAR
BgNVBAoTCklDUC1CcmFzaWwxEjAQBgNVBAcTCVNhbyBQYXVsbzESMBAGA1UECBMJ
U2FvIFBhdWxvMQswCQYDVQQGEwJCUjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBAL4QIUp3iYMqwcwX7cMZ9z4FoneP+CraI6rOeUQe8DC7CMsumIsNSGfK
IY3S3dpwrvtC3F59E6EbbihXtIsuT6D661gfyJtfu4p3rJGutbffAsFY0u7jA8iH
3mleH4gF9osoHoExRaVuyTmRPYlyfiIktQDLqb4+kOwcJSO15/bq71gMSujbzH4Z
hAbQEQR0ZeKOA97MYyVnJ1hFtnBsS113qLTGPhJvZv2uOrSJs/aMZsdvv02im/e9
6kCJh7Romq0/n8IibOP2fMkisH+iDnLov4ElUqWgnzey27eTkieYlVxX1b7ewKwS
HFTd2l6fZ4e8MQb6Q+DkYC9t2jGShcECAwEAAaAhMB8GCSqGSIb3DQEJDjESMBAw
DgYDVR0PAQH/BAQDAgXgMA0GCSqGSIb3DQEBCwUAA4IBAQCr1UAXISz6nFUGKvsb
m7Qob9xH/5qNn4/3FHZMAnM1DJkwXx684vbxM5S6nwsI4Rx4iwLe7IKTKWjlyMDY
7fuNpRayCkNjXW0ut5LU+vP0l+M6pAQVRWb4wOuXFMwAtT1WyYuSGtdGSwoS/Gsx
KhlM060nbupUEacxmQWccsXj+NwHqM2whJvOz8QjqroItrmvF4ev9PxXrND2sP9N
Dbn+h+HM1RS7YKkVSsWKhlR5c3kiWsFOgC1aXWXVi6cB0sIqsB8YlzIIdghW01Lb
f5HVbmbm/AHQxzdd2aJInnL0qiyPZdG6zQu9BKz47x0d7Y7MgOPGx36lxCInLQp6
Wyz/
-----END CERTIFICATE REQUEST-----
File exported successfully.
Press ENTER key to continue...
|
Exportação de Arquivo
Pocket - Remote Management Console v. 1.81.0.20 2007 (c) Dinamo Networks
HSM 10.0.62.16 e - Engine 1.1.2.9 (DXP) - SN TCA0115876 - ID master
Keys/Objects - Export - File
File name (HSM) : myfile_bin
File path (local) : c:\myfile.bin
File exported successfully.
Press ENTER key to continue...
|
|