<!-- PROJECT DESCRIPTION -->
# 📖 RSA Encryptor <a name="about-project"></a>
**RSA Encryptor** A minimal implemetation of asymetric encryption operations using [RSA](<https://en.wikipedia.org/wiki/RSA_(cryptosystem)>)
Functionalities include:
- File encryption and decryption
- File signature and verification
## Setup
### Prerequisites
In order to run this project you need to:
- Install [Python](https://www.python.org/)
### Install
Install the package via pip
```bash
pip install rsa_encryptor
```
### Usage
**Encryption**
```python
from rsa_encryptor import Encryption
# Create an object
encryptor = Encryption()
# Generate keys or load recivers public key using encryptor.load_keys(public_key_path='path_to_public_key.pem')
encryptor.generate_key_pair()
# You can export keys as .pem
encryptor.export_keys()
# Encrypt a file
encryptor.encrypt_file('path_to_file')
```
**Decryption**
```python
from rsa_encryptor import Encryption
# Create an object
encryptor = Encryption()
# Load your private key
encryptor.load_keys(private_key_path='path_to_private_key.pem')
# Decrypt an encrypted file
encryptor.decrypt_file('path_to_encrypted_file')
```
**Signature**
```python
from rsa_encryptor import Signature
# Create an object
signer = Signature()
# Generate keys or load your private key using encryptor.load_keys(private_key_path='path_to_private_key.pem')
encryptor.generate_key_pair()
# Sign a file
signer.sign('path_to_file')
```
**Signature Verfication**
```python
from rsa_encryptor import Signature
# Create an object
signer = Signature()
# Generate keys or load your private key using encryptor.load_keys(private_key_path='path_to_private_key.pem')
# Load senders public key
encryptor.load_keys(public_key_path='path_to_public_key.pem')
# Verify the signature
signer.verify('path_to_file','path_to_signature')
```
<p align="right"><a href="#readme-top">👆</a></p>
<!-- AUTHORS -->
## Authors <a name="authors"></a>
**Bahir Hakimi**
- <a href='https://www.linkedin.com/in/bahir-hakimi/' target="_blank"><img alt='LinkedIn' src='https://img.shields.io/badge/Bahir_Hakimi-100000?style=flat&logo=LinkedIn&logoColor=white&labelColor=0099FF&color=0099FF'/></a>
- <a href='mailto:bahirhakimy2020@gmail.com' target="_blank"><img alt='Gmail' src='https://img.shields.io/badge/Bahir_Hakimi-100000?style=flat&logo=Gmail&logoColor=FFFFFF&labelColor=FF2C10&color=FF2C10'/></a>
- <a href='https://twitter.com/bahir_hakimi_' target="_blank"><img alt='Twitter' src='https://img.shields.io/badge/Bahir_Hakimi-100000?style=flat&logo=Twitter&logoColor=FFFFFF&labelColor=0DE3FF&color=0DE3FF'/></a>
<p align="right"><a href="#readme-top">👆</a></p>
<!-- Contributing -->
## Contributing <a name="contributing"></a>
Contributions, issues, and feature requests are welcome!
Feel free to check the [issues page](../../issues/).
<p align="right"><a href="#readme-top">👆</a></p>
<!-- Show your support -->
## Show your support <a name="support"></a>
If you like this project leave a start for it.
<p align="right"><a href="#readme-top">👆</a></p>
<!-- ACKNOWLEDGEMENTS -->
## Acknowledgments <a name="acknowledgements"></a>
The package functionalities are based on [rsa](https://pypi.org/project/rsa/) by [sybrenstuvel](https://pypi.org/user/sybrenstuvel/).
<p align="right"><a href="#readme-top">👆</a></p>
<!-- LICENSE -->
## License <a name="license"></a>
This project is [MIT](./LICENSE) licensed.
<p align="right"><a href="#readme-top">👆</a></p>
Raw data
{
"_id": null,
"home_page": "https://github.com/bahirhakimy/rsa_encryptor",
"name": "rsa-encryptor",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "RSA,Encryption,DigitalSignature",
"author": "Bahir Hakimi",
"author_email": "bahirhakimy2020@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/94/50/1068d5f4040af74514692e16820713b6098db93b7a81c8a6ad8f8ad8a47b/rsa_encryptor-0.1.tar.gz",
"platform": null,
"description": "<!-- PROJECT DESCRIPTION -->\r\n\r\n# \u00f0\u0178\u201c\u2013 RSA Encryptor <a name=\"about-project\"></a>\r\n\r\n**RSA Encryptor** A minimal implemetation of asymetric encryption operations using [RSA](<https://en.wikipedia.org/wiki/RSA_(cryptosystem)>)\r\n\r\nFunctionalities include:\r\n\r\n- File encryption and decryption\r\n- File signature and verification\r\n\r\n## Setup\r\n\r\n### Prerequisites\r\n\r\nIn order to run this project you need to:\r\n\r\n- Install [Python](https://www.python.org/)\r\n\r\n### Install\r\n\r\nInstall the package via pip\r\n\r\n```bash\r\npip install rsa_encryptor\r\n```\r\n\r\n### Usage\r\n\r\n**Encryption**\r\n\r\n```python\r\nfrom rsa_encryptor import Encryption\r\n\r\n# Create an object\r\nencryptor = Encryption()\r\n\r\n# Generate keys or load recivers public key using encryptor.load_keys(public_key_path='path_to_public_key.pem')\r\nencryptor.generate_key_pair()\r\n\r\n# You can export keys as .pem\r\nencryptor.export_keys()\r\n\r\n# Encrypt a file\r\nencryptor.encrypt_file('path_to_file')\r\n\r\n```\r\n\r\n**Decryption**\r\n\r\n```python\r\nfrom rsa_encryptor import Encryption\r\n\r\n# Create an object\r\nencryptor = Encryption()\r\n\r\n# Load your private key\r\nencryptor.load_keys(private_key_path='path_to_private_key.pem')\r\n\r\n# Decrypt an encrypted file\r\nencryptor.decrypt_file('path_to_encrypted_file')\r\n\r\n```\r\n\r\n**Signature**\r\n\r\n```python\r\nfrom rsa_encryptor import Signature\r\n\r\n# Create an object\r\nsigner = Signature()\r\n\r\n# Generate keys or load your private key using encryptor.load_keys(private_key_path='path_to_private_key.pem')\r\nencryptor.generate_key_pair()\r\n\r\n# Sign a file\r\nsigner.sign('path_to_file')\r\n\r\n```\r\n\r\n**Signature Verfication**\r\n\r\n```python\r\nfrom rsa_encryptor import Signature\r\n\r\n# Create an object\r\nsigner = Signature()\r\n\r\n# Generate keys or load your private key using encryptor.load_keys(private_key_path='path_to_private_key.pem')\r\n\r\n# Load senders public key\r\nencryptor.load_keys(public_key_path='path_to_public_key.pem')\r\n\r\n# Verify the signature\r\nsigner.verify('path_to_file','path_to_signature')\r\n\r\n```\r\n\r\n<p align=\"right\"><a href=\"#readme-top\">\u00f0\u0178\u2018\u2020</a></p>\r\n\r\n<!-- AUTHORS -->\r\n\r\n## Authors <a name=\"authors\"></a>\r\n\r\n**Bahir Hakimi**\r\n\r\n- <a href='https://www.linkedin.com/in/bahir-hakimi/' target=\"_blank\"><img alt='LinkedIn' src='https://img.shields.io/badge/Bahir_Hakimi-100000?style=flat&logo=LinkedIn&logoColor=white&labelColor=0099FF&color=0099FF'/></a>\r\n- <a href='mailto:bahirhakimy2020@gmail.com' target=\"_blank\"><img alt='Gmail' src='https://img.shields.io/badge/Bahir_Hakimi-100000?style=flat&logo=Gmail&logoColor=FFFFFF&labelColor=FF2C10&color=FF2C10'/></a>\r\n- <a href='https://twitter.com/bahir_hakimi_' target=\"_blank\"><img alt='Twitter' src='https://img.shields.io/badge/Bahir_Hakimi-100000?style=flat&logo=Twitter&logoColor=FFFFFF&labelColor=0DE3FF&color=0DE3FF'/></a>\r\n\r\n<p align=\"right\"><a href=\"#readme-top\">\u00f0\u0178\u2018\u2020</a></p>\r\n\r\n<!-- Contributing -->\r\n\r\n## Contributing <a name=\"contributing\"></a>\r\n\r\nContributions, issues, and feature requests are welcome!\r\n\r\nFeel free to check the [issues page](../../issues/).\r\n\r\n<p align=\"right\"><a href=\"#readme-top\">\u00f0\u0178\u2018\u2020</a></p>\r\n\r\n<!-- Show your support -->\r\n\r\n## Show your support <a name=\"support\"></a>\r\n\r\nIf you like this project leave a start for it.\r\n\r\n<p align=\"right\"><a href=\"#readme-top\">\u00f0\u0178\u2018\u2020</a></p>\r\n\r\n<!-- ACKNOWLEDGEMENTS -->\r\n\r\n## Acknowledgments <a name=\"acknowledgements\"></a>\r\n\r\nThe package functionalities are based on [rsa](https://pypi.org/project/rsa/) by [sybrenstuvel](https://pypi.org/user/sybrenstuvel/).\r\n\r\n<p align=\"right\"><a href=\"#readme-top\">\u00f0\u0178\u2018\u2020</a></p>\r\n\r\n<!-- LICENSE -->\r\n\r\n## License <a name=\"license\"></a>\r\n\r\nThis project is [MIT](./LICENSE) licensed.\r\n\r\n<p align=\"right\"><a href=\"#readme-top\">\u00f0\u0178\u2018\u2020</a></p>\r\n",
"bugtrack_url": null,
"license": "",
"summary": "=A minimal implemetation of asymetric encryption operations using RSA",
"version": "0.1",
"project_urls": {
"Download": "https://github.com/BahirHakimy/rsa_encryptor/archive/refs/tags/v1.0.tar.gz",
"Homepage": "https://github.com/bahirhakimy/rsa_encryptor"
},
"split_keywords": [
"rsa",
"encryption",
"digitalsignature"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "94501068d5f4040af74514692e16820713b6098db93b7a81c8a6ad8f8ad8a47b",
"md5": "ad72b3993909ef9718f515a95bae62cc",
"sha256": "83f741f3fdc2d5096c15d8fd744654b8635e0bd8f17860d72339cb89df92d554"
},
"downloads": -1,
"filename": "rsa_encryptor-0.1.tar.gz",
"has_sig": false,
"md5_digest": "ad72b3993909ef9718f515a95bae62cc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5451,
"upload_time": "2023-07-23T08:10:09",
"upload_time_iso_8601": "2023-07-23T08:10:09.912353Z",
"url": "https://files.pythonhosted.org/packages/94/50/1068d5f4040af74514692e16820713b6098db93b7a81c8a6ad8f8ad8a47b/rsa_encryptor-0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-23 08:10:09",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "bahirhakimy",
"github_project": "rsa_encryptor",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "rsa-encryptor"
}