iOS Development: Security

iOS Development: Security

English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 2h 06m | 396 MB

Our mobile devices store our most intimate conversations and photos, the payments we make, and an array of other sensitive personal data. App developers that gain access to devices are charged with protecting the security of all that information. In this course, seasoned developer Károly Nyisztor dives into the topic of iOS security, reviewing the means Apple provides to develop secure apps that are safeguarded from current and future threats. Károly goes over fundamental security concepts, including secure boot, sandboxing, and secure networking. He also explains how to secure devices using Touch ID and Face ID, leverage keychain services, perform asymmetric encryption and decryption, and much more.

Topics include:

  • Encryption, code signing, and sandboxing
  • Preventing pasteboard leakage with and without coding
  • Working with the keychain
  • File data protection
  • Securing apps using biometrics
  • Implementing Touch ID and Face ID
  • Performing asymmetric encryption and decryption
Table of Contents

1 Keeping your apps secure
2 What you should know
3 Security in iOS
4 The Secure Boot
5 Encryption and data protection
6 Touch ID and Face ID
7 Code signing
8 Sandboxing
9 Secure networking
10 User privacy
11 Purpose strings
12 Request authorization for system features
13 Adding the missing purpose string
14 Exposing sensitive data through copying and pasting
15 The pasteboard spy app
16 Prevent pasteboard leakage without coding
17 Prevent pasteboard leakage with coding
18 Using an app-specific pasteboard
19 Data leakage through app screenshots
20 Clearing data before moving to the background
21 Obscuring the snapshot before moving to the background
22 Hacking the UserDefaults
23 Keychain overview
24 Implementing a Keychain wrapper
25 Adding a value to the Keychain
26 Using the Keychain wrapper
27 Removing items from the Keychain
28 Retrieve items from the Keychain
29 Restore values from the Keychain
30 File data protection overview
31 Overriding the file protection level programmatically
32 Using the new file protection level
33 Implementing Touch ID
34 Implementing the authentication logic
35 Implementing Face ID
36 Implementing Face ID continued
37 Asymmetric cryptography overview
38 Creating the private key
39 Retrieving the private key from the Keychain
40 Defining the asymmetric key accessors
41 Performing asymmetric encryption
42 Performing asymmetric encryption continued
43 Performing asymmetric decryption
44 Asymmetric encryption and decryption demo
45 Next steps