Histórico da Página
...
Bloco de código | ||
---|---|---|
| ||
HMAC( < cContent >, < cKey >, < cCryptoTypenCryptoType >, [ nRetType ], [ nContentType ], [ nKeyType ] ) |
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência | ||
---|---|---|---|---|---|---|
cContent | caractere | Indica a string de entrada que contém os dados para os quais será gerado o hash. | X | |||
cKey | caractere | Indica a chave que será utilizada para gerar o hash. | X | |||
nCryptoType | cCryptoType | numérico | Indica o tipo de algoritmo criptográfico que será utilizado para geração do Hash. Veja tabela nas observações. | X |
| |
nRetType | numérico | Indica o tipo do formato de retorno do hash. Quando não informado valor padrão será 2 (Hex Hash). Veja tabela nas observações. | ||||
nContentType | numérico | Indica o tipo do formato do conteúdo da variável cContent. Quando não informado o padrão será 1 (Texto). Veja tabela nas observações. |
| |||
nKeyType | numérico | Indica o tipo do formato da chave informada na variável cKey. Quando não informado o padrão será 1 (Texto). Veja tabela nas observações. |
Retorno
Nome | Tipo | Descrição |
---|---|---|
cDigest | caractere | Retorna o hash (Message Authentication Code) do conteúdo de entrada informado, no formato especificado. |
Informações | ||||
---|---|---|---|---|
| ||||
|
...
|
...
|
Exemplos
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
User Function tstHMAC() Local sInputcInput := "0123456789abcdefghijklmnopqrstuvxz" Local sKeyHxcKeyHx := "c8783fc0963838abc662c920c82e94cf" Local nCpSHA256 := 5 Local sHashHexcHashHex := "" Local Local sHashRawcHashRaw := "" sHashHex cHashHex := HMAC( sInputcInput, sKeyHxcKeyHx, nCpSHA256, 2, 1, 3 ) Varinfo( "Input ", sInputcInput ) Varinfo Varinfo( "HMAC-SHA256 Hex", sHashHex ) sHashRaw cHashRaw := HMAC( sInputcInput, sKeyHxcKeyHx, nCpSHA256, 1, 1, 3 ) Varinfo Varinfo( "HMAC-SHA256 Raw", sHashRaw ) Return User Function HmacBase64() local cInput64 := Encode64( "secret text" ) local cKey64 := Encode64( "d key used" ) local nSha1Type := 3 local nTypeBase64 := 2 local nOutPutType := 1 local ret := "" ret := HMAC( cInput64, cKey64, nSha1Type, nOutPutType, nTypeBase64, nTypeBase64 ) Varinfo( "cInput64 ", cInput64 ) Varinfo( "ret ", ret ) Return User Function HmacHex() local cInput := "secret text" |
Abrangência
local cInputHex := "7365637265742074657874"
local cKey := "d key used"
local cKeyHex := "64206b65792075736564"
local nSha1Type := 3
local nTypeHex := 3
local nOutPutType := 1
local ret := ""
ret := HMAC( cInputHex, cKeyHex, nSha1Type, nOutPutType, nTypeHex, nTypeHex )
Varinfo( "cInputHex ", cInputHex )
Varinfo( "ret ", ret )
Return
|
Abrangência
AppServer 13.1.4.0 e 13.2.4.0 | nContetType e nKeyType disponíveis a partir da versão 17.3.0.18Protheus 12.1.17
Veja também
...