Árvore de páginas

Converte uma chave privada PKCS#8 em formato DER (Distinguished Encoding Rules) para o formato PEM (Privacy Enhanced Mail).

Sintaxe

PK8Key2PEM( < cPK8File >, < cPEMFile >, < @cError >, [ cPassword ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

cPK8File

caractere

Indica o caminho do arquivo .PK8, a partir da raiz do diretório (RootPath) do TOTVS Application Server.

X

 

cPEMFile

caractere

Indica o caminho do arquivo .PEM, a partir da raiz do diretório (RootPath) do TOTVS Application Server, com as informações de chave privada.

X

 

cError

caractere

Indica a saída da mensagem de erro, em caso de falha.

X

X

cPassword

caractere

Indica a senha que será usada no arquivo .PEM.

 

 

Retorno

Nome

Tipo

Descrição

lRet

lógico

Retorna .T. se conseguiu converter o arquivo .PK8; caso contrário, .F..

Observações

  • O formato PEM é frequentemente usado para codificação de chaves e certificados em ASCII.
  • Caso seja informado nos parâmetros cPK8File ou cPEMFile caminho de arquivos no client, a aplicação será terminada com uma ocorrência de erro fatal AdvPL "Only server path are allowed (PK8Key2PEM)".
  • Esta função tem o comportamento igual a ferramenta PKCS8, da OpenSSL, com a opção de chave descriptografada (-nocrypt). Para mais informações sobre a ferramenta PKCS8, consulte a documentação disponível no site da OpenSSL - http://www.openssl.org/docs/apps/pkcs8.html

Exemplos

Exemplo 1
user function getPrivKey()
  Local cPK8 := "\certs\tests.pk8"
  Local cKey := "\certs\key.pem"
  Local cError := ""
  Local cContent := ""
  Local lRet
  lRet := PK8Key2PEM( cPK8, cKey, @cError )
  If( lRet == .F. )
    conout( "Error: " + cError )
  Else
    cContent := MemoRead( cKey )
    varinfo( "Key", cContent )
  Endif
Return

Abrangência

Builds superiores a 121227P

  • Sem rótulos