Pular para o conteúdo principal

Altcha

Suporte ao Altcha, captcha open-source que implementa o mecanismo de segurança que evita robôs e garante interação humana na execução dos serviços na API REST.

Exemplo da configuração completa com os valores padrão:

"altcha": {
"enabled": true,
"algorithm": "PBKDF2/SHA-256",
"secret": "POR_PADRÃO_O_SEGREDO_É_AUTOGERADO",
"keySecret": "POR_PADRÃO_A_CHAVE_DO_SEGREDO_É_AUTOGERADO",
"cost": 10000,
"counter": 10000,
"expires": 3600, // EM SEGUNDOS
"checkExpires": true
}
const altchaPayload = _req.getString("altcha");
if (_altcha.enabled() && !_altcha.verifySolution(altchaPayload)) {
_header.status(409);
_out.json(
_val.map()
.set("error", `invalid-altcha-payload`)
);
_exec.stop();
}


algorithm


_altcha.algorithm() : string

Descrição

O tipo de algoritmo que é utilizado na encriptação.

Retorno

( string )

O código que identifica o algoritmo de encriptação.


_altcha.algorithm(algoritmo: string) : Altcha

Descrição

Define o tipo de algoritmo que é utilizado na encriptação.

Atributos
NOMETIPODESCRIÇÃO
algoritmostringCódigo que identifica o algoritmo de encriptação.
Retorno

( Altcha )

Instância atual do recurso Altcha.


challenge


_altcha.challenge() : Values

Descrição

Gera as configurações de desafio para o widget do frontend.

Retorno

( Values )

Dados de configuração para o widget poder processar o resultado do desafio.


checkExpires


_altcha.checkExpires() : boolean

Descrição

Obtém se checa o tempo de expiração ou não.

Retorno

( boolean )

Checar o tempo de expiração ou não.


_altcha.checkExpires(checaExpira: boolean) : Altcha

Descrição

Define se checa o tempo de expiração ou não.

Atributos
NOMETIPODESCRIÇÃO
checaExpirabooleanSe deve checar o tempo de expiração ou não.
Retorno

( Altcha )

Instância atual do recurso Altcha.


cost


_altcha.cost() : long

Descrição

Quantidade de interações para chegar ao prefixo da chave derivada.

Retorno

( long )

Contagem de força bruta.


_altcha.cost(custo: int) : Altcha

Descrição

Define a quantidade de interações para chegar ao prefixo da chave derivada.

Atributos
NOMETIPODESCRIÇÃO
custointO número da contagem de força bruta.
Retorno

( Altcha )

Instância atual do recurso Altcha.


counter


_altcha.counter() : long

Descrição

No modo determinístico, é calculado o prefixo da chave a partir do contador.

Retorno

( long )

Contador do modo determinístico.


_altcha.counter(contador: int) : Altcha

Descrição

Define no modo determinístico, o contador que é utilizado para calcular o prefixo da chave.

Atributos
NOMETIPODESCRIÇÃO
contadorintO valor do contador do modo determinístico.
Retorno

( Altcha )

Instância atual do recurso Altcha.


enabled


_altcha.enabled() : boolean

Descrição

Obtém se o Altcha está habilitado.

Retorno

( boolean )

Se está ativo ou não.


_altcha.enabled(habilitado: boolean) : Altcha

Descrição

Define se o Altcha está habilitado.

Atributos
NOMETIPODESCRIÇÃO
habilitadobooleanSe deve ser ativado ou não.
Retorno

( Altcha )

Instância atual do recurso Altcha.


expires


_altcha.expires() : int

Descrição

Obtém o tempo tempo de expiração em segundos.

Retorno

( int )

O tempo de expiração em segundos.


_altcha.expires(expira: int) : Altcha

Descrição

Define o tempo tempo de expiração em segundos.

Atributos
NOMETIPODESCRIÇÃO
expiraintO limite em segundos para expiração.
Retorno

( Altcha )

Instância atual do recurso Altcha.


getAlgorithm


_altcha.getAlgorithm() : string

Descrição

O tipo de algoritmo que é utilizado na encriptação.

Retorno

( string )

O código que identifica o algoritmo de encriptação.


getCost


_altcha.getCost() : long

Descrição

Quantidade de interações para chegar ao prefixo da chave derivada.

Retorno

( long )

Contagem de força bruta.


getCounter


_altcha.getCounter() : long

Descrição

No modo determinístico, é calculado o prefixo da chave a partir do contador.

Retorno

( long )

Contador do modo determinístico.


getExpires


_altcha.getExpires() : int

Descrição

Obtém o tempo tempo de expiração em segundos.

Retorno

( int )

O tempo de expiração em segundos.


getKeySecret


_altcha.getKeySecret() : string

Descrição

Obtém a chave de assinatura secreta que está sendo utilizada na encriptação.

Retorno

( string )

A chave de assinatura secreta utilizada na encriptação.


getSecret


_altcha.getSecret() : string

Descrição

Obtém o código secreto que está sendo utilizado na encriptação.

Retorno

( string )

O código secreto utilizado na encriptação.


isCheckExpires


_altcha.isCheckExpires() : boolean

Descrição

Obtém se checa o tempo de expiração ou não.

Retorno

( boolean )

Checar o tempo de expiração ou não.


isEnabled


_altcha.isEnabled() : boolean

Descrição

Obtém se o Altcha está habilitado.

Retorno

( boolean )

Se está ativo ou não.


keySecret


_altcha.keySecret() : string

Descrição

Obtém a chave de assinatura secreta que está sendo utilizada na encriptação.

Retorno

( string )

A chave de assinatura secreta utilizada na encriptação.


_altcha.keySecret(chaveSecreta: string) : Altcha

Descrição

Define a chave de assinatura secreta que será utilizada na encriptação.

Atributos
NOMETIPODESCRIÇÃO
chaveSecretastringChave de assinatura secreta que a encriptação deve usar.
Retorno

( Altcha )

Instância atual do recurso Altcha.


load


_altcha.load() : Altcha

Descrição

Carrega as configurações relacionadas ao recurso Altcha na aplicação.

Retorno

( Altcha )

Instância atual do recurso Altcha.


secret


_altcha.secret() : string

Descrição

Obtém o código secreto que está sendo utilizado na encriptação.

Retorno

( string )

O código secreto utilizado na encriptação.


_altcha.secret(segredo: string) : Altcha

Descrição

Define o código secreto que será utilizado na encriptação.

Atributos
NOMETIPODESCRIÇÃO
segredostringO código secreto que a encriptação deve usar.
Retorno

( Altcha )

Instância atual do recurso Altcha.


setAlgorithm


_altcha.setAlgorithm(algoritmo: string) : Altcha

Descrição

Define o tipo de algoritmo que é utilizado na encriptação.

Atributos
NOMETIPODESCRIÇÃO
algoritmostringCódigo que identifica o algoritmo de encriptação.
Retorno

( Altcha )

Instância atual do recurso Altcha.


setCheckExpires


_altcha.setCheckExpires(checaExpira: boolean) : Altcha

Descrição

Define se checa o tempo de expiração ou não.

Atributos
NOMETIPODESCRIÇÃO
checaExpirabooleanSe deve checar o tempo de expiração ou não.
Retorno

( Altcha )

Instância atual do recurso Altcha.


setCost


_altcha.setCost(custo: int) : Altcha

Descrição

Define a quantidade de interações para chegar ao prefixo da chave derivada.

Atributos
NOMETIPODESCRIÇÃO
custointO número da contagem de força bruta.
Retorno

( Altcha )

Instância atual do recurso Altcha.


setCounter


_altcha.setCounter(contador: int) : Altcha

Descrição

Define no modo determinístico, o contador que é utilizado para calcular o prefixo da chave.

Atributos
NOMETIPODESCRIÇÃO
contadorintO valor do contador do modo determinístico.
Retorno

( Altcha )

Instância atual do recurso Altcha.


setEnabled


_altcha.setEnabled(habilitado: boolean) : Altcha

Descrição

Define se o Altcha está habilitado.

Atributos
NOMETIPODESCRIÇÃO
habilitadobooleanSe deve ser ativado ou não.
Retorno

( Altcha )

Instância atual do recurso Altcha.


setExpires


_altcha.setExpires(expira: int) : Altcha

Descrição

Define o tempo tempo de expiração em segundos.

Atributos
NOMETIPODESCRIÇÃO
expiraintO limite em segundos para expiração.
Retorno

( Altcha )

Instância atual do recurso Altcha.


setKeySecret


_altcha.setKeySecret(chaveSecreta: string) : Altcha

Descrição

Define a chave de assinatura secreta que será utilizada na encriptação.

Atributos
NOMETIPODESCRIÇÃO
chaveSecretastringChave de assinatura secreta que a encriptação deve usar.
Retorno

( Altcha )

Instância atual do recurso Altcha.


setSecret


_altcha.setSecret(segredo: string) : Altcha

Descrição

Define o código secreto que será utilizado na encriptação.

Atributos
NOMETIPODESCRIÇÃO
segredostringO código secreto que a encriptação deve usar.
Retorno

( Altcha )

Instância atual do recurso Altcha.


verifySolution


_altcha.verifySolution(payload: string) : boolean

Descrição

Verifica se o resultado do desafio gerado pelo widget no frontend é válido.

Atributos
NOMETIPODESCRIÇÃO
payloadstring
Retorno

( boolean )

Se o resultado do desafio é válido ou não.