Try Cybersecurity for this year’s App Challenge!

The 2021 App Challenge is here, and we want to help you make the best app possible! Keep reading to learn about cybersecurity algorithms that you can implement in your app to keep it safe from security breaches.

Implement an Encryption Algorithm

Implementing a simple encryption algorithm is a good way of learning the fundamentals of how messages are encoded and decoded, and it’s also an excellent way of understanding the strengths and weaknesses of various algorithms. For example, implementing a Caesar shift cipher, and a brute force decryption, shows how weak the Caesar cipher really is. Try creating an application where you can test the relative strength of various simple encryption algorithms such as caesar, playfair, vigenere.

Implement an Advanced Encryption Algorithm

There are many encryption algorithms out there, but RSA is a very popular one. The Rivest–Shamir–Adleman algorithm uses a pair of private and public keys that are mathematically linked. The implementation of the RSA algorithm largely revolves around large prime numbers, which through mathematical operations, become nearly impossible to decrypt using a computer. Here is a presentation on the implementation of the RSA algorithm. Try creating a program to encrypt messages that you can send to your friends. If you want to take it one step further, try creating an AWS Lambda function for your algorithm, and creating a web app so you can encrypt messages more easily.

Create a Password Manager

In today’s world, everyone has many accounts and most people tend to reuse the same password for all their accounts. This massive security risk can be overcome by using a password manager. To create a password manager you need to learn how to store passwords securely. The most common way to do this is by hashing the password which ensures that even in the event of a data breach, your passwords cannot get stolen. Some common hashing algorithms include SHA-256 and MD5. Many languages have external libraries that utilize these algorithms. Once you have a secure way of encrypting passwords, next you need to find out how to store them. Microsoft Azure has an SQL database service that you can use to store your hashes in a low cost fashion. Now, for the UI, you can create a web application, mobile app, or chrome extension that interfaces with your Azure SQL database.

Password Breach Detector

Nowadays, it seems like our passwords are being exposed every day. Many security researchers have created tools to check if your password has been compromised in a data breach. Tools such as Avast Hack Check, have i been pwned?, and Google Chrome’s compromised password checker can help you determine whether you need to change your passwords, but they are not convenient. Create a tool so that when you log into a website, the tool automatically checks if your password has been exposed in a data breach

We hope this was a helpful guide to implementing cybersecurity measures in your apps. Remember that the App Challenge is live from June 24th to November 1st. We look forward to seeing the creative app submissions!