Função: SMIMESign
Realiza a assinatura de mensagens S/MIME.
SMIMESign ( < cSignCert>, < cPrivKey>, < cData>, < cOptions>, < @cError>, [ cPass] ) --> cSigned
Parâmetros/Elementos
Nome | Tipo | Descrição | Obrigatório | Referência |
cSignCert | Caracter | Caminho relativo (Root Indica o caminho relativo (Rootpath) para o certificado que será utilizado na assinatura. | X | |
cPrivKey | Caracter | Indica o caminho relativo (Rootpath) para a Private Key (chave privada) correspondente. | X | |
cData | Caracter | Indica os dados que serão assinados. | X | |
cOptions | Caracter | Indica as opções de assinatura. Para informações de cada opção, consulte a área Observações. | X | |
cError | Caracter | Indica a referência para a string para tratamento de erro. | X | X |
cPass | Caracter | Indica a senha da chave privada. |
Retorno
cSigned
- (caracter)
- Retorna os dados assinados.
Função disponível para o TOTVS Application Server, build superior a 7.00.090818P-20100524, e o ByYou Application Server.
Parâmetro cOptions
No parâmetro <cOptions>, deve-se informar através de uma string, no formato "-opcao1 -opcao2 -opcao3", as seguintes opções:
Opção | Descrição |
---|---|
-noverify | Não verifica o certificado do assinador de uma mensagem assinada. |
-nochain | Não usa os certificados na mensagem assinada como CAs (Certificate Authority) não confiados. |
-nosigs | Não tenta verificar as assinaturas na mensagem. |
-nocerts | Ao assinar uma mensagem, normalmente o o certificado do assinador é incluído. Com esta opção, o mesmo não é incluso. Com isso, o tamanho da mensagem assinada é reduzida, mas o verificador deve possuir uma cópia do certificado do assinador disponível localmente. |
-noattr | Ao assinar uma mensagem, um conjunto de atributos são incluídos, ou seja, a data de assinatura e os algoritmos simétricos suportados. Com esta opção configurada, esses atributos não são incluídos. |
-binary | Normalmente a mensagem de entrada é convertida para o formato "canônico" utilizando CR e LF como final de linha, como requerido pela especificação S/MIME. Quando esta opção está configurada, não ocorre tradução. Isto é útil quando manuseado dados binários que podem não estar no formato MIME. |
-nodetach | Ao assinar uma mensagem, utilizando a assinatura opaca: esta forma é mais resistente à tradução por mail relays, mas não pode ser lida por agentes de e-mail que não suportam S/MIME. Sem essa opção configurada, a assinatura cleartext (texto puro) é utilizada com o MIME type multipart/signed. |
-text | Esta opção adiciona cabeçalhos MIME de texto puro (text/plain) para a mensagem dada ao assinar. |
user function SMIME()
local cSignCert := "\web\cert.pem"
local cPrivKey := "\web\cert.pem"
local cData := ""
local cOptions := "-nodetach"
local cError := ""
local cPass := "SENHA"
local cSigned := ""
cData += ''
cData += ''
cData += ''
cData += '9999999999'
cData += '2010-01-01T00:00:00'
cData += '2010-01-01T01:00:00'
cData += ''
cData += 'wsabc'
cData += ''
cSigned := SMIMESign( cSignCert, cPrivKey, cData, cOptions, @cError, cPass )
if (!empty(cSigned))
ConOut(cSigned)
else
ConOut(cError)
endif
return
Abrangência
TOTVS Application Server 10
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas