This is what I am trying to achieve from some days now:

Approach #1:

~ Android End ~
1. Generated public and private key at an android device (using an
openssl wrapper)
2. Got modulus and exponent from the generated public key

~ iOS End ~
3. Generated public key from modulus and exponent, at ios end, using
code specified in this link:
http://stackoverflow.com/a/10643962/217586
4. Converted some sample string to an object of NSData using
NSUTF8StringEncoding
5. Used - wrapSymmetricKey:keyRef: method defined in SecKeyWrapper
class (CryptoExercise example) for encryption, and passed key obtained
from step 3 and data to encrypt obtained from step 4 to it
6. Converted NSData (encrypted data) obtained in previous step to
base64encoded string, shared the same to android guy

~ Android End ~
7. Tried to decrypt the base64encoded string, using related private key

Problem: getting error - too much data for RSA block

Approach #2: (Got to know from this link that -
https://github.com/superwills/iOSRSAPublicKeyEncryption, we are not
supposed to load public keys in iOS from anything other than a
certificate, so tried a different approach)

~ Terminal End ~
1. Generated certificate using openssl commands specified in this url:
http://stackoverflow.com/a/17295321/217586

~ iOS End ~
2. Obtained public key as specified in above url
3. Used below code to encrypt the data:

SecKeyWrapper *secKeyWrapper = [SecKeyWrapper sharedWrapper];
SecKeyRef obtainedPublicKey = [secKeyWrapper
getPublicKeyRefFromDerCertificate:kCertificatePath];
NSData *dataToBeEncrypted = [kStringToBeEncrypted
dataUsingEncoding:NSUTF8StringEncoding];
NSData *encryptedText = [secKeyWrapper
wrapSymmetricKey:dataToBeEncrypted keyRef:obtainedPublicKey];

4. Converted NSData to base64encoded string

~ Terminal End ~
5. Used below command to convert it back to original string:
echo <base 64 encoded string obtained from step 4> | openssl rsautl
-decrypt -inkey rsaPrivate.pem

Problem: getting error - rsa routines:RSA_EAY_PRIVATE_DECRYPT:data
greater than mod
len:/SourceCache/OpenSSL098/OpenSSL098-47.1/src/crypto/rsa/rsa_eay.c

Any suggestions?

On Fri, May 16, 2014 at 10:40 PM, ChanMaxthon <xcvi...@me.com> wrote:
> Keychain is okay, I just cannot bear the crypto libraries.
>
> Sent from my iPhone
>
>> On May 17, 2014, at 1:08 AM, Jens Alfke <j...@mooseyard.com> wrote:
>>
>>
>>> On May 16, 2014, at 12:37 AM, ChanMaxthon <xcvi...@me.com> wrote:
>>>
>>> I got fed up by Apple already and found a little BSD-licensed CXX crypto 
>>> library called Botan. I will either wrap it in Objective-C or rewrite it 
>>> for my later projects.
>>
>> I’m cautious of ‘alternative’ crypto implementations; there’s a lot of 
>> complex math and logic involved that’s easy to get wrong. I want the 
>> implementation I use to be as battle-tested as possible.
>>
>> Also, the Keychain is a valuable place to store secrets that, being built 
>> into the OS, offers better security than anything you can do on your own or 
>> with 3rd party libraries. There’s not really any other good solution for 
>> storing keys, short of making the user type in a strong passphrase every 
>> time they launch the app. Too bad the Keychain APIs are the worst part of 
>> the Security framework :(
>>
>> —Jens
> _______________________________________________
>
> 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/devarshi.bluechip%40gmail.com
>
> This email sent to devarshi.bluec...@gmail.com



-- 
Thanks,

Devarshi

_______________________________________________

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