API Java
HSM Dinamo
Carregando...
Procurando...
Nenhuma entrada encontrado
OATH

Descrição detalhada

Autenticação padrão OATH.

Consulte a documentação técnica do HSM.

Funções

byte[] generateOATHHotpBlob (String masterKey) throws TacException
 Gera um blob OATH HOTP(HMAC-based One-Time Password).
 
byte[] generateOATHHotpBlob (String masterKey, byte seedLen) throws TacException
 Gera um blob OATH HOTP(HMAC-based One-Time Password).
 
byte[] generateOATHHotpBlob (String masterKey, byte seedLen, byte truncationOffset) throws TacException
 Gera um blob OATH HOTP(HMAC-based One-Time Password).
 
byte[] importOATHHotpBlob (String masterKey, byte[] seed) throws TacException
 Gera um blob OATH HOTP(HMAC-based One-Time Password).
 
byte[] generateOATHTotpBlob (String masterKey) throws TacException
 Gera um blob OATH TOTP(Time-based One-Time Password).
 
byte[] generateOATHTotpBlob (String masterKey, byte seedLen, byte truncationOffset, int timeStep, long t0) throws TacException
 Gera um blob OATH TOTP(Time-based One-Time Password).
 
byte[] importOATHTotpBlob (String masterKey, byte[] seed, byte truncationOffset, int timeStep, long t0, boolean useDefaultMovingFactor, long movingFactor) throws TacException
 Gera um blob OATH TOTP(Time-based One-Time Password).
 
byte[] importOATHTotpBlob (String masterKey, byte[] seed) throws TacException
 Gera um blob OATH TOTP(Time-based One-Time Password).
 
byte[] getOATHSeed (String masterKey, byte[] blob) throws TacException
 Recupera a semente(seed) do blob OATH.
 
String getNextOATHOTP (String masterKey, int otpLen, byte[] oathBlob) throws TacException
 Gera o próximo OTP a partir do OATH blob informado.
 
byte[] checkOATHBlobOTP (String masterKey, String otp, byte[] oathBlob) throws TacException
 Verifica um valor OTP para determinado blob OATH.
 
byte[] resyncOATHBlobOTP (String masterKey, String otp1, String otp2, byte[] oathBlob) throws TacException
 Re-sincroniza um blob OATH através da apresentação de dois valores de OTP contínuos.
 

Funções

◆ generateOATHHotpBlob() [1/3]

byte[] generateOATHHotpBlob ( String masterKey) throws TacException

Gera um blob OATH HOTP(HMAC-based One-Time Password).

Também conhecido como OTP por evento. A semente é gerada dentro do HSM. Tamanho da semente TacNDJavaLib.ISSUE_OATH_SHA1_LEN.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
Retorna
Retorna o blob OATH.
Exceções
TacException

◆ generateOATHHotpBlob() [2/3]

byte[] generateOATHHotpBlob ( String masterKey,
byte seedLen ) throws TacException

Gera um blob OATH HOTP(HMAC-based One-Time Password).

Também conhecido como OTP por evento. A semente é gerada dentro do HSM.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
seedLenDefine o tamanho da semente OATH. Os seguintes valores são aceitos.
Valor Tamanho em bytes
TacNDJavaLib.ISSUE_OATH_SHA1_LEN 20
TacNDJavaLib.ISSUE_OATH_SHA256_LEN 32
TacNDJavaLib.ISSUE_OATH_SHA512_LEN 64
Retorna
Retorna o blob OATH.
Exceções
TacException

◆ generateOATHHotpBlob() [3/3]

byte[] generateOATHHotpBlob ( String masterKey,
byte seedLen,
byte truncationOffset ) throws TacException

Gera um blob OATH HOTP(HMAC-based One-Time Password).

Também conhecido como OTP por evento. A semente é gerada dentro do HSM.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
seedLenDefine o tamanho da semente OATH. Os seguintes valores são aceitos.
Valor Tamanho em bytes
TacNDJavaLib.ISSUE_OATH_SHA1_LEN 20
TacNDJavaLib.ISSUE_OATH_SHA256_LEN 32
TacNDJavaLib.ISSUE_OATH_SHA512_LEN 64
truncationOffsetO seguinte valor é suportado:
Valor Significado
TacNDJavaLib.ISSUE_OATH_DYN_TRUNC Define o algoritmo de “truncagem” como dinâmico.
Retorna
Retorna o blob OATH.
Exceções
TacException

◆ importOATHHotpBlob()

byte[] importOATHHotpBlob ( String masterKey,
byte[] seed ) throws TacException

Gera um blob OATH HOTP(HMAC-based One-Time Password).

Também conhecido como OTP por evento. A semente é importada pelo chamador.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
seedDefine uma semente OATH. Os seguintes tamanhos são aceitos.
Valor Tamanho em bytes
TacNDJavaLib.ISSUE_OATH_SHA1_LEN 20
TacNDJavaLib.ISSUE_OATH_SHA256_LEN 32
TacNDJavaLib.ISSUE_OATH_SHA512_LEN 64
Retorna
Retorna o blob OATH.
Exceções
TacException

◆ generateOATHTotpBlob() [1/2]

byte[] generateOATHTotpBlob ( String masterKey) throws TacException

Gera um blob OATH TOTP(Time-based One-Time Password).

Também conhecido como OTP por tempo. A semente é gerada dentro do HSM. Semente de tamanho TacNDJavaLib.ISSUE_OATH_SHA1_LEN.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
Retorna
Retorna o blob OATH.
Exceções
TacException

◆ generateOATHTotpBlob() [2/2]

byte[] generateOATHTotpBlob ( String masterKey,
byte seedLen,
byte truncationOffset,
int timeStep,
long t0 ) throws TacException

Gera um blob OATH TOTP(Time-based One-Time Password).

Também conhecido como OTP por tempo. A semente é gerada dentro do HSM.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
seedLenDefine o tamanho da semente OATH. Os seguintes valores são aceitos.
Valor Tamanho em bytes
TacNDJavaLib.ISSUE_OATH_SHA1_LEN 20
TacNDJavaLib.ISSUE_OATH_SHA256_LEN 32
TacNDJavaLib.ISSUE_OATH_SHA512_LEN 64
truncationOffsetO seguinte valor é suportado:
Valor Significado
TacNDJavaLib.ISSUE_OATH_DYN_TRUNC Define o algoritmo de “truncagem” como dinâmico.
timeStepValor do time step em segundos. Além de definir o time step em segundos para blobs TOTP os seguintes valores também são suportados.
Valor Significado
TacNDJavaLib.ISSUE_OATH_DEFAULT_TIME_STEP Utilizar o valor padrão de time step do HSM, atualmente 30 segs.
TacNDJavaLib.ISSUE_OATH_HOTP_TS Utilizar este valor quando se tratar de HOTP.
t0Valor do tempo inicial.
Valor Significado
TacNDJavaLib.ISSUE_OATH_HOTP_T0 Utilizar valor padrão do HSM.
Retorna
Retorna o blob OATH.
Exceções
TacException

◆ importOATHTotpBlob() [1/2]

byte[] importOATHTotpBlob ( String masterKey,
byte[] seed,
byte truncationOffset,
int timeStep,
long t0,
boolean useDefaultMovingFactor,
long movingFactor ) throws TacException

Gera um blob OATH TOTP(Time-based One-Time Password).

Também conhecido como OTP por tempo. A semente é importada pelo chamador.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
seedDefine uma semente OATH. Os seguintes tamanhos são aceitos.
Valor Tamanho em bytes
TacNDJavaLib.ISSUE_OATH_SHA1_LEN 20
TacNDJavaLib.ISSUE_OATH_SHA256_LEN 32
TacNDJavaLib.ISSUE_OATH_SHA512_LEN 64
truncationOffsetO seguinte valor é suportado:
Valor Significado
TacNDJavaLib.ISSUE_OATH_DYN_TRUNC Define o algoritmo de “truncagem” como dinâmico.
timeStepValor do time step em segundos. Além de definir o time step em segundos para blobs TOTP os seguintes valores também são suportados.
Valor Significado
TacNDJavaLib.ISSUE_OATH_DEFAULT_TIME_STEP Utilizar o valor padrão de time step do HSM, atualmente 30 segs.
TacNDJavaLib.ISSUE_OATH_HOTP_TS Utilizar este valor quando se tratar de HOTP.
t0Valor do tempo inicial.
Valor Significado
TacNDJavaLib.ISSUE_OATH_HOTP_T0 Utilizar valor padrão do HSM.
useDefaultMovingFactorDefinir como true para utilizar o moving factor padrão ou como false para especificar um moving factor em movingFactor.
movingFactorDefine o incremento inicial do cliente antes da utilização. Além da definição do incremento manualmente, pode-se utilizar os valores da seguinte tabela.
Valor Significado
TacNDJavaLib.ISSUE_OATH_INIT_MF Utiliza valor padrão de moving factor.
Retorna
Retorna o blob OATH.
Exceções
TacException

◆ importOATHTotpBlob() [2/2]

byte[] importOATHTotpBlob ( String masterKey,
byte[] seed ) throws TacException

Gera um blob OATH TOTP(Time-based One-Time Password).

Também conhecido como OTP por tempo. A semente é importada pelo chamador.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
seedDefine uma semente OATH. Os seguintes tamanhos são aceitos.
Valor Tamanho em bytes
TacNDJavaLib.ISSUE_OATH_SHA1_LEN 20
TacNDJavaLib.ISSUE_OATH_SHA256_LEN 32
TacNDJavaLib.ISSUE_OATH_SHA512_LEN 64
Retorna
Retorna o blob OATH.
Exceções
TacException

◆ getOATHSeed()

byte[] getOATHSeed ( String masterKey,
byte[] blob ) throws TacException

Recupera a semente(seed) do blob OATH.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
blobblob OATH.
Retorna
Semente associada ao blob OATH.
Exceções
TacException

◆ getNextOATHOTP()

String getNextOATHOTP ( String masterKey,
int otpLen,
byte[] oathBlob ) throws TacException

Gera o próximo OTP a partir do OATH blob informado.

Parâmetros
masterKeynome da chave mestre utilizada para proteger os blobs.
otpLentamanho do OTP que será gerado. Tamanho mínimo TacNDJavaLib.ISSUE_OATH_MIN_OTP_LEN e máximo TacNDJavaLib.ISSUE_OATH_MAX_OTP_LEN.
oathBlobblob que será utilizado para a geração do OTP. Este buffer não será alterado.
Retorna
Retorna o OTP gerado.
Exceções
TacException

◆ checkOATHBlobOTP()

byte[] checkOATHBlobOTP ( String masterKey,
String otp,
byte[] oathBlob ) throws TacException

Verifica um valor OTP para determinado blob OATH.

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
otpOTP a ser verificado. Tamanho mínimo TacNDJavaLib.ISSUE_OATH_MIN_OTP_LEN e máximo TacNDJavaLib.ISSUE_OATH_MAX_OTP_LEN.
oathBlobblob que terá o OTP verificado. Este buffer será reescrito com o buffer atualizado.
Retorna
blob OATH atualizado.
Exceções
TacException
Anotações
Caso seja lançado o erro D_OATH_BLOB_UPDATE esta chamada deverá ser refeita passando o oathBlob com tamanho de ISSUE_OATH_OUTPUT_MAX_BLOB_LEN contendo blob atual, para que o blob seja atualizado. Ver detalhes na especificação de OATH_UPDATE_BLOB.

◆ resyncOATHBlobOTP()

byte[] resyncOATHBlobOTP ( String masterKey,
String otp1,
String otp2,
byte[] oathBlob ) throws TacException

Re-sincroniza um blob OATH através da apresentação de dois valores de OTP contínuos.

Apenas para HOTP(OTP por evento).

Parâmetros
masterKeyNome da chave mestre utilizada para proteger os blobs.
otp1Primeiro OTP. Tamanho mínimo TacNDJavaLib.ISSUE_OATH_MIN_OTP_LEN e máximo TacNDJavaLib.ISSUE_OATH_MAX_OTP_LEN.
otp2Segundo OTP. Tamanho mínimo TacNDJavaLib.ISSUE_OATH_MIN_OTP_LEN e máximo TacNDJavaLib.ISSUE_OATH_MAX_OTP_LEN.
oathBlobblob que terá o OTP verificado. Este buffer será reescrito com o buffer atualizado.
Retorna
blob OATH atualizado.
Exceções
TacException
Anotações
A partir da versão 4.0.2 do firmware a janela será estendida em 200 intervalos para mais e para menos. No caso de tokens HOTP os intervalos serão contados por quantidade de eventos, no caso dos tokens TOTP serão contados por quantidade de time-steps. Caso seja lançado o erro D_OATH_BLOB_UPDATE esta chamada deverá ser refeita passando o oathBlob com tamanho de ISSUE_OATH_OUTPUT_MAX_BLOB_LEN contendo blob atual, para que o blob seja atualizado. Ver detalhes na especificação de OATH_UPDATE_BLOB.