2016-07-04 3 views
0

RNCryptorとfirebaseを一緒に使うことは可能ですか?あなたはNSDataをfirebaseに格納することはできません。そして、RNCryptorは何を使用していますか?RNCryptorとFirebase togeatherの使い方 - Swift&Objective C

バックエンドのユーザーデータを暗号化するには他にどのような方法がありますか?

答えて

2

答えははいです! Firebaseで使用することができます。

私たちはプロジェクトにRNCryptorを統合し、それを使ってFirebaseに格納された私的なデータを暗号化して解読しています。 ObjC

NSString *plainText = @"Hello!" 
NSData *data = [plainText dataUsingEncoding:NSUTF8StringEncoding]; 
NSError *error; 
NSData *encryptedData = [RNEncryptor encryptData:data 
            withSettings:kRNCryptorAES256Settings 
             password:aKey 
              error:&error]; 

NSString *stringFromEncryptedData = [encryptedData 
     base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength]; 

暗号化ここにあるaKeyは、あなたのプレーンテキスト文字列を暗号化/復号化するために使用する秘密の文字列パターンであることにObjC

で復号化パターン
NSData *dataFromEncryptedString = [[NSData alloc] 
      initWithBase64EncodedString:encryptedString 
           options:NSDataBase64DecodingIgnoreUnknownCharacters]; 
NSError *error; 
NSData *decryptedData = [RNDecryptor decryptData:dataFromEncryptedString 
            withPassword:aKey 
              error:&error]; 

NSString *plainText = [[NSString alloc] initWithData:decryptedData 
              encoding:NSUTF8StringEncoding]; 

注意です。ここで

+0

伝説です!偉大な作品は、文字のランダムな混乱として完全にfirebaseに保存 – Eli

2

は、私の暗号化機能は、迅速

func EncryptData(text: String) -> String { 
    let Data: NSData = String(text).dataUsingEncoding(NSUTF8StringEncoding)! 
    let Password = "Secret password" 
    let EncryptedText = RNCryptor.encryptData(Data, password: "Secret password") 

    return EncryptedText.base64EncodedStringWithOptions(.Encoding64CharacterLineLength) 
} 

にあり、ここで私の復号化機能は

func DecryptData(text: String) -> String { 
    let decodedData = NSData(base64EncodedString: text, options: .IgnoreUnknownCharacters) 
    do { 
     let originalData = try RNCryptor.decryptData(decodedData!, password: MasterKey) 
     return String(data: originalData, encoding: NSUTF8StringEncoding)! 
    } catch { 
     return "Data Error" 
    } 
} 
+0

甘い!ニースと清潔。 – Jay

関連する問題