Marino Faggiana 7 жил өмнө
parent
commit
1840af4ba4

+ 0 - 2
iOSClient/AppDelegate.h

@@ -40,7 +40,6 @@
 #import "CCFavorites.h"
 #import "CCFavorites.h"
 
 
 @class CCLoginWeb;
 @class CCLoginWeb;
-@class NCEntoToEndInterface;
 
 
 @interface AppDelegate : UIResponder <UIApplicationDelegate, BKPasscodeLockScreenManagerDelegate, BKPasscodeViewControllerDelegate, TWMessageBarStyleSheet, CCNetworkingDelegate>
 @interface AppDelegate : UIResponder <UIApplicationDelegate, BKPasscodeLockScreenManagerDelegate, BKPasscodeViewControllerDelegate, TWMessageBarStyleSheet, CCNetworkingDelegate>
 
 
@@ -119,7 +118,6 @@
 @property (nonatomic, retain) CCTransfers *activeTransfers;
 @property (nonatomic, retain) CCTransfers *activeTransfers;
 @property (nonatomic, retain) CCLogin *activeLogin;
 @property (nonatomic, retain) CCLogin *activeLogin;
 @property (nonatomic, retain) CCLoginWeb *activeLoginWeb;
 @property (nonatomic, retain) CCLoginWeb *activeLoginWeb;
-@property (nonatomic, strong) NCEntoToEndInterface *endToEndInterface;
 
 
 @property (nonatomic, strong) NSMutableDictionary *listMainVC;
 @property (nonatomic, strong) NSMutableDictionary *listMainVC;
 @property (nonatomic, strong) NSMutableDictionary *listProgressMetadata;
 @property (nonatomic, strong) NSMutableDictionary *listProgressMetadata;

+ 0 - 3
iOSClient/AppDelegate.m

@@ -217,9 +217,6 @@
     UIUserNotificationSettings *notificationSettings = [UIUserNotificationSettings settingsForTypes:types categories:nil];
     UIUserNotificationSettings *notificationSettings = [UIUserNotificationSettings settingsForTypes:types categories:nil];
     [application registerUserNotificationSettings:notificationSettings];
     [application registerUserNotificationSettings:notificationSettings];
     
     
-    // E2E Encryption
-    self.endToEndInterface = [NCEntoToEndInterface new];
-    
     // Fabric
     // Fabric
     [Fabric with:@[[Crashlytics class]]];
     [Fabric with:@[[Crashlytics class]]];
     [self logUser];
     [self logUser];

+ 19 - 13
iOSClient/Main/CCMain.m

@@ -4160,13 +4160,16 @@
                                     handler:^(AHKActionSheet *as) {
                                     handler:^(AHKActionSheet *as) {
                                         
                                         
                                         dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
                                         dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
-                                            
-                                            if ([appDelegate.endToEndInterface markEndToEndFolderEncrypted:appDelegate.activeUrl fileID:_metadata.fileID serverUrl:[NSString stringWithFormat:@"%@/%@", self.serverUrl, _metadata.fileName]]) {
-                                               dispatch_async(dispatch_get_main_queue(), ^{
-                                                   [self readFolder:self.serverUrl];
-                                               });
-                                            }
-                                            
+                                            NSString *token;
+                                            NSError *error = [[NCNetworkingSync sharedManager] markEndToEndFolderEncrypted:appDelegate.activeUser userID:appDelegate.activeUserID password:appDelegate.activePassword url:appDelegate.activeUrl fileID:_metadata.fileID serverUrl:[NSString stringWithFormat:@"%@/%@", self.serverUrl, _metadata.fileName] token:&token];
+                                            dispatch_async(dispatch_get_main_queue(), ^{
+                                                if (error) {
+                                                    [appDelegate messageNotification:@"_error_" description:[NSString stringWithFormat:@"%@ %d", error.localizedDescription, (int)error.code] visible:YES delay:k_dismissAfterSecond type:TWMessageBarMessageTypeError errorCode:0];
+                                                } else {
+                                                    [[NCManageDatabase sharedInstance] deleteE2eEncryptionWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND serverUrl = %@", appDelegate.activeAccount, [NSString stringWithFormat:@"%@/%@", self.serverUrl, _metadata.fileName]]];
+                                                    [self readFolder:self.serverUrl];
+                                                }
+                                            });
                                         });
                                         });
                                     }];
                                     }];
         }
         }
@@ -4181,13 +4184,16 @@
                                     handler:^(AHKActionSheet *as) {
                                     handler:^(AHKActionSheet *as) {
                                         
                                         
                                         dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
                                         dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
-                                            
-                                            if ([appDelegate.endToEndInterface deletemarkEndToEndFolderEncrypted:appDelegate.activeUrl fileID:_metadata.fileID serverUrl:[NSString stringWithFormat:@"%@/%@", self.serverUrl, _metadata.fileName]]) {
-                                                dispatch_async(dispatch_get_main_queue(), ^{
+                                            NSString *token;
+                                            NSError *error = [[NCNetworkingSync sharedManager] deletemarkEndToEndFolderEncrypted:appDelegate.activeUser userID:appDelegate.activeUserID password:appDelegate.activePassword url:appDelegate.activeUrl fileID:_metadata.fileID serverUrl:[NSString stringWithFormat:@"%@/%@", self.serverUrl, _metadata.fileName] token:&token];
+                                            dispatch_async(dispatch_get_main_queue(), ^{
+                                                if (error) {
+                                                    [appDelegate messageNotification:@"_error_" description:[NSString stringWithFormat:@"%@ %d", error.localizedDescription, (int)error.code] visible:YES delay:k_dismissAfterSecond type:TWMessageBarMessageTypeError errorCode:0];
+                                                } else {
+                                                    [[NCManageDatabase sharedInstance] deleteE2eEncryptionWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND serverUrl = %@", appDelegate.activeAccount, [NSString stringWithFormat:@"%@/%@", self.serverUrl, _metadata.fileName]]];
                                                     [self readFolder:self.serverUrl];
                                                     [self readFolder:self.serverUrl];
-                                                });
-                                            }
-                                            
+                                                }
+                                            });
                                         });
                                         });
                                     }];
                                     }];
         }
         }

+ 0 - 361
iOSClient/Security/NCEntoToEndInterface.swift

@@ -1,361 +0,0 @@
-//
-//  NCEntoToEndInterface.swift
-//  Nextcloud
-//
-//  Created by Marino Faggiana on 03/04/17.
-//  Copyright © 2017 TWS. All rights reserved.
-//
-//  Author Marino Faggiana <m.faggiana@twsweb.it>
-//
-//  This program is free software: you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation, either version 3 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-//
-
-import Foundation
-
-class NCEntoToEndInterface : NSObject, OCNetworkingDelegate  {
-
-    let appDelegate = UIApplication.shared.delegate as! AppDelegate
-    
-    override init() {
-    }
-    
-    // --------------------------------------------------------------------------------------------
-    // MARK: Initialize
-    // --------------------------------------------------------------------------------------------
-    
-    @objc func initEndToEndEncryption() {
-        
-        // Clear all keys 
-        CCUtility.clearAllKeysEnd(toEnd: appDelegate.activeAccount)
-        
-        let metadataNet: CCMetadataNet = CCMetadataNet.init(account: appDelegate.activeAccount)
-        
-        metadataNet.action = actionGetEndToEndPublicKeys
-        appDelegate.addNetworkingOperationQueue(appDelegate.netQueue, delegate: self, metadataNet: metadataNet)
-    }
-    
-    func getPrivateKeyCipher() {
-        
-        let metadataNet: CCMetadataNet = CCMetadataNet.init(account: appDelegate.activeAccount)
-        
-        metadataNet.action = actionGetEndToEndPrivateKeyCipher
-        appDelegate.addNetworkingOperationQueue(appDelegate.netQueue, delegate: self, metadataNet: metadataNet)
-    }
-    
-    func getPublicKeyServer() {
-        
-        let metadataNet: CCMetadataNet = CCMetadataNet.init(account: appDelegate.activeAccount)
-        
-        metadataNet.action = actionGetEndToEndServerPublicKey
-        appDelegate.addNetworkingOperationQueue(appDelegate.netQueue, delegate: self, metadataNet: metadataNet)
-    }
-    
-    // --------------------------------------------------------------------------------------------
-    // MARK: Manage PublicKey
-    // --------------------------------------------------------------------------------------------
-    
-    func getEndToEndPublicKeysSuccess(_ metadataNet: CCMetadataNet!) {
-    
-        CCUtility.setEndToEndPublicKey(appDelegate.activeAccount, publicKey: metadataNet.key)
-        
-        // Request PrivateKey chiper to Server
-        getPrivateKeyCipher()
-    }
-    
-    func getEndToEndPublicKeysFailure(_ metadataNet: CCMetadataNet!, message: String!, errorCode: Int) {
-        
-        switch errorCode {
-            
-        case 400:
-            appDelegate.messageNotification("E2E get publicKey", description: "bad request: unpredictable internal error", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        case 404:
-            guard let csr = NCEndToEndEncryption.sharedManager().createCSR(appDelegate.activeUserID, directoryUser: appDelegate.directoryUser) else {
-                
-                appDelegate.messageNotification("E2E Csr", description: "Error to create Csr", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-                
-                return
-            }
-            
-            let metadataNet: CCMetadataNet = CCMetadataNet.init(account: appDelegate.activeAccount)
-            
-            metadataNet.action = actionSignEndToEndPublicKey;
-            metadataNet.key = csr;
-            
-            appDelegate.addNetworkingOperationQueue(appDelegate.netQueue, delegate: self, metadataNet: metadataNet)
-            
-        case 409:
-            appDelegate.messageNotification("E2E get publicKey", description: "forbidden: the user can't access the public keys", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        default:
-            appDelegate.messageNotification("E2E get publicKey", description: message as String!, visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-        }
-    }
-
-    func signEnd(toEndPublicKeySuccess metadataNet: CCMetadataNet!) {
-
-        CCUtility.setEndToEndPublicKey(appDelegate.activeAccount, publicKey: metadataNet.key)
-        
-        // Request PrivateKey chiper to Server
-        getPrivateKeyCipher()
-    }
-
-    func signEnd(toEndPublicKeyFailure metadataNet: CCMetadataNet!, message: String!, errorCode: Int) {
-        
-        switch errorCode {
-            
-        case 400:
-            appDelegate.messageNotification("E2E sign publicKey", description: "bad request: unpredictable internal error", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        case 409:
-            appDelegate.messageNotification("E2E sign publicKey", description: "conflict: a public key for the user already exists", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        default:
-            appDelegate.messageNotification("E2E sign publicKey", description: message as String!, visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-        }
-    }
-    
-    func deleteEnd(toEndPublicKeySuccess metadataNet: CCMetadataNet!) {
-        appDelegate.messageNotification("E2E delete publicKey", description: "Success", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.success, errorCode: 0)
-    }
-    
-    func deleteEnd(toEndPublicKeyFailure metadataNet: CCMetadataNet!, message: String!, errorCode: Int) {
-        appDelegate.messageNotification("E2E delete publicKey", description: message, visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-    }
-    
-    // --------------------------------------------------------------------------------------------
-    // MARK: Manage PrivateKey
-    // --------------------------------------------------------------------------------------------
-    
-    func getEndToEndPrivateKeyCipherSuccess(_ metadataNet: CCMetadataNet!) {
-        
-        // request Passphrase
-        
-        var passphraseTextField: UITextField?
-                
-        let alertController = UIAlertController(title: NSLocalizedString("_e2e_passphrase_request_title_", comment: ""), message: NSLocalizedString("_e2e_passphrase_request_message_", comment: ""), preferredStyle: .alert)
-        
-        //TEST
-        /*
-        if let dir = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first {
-            
-            let fileURL = dir.appendingPathComponent("privatekey.txt")
-            
-            //writing
-            do {
-                try metadataNet.key.write(to: fileURL, atomically: false, encoding: .utf8)
-            }
-            catch {/* error handling here */}
-        }
-        */
-        //
-        
-        let ok = UIAlertAction(title: "OK", style: .default, handler: { (action) -> Void in
-                            
-            let passphrase = passphraseTextField?.text
-            
-            let publicKey = CCUtility.getEndToEndPublicKey(self.appDelegate.activeAccount)
-
-            guard let privateKey = (NCEndToEndEncryption.sharedManager().decryptPrivateKey(metadataNet.key, passphrase: passphrase, publicKey: publicKey)) else {
-                
-                self.appDelegate.messageNotification("E2E decrypt privateKey", description: "Serious internal error to decrypt Private Key", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: 0)
-                
-                return
-            }
-            
-            // privateKey
-            print(privateKey)
-            
-            // Save to keychain
-            CCUtility.setEndToEndPrivateKey(self.appDelegate.activeAccount, privateKey: privateKey)
-            CCUtility.setEndToEndPassphrase(self.appDelegate.activeAccount, passphrase:passphrase)
-            
-            // request publicKey Server()
-            self.getPublicKeyServer()
-        })
-        
-        let cancel = UIAlertAction(title: "Cancel", style: .cancel) { (action) -> Void in
-        }
-        
-        alertController.addAction(ok)
-        alertController.addAction(cancel)
-        alertController.addTextField { (textField) -> Void in
-            passphraseTextField = textField
-            passphraseTextField?.placeholder = "Enter passphrase (12 words)"
-        }
-        
-        appDelegate.activeMain.present(alertController, animated: true)
-    }
-    
-    func getEndToEndPrivateKeyCipherFailure(_ metadataNet: CCMetadataNet!, message: String!, errorCode: Int) {
-        
-        switch errorCode {
-            
-        case 400:
-            appDelegate.messageNotification("E2E get privateKey", description: "bad request: unpredictable internal error", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        case 404:
-            // message
-            let e2ePassphrase = NYMnemonic.generateString(128, language: "english")
-            let message = "\n" + NSLocalizedString("_e2e_settings_view_passphrase_", comment: "") + "\n\n" + e2ePassphrase!
-            
-            let alertController = UIAlertController(title: NSLocalizedString("_e2e_settings_title_", comment: ""), message: NSLocalizedString(message, comment: ""), preferredStyle: .alert)
-            
-            let OKAction = UIAlertAction(title: NSLocalizedString("_ok_", comment: ""), style: .default) { action in
-                
-                var privateKey: NSString?
-                
-                guard let privateKeyChiper = NCEndToEndEncryption.sharedManager().encryptPrivateKey(self.appDelegate.activeUserID, directoryUser: self.appDelegate.directoryUser, passphrase: e2ePassphrase, privateKey: &privateKey) else {
-                    
-                    self.appDelegate.messageNotification("E2E privateKey", description: "Serious internal error to create PrivateKey chiper", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-                    
-                    return
-                }
-                
-                let metadataNet: CCMetadataNet = CCMetadataNet.init(account: self.appDelegate.activeAccount)
-
-                metadataNet.action = actionStoreEndToEndPrivateKeyCipher
-                metadataNet.key = privateKey! as String
-                metadataNet.keyCipher = privateKeyChiper
-                metadataNet.password = e2ePassphrase
-                    
-                self.appDelegate.addNetworkingOperationQueue(self.appDelegate.netQueue, delegate: self, metadataNet: metadataNet)
-            }
-            
-            alertController.addAction(OKAction)
-            appDelegate.activeMain.present(alertController, animated: true)
-            
-        case 409:
-            appDelegate.messageNotification("E2E get privateKey", description: "forbidden: the user can't access the private key", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        default:
-            appDelegate.messageNotification("E2E get privateKey", description: message as String!, visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-        }
-    }
-    
-    func storeEnd(toEndPrivateKeyCipherSuccess metadataNet: CCMetadataNet!) {
-        
-        CCUtility.setEndToEndPrivateKey(appDelegate.activeAccount, privateKey: metadataNet.key)
-        CCUtility.setEndToEndPassphrase(appDelegate.activeAccount, passphrase:metadataNet.password)
-        
-        // request publicKey Server()
-        self.getPublicKeyServer()
-    }
-    
-    func storeEnd(toEndPrivateKeyCipherFailure metadataNet: CCMetadataNet!, message: String!, errorCode: Int) {
-        
-        switch errorCode {
-            
-        case 400:
-            appDelegate.messageNotification("E2E store privateKey", description: "bad request: unpredictable internal error", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        case 409:
-            appDelegate.messageNotification("E2E store privateKey", description: "conflict: a private key for the user already exists", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-        
-        default:
-            appDelegate.messageNotification("E2E store privateKey", description: message as String!, visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-        }
-    }
-    
-    func deleteEnd(toEndPrivateKeySuccess metadataNet: CCMetadataNet!) {
-        appDelegate.messageNotification("E2E delete privateKey", description: "Success", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.success, errorCode: 0)
-    }
-    
-    func deleteEnd(toEndPrivateKeyFailure metadataNet: CCMetadataNet!, message: String!, errorCode: Int) {
-        appDelegate.messageNotification("E2E delete privateKey", description: message, visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-    }
-    
-    // --------------------------------------------------------------------------------------------
-    // MARK: Manage Server PublicKey
-    // --------------------------------------------------------------------------------------------
-    
-    func getEndToEndServerPublicKeySuccess(_ metadataNet: CCMetadataNet!) {
-        
-        CCUtility.setEndToEndPublicKeyServer(appDelegate.activeAccount, publicKey: metadataNet.key)
-        
-        // Clear Table
-        NCManageDatabase.sharedInstance.clearTable(tableDirectory.self, account: appDelegate.activeAccount)
-        NCManageDatabase.sharedInstance.clearTable(tableE2eEncryption.self, account: appDelegate.activeAccount)
-
-        // Reload All Datasource
-        NotificationCenter.default.post(name: Notification.Name("clearDateReadDataSource"), object: nil)
-
-        // All OK Activated flsg on Manage EndToEnd Encryption
-        NotificationCenter.default.post(name: Notification.Name("reloadManageEndToEndEncryption"), object: nil)
-    }
-    
-    func getEndToEndServerPublicKeyFailure(_ metadataNet: CCMetadataNet!, message: String!, errorCode: Int) {
-        
-        switch (errorCode) {
-            
-        case 400:
-            appDelegate.messageNotification("E2E Server publicKey", description: "bad request: unpredictable internal error", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        case 404:
-            appDelegate.messageNotification("E2E Server publicKey", description: "Server publickey doesn't exists", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        case 409:
-            appDelegate.messageNotification("E2E Server publicKey", description: "forbidden: the user can't access the Server publickey", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-            
-        default:
-            appDelegate.messageNotification("E2E Server publicKey", description: message as String!, visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
-        }
-    }
-    
-    // --------------------------------------------------------------------------------------------
-    // MARK: Manage Mark/Delete Encrypted Folder
-    // --------------------------------------------------------------------------------------------
-    
-    @objc func markEndToEndFolderEncrypted(_ url: String, fileID: String, serverUrl: String) -> Bool {
-        
-        var token: NSString?
-                
-        // Remove all records e2eMetadata
-        NCManageDatabase.sharedInstance.deleteE2eEncryption(predicate: NSPredicate(format: "account = %@ AND serverUrl = %@", appDelegate.activeAccount, serverUrl))
-        
-        if let error = NCNetworkingSync.sharedManager().markEnd(toEndFolderEncrypted: appDelegate.activeUser, userID: appDelegate.activeUserID, password: appDelegate.activePassword, url: url, fileID: fileID, serverUrl: serverUrl,token: &token) as NSError? {
-            
-            appDelegate.messageNotification("E2E Mark folder as encrypted", description: error.localizedDescription+" code \(error.code)", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: error.code)
-
-            return false
-        }
-        
-        return true
-    }
-    
-    @objc func deletemarkEndToEndFolderEncrypted(_ url: String, fileID: String, serverUrl: String) -> Bool {
-        
-        var token: NSString?
-
-        // Remove all records e2eMetadata
-        NCManageDatabase.sharedInstance.deleteE2eEncryption(predicate: NSPredicate(format: "account = %@ AND serverUrl = %@", appDelegate.activeAccount, serverUrl))
-        
-        if let error = NCNetworkingSync.sharedManager().deletemarkEnd(toEndFolderEncrypted: appDelegate.activeUser, userID: appDelegate.activeUserID, password: appDelegate.activePassword, url: url, fileID: fileID, serverUrl: serverUrl, token: &token) as NSError? {
-            
-            appDelegate.messageNotification("E2E Remove mark folder as encrypted", description: error.localizedDescription+" code \(error.code)", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: error.code)
-            
-            return false
-        }
-        
-        return true
-    }
-}
-
-
-
-
-
-
-
-

+ 3 - 3
iOSClient/Settings/NCManageEndToEndEncryption.m

@@ -314,7 +314,7 @@
     CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:appDelegate.activeAccount];
     CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:appDelegate.activeAccount];
     
     
     metadataNet.action = actionDeleteEndToEndPublicKey;
     metadataNet.action = actionDeleteEndToEndPublicKey;
-    [appDelegate addNetworkingOperationQueue:appDelegate.netQueue delegate:appDelegate.endToEndInterface metadataNet:metadataNet];
+    [appDelegate addNetworkingOperationQueue:appDelegate.netQueue delegate:self metadataNet:metadataNet];
 }
 }
 
 
 - (void)deletePrivateKey:(XLFormRowDescriptor *)sender
 - (void)deletePrivateKey:(XLFormRowDescriptor *)sender
@@ -324,7 +324,7 @@
     CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:appDelegate.activeAccount];
     CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:appDelegate.activeAccount];
     
     
     metadataNet.action = actionDeleteEndToEndPrivateKey;
     metadataNet.action = actionDeleteEndToEndPrivateKey;
-    [appDelegate addNetworkingOperationQueue:appDelegate.netQueue delegate:appDelegate.endToEndInterface metadataNet:metadataNet];
+    [appDelegate addNetworkingOperationQueue:appDelegate.netQueue delegate:self metadataNet:metadataNet];
 }
 }
 
 
 #pragma --------------------------------------------------------------------------------------------
 #pragma --------------------------------------------------------------------------------------------
@@ -362,7 +362,7 @@
     
     
     if (aViewController.fromType == CCBKPasscodeFromStartEncryption) {
     if (aViewController.fromType == CCBKPasscodeFromStartEncryption) {
         
         
-        [appDelegate.endToEndInterface initEndToEndEncryption];
+        //[appDelegate.endToEndInterface initEndToEndEncryption];
     }
     }
     
     
     if (aViewController.fromType == CCBKPasscodeFromCheckPassphrase) {
     if (aViewController.fromType == CCBKPasscodeFromCheckPassphrase) {