Marino Faggiana 7 лет назад
Родитель
Сommit
62eff78513

+ 7 - 7
iOSClient/Security/NCEndToEndEncryption.m

@@ -455,14 +455,12 @@ cleanup:
     NSData *tagData;
     
     // Plain
-    //NSData *plainData = [[NSData alloc] initWithBase64EncodedString:encrypted options:0];
     NSData *plainData = [encrypted dataUsingEncoding:NSUTF8StringEncoding];
-
-
+    
     // Key
-    NSData *keyData = [[NSData alloc] initWithBase64EncodedString:key options:0];
+    NSData *keyData = [self base64DecodeString:key];
 
-    //IV
+    // IV
     NSData *ivData = [self generateIV:AES_IVEC_LENGTH];
     
     BOOL result = [self encryptData:plainData cipherData:&cipherData keyData:keyData keyLen:AES_KEY_128_LENGTH ivData:ivData tagData:&tagData];
@@ -963,7 +961,8 @@ cleanup:
     return [NSString stringWithString:hexString];
 }
 
-- (NSString *)base64Encode:(NSData *)input
+/*
+- (NSData *)base64Encode:(NSData *)input
 {
     void *bytes;
 
@@ -977,8 +976,9 @@ cleanup:
     
     BIO_free_all(buffer);
     
-    return string;
+    return [string dataUsingEncoding:NSUTF8StringEncoding];
 }
+*/
 
 - (NSString *)base64DecodeData:(NSData *)input
 {

+ 5 - 5
iOSClient/Security/NCEndToEndMetadata.swift

@@ -75,11 +75,11 @@ class NCEndToEndMetadata : NSObject  {
         var version = 1
         
         // Generate Key
-        //let key = NCEndToEndEncryption.sharedManager().generateKey(16).base64EncodedString() // AES_KEY_128_LENGTH
-        var key = "LPOJLSgnHTuI9yKQVpaqSA=="
+        //let keyGenerated = NCEndToEndEncryption.sharedManager().generateKey(16).base64EncodedString() // AES_KEY_128_LENGTH
+        let keyGenerated = "LPOJLSgnHTuI9yKQVpaqSA=="
         
-        // Double Encode64 for Android compatibility
-        key = (key.data(using: .utf8)?.base64EncodedString())!
+        // Double Encode64 for Android compatibility OMG
+        let key = (keyGenerated.data(using: .utf8)?.base64EncodedString())!
         
         guard let metadataKeyEncryptedData = NCEndToEndEncryption.sharedManager().encryptAsymmetricString(key, publicKey: nil, privateKey: privateKey) else {
             return nil
@@ -97,7 +97,7 @@ class NCEndToEndMetadata : NSObject  {
                 let encryptedJsonData = try jsonEncoder.encode(encrypted)
                 let encryptedJsonString = String(data: encryptedJsonData, encoding: .utf8)
                 
-                guard let encryptedEncryptedJson = NCEndToEndEncryption.sharedManager().encryptEncryptedJson(encryptedJsonString, key: metadataKeyBase64) else {
+                guard let encryptedEncryptedJson = NCEndToEndEncryption.sharedManager().encryptEncryptedJson(encryptedJsonString, key: key) else {
                     print("Serious internal error in encoding metadata")
                     return nil
                 }