RSA cryptography library
Project description
RSACryptoManager
RSAEncryptionHandler là một module Python cho phép thực hiện các thao tác mã hóa và giải mã bằng RSA. Module này sử dụng thư viện cryptography
để cung cấp các chức năng chính bao gồm mã hóa, giải mã, tạo khóa RSA, ký và xác minh chữ ký số.
Author: Anhdev99
Website: https://anhdev99.com
Cài đặt
Trước khi sử dụng module, bạn cần cài đặt thư viện cryptography
:
pip install cryptography
Sử dụng
1. Tạo một đối tượng RSACryptoManager
from rsa_crypto_manager import RSACryptoManager
crypto = RSACryptoManager()
2. Tạo cặp khóa RSA
public_key, private_key = crypto.gen_rsa_key(key_size=2048)
3. Mã hóa dữ liệu
data_to_encrypt = "Hello, World!"
encrypted_data = crypto.encrypt(data_to_encrypt, public_key)
print(f"Encrypted Data: {encrypted_data}")
4. Giải mã dữ liệu
decrypted_data = crypto.decrypt(encrypted_data, private_key)
print(f"Decrypted Data: {decrypted_data}")
5. Ký dữ liệu
data_to_sign = "Important message"
signature = crypto.sign(data_to_sign, private_key)
print(f"Signature: {signature}")
6. Xác minh chữ ký
is_valid = crypto.verify(data_to_sign, signature, public_key)
print(f"Signature valid: {is_valid}")
Các hàm trong module
gen_rsa_key(key_size: int) -> [str, str]
Tạo một cặp khóa RSA.
key_size
: Kích thước của khóa (ví dụ: 2048).- Trả về: Một danh sách chứa khóa công khai và khóa riêng tư dưới dạng chuỗi đã mã hóa Base64.
encrypt(data_to_encrypt: str, pub_cer: str) -> str
Mã hóa dữ liệu bằng khóa công khai.
data_to_encrypt
: Dữ liệu cần mã hóa.pub_cer
: Khóa công khai dưới dạng chuỗi Base64.- Trả về: Dữ liệu đã mã hóa dưới dạng chuỗi Base64.
decrypt(data_encrypted: str, priv_key_pem: str) -> str
Giải mã dữ liệu bằng khóa riêng tư.
data_encrypted
: Dữ liệu đã mã hóa dưới dạng chuỗi Base64.priv_key_pem
: Khóa riêng tư dưới dạng chuỗi Base64.- Trả về: Dữ liệu đã giải mã dưới dạng chuỗi.
sign(data_to_sign: str, private_key: str, is_file: bool = False) -> str
Ký dữ liệu bằng khóa riêng tư.
data_to_sign
: Dữ liệu cần ký.private_key
: Khóa riêng tư dưới dạng chuỗi Base64.is_file
: (Tùy chọn) Chỉ định nếuprivate_key
là đường dẫn tới file chứa khóa.- Trả về: Chữ ký số dưới dạng chuỗi Base64.
verify(data_to_verify: str, signed_data: str, pub_cer: str, is_file: bool = False) -> bool
Xác minh chữ ký số bằng khóa công khai.
data_to_verify
: Dữ liệu cần xác minh.signed_data
: Chữ ký số dưới dạng chuỗi Base64.pub_cer
: Khóa công khai dưới dạng chuỗi Base64.is_file
: (Tùy chọn) Chỉ định nếupub_cer
là đường dẫn tới file chứa khóa.- Trả về:
True
nếu chữ ký hợp lệ,False
nếu không hợp lệ.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file rsa-crypto-manager-0.0.1.tar.gz
.
File metadata
- Download URL: rsa-crypto-manager-0.0.1.tar.gz
- Upload date:
- Size: 5.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3680273740f5a888b50937a9be57f04b7c8607f4e7d1e952755eadfec1fa378 |
|
MD5 | cbddddda977a689edf01209ff94f3573 |
|
BLAKE2b-256 | 3fe13f8addbe8ef4411ab595b7fcc702ab83b71b48abeafc7f8dd16e3fe69690 |
File details
Details for the file rsa_crypto_manager-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: rsa_crypto_manager-0.0.1-py3-none-any.whl
- Upload date:
- Size: 5.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 366b5b10955c337a5197e0fb07f74863d60b542143c8ff9fff433190ef33134f |
|
MD5 | 6366cb90c51c43d6a570f7038fd49eb8 |
|
BLAKE2b-256 | c0460c51bc7e63c51963730fb7781ce1bce709de711c2dd6bcbe422f147275cf |