テストしたことはありませんが、技術的にはこれでうまくいくはずです。どちらの方法も同じアドホック形式を使用しています。
私の認証済み暗号化の例を使用して暗号化します。
//use your secret data you want to encrypt instead.
String secretMessage = "Message";
var rnCryptorHeader = new Byte[]{
2, //RNCryptor Format version 2
0 //RNCryptor Uses password
};
//encryptedString is base64 encoded
var encryptedString = AESThenHMAC.SimpleEncryptWithPassword(secretMessage,
password:"1234567891011",
nonSecretPayload:rnCryptorHeader);
次に、IOS 用のRNCryptorとNSData+Base64を使用して復号化します。
//This is the encrypted data passed from .net
NSString *encryptedString = @"AgE8C9E7gsfyOAmSotIOgyLQ0O6mdcuMXXjN/iZa3azym4KVWZAkfykIP6mqMt/qkpfftdB3XQhMkoxtQEM+rA0iHxOvZiNlmA2KJtg6BOnmlg==";
NSData *encryptedData = [NSData dataFromBase64String: encryptedString];
NSError *error;
NSData *decryptedData = [RNDecryptor decryptData:encryptedData
withPassword:@"1234567891011"
error:&error];
NSString *secretMessage = [[[NSString alloc] initWithData:decryptedData
encoding:NSUTF8StringEncoding] autorelease];
文字列を扱っておらず、バイトを直接扱っているため、これが機能していることを確認したら、この object-c の例とリンクされた c# の例から Base64 および utf8 のエンコード/デコードを削除してください。