2014-11-16 7 views
0

Как я могу зашифровать/дешифровать строку с помощью алгоритма DES на iOS с помощью Rubymotion?DES шифрование в Rubymotion

Есть очень мало примеров даже на Obj-C, и они вряд ли могут быть переведены на Rubymotion.

+0

Базовый сервер, на который я должен отправить зашифрованные данные, уже использует DES. Проблема в том, что я не могу найти хороший пример, который использует CommonCrypto с DED ни в Rubymotion, ни в Obj-C. – DarkSun

+0

Если вам действительно нужен небезопасный одиночный DES, вы можете использовать DES EDE, где все ключи имеют одинаковое значение. –

+0

Обновление: теперь кажется, что сервер использует 3DES, не так уж плохо, но не предлагается для новой работы. Шифрование 3DES обычно задается EDE, поскольку это последовательность шифрования, последовательность дешифрования будет DED. Apple Common Crypto поддерживает 3DES EDE (который будет DED для дешифрования). – zaph

ответ

0

Мне пришлось установить CommonCrypto pod.

После того как я использовал этот код для шифрования DES с:

string = "string to encrypt" 
data = params.dataUsingEncoding(NSUTF8StringEncoding) 

errorPtr = nil # You can use a real error object here if you need 
encrypted_data  = data.DESEncryptedDataUsingKey(User.first.key, error: errorPtr) 

Также вы можете проверить другие Ивеко методы шифрования и дешифрования в /vendors/Pods/CommonCrypto/NSData+CommonCrypto.m файле.