Pergunta

Estou olhando para o desenvolvimento de um sistema de autenticação de senha única (J2ME para telefone, PHP para o lado do servidor)

Estou tentando entender o processo, aqui está o que eu entendo

  1. Usuário> insere secretos aleatórios no hash n número de vezes
  2. Usuário> envia S^n para servidor
  3. servidor> salva n e s^n
  4. Usuário> gera (S^n) -1 e envia ao servidor
  5. Servidor> leva a entrada do usuário e aplica a função Hashing 1 mais tempo e verifica -a contra o hash armazenado anteriormente

Agora, desde a leitura do RFC2289 (s/key), há uma semente que é emitida ao cliente e concatenada com o segredo do usuário quando eles inseram um identificador exclusivo (na etapa 4) Como é criada essa semente, é aleatória, é armazenada .

Foi útil?

Solução

A semente é concordou pelo servidor e pelo cliente durante a inicialização da sequência de senha. Portanto, é feito apenas uma vez antes de o OTPS ser usado para autenticação. A semente deve ser aleatória, mas o cliente deve ser capaz de escolhê -la. Em outras palavras, o servidor pode sugerir uma semente aleatória, mas o cliente deve ter a opção de criar sua própria semente (aleatória). A semente deve ser armazenada pelo servidor. o Servidor realmente não usa durante a autenticação. Ele o armazena apenas para que possa apresentá -lo ao usuário durante a autenticação, juntamente com o número da sequência. Número de sementes e sequência não são secretos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top