Accueil > > > MD5 API, LE CELEBRE ALGORITHME DE HACHAGE SOUS DELPHI.
MD5 API, LE CELEBRE ALGORITHME DE HACHAGE SOUS DELPHI.
Information sur la source
Description
Salut, cette fois on passe au choses serieuses. je vous propose donc l'API MD5, qui permet donc d'avoir accés facilement a cet algorythme de cryptage. L'api se decoupe en Deux fichier : MD5Api, qui est l'unité a declarer pour utiliser les fonctions. MD5Core, qui contient l'agorythme (a ne pas modifier sinon ... ça marche plus). Au depart j'avais recupéré une petite unité d'un auteur dont je n'arrive plus a me souvenir, bref, aprés quelques fortes modifications et optimisations, j'ai ensuite ajouter plusieurs choses utiles. L'Api contient donc : des fonctions qui genere des clef MD5 (string) a partir de chaines de caracteres, donnée non typée, et fichiers. d'autre fonctions permettent de faire des convertions, comparaisons ect... voila, et que je ne vous vois plus mettre des identifiants d'accés en clair dans des fichiers INI, registre et bases de données, la vous n'avez plus d'excuses.
Source
- { Renvois la representation du MD5 d'une chaine de caracteres }
- function MD5(const S : string) : string; overload;
- { Renvois la representation du MD5 d'un buffer quelquonque }
- function MD5(const Buffer; const Len: integer): string; overload;
- { REnvois la representation du MD5 d'un fichier }
- function MD5FromFile(const FileName : string) : string;
-
- { Renvois une donnée MD5 d'une chaine de caracteres }
- function MD5DataFromString(const S : string) : TMD5Data;
- { Renvois une donnée MD5 d'un buffer quelquonque }
- function MD5DataFromBuffer(const Buffer; const Len: integer) : TMD5Data;
- { Renvois une donnée MD5 d'un fichier }
- function MD5DataFromFile(const FileName: string): TMD5Data;
-
- { Convertis une donnée MD5 vers une chaine de caracteres }
- function MD5DataToStr(const Data : TMD5Data) : string;
- { Convertis une chaine de caracteres representant un MD5 vers une donnée MD5 }
- function MD5StrToMD5Data(const S : String) : TMD5Data;
-
- { Verifie la validitée d'une chaine representant un MD5 }
- function MD5StrCheck(const S : string) : boolean;
- { Compare deux données MD5 }
- function MD5Equal(const A, B: TMD5Data) : Boolean;
- { Compare deux données MD5 grace a CompareMem }
- function MD5MemEqual(const A, B : TMD5Data) : boolean;
-
- { Inverse le sens des données d'une donnée MD5 }
- function MD5Reverse(const Data : TMD5Data) : TMD5Data;
- { Inverse l'ordre des octets Pair et Impair d'une donnée MD5 }
- function MD5OddSwap(const Data : TMD5Data) : TMD5Data;
{ Renvois la representation du MD5 d'une chaine de caracteres }
function MD5(const S : string) : string; overload;
{ Renvois la representation du MD5 d'un buffer quelquonque }
function MD5(const Buffer; const Len: integer): string; overload;
{ REnvois la representation du MD5 d'un fichier }
function MD5FromFile(const FileName : string) : string;
{ Renvois une donnée MD5 d'une chaine de caracteres }
function MD5DataFromString(const S : string) : TMD5Data;
{ Renvois une donnée MD5 d'un buffer quelquonque }
function MD5DataFromBuffer(const Buffer; const Len: integer) : TMD5Data;
{ Renvois une donnée MD5 d'un fichier }
function MD5DataFromFile(const FileName: string): TMD5Data;
{ Convertis une donnée MD5 vers une chaine de caracteres }
function MD5DataToStr(const Data : TMD5Data) : string;
{ Convertis une chaine de caracteres representant un MD5 vers une donnée MD5 }
function MD5StrToMD5Data(const S : String) : TMD5Data;
{ Verifie la validitée d'une chaine representant un MD5 }
function MD5StrCheck(const S : string) : boolean;
{ Compare deux données MD5 }
function MD5Equal(const A, B: TMD5Data) : Boolean;
{ Compare deux données MD5 grace a CompareMem }
function MD5MemEqual(const A, B : TMD5Data) : boolean;
{ Inverse le sens des données d'une donnée MD5 }
function MD5Reverse(const Data : TMD5Data) : TMD5Data;
{ Inverse l'ordre des octets Pair et Impair d'une donnée MD5 }
function MD5OddSwap(const Data : TMD5Data) : TMD5Data;
Conclusion
Aucuns tests de performances n'a été effectué pour le moment, mais les routines sont assé rapide.
Historique
- 30 octobre 2006 11:54:43 :
- Mise a jours de MD5StrCheck qui n'incluait pas la verification de la longeur de la chaine. Remplacement du niveau Debutant par Initié.
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
algo du voyageur de commerce, tsp [ par skunz0311 ]
salut,je cherche des informations sur l'algorithme du voyageur (dans une version simplifiée si possible. ou (encore mieux) le code source de ce dernie
Crackme [ par neowa ]
luvoila , je veut realiser un crackme , qui me permettra de develloper mes capacitée en delphi 6.je voudrait : un algo , qui prendrai la date sous cet
Cryptage MD2 MD4 MD5 [ par MAsterC ]
Bonjour à tous! J'ai Delphi 7 et Borland C++ Builder 6 puis dans le logiciel C++ de Borland dans l'onglet "Indy - Divers" il y a Les composant de
Cryptage MD5 [ par Kruger ]
Bonjour tous le monde, je suis en train de develloper une petite application sous delphi 6 entreprise dont une partie est "protégée" par un mots de p
Algorithme Copier/Coller [ par ToTo 44 ]
Bonjours à tous les développeursJe recherche un algo pour faire du copier/coller.Je travail avec une AdvStringGrid et je veux selectionner plusieurs c
à l'aide, recherche d'algo de traitement d'images [ par czone29 ]
Bonjour,je suis à la recherche d'algorithmes de traitement d'images comme le plus proche voisin, l'interpolation bilinéaire et la convolutio
comprendre un algo delphi pour pouvoir le traduire dans un autre langage [ par trabice ]
Messieurs dames bonjour !!je me permet de venir poster sur le forum delphi car je dispose d'un programme que je dois traduire dans un autre langage.(V
1344 Checksums !! [ par Balblas ]
Salut,Voilà mon problème: j'ai un fichier bin qui contient 1344 packets dont chacun est de taille 1024 Ko et protégé par checksum
Extraire un block qui contien des chaines de caractere [ par Napster ]
salut ,mon souçi dans cette example et d'extraire des block qui se separent par 88AA et pour calculer leur checksum le checksum se calcule comme sui
Calculateur de Block dans une Chaine de caractere [ par Napster ]
salut , j'ai un petit souci a ce calculateur de CRC32 voila un extrait de ma source binaire : 55 AA 01 01 00 17 17 6C 01 73 29 34 21 15 5A 5A00 00 7F
|
Derniers Blogs
[RIA SERVICES] MAITRE - DéTAIL ET DOMAINDATASOURCE[RIA SERVICES] MAITRE - DéTAIL ET DOMAINDATASOURCE par Audrey
A l'occasion d'un projet client, j'ai utilisé RIA Services avec Silverlight 3 (mais cela fonctionne aussi avec la version 4), et je l'ai utilisé pour une interface façon Maitre / Détail. Voici comment j'ai procédé pour arriver à mes fins. Nous allons pren...
Cliquez pour lire la suite de l'article par Audrey CSDL FUNCTIONCSDL FUNCTION par Matthieu MEZIL
Dans mon post précédent , j'ai utilisé une CSDL Function afin de générer une requête SQL avec un DateDiff utilisant la date courante sur la BD à partir d'une requête LINQ. Dans le cadre de ce post , vous avez probablement remarqué que dans le cadre de plu...
Cliquez pour lire la suite de l'article par Matthieu MEZIL LINQ TO ENTITIESLINQ TO ENTITIES par Matthieu MEZIL
Cette semaine je suis à Montréal en tant que speaker sur Entity Framework pour l'évènement confoo . J'en profite pour remercier les organisateurs de cet évènement de m'avoir fait confiance et Access-IT de m'avoir permis d'y participer. En parallèle, j'ai ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL FAIRE APPARAITRE L'ONGLET 'DéVELOPPEUR' DANS OFFICE 2010FAIRE APPARAITRE L'ONGLET 'DéVELOPPEUR' DANS OFFICE 2010 par neodante
La nouvelle interface d'Office 2010 à amener quelques modifications par rapport à celle de 2007. Certes mineures, ces modifications ont fait disparaître la case à cocher de l'onglet 'Développeur' en première page du panneau du 'bouton Office' (dans Office...
Cliquez pour lire la suite de l'article par neodante [ASTUCE] PATCH POUR MICROSOFT FORUMS NNTP BRIDGE V1[ASTUCE] PATCH POUR MICROSOFT FORUMS NNTP BRIDGE V1 par pierre
Si vous avez téléchargé comme moi Microsoft Forums NNTP Bridge V1 avant le 11 mars 2010 (voir [Astuce] Disponibilité de Microsoft Forum NNTP Bridge Version 1.0), un problème de date localisée pour les non anglais était présent. Un patch est disponibl...
Cliquez pour lire la suite de l'article par pierre
Forum
RE : APPLICATIONSRE : APPLICATIONS par aminazineb
Cliquez pour lire la suite par aminazineb
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|