<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://elvis.hcw.ac.at/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=NSelimovic</id>
	<title>Elvis Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://elvis.hcw.ac.at/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=NSelimovic"/>
	<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php/Special:Contributions/NSelimovic"/>
	<updated>2026-09-10T02:06:38Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.5</generator>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=Password_Security,_Threats_and_Measures&amp;diff=14539</id>
		<title>Password Security, Threats and Measures</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=Password_Security,_Threats_and_Measures&amp;diff=14539"/>
		<updated>2024-03-04T18:25:16Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary == &lt;br /&gt;
&lt;br /&gt;
This documentation provides an overview of the threats to passwords and the security measures taken against them. Furtheron, this article provides a presentation on how to crack a password with the pentesting tool &amp;quot;John The Ripper&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Password Security ==&lt;br /&gt;
&lt;br /&gt;
Passwords are the most used authentication method. Therefore, the security of a password is of significant importance. The strenght of a password can be measured through the quality of the password or its entropy. Besides the quality and entropy of a password, factors like personal data or known passwords have to be considered.&lt;br /&gt;
&lt;br /&gt;
The quality of a password is described as the time it takes to crack a password using the trial and error method. Passwords which take longer to crack are considered to be of higher quality.&lt;br /&gt;
The entropy of a password is described as the randomness and unpredictability of a password. The entropy of a password can be impacted through factors like the length and character set size.&lt;br /&gt;
&lt;br /&gt;
=== Password Managers ===&lt;br /&gt;
&lt;br /&gt;
Password managers can store the passwords, guide the creation and provide security when sharing passwords. Password managers can include aid in the cases of long, complex and important passwords as they store the passwords of the user and provide a certain level of security. These managers often consist of several authentication steps in order to achieve this certain level of security. The functionality can differ as there are different types of managers.&lt;br /&gt;
&lt;br /&gt;
Types of password managers:&lt;br /&gt;
* Cloud-Based Password Managers&lt;br /&gt;
* Local Password Managers&lt;br /&gt;
* Browser-Based Managers&lt;br /&gt;
* Enterprise Managers&lt;br /&gt;
* Hardware Password Managers&lt;br /&gt;
&lt;br /&gt;
== Vulnerabilities and Threats ==&lt;br /&gt;
&lt;br /&gt;
Passwords are mostly created by humans and are therefore a subject to vulnerabilities. Humans seek simplicity and comfort and they try to create easy to remember passwords. They often use personal information in order to provide a memorable word. Most of them use the same passwords on multiple websites and neither do they change them frequently. Close to two thirds of users do not use special characters in their passwords.&lt;br /&gt;
&lt;br /&gt;
These factors create many vulnerabilities as they make the passwords predictable, of low quality or entropy and therefore easier to crack.&lt;br /&gt;
&lt;br /&gt;
=== Threats ===&lt;br /&gt;
&lt;br /&gt;
These weakly created passwords are often the victim to different threats. Most of these threats require some sort of fraud or deception.&lt;br /&gt;
&lt;br /&gt;
Some of these threats are:&lt;br /&gt;
* Phishing&lt;br /&gt;
Is trying to gain login credentials by impersonating a person or faking a website.&lt;br /&gt;
&lt;br /&gt;
* Keylogging&lt;br /&gt;
Is recording the keystrokes which a user puts in.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Attacks ====&lt;br /&gt;
These attacks vary and can be successful at compromising the victims password. Different attacks require different computational power, memory and time when cracking passwords.  &lt;br /&gt;
&lt;br /&gt;
Some of these attacks are:&lt;br /&gt;
* Brute-Force and Dictionary Attacks&lt;br /&gt;
Trying to guess the password or using wordlists.&lt;br /&gt;
* Rainbow-Table Attack&lt;br /&gt;
Hashing a password over and over again in order to gain the same hash as the victim password and then reconstruct the plaintext password.&lt;br /&gt;
&lt;br /&gt;
== Security Measures ==&lt;br /&gt;
In order to prevent attackers from gaining unauthorized access, developers have came up with different security measures. These measures can provide further steps of authentication and achieve more security.&lt;br /&gt;
&lt;br /&gt;
These are some security measures which can help to withstand most of the named threats:&lt;br /&gt;
* Two-Factor Authentication&lt;br /&gt;
This measure requires and additional step of authentication on system access.&lt;br /&gt;
&lt;br /&gt;
* Security Questions&lt;br /&gt;
Security questions also require an additional step of authentication by requiring the answer to personal questions.&lt;br /&gt;
&lt;br /&gt;
* Account Policies&lt;br /&gt;
Account policies force the user to frequently change the password or to lock the account if the password is entered wrong multiple times.&lt;br /&gt;
&lt;br /&gt;
* Activity Monitoring&lt;br /&gt;
The monitoring of suspicious activity like a login attempt of a new devices can alert the user to pay attention to a certain account and maybe change the login credentials.&lt;br /&gt;
&lt;br /&gt;
== Password Cracking Tools ==&lt;br /&gt;
These are only some of the cracking tools which can be used to attack a victims account:&lt;br /&gt;
* John The Ripper&lt;br /&gt;
Supports brute-force and dictionary attacks. This tool will be used later in this documentation to present a password cracking process.&lt;br /&gt;
&lt;br /&gt;
* Hashcat &lt;br /&gt;
Offers brute-force, dictionary, mask attacks and more.&lt;br /&gt;
&lt;br /&gt;
* OPH Crack&lt;br /&gt;
Implements the rainbow table attack.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Operating system/Platform: Kali Linux&lt;br /&gt;
* Packages: git openwall/john&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cracking a password ==&lt;br /&gt;
The following steps are necessary in order to crack a password. Kali linux is used as the operating system as it provides different cracking tools and more. The used tool for this crack process is &amp;quot;John The Ripper&amp;quot;.&lt;br /&gt;
* NOTE: Password cracking is unethical. This demonstration serves for educational purposes and should not be recreated.&lt;br /&gt;
&lt;br /&gt;
=== Step 1 ===&lt;br /&gt;
&lt;br /&gt;
Create a .zip password secured archive.&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install zip&lt;br /&gt;
&lt;br /&gt;
 sudo nano document.txt&lt;br /&gt;
&lt;br /&gt;
 zip -e archive.zip document.txt&lt;br /&gt;
&lt;br /&gt;
You will be prompted to enter a password.&lt;br /&gt;
=== Step 2 ===&lt;br /&gt;
&lt;br /&gt;
Now the hash of the password needs to be achieved.&lt;br /&gt;
&lt;br /&gt;
 zip2john archive.zip &amp;gt; hash.txt&lt;br /&gt;
&lt;br /&gt;
This command saves the hash of the password which is used to secure the archive.zip archive in a hash.txt file.&lt;br /&gt;
&lt;br /&gt;
=== Step 3 ===&lt;br /&gt;
&lt;br /&gt;
Now the hash can be cracked. The crack is only successful if the password is in the password list that john uses to compare the hashes.&lt;br /&gt;
&lt;br /&gt;
 john hash.txt&lt;br /&gt;
&lt;br /&gt;
The passwordlist in this case is the default password list of john. However, different password lists can be used by specifying the file they are saved as.&lt;br /&gt;
&lt;br /&gt;
 john --wordlist=/tmp/password-list.txt hash.txt&lt;br /&gt;
&lt;br /&gt;
This way john will try to crack the password with the password-list.txt password list file.&lt;br /&gt;
* In the case of a successful attack, john will provide a confirmation message about the successful attack and display the password.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* https://www.overleaf.com/project/64fc39ddb97b168fb7bd033d&lt;br /&gt;
* https://www.openwall.com/john/&lt;br /&gt;
* https://www.kali.org/tools/john/&lt;br /&gt;
* https://www.kali.org/&lt;br /&gt;
* https://ieeexplore.ieee.org/document/6234434&lt;br /&gt;
* https://ieeexplore.ieee.org/document/8936178&lt;br /&gt;
* https://doi.org/10.1145/359168.359172&lt;br /&gt;
* https://ieeexplore.ieee.org/document/9023888&lt;br /&gt;
* https://ieeexplore.ieee.org/document/9609778&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=Password_Security,_Threats_and_Measures&amp;diff=14537</id>
		<title>Password Security, Threats and Measures</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=Password_Security,_Threats_and_Measures&amp;diff=14537"/>
		<updated>2024-03-04T18:22:51Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary == &lt;br /&gt;
&lt;br /&gt;
This documentation provides an overview of the threats to passwords and the security measures taken against them. Furtheron, this article provides a presentation on how to crack a password with the pentesting tool &amp;quot;John The Ripper&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Password Security ==&lt;br /&gt;
&lt;br /&gt;
Passwords are the most used authentication method. Therefore, the security of a password is of significant importance. The strenght of a password can be measured through the quality of the password or its entropy. Besides the quality and entropy of a password, factors like personal data or known passwords have to be considered.&lt;br /&gt;
&lt;br /&gt;
The quality of a password is described as the time it takes to crack a password using the trial and error method. Passwords which take longer to crack are considered to be of higher quality.&lt;br /&gt;
The entropy of a password is described as the randomness and unpredictability of a password. The entropy of a password can be impacted through factors like the length and character set size.&lt;br /&gt;
&lt;br /&gt;
=== Password Managers ===&lt;br /&gt;
&lt;br /&gt;
Password managers can store the passwords, guide the creation and provide security when sharing passwords. Password managers can include aid in the cases of long, complex and important passwords as they store the passwords of the user and provide a certain level of security. These managers often consist of several authentication steps in order to achieve this certain level of security. The functionality can differ as there are different types of managers.&lt;br /&gt;
&lt;br /&gt;
Types of password managers:&lt;br /&gt;
* Cloud-Based Password Managers&lt;br /&gt;
* Local Password Managers&lt;br /&gt;
* Browser-Based Managers&lt;br /&gt;
* Enterprise Managers&lt;br /&gt;
* Hardware Password Managers&lt;br /&gt;
&lt;br /&gt;
== Vulnerabilities and Threats ==&lt;br /&gt;
&lt;br /&gt;
Passwords are mostly created by humans and are therefore a subject to vulnerabilities. Humans seek simplicity and comfort and they try to create easy to remember passwords. They often use personal information in order to provide a memorable word. Most of them use the same passwords on multiple websites and neither do they change them frequently. Close to two thirds of users do not use special characters in their passwords.&lt;br /&gt;
&lt;br /&gt;
These factors create many vulnerabilities as they make the passwords predictable, of low quality or entropy and therefore easier to crack.&lt;br /&gt;
&lt;br /&gt;
=== Threats ===&lt;br /&gt;
&lt;br /&gt;
These weakly created passwords are often the victim to different threats. Most of these threats require some sort of fraud or deception.&lt;br /&gt;
&lt;br /&gt;
Some of these threats are:&lt;br /&gt;
* Phishing&lt;br /&gt;
Is trying to gain login credentials by impersonating a person or faking a website.&lt;br /&gt;
&lt;br /&gt;
* Keylogging&lt;br /&gt;
Is recording the keystrokes which a user puts in.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Attacks ====&lt;br /&gt;
These attacks vary and can be successful at compromising the victims password. Different attacks require different computational power, memory and time when cracking passwords.  &lt;br /&gt;
&lt;br /&gt;
Some of these attacks are:&lt;br /&gt;
* Brute-Force and Dictionary Attacks&lt;br /&gt;
Trying to guess the password or using wordlists.&lt;br /&gt;
* Rainbow-Table Attack&lt;br /&gt;
Hashing a password over and over again in order to gain the same hash as the victim password and then reconstruct the plaintext password.&lt;br /&gt;
&lt;br /&gt;
== Security Measures ==&lt;br /&gt;
In order to prevent attackers from gaining unauthorized access, developers have came up with different security measures. These measures can provide further steps of authentication and achieve more security.&lt;br /&gt;
&lt;br /&gt;
These are some security measures which can help to withstand most of the named threats:&lt;br /&gt;
* Two-Factor Authentication&lt;br /&gt;
This measure requires and additional step of authentication on system access.&lt;br /&gt;
&lt;br /&gt;
* Security Questions&lt;br /&gt;
Security questions also require an additional step of authentication by requiring the answer to personal questions.&lt;br /&gt;
&lt;br /&gt;
* Account Policies&lt;br /&gt;
Account policies force the user to frequently change the password or to lock the account if the password is entered wrong multiple times.&lt;br /&gt;
&lt;br /&gt;
* Activity Monitoring&lt;br /&gt;
The monitoring of suspicious activity like a login attempt of a new devices can alert the user to pay attention to a certain account and maybe change the login credentials.&lt;br /&gt;
&lt;br /&gt;
== Password Cracking Tools ==&lt;br /&gt;
These are only some of the cracking tools:&lt;br /&gt;
* John The Ripper&lt;br /&gt;
Supports brute-force and dictionary attacks. This tool will be used later in this documentation to present a password cracking process.&lt;br /&gt;
&lt;br /&gt;
* Hashcat &lt;br /&gt;
Offers brute-force, dictionary, mask attacks and more.&lt;br /&gt;
&lt;br /&gt;
* OPH Crack&lt;br /&gt;
Implements the rainbow table attack.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Operating system/Platform: Kali Linux&lt;br /&gt;
* Packages: git openwall/john&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cracking a password ==&lt;br /&gt;
The following steps are necessary in order to crack a password. Kali linux is used as the operating system as it provides different cracking tools and more. The used tool for this crack process is &amp;quot;John The Ripper&amp;quot;.&lt;br /&gt;
* NOTE: Password cracking is unethical. This demonstration serves for educational purposes and should not be recreated.&lt;br /&gt;
&lt;br /&gt;
=== Step 1 ===&lt;br /&gt;
&lt;br /&gt;
Create a .zip password secured archive.&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install zip&lt;br /&gt;
&lt;br /&gt;
 sudo nano document.txt&lt;br /&gt;
&lt;br /&gt;
 zip -e archive.zip document.txt&lt;br /&gt;
&lt;br /&gt;
You will be prompted to enter a password.&lt;br /&gt;
=== Step 2 ===&lt;br /&gt;
&lt;br /&gt;
Now the hash of the password needs to be achieved.&lt;br /&gt;
&lt;br /&gt;
 zip2john archive.zip &amp;gt; hash.txt&lt;br /&gt;
&lt;br /&gt;
This command saves the hash of the password which is used to secure the archive.zip archive in a hash.txt file.&lt;br /&gt;
&lt;br /&gt;
=== Step 3 ===&lt;br /&gt;
&lt;br /&gt;
Now the hash can be cracked. The crack is only successful if the password is in the password list that john uses to compare the hashes.&lt;br /&gt;
&lt;br /&gt;
 john hash.txt&lt;br /&gt;
&lt;br /&gt;
The passwordlist in this case is the default password list of john. However, different password lists can be used by specifying the file they are saved as.&lt;br /&gt;
&lt;br /&gt;
 john --wordlist=/tmp/password-list.txt hash.txt&lt;br /&gt;
&lt;br /&gt;
This way john will try to crack the password with the password-list.txt password list file.&lt;br /&gt;
* In the case of a successful attack, john will provide a confirmation message about the successful attack and display the password.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* https://www.overleaf.com/project/64fc39ddb97b168fb7bd033d&lt;br /&gt;
* https://www.openwall.com/john/&lt;br /&gt;
* https://www.kali.org/tools/john/&lt;br /&gt;
* https://www.kali.org/&lt;br /&gt;
* https://ieeexplore.ieee.org/document/6234434&lt;br /&gt;
* https://ieeexplore.ieee.org/document/8936178&lt;br /&gt;
* https://doi.org/10.1145/359168.359172&lt;br /&gt;
* https://ieeexplore.ieee.org/document/9023888&lt;br /&gt;
* https://ieeexplore.ieee.org/document/9609778&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=Password_Security,_Threats_and_Measures&amp;diff=14536</id>
		<title>Password Security, Threats and Measures</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=Password_Security,_Threats_and_Measures&amp;diff=14536"/>
		<updated>2024-03-04T18:22:16Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary == &lt;br /&gt;
&lt;br /&gt;
This documentation provides an overview of the threats to passwords and the security measures taken against them. Furtheron, this article provides a presentation on how to crack a password with the pentesting tool &amp;quot;John The Ripper&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Password Security ==&lt;br /&gt;
&lt;br /&gt;
Passwords are the most used authentication method. Therefore, the security of a password is of significant importance. The strenght of a password can be measured through the quality of the password or its entropy. Besides the quality and entropy of a password, factors like personal data or known passwords have to be considered.&lt;br /&gt;
&lt;br /&gt;
The quality of a password is described as the time it takes to crack a password using the trial and error method. Passwords which take longer to crack are considered to be of higher quality.&lt;br /&gt;
The entropy of a password is described as the randomness and unpredictability of a password. The entropy of a password can be impacted through factors like the length and character set size.&lt;br /&gt;
&lt;br /&gt;
=== Password Managers ===&lt;br /&gt;
&lt;br /&gt;
Password managers can store the passwords, guide the creation and provide security when sharing passwords. Password managers can include aid in the cases of long, complex and important passwords as they store the passwords of the user and provide a certain level of security. These managers often consist of several authentication steps in order to achieve this certain level of security. The functionality can differ as there are different types of managers.&lt;br /&gt;
&lt;br /&gt;
Types of password managers:&lt;br /&gt;
* Cloud-Based Password Managers&lt;br /&gt;
* Local Password Managers&lt;br /&gt;
* Browser-Based Managers&lt;br /&gt;
* Enterprise Managers&lt;br /&gt;
* Hardware Password Managers&lt;br /&gt;
&lt;br /&gt;
== Vulnerabilities and Threats ==&lt;br /&gt;
&lt;br /&gt;
Passwords are mostly created by humans and are therefore a subject to vulnerabilities. Humans seek simplicity and comfort and they try to create easy to remember passwords. They often use personal information in order to provide a memorable word. Most of them use the same passwords on multiple websites and neither do they change them frequently. Close to two thirds of users do not use special characters in their passwords.&lt;br /&gt;
&lt;br /&gt;
These factors create many vulnerabilities as they make the passwords predictable, of low quality or entropy and therefore easier to crack.&lt;br /&gt;
&lt;br /&gt;
=== Threats ===&lt;br /&gt;
&lt;br /&gt;
These weakly created passwords are often the victim to different threats. Most of these threats require some sort of fraud or deception.&lt;br /&gt;
&lt;br /&gt;
Some of these threats are:&lt;br /&gt;
* Phishing&lt;br /&gt;
Is trying to gain login credentials by impersonating a person or faking a website.&lt;br /&gt;
&lt;br /&gt;
* Keylogging&lt;br /&gt;
Is recording the keystrokes which a user puts in.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Attacks ====&lt;br /&gt;
These attacks vary and can be successful at compromising the victims password. Different attacks require different computational power, memory and time when cracking passwords.  &lt;br /&gt;
&lt;br /&gt;
Some of these attacks are:&lt;br /&gt;
* Brute-Force and Dictionary Attacks&lt;br /&gt;
Trying to guess the password or using wordlists.&lt;br /&gt;
* Rainbow-Table Attack&lt;br /&gt;
Hashing a password over and over again in order to gain the same hash as the victim password and then reconstruct the plaintext password.&lt;br /&gt;
&lt;br /&gt;
== Security Measures ==&lt;br /&gt;
In order to prevent attackers from gaining unauthorized access, developers have came up with different security measures. These measures can provide further steps of authentication and achieve more security.&lt;br /&gt;
&lt;br /&gt;
These are some security measures which can help to withstand most of the named threats:&lt;br /&gt;
* Two-Factor Authentication&lt;br /&gt;
This measure requires and additional step of authentication on system access.&lt;br /&gt;
&lt;br /&gt;
* Security Questions&lt;br /&gt;
Security questions also require an additional step of authentication by requiring the answer to personal questions.&lt;br /&gt;
&lt;br /&gt;
* Account Policies&lt;br /&gt;
Account policies force the user to frequently change the password or to lock the account if the password is entered wrong multiple times.&lt;br /&gt;
&lt;br /&gt;
* Activity Monitoring&lt;br /&gt;
The monitoring of suspicious activity like a login attempt of a new devices can alert the user to pay attention to a certain account and maybe change the login credentials.&lt;br /&gt;
&lt;br /&gt;
== Password Cracking Tools ==&lt;br /&gt;
These are only some of the cracking tools:&lt;br /&gt;
* John The Ripper&lt;br /&gt;
Supports brute-force and dictionary attacks. This tool will be used later in this documentation to present a password cracking process.&lt;br /&gt;
&lt;br /&gt;
* Hashcat &lt;br /&gt;
Offers brute-force, dictionary, mask attacks and more.&lt;br /&gt;
&lt;br /&gt;
* OPH Crack&lt;br /&gt;
Implements the rainbow table attack.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Operating system/Platform: Kali Linux&lt;br /&gt;
* Packages: git openwall/john&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
The following steps are necessary in order to crack a password. Kali linux is used as the operating system as it provides different cracking tools and more. The used tool for this crack process is &amp;quot;John The Ripper&amp;quot;.&lt;br /&gt;
* NOTE: Password cracking is unethical. This demonstration serves for educational purposes and should not be recreated.&lt;br /&gt;
&lt;br /&gt;
=== Step 1 ===&lt;br /&gt;
&lt;br /&gt;
Create a .zip password secured archive.&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install zip&lt;br /&gt;
&lt;br /&gt;
 sudo nano document.txt&lt;br /&gt;
&lt;br /&gt;
 zip -e archive.zip document.txt&lt;br /&gt;
&lt;br /&gt;
You will be prompted to enter a password.&lt;br /&gt;
=== Step 2 ===&lt;br /&gt;
&lt;br /&gt;
Now the hash of the password needs to be achieved.&lt;br /&gt;
&lt;br /&gt;
 zip2john archive.zip &amp;gt; hash.txt&lt;br /&gt;
&lt;br /&gt;
This command saves the hash of the password which is used to secure the archive.zip archive in a hash.txt file.&lt;br /&gt;
&lt;br /&gt;
=== Step 3 ===&lt;br /&gt;
&lt;br /&gt;
Now the hash can be cracked. The crack is only successful if the password is in the password list that john uses to compare the hashes.&lt;br /&gt;
&lt;br /&gt;
 john hash.txt&lt;br /&gt;
&lt;br /&gt;
The passwordlist in this case is the default password list of john. However, different password lists can be used by specifying the file they are saved as.&lt;br /&gt;
&lt;br /&gt;
 john --wordlist=/tmp/password-list.txt hash.txt&lt;br /&gt;
&lt;br /&gt;
This way john will try to crack the password with the password-list.txt password list file.&lt;br /&gt;
* In the case of a successful attack, john will provide a confirmation message about the successful attack and display the password.&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* https://www.overleaf.com/project/64fc39ddb97b168fb7bd033d&lt;br /&gt;
* https://www.openwall.com/john/&lt;br /&gt;
* https://www.kali.org/tools/john/&lt;br /&gt;
* https://www.kali.org/&lt;br /&gt;
* https://ieeexplore.ieee.org/document/6234434&lt;br /&gt;
* https://ieeexplore.ieee.org/document/8936178&lt;br /&gt;
* https://doi.org/10.1145/359168.359172&lt;br /&gt;
* https://ieeexplore.ieee.org/document/9023888&lt;br /&gt;
* https://ieeexplore.ieee.org/document/9609778&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=Password_Security,_Threats_and_Measures&amp;diff=14517</id>
		<title>Password Security, Threats and Measures</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=Password_Security,_Threats_and_Measures&amp;diff=14517"/>
		<updated>2024-03-04T01:17:19Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: Created page with &amp;quot;== Summary ==   This documentation provides an overview of the threats to passwords and the security measures taken against them. Furtheron, this article provides a presentation on how to crack a password with the pentesting tool &amp;quot;John The Ripper&amp;quot;.  == Password Security ==  Passwords are the most used authentication method. Therefore, the security of a password is of significant importance. The strenght of a password can be measured through the quality of the password or...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary == &lt;br /&gt;
&lt;br /&gt;
This documentation provides an overview of the threats to passwords and the security measures taken against them. Furtheron, this article provides a presentation on how to crack a password with the pentesting tool &amp;quot;John The Ripper&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Password Security ==&lt;br /&gt;
&lt;br /&gt;
Passwords are the most used authentication method. Therefore, the security of a password is of significant importance. The strenght of a password can be measured through the quality of the password or its entropy. Besides the quality and entropy of a password, factors like personal data or known passwords have to be considered.&lt;br /&gt;
&lt;br /&gt;
The quality of a password is described as the time it takes to crack a password using the trial and error method. Passwords which take longer to crack are considered to be of higher quality.&lt;br /&gt;
The entropy of a password is described as the randomness and unpredictability of a password. The entropy of a password can be impacted through factors like the length and character set size.&lt;br /&gt;
&lt;br /&gt;
=== Password Managers ===&lt;br /&gt;
&lt;br /&gt;
Password managers can store the passwords, guide the creation and provide security when sharing passwords. Password managers can include aid in the cases of long, complex and important passwords as they store the passwords of the user and provide a certain level of security. These managers often consist of several authentication steps in order to achieve this certain level of security. The functionality can differ as there are different types of managers.&lt;br /&gt;
&lt;br /&gt;
Types of password managers:&lt;br /&gt;
* Cloud-Based Password Managers&lt;br /&gt;
* Local Password Managers&lt;br /&gt;
* Browser-Based Managers&lt;br /&gt;
* Enterprise Managers&lt;br /&gt;
* Hardware Password Managers&lt;br /&gt;
&lt;br /&gt;
== Vulnerabilities and Threats ==&lt;br /&gt;
&lt;br /&gt;
Passwords are mostly created by humans and are therefore a subject to vulnerabilities. Humans seek simplicity and comfort and they try to create easy to remember passwords. They often use personal information in order to provide a memorable word. Most of them use the same passwords on multiple websites and neither do they change them frequently. Close to two thirds of users do not use special characters in their passwords.&lt;br /&gt;
&lt;br /&gt;
These factors create many vulnerabilities as they make the passwords predictable, of low quality or entropy and therefore easier to crack.&lt;br /&gt;
&lt;br /&gt;
=== Threats ===&lt;br /&gt;
These weakly created passwords are often the victim to different threats. These threats are &lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
* Operating system/Platform: Kali Linux&lt;br /&gt;
* Packages: git openwall/john&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
=== Step 1 ===&lt;br /&gt;
&lt;br /&gt;
Enter these commands in the shell&lt;br /&gt;
&lt;br /&gt;
 echo foo&lt;br /&gt;
 echo bar&lt;br /&gt;
&lt;br /&gt;
=== Step 2 ===&lt;br /&gt;
&lt;br /&gt;
Make sure to read&lt;br /&gt;
&lt;br /&gt;
* War and Peace&lt;br /&gt;
* Lord of the Rings&lt;br /&gt;
* The Baroque Cycle&lt;br /&gt;
&lt;br /&gt;
== Used Hardware ==&lt;br /&gt;
&lt;br /&gt;
[[Device to be used with this documentation]]&lt;br /&gt;
[[Maybe another device to be used with this documentation]]&lt;br /&gt;
&lt;br /&gt;
== Courses ==&lt;br /&gt;
&lt;br /&gt;
* [[A course where this documentation was used]] (2017, 2018)&lt;br /&gt;
* [[Another one]] (2018)&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* https://www.openwall.com/john/&lt;br /&gt;
* https://www.kali.org/tools/john/&lt;br /&gt;
* https://www.kali.org/&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=Secure_Boot_Zynq-7000_SoC_Family&amp;diff=14392</id>
		<title>Secure Boot Zynq-7000 SoC Family</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=Secure_Boot_Zynq-7000_SoC_Family&amp;diff=14392"/>
		<updated>2024-02-29T00:45:39Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary == &lt;br /&gt;
&lt;br /&gt;
The Secure Boot process for the Zynq 7000 SoC family is an important securiy features which is designed to protect the integrity and authenticity of the system´s software. This documentation contains a tutorial and basic information on how to implement the Secure Boot technology onto the Zybo Z7 development board. &lt;br /&gt;
&lt;br /&gt;
== Hardware and Software ==&lt;br /&gt;
&lt;br /&gt;
Required Hardware and Software:&lt;br /&gt;
&lt;br /&gt;
* Software: Vitis(2023.2), Vivado(2023.2)&lt;br /&gt;
* Hardware: Zybo Z7 Zynq-7020 Development Board&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot works the same as on other Zynq-7000 development boards, as long as they are available in the Vitis and Vivado software. The used software to configure the boards and implement the technology is provided by Xilinx. The used board is provided by the ELVIS Embedded Lab Vienna for IoT &amp;amp; Security at FH Campus Vienna.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
In order to fulfill the task, the board has to be configured and set up correctly. The setup and configuration of certain hardware features can be done with the Vivado 2023.2 software which is provided by Xilinx. The configuration inside the Vivado 2023.2 creates an output which can be used to create a platform project. A platform project offers the configuration of certain libraries and templates which can be used inside the Vitis 2023.2 IDE. The configuration of the platform project enables the creation of application projects which are used to program the board.&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot process requires the project to be configured to the point where the application project can be coded and programmed onto the board.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot technology requires the developer to create a boot image which is secure.&lt;br /&gt;
The Vitis IDE offers an &amp;quot;Create Boot Image&amp;quot; tool which enables the creation of different boot images of an application.&lt;br /&gt;
&lt;br /&gt;
=== Step 1 ===&lt;br /&gt;
&lt;br /&gt;
Right click on the application, which is supposed to have the Secure Boot implemented, in the explorer folder and choose the option &amp;quot;Create Boot Image&amp;quot;.&lt;br /&gt;
[[File:Createbootimage.png|250px|thumb|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Step 2 ===&lt;br /&gt;
&lt;br /&gt;
After the &amp;quot;Create Boot Image&amp;quot; window opens, the window offers 2 different tabs. One being labeled &amp;quot;Basic&amp;quot; and one being labeled &amp;quot;Security&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The Security tab offers 2 more tabs which are labeled &amp;quot;Authentication&amp;quot; and &amp;quot;Encryption&amp;quot;. Both of these options offer a checkbox to enable either authentication or/and encryption of the boot process.&lt;br /&gt;
[[File:Encryptiontab.PNG|400px|thumb|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Step 3 ===&lt;br /&gt;
&lt;br /&gt;
In this example, the encryption of the boot process is used. In order to encrypt the boot process, the &amp;quot;Use Encryption&amp;quot; check box has to be checked and an part name has to be given in order to auto generate a key file.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Create Boot Image&amp;quot; window previews the different Boot image partitions in the lower half. After the enabling the use of encryption, different boot image partitions can be encrypted.&lt;br /&gt;
&lt;br /&gt;
To encrypt the different partitions, the partitions have to be marked in the window and than the &amp;quot;Edit&amp;quot; button has to be pressed. &lt;br /&gt;
&lt;br /&gt;
After pressing the &amp;quot;Edit&amp;quot; button, an &amp;quot;Edit Partition&amp;quot; window opens and the partition can be encrypted by choosing an encryption type in the encryption menu.&lt;br /&gt;
&lt;br /&gt;
After choosing the encryption types for the different partitions, the image can be created by pressing the &amp;quot;Create Image&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
- NOTE: In order to encrypt the partitions, the bootloader has to be encrypted.&lt;br /&gt;
[[File:Bootimagepartition.PNG|400px|thumb|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Step 4 ===&lt;br /&gt;
&lt;br /&gt;
This step requires the device to be connected to the computer.&lt;br /&gt;
&lt;br /&gt;
The boot image that was just created can now be flashed onto the device. To flash the boot image onto the device, right click onto the application and choose &amp;quot;Program Flash&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
A &amp;quot;Program Flash Memory&amp;quot; window opens. In order to flash the just created encrypted boot image, it has to be chosen as the &amp;quot;Image File&amp;quot;.&lt;br /&gt;
[[File:Flashingimage.png|300px|thumb|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
NOTE:&lt;br /&gt;
* In order to be able to flash the boot image onto the device, the &amp;quot;QSPI&amp;quot; pins have to be enabled. On the ZYBO Z7 development board, a jumper placement onto the 2 QSPI pins is required.&lt;br /&gt;
&lt;br /&gt;
=== Step 5 ===&lt;br /&gt;
&lt;br /&gt;
After confirming the flash onto the device, the device will load the boot image that was just created and boot it. The flashing of a different boot image is now disabled as long as the encryption is not decrypted.&lt;br /&gt;
&lt;br /&gt;
=== Resetting the device ===&lt;br /&gt;
&lt;br /&gt;
In order to use the development board for its further development purposes, the flashing of other boot images still has to be an option. The JTAG ports, which can be either disabled or enabled are a way to boot or flash different boot images onto the board. This requires, as long as the JTAG ports are enabled, a jumper connection onto the 2 JTAG pins. Now the consumer is able to flash other images onto the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* https://digilent.com/reference/programmable-logic/guides/start&lt;br /&gt;
* https://digilent.com/reference/programmable-logic/guides/vivado-generate-bitstream&lt;br /&gt;
* https://docs.xilinx.com/v/u/en-US/wp426-zynq-7000-secure-boot&lt;br /&gt;
* https://www.xilinx.com/video/soc/create-zynq-boot-image-using-xilinx-sdk.html&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=File:Flashingimage.png&amp;diff=14391</id>
		<title>File:Flashingimage.png</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=File:Flashingimage.png&amp;diff=14391"/>
		<updated>2024-02-29T00:43:37Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=File:Bootimagepartition.PNG&amp;diff=14390</id>
		<title>File:Bootimagepartition.PNG</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=File:Bootimagepartition.PNG&amp;diff=14390"/>
		<updated>2024-02-29T00:35:28Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=File:Encryptiontab.PNG&amp;diff=14389</id>
		<title>File:Encryptiontab.PNG</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=File:Encryptiontab.PNG&amp;diff=14389"/>
		<updated>2024-02-29T00:26:57Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=Secure_Boot_Zynq-7000_SoC_Family&amp;diff=14388</id>
		<title>Secure Boot Zynq-7000 SoC Family</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=Secure_Boot_Zynq-7000_SoC_Family&amp;diff=14388"/>
		<updated>2024-02-29T00:14:04Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: /* Step 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary == &lt;br /&gt;
&lt;br /&gt;
The Secure Boot process for the Zynq 7000 SoC family is an important securiy features which is designed to protect the integrity and authenticity of the system´s software. This documentation contains a tutorial and basic information on how to implement the Secure Boot technology onto the Zybo Z7 development board. &lt;br /&gt;
&lt;br /&gt;
== Hardware and Software ==&lt;br /&gt;
&lt;br /&gt;
Required Hardware and Software:&lt;br /&gt;
&lt;br /&gt;
* Software: Vitis(2023.2), Vivado(2023.2)&lt;br /&gt;
* Hardware: Zybo Z7 Zynq-7020 Development Board&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot works the same as on other Zynq-7000 development boards, as long as they are available in the Vitis and Vivado software. The used software to configure the boards and implement the technology is provided by Xilinx. The used board is provided by the ELVIS Embedded Lab Vienna for IoT &amp;amp; Security at FH Campus Vienna.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
In order to fulfill the task, the board has to be configured and set up correctly. The setup and configuration of certain hardware features can be done with the Vivado 2023.2 software which is provided by Xilinx. The configuration inside the Vivado 2023.2 creates an output which can be used to create a platform project. A platform project offers the configuration of certain libraries and templates which can be used inside the Vitis 2023.2 IDE. The configuration of the platform project enables the creation of application projects which are used to program the board.&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot process requires the project to be configured to the point where the application project can be coded and programmed onto the board.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot technology requires the developer to create a boot image which is secure.&lt;br /&gt;
The Vitis IDE offers an &amp;quot;Create Boot Image&amp;quot; tool which enables the creation of different boot images of an application.&lt;br /&gt;
&lt;br /&gt;
=== Step 1 ===&lt;br /&gt;
&lt;br /&gt;
Right click on the application, which is supposed to have the Secure Boot implemented, in the explorer folder and choose the option &amp;quot;Create Boot Image&amp;quot;.&lt;br /&gt;
[[File:Createbootimage.png|200px|thumb|left|alt text]]&lt;br /&gt;
&lt;br /&gt;
=== Step 2 ===&lt;br /&gt;
&lt;br /&gt;
After the &amp;quot;Create Boot Image&amp;quot; window opens, the window offers 2 different tabs. One being labeled &amp;quot;Basic&amp;quot; and one being labeled &amp;quot;Security&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The Security tab offers 2 more tabs which are labeled &amp;quot;Authentication&amp;quot; and &amp;quot;Encryption&amp;quot;. Both of these options offer a checkbox to enable either authentication or/and encryption of the boot process.&lt;br /&gt;
&lt;br /&gt;
=== Step 3 ===&lt;br /&gt;
&lt;br /&gt;
In this example, the encryption of the boot process is used. In order to encrypt the boot process, the &amp;quot;Use Encryption&amp;quot; check box has to be checked and an part name has to be given in order to auto generate a key file.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Create Boot Image&amp;quot; window previews the different Boot image partitions in the lower half. After the enabling the use of encryption, different boot image partitions can be encrypted.&lt;br /&gt;
&lt;br /&gt;
To encrypt the different partitions, the partitions have to be marked in the window and than the &amp;quot;Edit&amp;quot; button has to be pressed. &lt;br /&gt;
&lt;br /&gt;
After pressing the &amp;quot;Edit&amp;quot; button, an &amp;quot;Edit Partition&amp;quot; window opens and the partition can be encrypted by choosing an encryption type in the encryption menu.&lt;br /&gt;
&lt;br /&gt;
After choosing the encryption types for the different partitions, the image can be created by pressing the &amp;quot;Create Image&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
- NOTE: In order to encrypt the partitions, the bootloader has to be encrypted.&lt;br /&gt;
&lt;br /&gt;
=== Step 4 ===&lt;br /&gt;
&lt;br /&gt;
This step requires the device to be connected to the computer.&lt;br /&gt;
&lt;br /&gt;
The boot image that was just created can now be flashed onto the device. To flash the boot image onto the device, right click onto the applicaiton and choose &amp;quot;Program Flash&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
A &amp;quot;Program Flash Memory&amp;quot; window opens. In order to flash the just created encrypted boot image, it has to be chosen as the &amp;quot;Image File&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
NOTE:&lt;br /&gt;
* In order to be able to flash the boot image onto the device, the &amp;quot;QSPI&amp;quot; pins have to be enabled. On the ZYBO Z7 development board, a jumper placement onto the 2 QSPI pins is required.&lt;br /&gt;
&lt;br /&gt;
=== Step 5 ===&lt;br /&gt;
&lt;br /&gt;
After confirming the flash onto the device, the device will load the boot image that was just created and boot it. The flashing of a different boot image is now disabled as long as the encryption is not decrypted.&lt;br /&gt;
&lt;br /&gt;
=== Resetting the device ===&lt;br /&gt;
&lt;br /&gt;
In order to use the development board for its further development purposes, the flashing of other boot images still has to be an option. The JTAG ports, which can be either disabled or enabled are a way to boot or flash different boot images onto the board. This requires, as long as the JTAG ports are enabled, a jumper connection onto the 2 JTAG pins. Now the consumer is able to flash other images onto the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
&lt;br /&gt;
* https://digilent.com/reference/programmable-logic/guides/start&lt;br /&gt;
* https://digilent.com/reference/programmable-logic/guides/vivado-generate-bitstream&lt;br /&gt;
* https://docs.xilinx.com/v/u/en-US/wp426-zynq-7000-secure-boot&lt;br /&gt;
* https://www.xilinx.com/video/soc/create-zynq-boot-image-using-xilinx-sdk.html&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=Secure_Boot_Zynq-7000_SoC_Family&amp;diff=14387</id>
		<title>Secure Boot Zynq-7000 SoC Family</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=Secure_Boot_Zynq-7000_SoC_Family&amp;diff=14387"/>
		<updated>2024-02-29T00:12:53Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary == &lt;br /&gt;
&lt;br /&gt;
The Secure Boot process for the Zynq 7000 SoC family is an important securiy features which is designed to protect the integrity and authenticity of the system´s software. This documentation contains a tutorial and basic information on how to implement the Secure Boot technology onto the Zybo Z7 development board. &lt;br /&gt;
&lt;br /&gt;
== Hardware and Software ==&lt;br /&gt;
&lt;br /&gt;
Required Hardware and Software:&lt;br /&gt;
&lt;br /&gt;
* Software: Vitis(2023.2), Vivado(2023.2)&lt;br /&gt;
* Hardware: Zybo Z7 Zynq-7020 Development Board&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot works the same as on other Zynq-7000 development boards, as long as they are available in the Vitis and Vivado software. The used software to configure the boards and implement the technology is provided by Xilinx. The used board is provided by the ELVIS Embedded Lab Vienna for IoT &amp;amp; Security at FH Campus Vienna.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
In order to fulfill the task, the board has to be configured and set up correctly. The setup and configuration of certain hardware features can be done with the Vivado 2023.2 software which is provided by Xilinx. The configuration inside the Vivado 2023.2 creates an output which can be used to create a platform project. A platform project offers the configuration of certain libraries and templates which can be used inside the Vitis 2023.2 IDE. The configuration of the platform project enables the creation of application projects which are used to program the board.&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot process requires the project to be configured to the point where the application project can be coded and programmed onto the board.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot technology requires the developer to create a boot image which is secure.&lt;br /&gt;
The Vitis IDE offers an &amp;quot;Create Boot Image&amp;quot; tool which enables the creation of different boot images of an application.&lt;br /&gt;
&lt;br /&gt;
=== Step 1 ===&lt;br /&gt;
&lt;br /&gt;
Right click on the application, which is supposed to have the Secure Boot implemented, in the explorer folder and choose the option &amp;quot;Create Boot Image&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Step 2 ===&lt;br /&gt;
&lt;br /&gt;
After the &amp;quot;Create Boot Image&amp;quot; window opens, the window offers 2 different tabs. One being labeled &amp;quot;Basic&amp;quot; and one being labeled &amp;quot;Security&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The Security tab offers 2 more tabs which are labeled &amp;quot;Authentication&amp;quot; and &amp;quot;Encryption&amp;quot;. Both of these options offer a checkbox to enable either authentication or/and encryption of the boot process.&lt;br /&gt;
&lt;br /&gt;
=== Step 3 ===&lt;br /&gt;
&lt;br /&gt;
In this example, the encryption of the boot process is used. In order to encrypt the boot process, the &amp;quot;Use Encryption&amp;quot; check box has to be checked and an part name has to be given in order to auto generate a key file.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Create Boot Image&amp;quot; window previews the different Boot image partitions in the lower half. After the enabling the use of encryption, different boot image partitions can be encrypted.&lt;br /&gt;
&lt;br /&gt;
To encrypt the different partitions, the partitions have to be marked in the window and than the &amp;quot;Edit&amp;quot; button has to be pressed. &lt;br /&gt;
&lt;br /&gt;
After pressing the &amp;quot;Edit&amp;quot; button, an &amp;quot;Edit Partition&amp;quot; window opens and the partition can be encrypted by choosing an encryption type in the encryption menu.&lt;br /&gt;
&lt;br /&gt;
After choosing the encryption types for the different partitions, the image can be created by pressing the &amp;quot;Create Image&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
- NOTE: In order to encrypt the partitions, the bootloader has to be encrypted.&lt;br /&gt;
&lt;br /&gt;
=== Step 4 ===&lt;br /&gt;
&lt;br /&gt;
This step requires the device to be connected to the computer.&lt;br /&gt;
&lt;br /&gt;
The boot image that was just created can now be flashed onto the device. To flash the boot image onto the device, right click onto the applicaiton and choose &amp;quot;Program Flash&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
A &amp;quot;Program Flash Memory&amp;quot; window opens. In order to flash the just created encrypted boot image, it has to be chosen as the &amp;quot;Image File&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
NOTE:&lt;br /&gt;
* In order to be able to flash the boot image onto the device, the &amp;quot;QSPI&amp;quot; pins have to be enabled. On the ZYBO Z7 development board, a jumper placement onto the 2 QSPI pins is required.&lt;br /&gt;
&lt;br /&gt;
=== Step 5 ===&lt;br /&gt;
&lt;br /&gt;
After confirming the flash onto the device, the device will load the boot image that was just created and boot it. The flashing of a different boot image is now disabled as long as the encryption is not decrypted.&lt;br /&gt;
&lt;br /&gt;
=== Resetting the device ===&lt;br /&gt;
&lt;br /&gt;
In order to use the development board for its further development purposes, the flashing of other boot images still has to be an option. The JTAG ports, which can be either disabled or enabled are a way to boot or flash different boot images onto the board. This requires, as long as the JTAG ports are enabled, a jumper connection onto the 2 JTAG pins. Now the consumer is able to flash other images onto the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
&lt;br /&gt;
* https://digilent.com/reference/programmable-logic/guides/start&lt;br /&gt;
* https://digilent.com/reference/programmable-logic/guides/vivado-generate-bitstream&lt;br /&gt;
* https://docs.xilinx.com/v/u/en-US/wp426-zynq-7000-secure-boot&lt;br /&gt;
* https://www.xilinx.com/video/soc/create-zynq-boot-image-using-xilinx-sdk.html&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=File:Createbootimage.png&amp;diff=14386</id>
		<title>File:Createbootimage.png</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=File:Createbootimage.png&amp;diff=14386"/>
		<updated>2024-02-29T00:09:49Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: Screenshot of bootimage creation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
Screenshot of bootimage creation&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
	<entry>
		<id>https://elvis.hcw.ac.at/wiki/index.php?title=Secure_Boot_Zynq-7000_SoC_Family&amp;diff=14373</id>
		<title>Secure Boot Zynq-7000 SoC Family</title>
		<link rel="alternate" type="text/html" href="https://elvis.hcw.ac.at/wiki/index.php?title=Secure_Boot_Zynq-7000_SoC_Family&amp;diff=14373"/>
		<updated>2024-02-06T01:01:10Z</updated>

		<summary type="html">&lt;p&gt;NSelimovic: How to implement a secure boot process in the Zynq-7020 SoC&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary == &lt;br /&gt;
&lt;br /&gt;
The Secure Boot process for the Zynq 7000 SoC family is an important securiy features which is designed to protect the integrity and authenticity of the system´s software. This documentation contains a tutorial and basic information on how to implement the Secure Boot technology onto the Zybo Z7 development board. &lt;br /&gt;
&lt;br /&gt;
== Hardware and Software ==&lt;br /&gt;
&lt;br /&gt;
Required Hardware and Software:&lt;br /&gt;
&lt;br /&gt;
* Software: Vitis(2023.2), Vivado(2023.2)&lt;br /&gt;
* Hardware: Zybo Z7 Zynq-7020 Development Board&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot works the same as on other Zynq-7000 development boards, as long as they are available in the Vitis and Vivado software. The used software to configure the boards and implement the technology is provided by Xilinx. The used board is provided by the ELVIS Embedded Lab Vienna for IoT &amp;amp; Security at FH Campus Vienna.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
In order to fulfill the task, the board has to be configured and set up correctly. The setup and configuration of certain hardware features can be done with the Vivado 2023.2 software which is provided by Xilinx. The configuration inside the Vivado 2023.2 creates an output which can be used to create a platform project. A platform project offers the configuration of certain libraries and templates which can be used inside the Vitis 2023.2 IDE. The configuration of the platform project enables the creation of application projects which are used to program the board.&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot process requires the project to be configured to the point where the application project can be coded and programmed onto the board.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
The implementation of the Secure Boot technology requires the developer to create a boot image which is secure.&lt;br /&gt;
The Vitis IDE offers an &amp;quot;Create Boot Image&amp;quot; tool which enables the creation of different boot images of an application.&lt;br /&gt;
&lt;br /&gt;
=== Step 1 ===&lt;br /&gt;
&lt;br /&gt;
Right click on the application, which is supposed to have the Secure Boot implemented, in the explorer folder and choose the option &amp;quot;Create Boot Image&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Step 2 ===&lt;br /&gt;
&lt;br /&gt;
After the &amp;quot;Create Boot Image&amp;quot; window opens, the window offers 2 different tabs. One being labeled &amp;quot;Basic&amp;quot; and one being labeled &amp;quot;Security&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The Security tab offers 2 more tabs which are labeled &amp;quot;Authentication&amp;quot; and &amp;quot;Encryption&amp;quot;. Both of these options offer a checkbox to enable either authentication or/and encryption of the boot process.&lt;br /&gt;
&lt;br /&gt;
=== Step 3 ===&lt;br /&gt;
&lt;br /&gt;
In this example, the encryption of the boot process is used. In order to encrypt the boot process, the &amp;quot;Use Encryption&amp;quot; check box has to be checked and an part name has to be given in order to auto generate a key file.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Create Boot Image&amp;quot; window previews the different Boot image partitions in the lower half. After the enabling the use of encryption, different boot image partitions can be encrypted.&lt;br /&gt;
&lt;br /&gt;
To encrypt the different partitions, the partitions have to be marked in the window and than the &amp;quot;Edit&amp;quot; button has to be pressed. &lt;br /&gt;
&lt;br /&gt;
After pressing the &amp;quot;Edit&amp;quot; button, an &amp;quot;Edit Partition&amp;quot; window opens and the partition can be encrypted by choosing an encryption type in the encryption menu.&lt;br /&gt;
&lt;br /&gt;
After choosing the encryption types for the different partitions, the image can be created by pressing the &amp;quot;Create Image&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
- NOTE: In order to encrypt the partitions, the bootloader has to be encrypted.&lt;br /&gt;
&lt;br /&gt;
=== Step 4 ===&lt;br /&gt;
&lt;br /&gt;
This step requires the device to be connected to the computer.&lt;br /&gt;
&lt;br /&gt;
The boot image that was just created can now be flashed onto the device. To flash the boot image onto the device, right click onto the applicaiton and choose &amp;quot;Program Flash&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
A &amp;quot;Program Flash Memory&amp;quot; window opens. In order to flash the just created encrypted boot image, it has to be chosen as the &amp;quot;Image File&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
NOTE:&lt;br /&gt;
* In order to be able to flash the boot image onto the device, the &amp;quot;QSPI&amp;quot; pins have to be enabled. On the ZYBO Z7 development board, a jumper placement onto the 2 QSPI pins is required.&lt;br /&gt;
&lt;br /&gt;
=== Step 5 ===&lt;br /&gt;
&lt;br /&gt;
After confirming the flash onto the device, the device will load the boot image that was just created and boot it. The flashing of a different boot image is now disabled as long as the encryption is not decrypted.&lt;br /&gt;
&lt;br /&gt;
=== Resetting the device ===&lt;br /&gt;
&lt;br /&gt;
In order to use the development board for its further development purposes, the flashing of other boot images still has to be an option. The JTAG ports, which can be either disabled or enabled are a way to boot or flash different boot images onto the board. This requires, as long as the JTAG ports are enabled, a jumper connection onto the 2 JTAG pins. Now the consumer is able to flash other images onto the device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sources ==&lt;br /&gt;
&lt;br /&gt;
* https://docs.xilinx.com/v/u/en-US/wp426-zynq-7000-secure-boot&lt;br /&gt;
* https://www.xilinx.com/video/soc/create-zynq-boot-image-using-xilinx-sdk.html&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>NSelimovic</name></author>
	</entry>
</feed>