Skip to main content

Cyber Security Practicals

1. Overview

A professional, installable Python package that provides a CLI tool to generate editable source code for Cyber Security practicals directly into your project workspace.

2. Features

  • Contains 10 standard educational Cyber Security practicals.
  • Generates clean, editable Python source files (.py) inside a cyber-security-practicals directory in your current workspace.
  • Easy-to-use CLI commands.
  • Interactive mode for selecting specific practicals.
  • Safe generation: Never silently overwrites your existing customized code.

3. Installation

You can install the package via pip:

pip install cis-pract

4. Available Practicals

  1. Substitution and Transposition
  2. RSA Encryption and Decryption
  3. Message Authentication Code
  4. Digital Signatures
  5. Diffie-Hellman Key Exchange
  6. IP Security / IPsec
  7. Web Security with SSL/TLS
  8. Intrusion Detection System
  9. Malware Analysis and Detection
  10. Firewall Configuration

5. List Practicals

To see the list of all available practicals, run:

cis-pract list

6. Generate All Practicals

To generate all 10 practical files at once:

cis-pract init --all

7. Generate Selected Practicals

To generate only specific practicals, use the --only flag followed by practical numbers:

cis-pract init --only 2 5

8. Interactive Mode

If you run init without any flags, it will prompt you interactively:

cis-pract init

9. File Customization

The generated files are normal, editable Python files. You can open them in VS Code, PyCharm, or any text editor. Modify them, add comments, change algorithms—they are your working copies.

10. Running a Practical

To run a generated practical, navigate to the folder and use standard Python:

cd cyber-security-practicals
python rsa_encryption_and_decryption.py

11. Existing File Handling

If you have modified a practical file and try to generate it again, the tool will prompt you before overwriting to ensure your customizations are not lost. You can choose to skip, overwrite, or cancel. You can bypass the prompt using the --force flag.

12. Dependencies

The practicals use Python's built-in libraries (like hmac, hashlib, ssl). No complex external dependencies are required for the core cryptographic algorithms provided.

13. Development Setup

To set up for development, clone the repository and install in editable mode:

pip install -e .

14. Testing

Run tests using pytest (or unittest):

python -m unittest discover tests

15. Building the Package

To build the package distribution (wheel and sdist):

python -m build

16. Publishing to PyPI

After building, you can upload using twine:

twine upload dist/*

17. License

This project is licensed under the MIT License.

18. Disclaimer

The practicals included in this package are educational implementations and simulations where applicable. They are designed for learning and understanding cryptographic and security concepts. They make no claim to provide real-world security and should not be used in production environments.

Metadata

Release files for cis-pract 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cis-pract 0.1.0
File Size Uploaded
cis_pract-0.1.0.tar.gz 10.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cis-pract 0.1.0
File Interpreter ABI Platform
cis_pract-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 22.2 kB

Release files / cis_pract-0.1.0.tar.gz

Download URL cis_pract-0.1.0.tar.gz
Size 10.2 kB
Tags Source
SHA-256 checksum
How to use checksums
6aa4829edcb3733c1b079a64c41bdaf7815ae928b05f69a506eaa091b8280eba
BLAKE2b-256 checksum
How to use checksums
f741c5bc8112078cbda30b4212e8b0408b3d21d04c3ff07e1a663fb9f1923d42
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release files / cis_pract-0.1.0-py3-none-any.whl

Download URL cis_pract-0.1.0-py3-none-any.whl
Size 12.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e88bfade2c3a4fb88f3cfa65cdc954ab3536bcfa97288b20a4c658c728ae7769
BLAKE2b-256 checksum
How to use checksums
482381c1983482a5384c9ff0774554d6f2699fb9a48f87ee62bffdebb5c7827d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page