Página 1 de 2
Modificação automatica de senha.

Enviado:
28 Nov 2006 12:44
por Anderson_Arantes
Caros amigos,
Estou Necessitando de algorítimo de substituição periódica de uma senha de usuário. O Objetivo seria permitir o acesso de um usuário ou grupo de usuário às funções implementadas em um módulo microcontrolado durante um número de ciclos limitados de operação que quando expirados modificaria a senha de acesso ao menu do equipamento impedindo seu uso até que fosse reemitida nova senha segundo o algorítimo em questão. Isto impediria em princípio o extravio do equipamento uma vez que teria limitação, em ciclos, de sua vida útil. Vale observar que poderia-se adotar, na configuração mais modesta, senha de 3 dígitos somente e os valores das senhas subseqüentes obedecendo ao algorítimo não poderiam resultar numa seqüência viciada onde após a geração da última senha, a equação produzisse novamente a primeira em uso. A sucessão de senhas deveria parecer (ou ser,preferencialmente) aleatória.
Antecipadamente agradeço a qualquer ajuda.

Enviado:
28 Nov 2006 14:06
por fabim
Anderson_Arantes desculpe a brincadeira franca.....
Mais vc queria mais alguma coisa ?
Pizza ceva geladinha ?
Seja mais direto.. ajuda pra lhe ajudar a bolar o algoritmo tudo bem. mais lhe fornecer um que faça tudo isso acho dificil alguem lhe passar o fonte..
Poste duvidas por partes ou algo do tipo..
Abraços
Fabim

Enviado:
28 Nov 2006 14:20
por Anderson_Arantes
A formulação da dúvida em si não é grande de forma a admitir o tratamento por partes. Somente quis ser ,como sempre, extremamente detalhista. Sua dificuldade em interpretar questões assim formuladas pode ser compreensível, mas não há um meio mais simples de descrever o problema.

Enviado:
28 Nov 2006 14:29
por Anderson_Arantes
De outra forma:
Uma máquina assistida eletronicamente somente pode operar um número limitado de vezes por usuários autorizados. Expirado o número de ciclos de operação da máquina pré-estabelecidos, esta é impedida de operar, uma vez que a senha que iniciava a operação foi substituida automaticamente por um algoritimo especifico interno. Somente o administrador dispõe do conhecimento da proxima senha para start. assim um extravio do equipamento permitiria o uso em uma quantidade restrita de operações, após a qual o equipamento travaria novamente, não reagindo mais à senha imediatamente precedente.

Enviado:
29 Nov 2006 07:19
por Anderson_Arantes
Não desejo fórmula pronta (código fonte) para o problema. Já desenvolvi algoritimo de reconhecimento e modificação de senha usando lcd como interface diversas vezes. A principal duvida reside em implementar uma mudança automatica de senha segundo regras de um algoritimo que jamais produza uma sequencia que se repita periodicamente, o que seria muito crítico quando o número de dígitos da senha é pequeno( 3, no caso).
Alguem poderia indicar links ou fornecer dicas que resultassem numa seqüência não viciada?

Enviado:
29 Nov 2006 07:50
por fabim
Bom.
Basicamente.. "basico"
Seria uma senha XYZ
para esta senha teria um valor X na eeprom Casa T.
Cada vez que a senha XYZ fosse digitada o valor X decrementa até atingir zero.. neste momento um algoritmo cria uma nova senha para X vezes para ser digitada...? e assim por diante..
No seu caso.. a duvida é como imaginar a nova senha a partir da ultima que estourou o numero de vezes máximo ?
Abraços..
FAbim

Enviado:
29 Nov 2006 07:56
por Anderson_Arantes
Agradeço sua presteza Fabim, mas agora quem não estendeu muito bem fui eu. pode esclarecer melhor sua idéia por favor?

Enviado:
29 Nov 2006 08:06
por Anderson_Arantes
Toda vez que a operação da máquina se fizesse necessária, o administrador concederia ao operador uma senha de ativação que poderia ser utilizada para dar inicio ao trabalho do dispositivo por uma certa quantidade de vezes. Após esta quantidade de ativações com o uso daquela senha concedida esta (a senha) caducaria sendo modificada pelo firmware de controle da máquina. O administrador, por connhecer o algorítimo calcularia a nova senha ou àpartir da senha precedente ou poderia-se apresentar no lcd da máquina o número de ordem da senha que expirou (por exemplo: MSG a operaçlão expirou para a oitava senha deste equipamento). entendeu?ajudei?

Enviado:
29 Nov 2006 08:24
por Fábio Pereira
Quer sinceridade Anderson ?
Acho EXTREMAMENTE perigoso deixar o próprio equipamento gerar uma senha internamente e esperar que um administrador saiba calcula-la ...
Se acontece alguma coisa e eles perdem a sequencia ?
Outro aspecto importante a ser considerado é: o que tem no hardware do equipamento ? Vai haver disponível um RTC ? Será que ele estará sempre ajustado corretamente ? Qual a forma de comunicação da máquina com o usuário e do usuário com a máquina ?
Outra coisa: se a geração de senhas for aleatória, então não há como qualquer um calcular uma sequência. Você precisa é de um gerador pseudo-aleatório e com uma previsibilidade razoável.
Uma alternativa interessante poderia ser utilizar o mesmo algoritmo no seu equipamento e em um software rodando em PC, desta forma, o administrador poderia interir a senha no software e o mesmo indicaria a próxima.
Mas ainda assim afirmo que, se por algum motivo a sequência for perdida, você terá problemas.
Até +

Enviado:
29 Nov 2006 08:52
por Renie
Olá Anderson!
Vê se serve:
- você tem que ter um contador de senha utilizada e quantas vezes a
mesma foi usada (não precisa de RTC né?).
a matriz seria 123 ou outra que você escolher
para a senha 1, você somaria 1 ao 1o digito, 2 ao 2o e 3 ao 3o
ficaria 246, a senha seria o complemento de 10 digito a dígito, ou seja
864
na senha 2, você somaria 2 ao 1o dígito, 3 ao 2o e 4 ao 3o, ficaria
357, senha em complemento de 10 (digito a digito) 753
na senha 3 somaria 3, 4, 5 ficando com 468, senha 642
senha 4, somar 4,5,6 ficando 579, senha 531
senha 5, somar 5,6,7 ficando 680 , senha 420 (note o estouro do 3o dígito)
e assim por diante, os nrs a serem somados bem como a matriz, você
pode escolher a vontade.

Enviado:
29 Nov 2006 09:02
por ddkks
Não sei se resolveria mas existe a possibilidade de senha user e senha master. Basicamente a senha user expira após n entradas ou tempo x e só poderá ser recadastrada mediante a senha master, de uso controlado.

Enviado:
29 Nov 2006 09:04
por Anderson_Arantes
Antes de mais nada gostaria de enfatizar meus agradecimentos por qualquer contribuição que possa ajudar de alguma maneira e aproveitar e parabenizá –lo pela excelência de trabalho em sua publicação sobre “C”,especificamente.
Fabio, em relação à perda da seqüência, supus que através da interface (LCD) esta exibiria junto à mensagem de expiração da última senha em uso, um índice indicando o número de ordem daquela senha.O número de série do produto seria uma das variáveis para o cálculo da primeira senha. De posse de ambos(série e índice) seria determinada a senha substituta. Se, em caso de falha este índice fosse perdido, poderia-se intervir diretamente na EEPROM interna(local onde seria mantida a senha em uso) via usart através de funções já implementadas e forçar a carga do valor desejado para senha.
Quanto ao hardware não contemplará RTC uma vez que a expiração de cada senha não será um evento cronológico mas estará vinculada à ciclo de operação (volume de vezes que a máquina é ligada).
A interação entre usuário e máquina se dará por LCD alfanumérico e teclado.

Enviado:
29 Nov 2006 09:12
por Anderson_Arantes
Caro "DDKKS" ,
Apesar de sua idéia alcançar o objetivo sem a necessidade do algoritimo pedido, ela possui a limitação de exigir que o administrador esteja diante do equipamento para promover alterações na senha, pois deveria entrar com sua senha master. Num universo de máquinas geograficamente dispersas isto não seria possível ou prático. De qualquer maneira vc agrega valor com suas sugestões e sou agradecido por isso.

Enviado:
29 Nov 2006 09:15
por Renie
Anderson,
não serve a idéia que passei?
a matriz pode ser obtida do nr. de série!

Enviado:
29 Nov 2006 09:31
por Anderson_Arantes
Olá Renie,
Voce assimilou perfeitamente o objetivo (matemático) do algorítmo, mas para um operador que receba códigos de ativação 864, 753,642 fica bem evidente que o próximo código fornecido pelo administrador será 531. certo?
Não sei qual, mas alguma correção deve ser introduzida em sua sugestão.
Agradeço muito e aguardo outra resposta.rsrsrsrs!