浏览代码

encoderMetadata

Marino Faggiana 7 年之前
父节点
当前提交
eb50c7f3ec
共有 2 个文件被更改,包括 6 次插入11 次删除
  1. 4 4
      iOSClient/Security/NCEndToEndEncryption.m
  2. 2 7
      iOSClient/Security/NCEndToEndMetadata.swift

+ 4 - 4
iOSClient/Security/NCEndToEndEncryption.m

@@ -454,6 +454,7 @@ cleanup:
     NSMutableData *cipherData;
     NSData *tagData;
     
+    // Plain
     NSData *plainData = [[NSData alloc] initWithBase64EncodedString:encrypted options:0];
 
     // Key
@@ -466,11 +467,10 @@ cleanup:
     
     if (cipherData != nil && result) {
         
-        /* ENCODE 64                                                     */
-        NSString *metadata = [cipherData base64EncodedStringWithOptions:0];
-        /* --------------------------------------------------------------*/
+        NSString *cipherBase64 = [cipherData base64EncodedStringWithOptions:0];
+        NSString *ivBase64 = [ivData base64EncodedStringWithOptions:0];
         
-        return metadata;
+        return [NSString stringWithFormat:@"%@%@%@", cipherBase64, IV_DELIMITER_ENCODED, ivBase64];
     }
     
     return nil;

+ 2 - 7
iOSClient/Security/NCEndToEndMetadata.swift

@@ -91,17 +91,12 @@ class NCEndToEndMetadata : NSObject  {
                 let encryptedJsonData = try jsonEncoder.encode(encrypted)
                 let encryptedJsonString = String(data: encryptedJsonData, encoding: .utf8)
                 
-                //NCEndToEndEncryption.sharedManager().decryptmetadata
-                
-                
-                guard let encryptedEncryptionData = NCEndToEndEncryption.sharedManager().encryptAsymmetricString(encryptedJsonString, publicKey: nil, privateKey: privateKey) else {
+                guard let encryptedEncryptedJson = NCEndToEndEncryption.sharedManager().encryptEncryptedJson(encryptedJsonString, key: publicKeyBase64) else {
                     print("Serious internal error in encoding metadata")
                     return nil
                 }
                 
-                let encryptedEncryptionBase64 = encryptedEncryptionData.base64EncodedString()
-                
-                let e2eMetadataFilesKey = e2eMetadata.filesCodable(initializationVector: recordE2eEncryption.initializationVector, authenticationTag: recordE2eEncryption.authenticationTag, metadataKey: 0, encrypted: encryptedEncryptionBase64)
+                let e2eMetadataFilesKey = e2eMetadata.filesCodable(initializationVector: recordE2eEncryption.initializationVector, authenticationTag: recordE2eEncryption.authenticationTag, metadataKey: 0, encrypted: encryptedEncryptedJson)
                 
                 files.updateValue(e2eMetadataFilesKey, forKey: recordE2eEncryption.fileNameIdentifier)