Вы находитесь на странице: 1из 4

Ejemplo para iniciar el programa pidiendo un password que se almacena en el registro con la clave encriptada

La rutina para encriptar y desencriptar cadenas que usa este ejemplo, fue hecha por Harvey Triana. El proyecto que hice lo pods descargar desde este enlace: Iniciar programa con Password encriptado

...y A continuacin se describe resumidamente los formulario y las funciones que utiliza el proyecto de ejemplo.

El poyecto tiene 4 formulario y un mdulo bas. El mismo inicia mediante un procedimiento Sub Main que est ubicado en el mdulo bas. Dentro del Sub Main primero lee del registro si hay una contrasea. Si la hay, carga el formulario de Login que es el siguiente:

Formulario de Login

Al presionar el botn Entrar, se envia como parmetro a la funcin llamada " Login ", el password escrito en el Textbox. La funcin retorna True o False si es correcta o no. Function Login(PassWord As String) As Boolean

Si la contrasea es correcta, descarga el formulario de Loign y se carga el formulario principal del programa.

Formulario para cambiar la Clave


Para cambiar la contrasea, hay un formulario similar al anterior llamado frmCambiarClave que es el siguiente:

En este formulario, al presionar Aceptar se llama a la funcin Cambiar_Password


'Funcin que cambia el Password (Recibe la contrasea vieja, contrasea y confirmacin) '---------------------------------------------------------------------------Function Cambiar_Password(Old_Password As String, _ New_Password As String, _ Confirm_Password As String) As Boolean

La funcin tambin es de tipo Boolean, y retorna True si se han ingresado los datos correctos o False si no son correctos, por ejemplo si la contrasea vieja no coincide.

Eliminar la clave
Para eliminar la clave hay una Sub muy simple llamada Eliminar_Password

Formulario para crear un nuevo Password


Este formulario se llama FrmNuevoPassword, y la funcin que usa para crear y establecer la nueva clave se llama Nuevo_Password ..que tiene dos parmetros: Function Nuevo_Password(El_Password As String, PassConfirm As String) As Boolean

Si el password y la confirmacin enviadas son correctas, la funcin devuelve True y aade la clave al registro, de lo contrario devuelve False

Mdulo
Por ltimo el mdulo tiene, aparte de las funciones dichas antes, dos propiedades y la funcin que permite encriptar y desencriptar la contrasea. La propiedad para leer la clave
Public Property Get ElPassword() As String 'Lee del registro la clave encriptada ElPassword = GetSetting(App.EXEName, SECCION, CLAVE, "") End Property

.. para establecerla:
Public Property Let ElPassword(ByVal sPass As String) Dim PassEncrip As String 'Primero Encripta

PassEncrip = Encriptar(sPass, sPass, ENCRYPT) 'Luego Guarda en el registro Call SaveSetting(App.EXEName, SECCION, CLAVE, PassEncrip) End Property

y la funcin para encriptar y desencriptar de Harvey Triana se llama " Encriptar " y tiene tres parmetros:
Function Encriptar( _ UserKey As String, Text As String, Action As Single _ ) As String

La primera es la clave, la segunda la cadena a encriptar (que en este caso tambin es la clave) y el tercer parmetro es la accin a realizar, es decir Codificar o Decodificar ( El valor 1 Encripta y el valor 2 Desencripta )

Вам также может понравиться