Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Mastering Python for Networking and Security

You're reading from   Mastering Python for Networking and Security Leverage the scripts and libraries of Python version 3.7 and beyond to overcome networking and security issues

Arrow left icon
Product type Paperback
Published in Jan 2021
Publisher Packt
ISBN-13 9781839217166
Length 538 pages
Edition 2nd Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
José Manuel Ortega José Manuel Ortega
Author Profile Icon José Manuel Ortega
José Manuel Ortega
Arrow right icon
View More author details
Toc

Table of Contents (22) Chapters Close

Preface 1. Section 1: The Python Environment and System Programming Tools
2. Chapter 1: Working with Python Scripting FREE CHAPTER 3. Chapter 2: System Programming Packages 4. Section 2: Network Scripting and Extracting Information from the Tor Network with Python
5. Chapter 3: Socket Programming 6. Chapter 4: HTTP Programming 7. Chapter 5: Connecting to the Tor Network and Discovering Hidden Services 8. Section 3: Server Scripting and Port Scanning with Python
9. Chapter 6: Gathering Information from Servers 10. Chapter 7: Interacting with FTP, SFTP, and SSH Servers 11. Chapter 8: Working with Nmap Scanner 12. Section 4: Server Vulnerabilities and Security in Python Modules
13. Chapter 9: Interacting with Vulnerability Scanners 14. Chapter 10: Identifying Server Vulnerabilities in Web Applications 15. Chapter 11: Security and Vulnerabilities in Python Modules 16. Section 5: Python Forensics
17. Chapter 12: Python Tools for Forensics Analysis 18. Chapter 13: Extracting Geolocation and Metadata from Documents, Images, and Browsers 19. Chapter 14: Cryptography and Steganography 20. Assessments 21. Other Books You May Enjoy

Generating keys securely with the secrets and hashlib modules

In this section, we are going to review the main modules Python provides for generating keys and passwords in a secure way.

Generating keys securely with the secrets module

The secrets module is used to generate cryptographically strong random numbers, suitable for managing data such as passwords, user authentication, security tokens, and related secrets.

In general, the use of random numbers is common in various scientific computing applications and cryptographic applications. With the help of the secrets module, we can generate reliable random data that can be used by cryptographic operations.

In particular, secrets are recommended to be used preferably over the generation of pseudo-random numbers using the random module, which is designed for modeling and simulation, and not for security or cryptography.

The secrets module derives its implementation from the os.urandom() and SystemRandom() methods that...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime