diff --git a/enzevalos_iphone/Base.lproj/Main.storyboard b/enzevalos_iphone/Base.lproj/Main.storyboard
index da4b056e9cfdd5987f8756cd20ae31f9fb3b849a..5854b23e9ebb080454539c9ea487dff21c11b637 100644
--- a/enzevalos_iphone/Base.lproj/Main.storyboard
+++ b/enzevalos_iphone/Base.lproj/Main.storyboard
@@ -2124,7 +2124,7 @@ Um deine sicheren E-Mails auch auf einem anderen Gerät lesen zu können, muss d
                                 <nil key="textColor"/>
                                 <nil key="highlightedColor"/>
                             </label>
-                            <textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" keyboardDismissMode="interactive" translatesAutoresizingMaskIntoConstraints="NO" id="OLH-mw-Ir8">
+                            <textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" layoutMarginsFollowReadableWidth="YES" keyboardDismissMode="interactive" translatesAutoresizingMaskIntoConstraints="NO" id="OLH-mw-Ir8">
                                 <rect key="frame" x="20" y="100.66666666666669" width="374" height="692.33333333333326"/>
                                 <color key="backgroundColor" cocoaTouchSystemColor="tableCellGroupedBackgroundColor"/>
                                 <fontDescription key="fontDescription" type="system" pointSize="14"/>
diff --git a/enzevalos_iphone/ImportKeyOverviewController.swift b/enzevalos_iphone/ImportKeyOverviewController.swift
index 16c6c8ef8427f44b57ce8bd490d39c6508e708df..2439bc4ede9a11c4a0e300ff8f0b51201e70948f 100644
--- a/enzevalos_iphone/ImportKeyOverviewController.swift
+++ b/enzevalos_iphone/ImportKeyOverviewController.swift
@@ -13,8 +13,15 @@ class ImportKeyOverviewController: UITableViewController, ButtonCellHandler {
         case iTunes, Paste
     }
     
+    enum KeyState {
+        case Public, Secret
+    }
+    
+    var currentState: KeyState = .Secret
+    
     override func viewDidLoad() {
         super.viewDidLoad()
+        print("Load view with state: \(currentState)")
     }
     
     // MARK: - Table view data source
@@ -47,7 +54,11 @@ class ImportKeyOverviewController: UITableViewController, ButtonCellHandler {
     func touchDown(id: Int) {
         if id == KeyActions.iTunes.hashValue {
             // Call iTunes field
-            _ = KeyTableViewController.pushKeyTableView(navigationController: self.navigationController, type: .ImportKeyItunes)
+            var type = KeyTableViewController.KeyType.ImportPublicKeyItunes
+            if currentState == .Secret {
+                type = .ImportSecretKeyItunes
+            }
+            _ = KeyTableViewController.pushKeyTableView(navigationController: self.navigationController, type: type)
         } else if id == KeyActions.Paste.hashValue {
             // open Textfield to paste key
             _ = PasteKeyViewController.pushPasteKeyView(navigationController: self.navigationController)
diff --git a/enzevalos_iphone/ItunesHandler.swift b/enzevalos_iphone/ItunesHandler.swift
index 2320410b82dc9a5627e1735b38b568f4ff55fe80..7e5aec52a941b8dcdc4464b967d08fb0092b7167 100644
--- a/enzevalos_iphone/ItunesHandler.swift
+++ b/enzevalos_iphone/ItunesHandler.swift
@@ -42,6 +42,16 @@ class ItunesKeyHandling {
         return newSecretKeys
     }
     
+    func extractPublicKeys(withKnownKeys: Bool) -> [TempKey] {
+        var newPublicKeys = storedKeys.filter{!$0.isSecret}
+        if !withKnownKeys {
+            var knownIDs = DataHandler.handler.findPublicKeys().map{$0.keyID}
+            knownIDs = knownIDs.filter{return !($0 == "")}
+            newPublicKeys = newPublicKeys.filter{!knownIDs.contains($0.keyID)}
+        }
+        return newPublicKeys
+    }
+    
     var hasStoredKeys: Bool {
         get {
             return !keyURL.isEmpty
diff --git a/enzevalos_iphone/KeyTableViewController.swift b/enzevalos_iphone/KeyTableViewController.swift
index 0ae1b0e1a47adfe4a55ae842330851709254822d..76aa220ff94cee6b8241f3444678750dab8a785d 100644
--- a/enzevalos_iphone/KeyTableViewController.swift
+++ b/enzevalos_iphone/KeyTableViewController.swift
@@ -11,7 +11,7 @@ import UIKit
 class KeyTableViewController: UITableViewController {
 
     enum KeyType {
-        case PublicKey, SecretKey, ImportKeyItunes, ImportFromList
+        case PublicKey, SecretKey, ImportSecretKeyItunes, ImportPublicKeyItunes, ImportFromList
     }
     
     static func pushKeyTableView(navigationController: UINavigationController?, type:KeyType) -> KeyTableViewController? {
@@ -44,12 +44,18 @@ class KeyTableViewController: UITableViewController {
             title = "Your IDs"
             secretKeys = DataHandler.handler.findSecretKeys()
             showAddButton = true
-        case .ImportKeyItunes:
+        case .ImportSecretKeyItunes:
             title = "New Secret Keys"
             importableKeys = ItunesKeyHandling.iTunesKeyHandler.extractSecretKeys(withKnownKeys: true)
             if importableKeys.count == 0 {
                 onlyOneRow = true
             }
+        case .ImportPublicKeyItunes:
+            title = "New Public Keys"
+            importableKeys = ItunesKeyHandling.iTunesKeyHandler.extractPublicKeys(withKnownKeys: true)
+            if importableKeys.count == 0 {
+                onlyOneRow = true
+            }
         case .ImportFromList:
             title = "Extracted Keys"
             if importableKeys.count == 0 {
@@ -58,6 +64,7 @@ class KeyTableViewController: UITableViewController {
             
         }
         self.title = title
+        print("Load view with title: \(title)")
         if showAddButton {
             self.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(addButton(btn:)))
         }
@@ -69,12 +76,17 @@ class KeyTableViewController: UITableViewController {
     
     
     @objc private func addButton(btn: UIBarButtonItem) {
-        if type == .SecretKey {
+        if type == .SecretKey || type == .PublicKey {
             let mainStoryboard = UIStoryboard(name: "Main", bundle: Bundle.main)
+            var nextState = ImportKeyOverviewController.KeyState.Public
+            if type == .SecretKey {
+                nextState = .Secret
+            }
             if let viewController = mainStoryboard.instantiateViewController(withIdentifier: "ImportKeyOverview") as? ImportKeyOverviewController {
+                viewController.currentState = nextState
                 self.navigationController?.pushViewController(viewController, animated: true)
             }
-        }
+        } 
     }
 
     // MARK: - Table view data source
@@ -89,7 +101,7 @@ class KeyTableViewController: UITableViewController {
             return publicKeys.count
         case .SecretKey:
             return secretKeys.count
-        case .ImportKeyItunes, .ImportFromList:
+        case .ImportSecretKeyItunes, .ImportFromList, .ImportPublicKeyItunes:
             if importableKeys.count == 0 {
                 // Add warning to copy key in iTunes folder
                 return 1
@@ -112,7 +124,7 @@ class KeyTableViewController: UITableViewController {
             cell.setLabels(key: publicKeys[indexPath.row])
         case .SecretKey:
             cell.setLabels(key: secretKeys[indexPath.row])
-        case .ImportKeyItunes, .ImportFromList:
+        case .ImportSecretKeyItunes, .ImportFromList, .ImportPublicKeyItunes:
             if importableKeys.count == 0 {
                 let cell = UITableViewCell(style: .default, reuseIdentifier: "InfoCell")
                 cell.accessoryType = .none
@@ -164,7 +176,7 @@ class KeyTableViewController: UITableViewController {
                 }
             }
             addr = mail ?? keyID
-        case .ImportKeyItunes, .ImportFromList:
+        case .ImportSecretKeyItunes, .ImportFromList, .ImportPublicKeyItunes:
             // Try to import key
             importKey(key: importableKeys[indexPath.row], indexPath: indexPath)
             pushView = false