• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Data encryption
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Data encryption


  • Subject: Re: Data encryption
  • From: Jens Alfke <email@hidden>
  • Date: Wed, 06 Jun 2012 10:12:34 -0700

On Jun 6, 2012, at 9:51 AM, Charlie Dickman wrote:

> Can someone direct me to some documentation on how to do data encryption in Cocoa/Objective C/C?

That's a pretty broad question! What type of encryption — symmetric or asymmetric (aka public key)? Any particular algorithm? Are you implementing the decryption as well or is that done by an existing implementation? How is the data going to be stored/transmitted and what strength of security do you need?

Maybe it's best if you describe at a high level what you need to accomplish.

I could point you to documentation, but you're not going to like it :/ In general this is in the Security framework, although some stuff is in CommonCrypto. The APIs are complicated, badly designed, and have changed over time; and the documentation is quite inadequate. I have found this to be the single most frustrating area to work on in Mac OS or (especially) iOS, worse even than audio. Be warned: Here Be Dragons.

I do have a framework called MYCrypto* I wrote a few years ago that tries to put a friendly face on this stuff. It's still useable, but in 10.7 Apple decided to suddenly deprecate the standard APIs I was using in favor of newer APIs that I still haven't completely figured out :-p so MYCrypto needs either the 10.6 SDK or deprecation warnings disabled.

Also, if you are going to do anything serious with security (i.e. anything that people other than you are going to rely on), you really need to learn some fundamentals. I highly recommend the book "Practical Cryptography" by Fergusen & Schneier. It's very easy to get things wrong if you don't know what you're doing, and unlike typical bugs that will be triggered or not by random chance, with security you have very smart and motivated people actively trying to find and exploit your bugs.

—Jens

* https://github.com/snej/MYCrypto
_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


  • Follow-Ups:
    • Re: Data encryption
      • From: Charlie Dickman <email@hidden>
References: 
 >Data encryption (From: Charlie Dickman <email@hidden>)

  • Prev by Date: Re: Data encryption
  • Next by Date: Re: NSSavePanel runModal isn't working in sandbox?
  • Previous by thread: Re: Data encryption
  • Next by thread: Re: Data encryption
  • Index(es):
    • Date
    • Thread