Algorithme MD5 en Objective-C
Comment calculer le MD5 de l'objectif C ?
- Ma conjecture est que vous pouvez assez facilement le port d'une routine C qui calcule le MD5. Et ils sont faciles à trouver.
Vous devez vous connecter pour publier un commentaire.
md5 est disponible sur l'iPhone et peut être ajouté comme un plus pour ie
NSString
etNSData
comme ci-dessous.MyAdditions.h
MyAdditions.m
MODIFIER
Ajouté NSData md5 parce que j'en avais besoin moi-même et de la pensée, c'est un bon endroit pour enregistrer ce petit extrait...
Ces méthodes sont vérifiés à l'aide du NIST MD5 de vecteurs de test dans
http://www.nsrl.nist.gov/testdata/
strlen
les rendements de l'avertissement: "la conversion Implicite perd entier précision: 'unsigned long" à "CC_LONG' (aka "unsigned int")"Vous pouvez utiliser le haut-Commune de la librairie de Cryptographie à le faire.
N'oubliez pas d'importer:
et puis:
self
avant l'exécution; si l'auto est nul, il va se bloquer.(int)
avantstrlen
par exemple(int)strlen
...Si la performance est importante, vous pouvez utiliser cette version optimisée.
Il est environ 5 fois plus vite que celles avec
stringWithFormat
ouNSMutableString
.C'est une catégorie de NSString.
Bien puisque les gens ont demandé pour un fichier de flux version. J'ai modifié un joli petit extrait fait par Joel Lopes Da Silva, qui travaille avec MD5, SHA1 et SHA512 ET c'est à l'aide de flux. Sa fait pour iOS, mais fonctionne seulement avec un minimum de modifications sur OSX aswell (suppression de la ALAssetRepresentation méthode). Il peut faire des sommes de contrôle des fichiers de donné un chemin d'accès ou ALAssets (à l'aide de ALAssetRepresentation). C'est de segmentation des données en petits paquets impact de mémoire minimale quelle que soit la taille du fichier/atout de taille.
Il est actuellement situé sur github ici: https://github.com/leetal/FileHash
Aucune raison de ne pas utiliser la Pomme de mise en œuvre: https://developer.apple.com/library/mac/documentation/Security/Conceptual/cryptoservices/GeneralPurposeCrypto/GeneralPurposeCrypto.html#//apple_ref/doc/uid/TP40011172-CH9-SW1
Recherche pour les Services de Guide sur le site des développeurs Apple.