Jens,

Thanks for your reply.

I have an application on OS X, not IOS, that contains some sensitive data that 
I want to withhold from those not licensed to use it. I wish to use RSA 
encryption/decryption in block mode (I think). I want to encrypt both the 
public and the private key and I think I want to use (at least) 128 bit 
techniques although 64 bit would probably do.

I intend to store the encrypted information in an NSDictionary as NSData and 
keep it in the application bundle. I plan to re-encrypt the keys after each 
use. I have code that does the archiving but I need the encryption/decryption 
methods. I have tried packages that are available on the internet (AquaPrime, 
SSCrypto) but they are difficult to manage and require a lot of busy work to 
keep up to date.

On Jun 6, 2012, at 1:12 PM, Jens Alfke wrote:

> 
> 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

Charlie Dickman
3tothe...@comcast.net



_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to