J'ai un certain nombre de fichiers qui vont vivre sur un serveur. Les utilisateurs ont la possibilité de créer ces types de fichiers (plistes) sur l'appareil qui seront ensuite téléchargés sur ledit serveur (CloudKit). Je voudrais les unique par le contenu (la méthodologie unique devrait être résiliente aux variations dans la date de création). Ma compréhension est que je devrais hacher ces fichiers afin d'obtenir des noms de fichiers uniques pour eux. Mes questions sont:Comment puis-je hacher un fichier sur iOS en utilisant swift 3?
- Est-ce que je comprends bien que ce que je veux est une fonction de hachage?
- Quelle fonction dois-je utiliser (à partir de CommonCrypto).
- Qu'est-ce que j'ai besoin d'un condensé?
- Comment ferais-je cela dans le code? (Je suppose que ceci devrait être haché sur une instance de NSData?). Ma compréhension de googling autour est que j'ai besoin d'un en-tête de pontage mais au-delà que l'utilisation de CommonCrypto me déroute. S'il y a une façon plus simple d'utiliser des API de première partie (Apple), je suis tout ouïe (je veux éviter d'utiliser autant que possible le code d'un tiers).
Merci beaucoup!
Différentes méthodes de hachage ici: http://stackoverflow.com/questions/25388747/sha256-in-swift. –
Grand avertissement. Les fonctions de hachage ne génèrent pas d'identifiants uniques. La collision est possible et vous devriez y faire face. – Sulthan
@Sulthan Bien que cela soit vrai, les hachages cryptographiques sont utilisés en toute sécurité pour identifier les fichiers, voir Git. – zaph