Gamified Intelligent Cyber Aptitude and Skills Training (GICAST)
Gamified Intelligent Cyber Aptitude and Skills Training (GICAST)

Start this free course now. Just create an account and sign in. Enrol and complete the course for a free statement of participation or digital badge if available.

Free course

Gamified Intelligent Cyber Aptitude and Skills Training (GICAST)

3.5 Sandboxes and code signing

This section is part of the amber pathway.

In addition to keeping software up to date and using antivirus products, there are other technological innovations that can help mitigate the threats of malware.

Sandboxes and code signing are examples of some of the technologies that developers are integrating into the software we commonly use to help protect our computers.

Sandboxes ensure that the programs operate/execute in a limited resource environment, limiting the typical malware characteristic of resource probing and use. In contrast, code signing is a means for users to validate the integrity of program code or a software distribution (such as a software update or a new release) released for download. The signature (hash digest – recall what was done for passwords) of the software is also available, so the users can check the integrity and authenticity of the software before using it.


A software sandbox is a way for computers to run programs in a controlled environment. The sandbox offers a constrained amount of memory and only allows very limited access to resources such as operating system files, disks and the network. In theory, the software cannot break out of the sandbox and affect other parts of the computer, so even if malicious software attempts to overwrite parts of the disk, the sandbox will prevent it from doing so.

This diagram shows an app's access to system resources, within and without an app sandbox.
Figure 27 An app's access to system resources

Sandboxing is widely used in modern web browsers, such as Internet Explorer 10 onwards, and Chrome, to prevent internet content causing damage to files on the computer. Similar sandboxes exist for most browser plugins and the Adobe Acrobat PDF viewer.

Code signing

Code signing is a use of cryptography where software companies issue digitally signed copies of their programs that can be checked by recipients for its authenticity. You’ll discover more about digital signatures in Week 4.

Code signing is used by the designers of all three major operating systems (Microsoft Windows, Mac OS and Linux) to guarantee that operating system updates are genuine even if they are distributed using flash memory cards rather than directly from the publisher.

This figure shows two screenshots of popup windows asking for the user to verify updates to their computer. These screenshots illustrate how the digital signature of the origin of the software update is verified before installation. The first screenshot demonstrates an update from an unverified publisher, with the popup window asking ‘Do you want to allow the following program from an unknown publisher to make changes to this computer?’ It then lists these details: ‘Program name: MMSSETUP.EXE’, ‘Publisher: Unknown’, ‘File origin: Network drive’. The second screenshot demonstrates an update from a verified publisher, with the popup window asking ‘Do you want to allow the following program to make changes to this computer?’ It then lists these details: ‘Program name: Microsoft Setup Bootstrapper’, ‘Verified publisher: Microsoft Corporation’, ‘File origin: Network drive’.
Figure 28 Sample screenshots from attempts to install signed and unsigned software on Microsoft Windows OS

Microsoft Windows uses code signing on operating systems components, such as hardware drivers, which have direct access to the heart of the operating system. Apple has taken code signing even further. Versions of Mac OS from 10.8 onwards can restrict users to only running programs that have been certified by the Apple App Store. While this does offer greater security against malware, it may also restrict choice and prevent users from running certain unsigned apps from third parties.

Next, you have an opportunity to review what you’ve learned in the end-of-week practice test.


Take your learning further

Making the decision to study can be a big step, which is why you'll want a trusted University. The Open University has 50 years’ experience delivering flexible learning and 170,000 students are studying with us right now. Take a look at all Open University courses.

If you are new to University-level study, we offer two introductory routes to our qualifications. You could either choose to start with an Access module, or a module which allows you to count your previous learning towards an Open University qualification. Read our guide on Where to take your learning next for more information.

Not ready for formal University study? Then browse over 1000 free courses on OpenLearn and sign up to our newsletter to hear about new free courses as they are released.

Every year, thousands of students decide to study with The Open University. With over 120 qualifications, we’ve got the right course for you.

Request an Open University prospectus371