About this Course
7,095 recent views

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Intermediate Level

1-2 years of experience with some form of computer programming language like C/C++ or Java.

Approx. 11 hours to complete

Suggested: 4 weeks of study, 2-5 hours/week...

English

Subtitles: English

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Intermediate Level

1-2 years of experience with some form of computer programming language like C/C++ or Java.

Approx. 11 hours to complete

Suggested: 4 weeks of study, 2-5 hours/week...

English

Subtitles: English

Syllabus - What you will learn from this course

Week
1
3 hours to complete

Secure Programming Philosophy

10 videos (Total 66 min), 1 reading, 2 quizzes
10 videos
Defining Secure Programming4m
Robust vs. Secure Programming14m
Security Policies and Procedures8m
Secure Programming General Philosophy10m
Checking Design and Implementation9m
Where to Look for Vulnerabilities11m
Secure Programming Summary49s
1 reading
A Note From UC Davis10m
2 practice exercises
Module 1 Practice Quiz30m
Module 1 Quiz45m
Week
2
4 hours to complete

Secure Programming Design Principles

11 videos (Total 36 min), 1 reading, 2 quizzes
11 videos
Fail-Safe Defaults3m
Principle of Economy of Mechanism1m
Principle of Complete Mediation1m
Separation of Privilege Principle3m
Principle of Open Design7m
Principle of Least Common Mechanism4m
Principle of Least Astonishment6m
Secure Programming Design Principles Summary1m
1 reading
Complete Mediation - What Is Going On?10m
2 practice exercises
Module 2 Practice Quiz30m
Module 2 Quiz30m
Week
3
5 hours to complete

Robust Programming

9 videos (Total 61 min), 2 readings, 2 quizzes
9 videos
An Example Of Fragile Code13m
Error Handling11m
Cohesion, New Interfaces, and Token Generation13m
Token Generation and Interpretation5m
Creating and Deleting a Queue5m
Adding and Removing Elements to a Queue5m
2 readings
Before You Begin This Module...5m
Fragile Programs - What Is Going On?10m
2 practice exercises
Module 3 Practice Quiz15m
Module 3 Quiz30m
Week
4
4 hours to complete

Methods for Robustness

8 videos (Total 41 min), 1 reading, 2 quizzes
8 videos
Login Program Example10m
Incorporating Hierarchical Decomposition Methodology9m
Login Program: Authenticating a User11m
Login Program: Preconditions and Postconditions32s
Course Summary1m
1 reading
Robust Programs - What Is Going On?10m
2 practice exercises
Module 4 Practice Quiz15m
Module 4 Quiz30m

Instructor

Avatar

Matthew Bishop, PhD

Professor
Department of Computer Science

About University of California, Davis

UC Davis, one of the nation’s top-ranked research universities, is a global leader in agriculture, veterinary medicine, sustainability, environmental and biological sciences, and technology. With four colleges and six professional schools, UC Davis and its students and alumni are known for their academic excellence, meaningful public service and profound international impact....

About the Secure Coding Practices Specialization

This Specialization is intended for software developers of any level who are not yet fluent with secure coding and programming techniques.Through four courses, you will cover the principles of secure coding, concepts of threat modeling and cryptography and exploit vulnerabilities in both C/C++ and Java languages, which will prepare you to think like a hacker and protect your organizations information. The courses provide ample practice activities including exploiting WebGoat, an OWASP project designed to teach penetration testing....
Secure Coding Practices

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.