|
Marco Ferrante
English version
Home page personale
Cifratura DM 24/06/2004
Open source
Delphi/OpenSSL
|
Delphi import unit per OpenSSL DLL
OpenSSL è un progetto
collaborativo per lo sviluppo di un toolkit che implementi
SSL/TLS rilasciato sotto una licenza open source simil-BSD.
Per utilizzare OpenSSL su sistemi Microsoft Windows a 32 bit,
occorre procurarsi una copia delle DDL dal progetto
GNU Win32 (la versione per cui è stata sviluppata questa unit) o dal
modulo del progetto wget sul sito SunSite.
Borland Delphi e OpenSSL
Le librerie di OpenSSL possono essere utilizzate da Borland Delphi
invocando le DLL.
Il toolkit OpenSSL è composto di due parti: libssl, che implementa SSLv2/v3
e TLS per le comunicazioni di rete e libcrypto, che fornisce i servizi
crittografici, le funzioni di hash, il supporto per le strutture
dati tipo ASN.1 e la gestione dei certificati X.509.
Per l'uso delle funzioni di rete per la comunicazione SSLv2/v3
e TLS, un buon modulo è disponibile nei componenti di
Indy
Per la gestione dei certificati X.509, CSITA ha scritto una unit
per l'importazione delle funzioni specifiche.
File necessari
- Gnu Win32 libeay32.dll
- DLL di OpenSSL. La unit è stata sviluppata per la
versione 0.9.6b. Sembra funzionare anche la versione 0.9.6g compilata da
Intelicom per il progetto Indy.
- libeay32.pas v. 0.7m
- Prototipi delle funzioni della DLL. Nella unit non sono definiti
tutti i prototipi del migliaio di funzioni esportate della DLL;
in particolare non sono presenti quelli che utilizzano parametri
file pointer stile C.
Novità della versione 0.7m del 05/11/2010
- corretti erroi e bug
- aggiunto il supporto per le funzioni PCKS#8 (contributo di Luis Carrasco - Bambu Code, Mexico)
- ridefinizione di PChar come PCharacter per gestire i tipi PChar e PAnsiChar
Novità della versione 0.7d, 15/12/2006
- corretti erroi e bug
- rimosse le funzioni EVP_MD_size and EVP_MD_CTX_size:
non sono definite nella DLL e gestiscono i parametri in mdo dipendente dalla versione.
- aggiunte le funzioni BIGNUM
- tra le versioni 0.9.6h e 0.9.7, la funzione OpenSSL_add_all_algorithms
è stata divisa in due distinte funzioni. Le informazioni sono sul sito http://www.openssl.org/news/changelog.html
In questa versione della unit, OpenSSL_add_all_algorithms è diventato
un wrapper che carica dinamicamente la versione corretta.
Novità della versione 0.7 del 14/09/2006
- bug fix (grazie a M. Hlavac e R. Tamme)
- funzioni di gestione della memoria
- funzioni di gestione diretta dei file
Novità della versione 0.6 del 15/07/2003
- corrette alcuni tipi record (EVP_MD, EVP_MD_CTX, ecc...)
- definiti nuovi prototipi
Novità della versione 0.4 del 17/03/2003
- rinominata libeay32.pas
- corretti alcuni piccoli bug
- definiti diversi nuovi prototipi
- OpenSSLUtils.pas v. 0.5
- Alcune classi e funzioni ausiliarie; questa unit è un
"esercizio tecnologico" e non può essere utilizzata in
un ambiente di produzione.
Nuova versione 0.5, 01/06/2010
- Grazie a Pablo Romero (Cordoba, Argentina) ora compila
su Delphi 2006, 2007, 2009 e 2010
Nuovi esempi della versione 0.3 del 24/03/2003
- nuova classe TPKCS7 per la lettura delle buste PCKS#7
- nuova classe TX509Certificate per la verifica dei certificati X.509
- alcune nuove funzioni
La documentazione delle funzioni è disponibile nel pacchetto dei sorgenti di
OpenSSL.
Esempi
Commenti
Suggerimenti, commenti e contributi sono apprezzati; scrivere a marco@csita.unige.it
|