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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| algoritmo | string | Có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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| checaExpira | boolean | Se 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| custo | int | O 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| contador | int | O 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| habilitado | boolean | Se 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| expira | int | O 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| chaveSecreta | string | Chave 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| segredo | string | O 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| algoritmo | string | Có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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| checaExpira | boolean | Se 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| custo | int | O 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| contador | int | O 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| habilitado | boolean | Se 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| expira | int | O 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| chaveSecreta | string | Chave 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| segredo | string | O 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
| NOME | TIPO | DESCRIÇÃO |
|---|---|---|
| payload | string |
Retorno
( boolean )
Se o resultado do desafio é válido ou não.