Protegendo a Calculadora do Acesso de Estranhos
Danton Cavalcanti Franco Junior
dantonjr@inf.furb.rct-sc.br
Resumo
Qualquer pessoa pode ter acesso aos dados contidos na memória de nossa HP48G/GX. Muitas vezes criamos arquivos que são de interesse próprio, não interessando a ninguém além de nós. Este trabalho apresenta uma forma de controlar esse tipo de acesso, através da criação de um programa que é executado toda vez que a calculadora é ligada. Este programa solicita que uma senha seja informada, e se a mesma não conferir a calculadora é automaticamente desligada.
Palavras Chave:
Acesso à calculadora, desligar HP automaticamente, proteger dados, proteger a memória.
Introdução
Acessar o conteúdo da memória de uma HP é muito fácil. Qualquer pessoa pode vasculhar os menus e verificar todo o conteúdo dos programas e variáveis armazenados. Muitas vezes criamos arquivos que têm certo grau de confidencialidade, não interessando a ninguém verificar seu conteúdo.
Uma forma fácil de controlar o acesso de pessoas estranhas, é criando um programa que quando executado, desliga a calculadora, e quando tenta-se ligá-la novamente, uma senha é solicita. Após a conferência da senha pelo programa, o mesmo desliga a calculadora caso a senha seja inválida, reiniciando todo o processo.
Desta forma pode se garantir um certo grau de segurança do conteúdo da memória.
O Programa
Nosso programa será escrito em USER-RPL, e o chamaremos de FIM. O primeiro comando deste programa será OFF, pois assim logo que o programa é executado a calculadora é desligada.
Quando liga-se a calculadora novamente, devemos mostrar uma mensagem para o usuário solicitando que o mesmo informe a senha para continuar. Para esse processo podemos utilizar o comando INFORM, que mostra uma tela de entrada de dados conforme a configuração informada pode-se observar uma tela exemplo de solicitação de senha na figura 1.
O próximo passo é verificar se a senha foi digitada corretamente ou não. Para isso utilizaremos o comando IF, que faz o teste "se". É interessante que a senha seja um número, pois desta forma podemos evitar maiores controles sobre a mesma, evitando que o programa fique maior e mais lento.
É muito importante prestar atenção à forma de se validar a condição do teste "se", pois se algo sair errado, pode-se deixar o programa em loop eterno.
Seguindo esses passos nosso programa ficaria assim:
« OFF
"Senha p/ continuar¼ "
{ "Senha:" } { 1 5 }
{ } { } INFORM
IF 1 ==
THEN
IF { 123321 } ¹
THEN FIM
END
ELSE FIM
END
»
Obs1.: Neste exemplo o número 123321, é a referida senha de acesso. Você pode mudá-la quando quiser, basta editar o programa e mudar este valor.
Obs2.: Repare que temos duas checagens "se" encadeadas. Desta forma temos a garantia de que mesmo que o usuário pressione a tecla CANCEL, a calculadora será desligada, por não conseguir conferir a senha.
Gravando o Programa FIM na Calculadora
O programa deve ser gravado (STO) no diretório { HOME } da HP, pois desta forma pode ser acessado a partir de qualquer outro diretório.
É interessante que se coloque uma chamada para o mesmo no teclado do usuário (USER), para tanto proceda da seguinte maneira:
Para utilizar o programa armazenado no teclado do usuário nos passos anteriores, pressione: ¬ USER CANCEL; automaticamente a calculadora será desligada, e quando você tornar a ligá-la, a senha será solicitada.
Sugestão para Melhoras
Sugere-se como melhora da função a criação de uma função de checagem do tipo das senhas digitadas (evitando desta forma que sempre seja necessária uma senha numérica), vale lembrar que este processo pode deixar o programa mais lento.
Outra sugestão, é a de transformar este programa em uma LIBRARY, tornando-o mais seguro e veloz.
figura 1 – Exemplo da tela de solicitação da senha.
VOLTA PRÓXIMO