FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Utilizar modulo encriptacion en Delphi
Hola a todos!
Estoy intentando utilizar unas librerias de Delphi del compañero Seonane para encriptar con AES-256: http://delphi.jmrds.com/?q=node/43 Esto lo quiero incorporar en un proyecto de C++ Builder 6 y como ya he realizado otras veces no hay problema en incorporar units .pas, pero en este caso al compilar me esta dando un problema que no encuentra o no puede enlazar con la dll del sistema Crypt32.dll. que creo esta perfectamente declarado en el codigo.
Exactamente el mensaje de error que me da el linker es:
Las otras librerias .pas me las compila bien. Solo falla el enlace con estas API de Guindows. Gracias.
__________________
Saludos, Bitman Última edición por Toni fecha: 21-10-2011 a las 13:34:14. |
#2
|
||||
|
||||
TAl y como explica en la página de Seoane, esas funciones utilizan la API de Windows. Debes asegurarte de que la API está instalada en tu sistema.
Si no lo tienes segúramente deberás instalar esto.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
||||
|
||||
Hola Toni.
Sin desvalorizar la biblioteca (library = biblioteca) de Domingo Seoane, que con toda seguridad es muy buena, te comento que hace algunas semanas intenté usar en directo las DLLs nativas de Microsoft del enlace que amablemente señala Neftalí. No obstante, entrando desde esa página al enlace que reza Alternatives to Using CAPICOM, me di cuenta de la variedad y versatilidad de clases que .NET tiene en el terreno de la criptografía. Como CAPICOM me resultaba insuficientemente amigable y no encontraba alternativas Delphi / Win32 para el objetivo que me habían encomendado (hacer firma digital XML), opté por escribir una sencilla clase en C# con una versión de prueba de Visual Studio, y compilé dicha clase como un ensamblaje (assembly) DLL capaz de ser llamado desde aplicaciones Win32. La clave para lograr esta compatibilidad es que la biblioteca generada exporte tu clase .NET como interfaz COM. Para quienes encuentren interesante esto, en la ayuda de Delphi (y supongo que en la de C++ Builder también) hay información al respecto en los apartados: Requirements for COM interoperability, .NET components and type libraries y Accessing user-defined .NET components (recomiendo leerlos en ese orden). Al parecer Microsoft acuña los términos interoperability y COM Callable Wrappers (CCW); buscándolos en Google se encuentran varios ejemplos que pueden resultar útiles (además del que Borland describe en la ayuda). Sin más propósito que enriquecer el tema. Saludos. Al González. |
#4
|
|||
|
|||
Hola,
Muchas gracias por ambas respuestas. Cita:
Al Gonzalez, te agradezco mucho tambien tu aportación. Pero creo que si puedo utilizar estas librerias inicialmente es mas que suficiente y al disponer de los fuentes me permite hacer algo muy compacto. Como comentario, deciros que esto lo quiero para realizar una pequeña utileria para Firebird para poder encriptar/desencriptar facilmente todo el código de procedimientos almacenados de una base de datos. Que para quien realiza aplicaciones con un peso muy importante en la base de datos es importante proteger. La cual cuando este terminada la pondre a disposición del Club Delphi.
__________________
Saludos, Bitman Última edición por Toni fecha: 21-10-2011 a las 18:42:42. |
#5
|
||||
|
||||
Es así, tienes razón.
La solución es sencilla, debes crear Crypt32.lib, para ello abre una consola de comandos en la carpeta donde tienes Crypt32.dll y ejecuta: Código:
implib Crypt32.lib Crypt32.dll Código:
#pragma comment(lib, "Crypt32.lib") Saludos. |
#6
|
|||
|
|||
Eres es un monstruo!!
Con estos funciona perfectamente! Me despistaba porque desde el C++ Builder puedes llamar todas las apis sin necesidad de declararlas (estan todas declaradas en los archivos de cabecera) ni hacer todo esto, pero como esta en un modulo .pas ya hacia su propia declaracion externa.... pero bueno ya esta. Muchas gracias!
__________________
Saludos, Bitman |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Encriptación con AES en Delphi 7 | nlsgarcia | Varios | 3 | 01-09-2011 07:36:20 |
Encriptacion MD5+RSA en delphi | jourdan | OOP | 9 | 24-03-2010 01:01:08 |
en delphi como escribir modulo para apache. como el de php | JXJ | Varios | 5 | 16-12-2009 04:50:52 |
Encriptacion y UTF | dape | PHP | 4 | 31-03-2009 14:34:21 |
Encriptación | Novás | PHP | 1 | 12-06-2007 05:24:45 |
|