Coursera
Coursera Logo

University of California, Davis - Principles of Secure Coding 

  • Offered byCoursera

Principles of Secure Coding
 at 
Coursera 
Overview

Duration

16 hours

Start from

Start Now

Total fee

Free

Mode of learning

Online

Difficulty level

Intermediate

Official Website

Explore Free Course External Link Icon

Credential

Certificate

Principles of Secure Coding
 at 
Coursera 
Highlights

  • This Course Plus the Full Specialization.
  • Shareable Certificates.
  • Graded Programming Assignments.
Details Icon

Principles of Secure Coding
 at 
Coursera 
Course details

Skills you will learn
More about this course
  • This course introduces you to the principles of secure programming. It begins by discussing the philosophy and principles of secure programming, and then presenting robust programming and the relationship between it and secure programming. We'll go through a detailed example of writing robust code and we'll see many common programming problems and show their connection to writing robust, secure programs in general. We?ll examine eight design principles that govern secure coding and how to apply them to your own work. We?ll discuss how poor design choices drive implementation in coding. We?ll differentiate between informal, formal, and ad hoc coding methods. Throughout, methods for improving the security and robustness of your programs will be emphasized and you will have an opportunity to practice these concepts through various lab activities. A knowledge of the C programming language is helpful, but not required to participate in the lab exercises.
Read more

Principles of Secure Coding
 at 
Coursera 
Curriculum

Secure Programming Philosophy

Course Introduction

Module 1 Introduction

The Philosophy of Secure Programming

Defining Secure Programming

Robust vs. Secure Programming

Security Policies and Procedures

Secure Programming General Philosophy

Checking Design and Implementation

Where to Look for Vulnerabilities

Secure Programming Summary

A Note From UC Davis

Module 1 Practice Quiz

Module 1 Quiz

Secure Programming Design Principles

Module 2 Introduction

Secure Programming Design Principles Overview

Principle of Least Privilege

Fail-Safe Defaults

Principle of Economy of Mechanism

Principle of Complete Mediation

Separation of Privilege Principle

Principle of Open Design

Principle of Least Common Mechanism

Principle of Least Astonishment

Secure Programming Design Principles Summary

Complete Mediation - What Is Going On?

Module 2 Practice Quiz

Module 2 Quiz

Robust Programming

Module 3 Introduction

Robust Programming Overview

Robust Programming Basic Principles

An Example Of Fragile Code

Error Handling

Cohesion, New Interfaces, and Token Generation

Token Generation and Interpretation

Creating and Deleting a Queue

Adding and Removing Elements to a Queue

Before You Begin This Module...

Fragile Programs - What Is Going On?

Module 3 Practice Quiz

Module 3 Quiz

Methods for Robustness

Methods for Robustness Overview

Methods Overview: Formal, Informal, and Ad Hoc Methods

Overview of Formal Methods

Login Program Example

Incorporating Hierarchical Decomposition Methodology

Login Program: Authenticating a User

Login Program: Preconditions and Postconditions

Course Summary

Robust Programs - What Is Going On?

Module 4 Practice Quiz

Module 4 Quiz

Principles of Secure Coding
 at 
Coursera 
Admission Process

    Important Dates

    May 25, 2024
    Course Commencement Date

    Other courses offered by Coursera

    – / –
    3 months
    Beginner
    – / –
    20 hours
    Beginner
    – / –
    2 months
    Beginner
    – / –
    3 months
    Beginner
    View Other 6715 CoursesRight Arrow Icon
    qna

    Principles of Secure Coding
     at 
    Coursera 

    Student Forum

    chatAnything you would want to ask experts?
    Write here...