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 acyber-security-practicalsdirectory 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
- Substitution and Transposition
- RSA Encryption and Decryption
- Message Authentication Code
- Digital Signatures
- Diffie-Hellman Key Exchange
- IP Security / IPsec
- Web Security with SSL/TLS
- Intrusion Detection System
- Malware Analysis and Detection
- 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)
| File | Size | Uploaded | |
|---|---|---|---|
| cis_pract-0.1.0.tar.gz | 10.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|