University of California, Davis

Principles of Secure Coding

This course is part of Secure Coding Practices Specialization

Taught in English

Some content may not be translated

Matthew Bishop, PhD

Instructor: Matthew Bishop, PhD

17,843 already enrolled

Included with Coursera Plus

Course

Gain insight into a topic and learn the fundamentals

4.4

(336 reviews)

Intermediate level

Recommended experience

15 hours (approximately)
Flexible schedule
Learn at your own pace

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

8 quizzes

Course

Gain insight into a topic and learn the fundamentals

4.4

(336 reviews)

Intermediate level

Recommended experience

15 hours (approximately)
Flexible schedule
Learn at your own pace

See how employees at top companies are mastering in-demand skills

Placeholder

Build your subject-matter expertise

This course is part of the Secure Coding Practices Specialization
When you enroll in this course, you'll also be enrolled in this Specialization.
  • Learn new concepts from industry experts
  • Gain a foundational understanding of a subject or tool
  • Develop job-relevant skills with hands-on projects
  • Earn a shareable career certificate
Placeholder
Placeholder

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV

Share it on social media and in your performance review

Placeholder

There are 4 modules in this course

In this module, you'll be able to describe key concepts in secure programming including typical problems and procedures. You'll be able to differentiate between robust programming and secure programming and you'll generalize from philosophies of "what to watch out for" and "where to look" to specific situations.

What's included

10 videos1 reading2 quizzes1 discussion prompt

In this module, you will be able to recall eight software design principles that govern secure programming. You will write a short program, in any language you like, to determine whether the system enforces the Principle of Complete Mediation. You'll be able to apply design principles from Saltzer, Schroeder and Kaashoek to code situations.

What's included

11 videos1 reading2 quizzes1 discussion prompt

In this module, you will be able to explain the issues that can arise from fragile programming. You'll be able to discuss how design issues drive implementation and be able to distinguish between robust and fragile code. You'll be able to explain what can go wrong in fragile code and be able to write a robust version of fragile code.

What's included

9 videos2 readings2 quizzes1 discussion prompt

In this module, you will be able to describe how to use techniques that mimic formal methods to improve the robustness and security of programs. You will also be able to compare and contrast formal, informal, and ad hoc programming methods. You'll be able to write a program to demonstrate how a poorly-written program or library can cause incorrect results.

What's included

9 videos1 reading2 quizzes2 discussion prompts

Instructor

Instructor ratings
4.2 (73 ratings)
Matthew Bishop, PhD
University of California, Davis
2 Courses21,896 learners

Offered by

Recommended if you're interested in Computer Security and Networks

Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Learner reviews

Showing 3 of 336

4.4

336 reviews

  • 5 stars

    59.64%

  • 4 stars

    27%

  • 3 stars

    8.30%

  • 2 stars

    3.26%

  • 1 star

    1.78%

CC
5

Reviewed on Nov 30, 2022

HK
4

Reviewed on Jun 3, 2020

OO
5

Reviewed on Aug 2, 2020

New to Computer Security and Networks? Start here.

Placeholder

Open new doors with Coursera Plus

Unlimited access to 7,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Frequently asked questions