Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/3279126062824/newLayouttecnologia.css |
Portuguese | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PrivSignRSA | Expand ALL
|
Assina
um
determinado
conteúdo
usando
chave
privada.
Sintaxe
Bloco de código | ||||
---|---|---|---|---|
| ||||
PrivSignRSA( < |
cPathKey >, < |
cContent >, < |
nTipo >, < |
cAssinado >, [ |
@cErrStr ], [ nPad ] ) --> cRet |
Parâmetros
/ElementosNome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cPathKey |
caractere | Indica a string que contém o caminho para a chave privada |
(formato .PEM). | X | |
cContent |
caractere | Indica a string que será assinada. | X | |
nTipo |
numérico | Indica o tipo de algoritmo que será utilizado para realizar a assinatura da chave |
. | X | |
cAssinado |
caractere | Indica uma string que contém o valor assinado. | X | |
cErrStr |
caractere | Indica a variável para retornar as mensagens de erro. | X | |
nPad |
numérico | Indica o tipo de schema de criptografia que será utilizado. |
Retorno
cRet(caracter)Nome | Tipo | Descrição |
---|---|---|
cRet | caractere | Retorna o valor |
do parâmetro |
cContent, assinado, de acordo com o tipo |
nTipo e a chave privada informada |
cPathKey. |
Observações
- Essa função utiliza a chave privada para realizar a assinatura. Para isso, é necessário informar o caminho (path) da chave privada (formato .PEM), no parâmetro
- cPathKey e, em seguida, o conteúdo
- cContent que se deseja assinar e finalmente um numérico que informa o tipo de algoritmo que será utilizado para realizar a assinatura
- nTipo.
O arquivo .PEM informado
no parâmetro
cPathKey deve conter uma chave privada, tais como:
Chave
Privada
Certificado
CA
(Certificate Authority)
Tipo de algoritmo
válido para o parâmetro nTipo:
Valor
Algoritmo
1
MD5
2
SHA1
3
RIPEMD160
4
MD5_
SHA1
5
SHA256WithRSA
Tipo
de schema válido para o parâmetro nPad:
Valor
Schema
1
PKCS1
2
SSL
3
NO
4
PKCS1_OAEP
5
X931
- Caso não seja passado nenhum schema de criptografia (nPad), a rotina assume com padrão o schema 1 - PKCS1
- .
- O valor 5 no parâmetro nTipo está disponível em builds superiores a 121227P.
- Caso seja informado no parâmetro cPathKey caminho de arquivos no client, será adicionado ao parâmetro cErrStr a mensagem "[PrivSignRSA] Only server path are allowed." e retornará Nil.
Exemplos
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
User Function RSA_Sign() Local sStr := "01234567890123456789" Local sOut := "" sStr := Md5( sStr ) varinfo( "1", sStr ) sOut := PrivSignRSA( "private.pem", sStr, 1, "assinatura" ) |
varinfo( "sOut", sOut ) conout( PrivVeryRSA( "public.pem", sStr, 1, sOut ) ) Return |
Abrangência
Advanced Protheus 7.10, Microsiga Protheus 8.11, Protheus 10, TOTVS Application Server 10, ByYou Application Server