2010-07-13 4 views
1

Je dois envoyer des données cryptées à un serveur distant à partir d'Objective-C à l'aide d'un service Web. Quelle méthode de cryptage dois-je utiliser? Il devrait supporter à la fois Objective-C et le serveur distant. CommonCryptor.h est l'en-tête pour le cryptage C sur iPhone.Cryptage pour Objective-C

+0

Ecrivez-vous à la fois le serveur et le client? – Yuji

Répondre

2

Il prend en charge les algorithmes suivants:

kCCAlgorithmAES128, 
kCCAlgorithmDES,   
kCCAlgorithm3DES,  
kCCAlgorithmCAST,  
kCCAlgorithmRC4  

Si vous êtes sur Mac OS vous avez CommonCrypto ainsi que toutes les options OpenSSL. Je ne connais pas de wrapper Objective-C pour ces classes, mais CommonCrypto est assez simple au fur et à mesure du chiffrement.

Ces algorithmes sont tous assez courants pour que vous n'ayez aucune difficulté à trouver une implémentation, quelle que soit la plate-forme du serveur. Si vous n'avez aucune raison impérieuse de choisir un autre algorithme, AES est un choix raisonnable.

Edit:

Une réponse à cette similar question a suggéré SSCrypto comme une enveloppe Objective-C pour OpenSSL.

+0

Merci réponse immédiate. est-il possible de décrypter dans le serveur lorsque le nom d'utilisateur et le mot de passe cryptés sont envoyés par iphone/obj-c – sri

+0

Avec ces algorithmes, le client et le serveur doivent partager une clé de cryptage. Si vous souhaitez seulement chiffrer dans le client et décrypter seulement sur le serveur, vous avez besoin du cryptage de clé publique comme RSA. – drawnonward