Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

LinkedIn Learning

iOS Development: Security

via LinkedIn Learning

Overview

Learn about building secure iOS apps. Discover how to safeguard your apps from current and future threats using the keychain, biometrics, asymmetric cryptography, and more.

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.

Syllabus

Introduction
  • Keeping your apps secure
  • What you should know
1. iOS Security Fundamentals
  • Security in iOS
  • The Secure Boot
  • Encryption and data protection
  • Touch ID and Face ID
  • Code signing
  • Sandboxing
  • Secure networking
  • User privacy
2. User Data Protection
  • Purpose strings
  • Request authorization for system features
  • Adding the missing purpose string
  • Exposing sensitive data through copying and pasting
  • The pasteboard spy app
  • Prevent pasteboard leakage without coding
  • Prevent pasteboard leakage with coding
  • Using an app-specific pasteboard
  • Data leakage through app screenshots
  • Clearing data before moving to the background
  • Obscuring the snapshot before moving to the background
  • Hacking the UserDefaults
3. The Keychain
  • Keychain overview
  • Implementing a Keychain wrapper
  • Adding a value to the Keychain
  • Using the Keychain wrapper
  • Removing items from the Keychain
  • Retrieve items from the Keychain
  • Restore values from the Keychain
4. File Data Protection
  • File data protection overview
  • Overriding the file protection level programmatically
  • Using the new file protection level
5. Securing Apps Using Biometrics
  • Implementing Touch ID
  • Implementing the authentication logic
  • Implementing Face ID
  • Implementing Face ID continued
6. Cryptographic APIs/Interfaces
  • Asymmetric cryptography overview
  • Creating the private key
  • Retrieving the private key from the Keychain
  • Defining the asymmetric key accessors
  • Performing asymmetric encryption
  • Performing asymmetric encryption continued
  • Performing asymmetric decryption
  • Asymmetric encryption and decryption demo
Conclusion
  • Next steps

Taught by

Károly Nyisztor

Related Courses

Reviews

Start your review of iOS Development: Security

Never Stop Learning!

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free