Networking and Security in iOS Applications (Coursera)

Networking and Security in iOS Applications (Coursera)

You will learn to extend your knowledge of making iOS apps so that they can securely interact with web services and receive push notifications. You'll learn how to store data securely on a device using Core Data. You’ll also learn to securely deploy apps to the App Store and beta users over-the-air. The format of the course is through a series of code tutorials. We will walk you through the creation of several apps that you can keep as a personal app toolbox. When you make your own apps after this course, you can bring in these capabilities as needed. When necessary we pop out of the code tutorials to talk about concepts at a higher level so that what you are programming makes sense.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Upon completing this course, you will be able to:

  1. Post Facebook, Twitter, Sina Weibo, Tencent Weibo messages to social media using single sign-on on behalf of a user.
  2. Use OAuth 2.0 to securely authenticate to Instagram and retrieve photos on behalf of a user
  3. JSON
  4. Describe JSON’s syntax
  5. Write well-formed JSON
  6. Work with JSON data objects in Objective-C
  7. Appropriately set the security settings for App Transport Security in iOS 9.0
  8. Use http, https and https with perfect forward secrecy to fetch web resources
  9. Obtain permissions to receive local push notifications
  10. Write an app that can send and receive local push notifications
  11. Obtain permissions to receive remote push notifications
  12. Write an app that can receive remote push notifications
  13. Authenticate using Apple’s cryptographic services such that the developer can use 3rd party infrastructure to send remote push notifications to their app.
  14. Securely store data on the user’s device.
  15. Authenticate using Apple’s cryptographic services such that they can deploy an app to the app store

Course 2 of 6 in the iOS Development for Creative Entrepreneurs Specialization.

Syllabus

WEEK 1
Welcome!
Welcome to this course on Networking and Security in iOS Applications. Our focus in this course is very practitioner oriented. We want to get you up and running using social networking integration with single sign-on, basic OAuth2 functionality, secure JSON web APIs, cryptographically secured push notifications, and secure data storage so that you can get apps into the iTunes ecosystem and out into the marketplace. This course will have several code sessions in which we walk you through the process of building apps, some of which you will also build for peer review assignments. Interspersed with the tutorials we will take time-outs to cover the basics of some concepts that might be mysterious without a more formal treatment. Our hope is that you come out of this course knowing more (of course!) and having several projects that you can refer to in the future when you want to incorporate these techniques into your apps - your personal app toolbox. The intensity picks up from the previous course in this Specialization, so get ready!

WEEK 2
Using Secure Web APIs: an Instagram Case Study
Now it's time to consider what we are going to do if we want to work with web services that aren't deeply integrated into iOS. There are hundreds (thousands?!?!) of them. Most of them require authentication via the OAuth 2.0 protocol. In this week's lessons we will walk through an example of getting a photo from Instagram on behalf of a user. This week is also a code tutorial in preparation for your peer review assignment, but in the middle we need to step back from coding to cover some basics: How do we use a UIImageView? What is OAuth 2.0 anyway? What is JSON and how do we read it? What's the big deal about http vs https anyway?

WEEK 3
Don't be so pushy!
In this week we will look at several aspects of push notifications. Those are those alerts that show up at the top of your iOS interface when an app wants to get your attention. There are several ways that they can be initiated. They can be initiated from an app on a local device, or they can be initiated by a remote server somewhere on the internet. Obtaining permission to post those notifications requires lots of steps, certificates, passwords etc. We'll walk you through it all. This week we start with a high-level overview of the iOS app lifecycle. Then we will do three code tutorials. The first will be the one that you will need to do the peer-review assessment. It's a basic countdown timer that sends a notification at a specific time. The second will show you how to make it all fancy with custom actions. The final one will be for remote notifications. Since remote notifications require an Apple developer account ($$$) we won't assess you on it, but if you have one you can try it out on your own and add it to your personal app toolbox.

WEEK 4
Storing Data
In this week we look at method of securely storing data on the iOS platform called Core Data.

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

Related Courses

SQL for Security Specialist (Coursera) Coursera
Codio

SQL for Security Specialist (Coursera)

This course is designed specifically for SQL Security Specialists with a focus on PostgreSQL. It assumes a solid foundation in SQL and guides learners through advanced topics specific to PostgreSQL. You'll explore crucial concepts, such as complex queries, performance optimization, and database administration tasks unique to PostgreSQL.

Sep 14th 2026
3 Weeks
Computational Neuroscience (Coursera) Coursera
University of Washington

Computational Neuroscience (Coursera)

This course provides an introduction to basic computational methods for understanding what nervous systems do and for determining how they function. We will explore the computational principles governing various aspects of vision, sensory-motor control, learning, and memory. Specific topics that will be covered include representation of information by spiking neurons, processing of information in neural networks, and algorithms for adaptation and learning.

Sep 14th 2026
5-12 Weeks
Career 911: Your Future Job in Medicine and Healthcare (Coursera) Coursera
Northwestern University

Career 911: Your Future Job in Medicine and Healthcare (Coursera)

This course aims to help high school students, recent graduates, and those considering career transitions explore health care career options and learn strategies for entry into the health care workforce and health related fields. There are lots of amazing job opportunities in medicine and healthcare! Join us, as we share the strategies and secrets for getting those jobs.

Sep 14th 2026
5-12 Weeks
DDoS Attacks and Defenses (Coursera) Coursera
University of Colorado System

DDoS Attacks and Defenses (Coursera)

In this MOOC, you will learn the history of DDoS attacks and analyze new Mirai IoT Malware and perform source code analysis. you will be provided with a brief overview of DDoS Defense techniques. You learn an Autonomous Anti-DDoS Network called A2D2 for small/medium size organizations to deal with DDoS attacks. A2D2 uses Linux Firewall Rate limiting and Class Based Queueing, and subnet flood detection to handle various DDoS traffic types.

Sep 14th 2026
4 Weeks
Operating System Virtualization - Master's (Coursera) Coursera
Illinois Tech

Operating System Virtualization - Master's (Coursera)

Each successful student in this course will become familiar with hypervisors, virtualization terms, infrastructure considerations, and appropriate use cases. While designed to give an overview of today’s Virtualization technologies and methods, students in the course will gain enough practical knowledge to begin deploying various hypervisors and virtual machine environments using current industry standard platforms.

Sep 14th 2026
5-12 Weeks
Kali Linux (Coursera) Coursera
Board Infinity

Kali Linux (Coursera)

"Introduction to Kali Linux" is a meticulously designed course to guide beginners through the essentials of Kali Linux, a powerful tool for cybersecurity. Spanning two modules, the course begins with a comprehensive introduction to Kali Linux, its installation, navigation, and essential tools. It then advances into practical applications, covering network monitoring, ethical hacking principles, penetration testing, and vulnerability assessment.

Sep 14th 2026
2 Weeks
Redes Ecológicas (Coursera) Coursera
Universidade de São Paulo, Brasil

Redes Ecológicas (Coursera)

Todos os seres vivos estão conectados entre si por interações ecológicas, formando a “colina emaranhada” de Darwin, metáfora inspirada pela “teia da vida” de Humboldt. Desemaranhar essa complexidade é uma tarefa desafiadora, mas factível, desde que você use ferramentas adequadas. A ciência de redes nos ajuda com excelentes ferramentas conceituais e operacionais.

Sep 14th 2026
4 Weeks
Tencent Cloud Solutions Architect Associate (Coursera) Coursera
Tencent Cloud

Tencent Cloud Solutions Architect Associate (Coursera)

This course is primarily aimed at cloud professionals that are interested in learning about Tencent Cloud‘s cloud architectures. The course equips learners with a foundational knowledge in cloud architecture design and prepares them to take the Tencent Cloud Solutions Architect Associate examination. After completing this course, learners will be able to design cloud solutions that incorporate the principles of high availability, high security, high scalability, and cost optimization.

Sep 14th 2026
5-12 Weeks
Introduction to Applied Cryptography (Coursera) Coursera
University of London

Introduction to Applied Cryptography (Coursera)

This course is a non-mathematical introduction to the role that cryptography plays in providing digital security for everyday applications such as the internet, mobile phones, wireless networks and cryptocurrency. In this introductory course you will develop an understanding of the functionality and purpose of the main cryptographic tools we use today. You will learn how to make decisions about which cryptographic tools are most appropriate to deploy in specific settings. You will also explore the wider infrastructure surrounding cryptography and how this impacts the overall security of systems deploying cryptography.

Sep 14th 2026
4 Weeks
Networking Fundamentals (Coursera) Coursera
Akamai Technologies, Inc.

Networking Fundamentals (Coursera)

Students start by learning basic network theory and terminology including network components, node functions, types of networks and network models. Students will gain an understanding of the Open Systems Interconnection (OSI) model and the TCP/IP Model including encapsulation and common network protocols. Students learn about data transmission methods and ethernet including CSMA/CD and CSMA/CA.

Sep 14th 2026
4 Weeks