GithubHelp home page GithubHelp logo

chaos4455 / py-crypt-files Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 13 KB

File encryption software made in python - Software de encriptação de arquivos feito em python

License: MIT License

Python 100.00%
criptografia encryption password pyhon rsa rsa-cryptography rsa-encryption rsa-key-encryption

py-crypt-files's Introduction

📁 py-crypt-files

O projeto py-crypt-files é uma interface GUI para criptografia de arquivos. Ele foi desenvolvido em Python usando a biblioteca PyQt5 e a biblioteca de criptografia cryptography.

Screenshot

📝 Descrição do Projeto

O py-crypt-files é um aplicativo que permite selecionar um arquivo local, fornecer uma senha ou gerar uma senha aleatória e realizar a criptografia ou descriptografia do arquivo selecionado. Ele oferece uma interface gráfica simples e intuitiva para facilitar o processo de criptografia e descriptografia de arquivos.

⚙️ Funcionalidades

  • Selecionar um arquivo para criptografar ou descriptografar.
  • Gerar uma senha aleatória ou inserir uma senha personalizada.
  • Criptografar o conteúdo do arquivo usando uma chave simétrica.
  • Criptografar a chave simétrica usando uma chave pública RSA.
  • Salvar o arquivo criptografado com a extensão .cryptfile.
  • Descriptografar arquivos criptografados com a extensão .cryptfile.

📋 Pré-requisitos

Antes de executar o projeto py-crypt-files, verifique se você possui os seguintes pré-requisitos instalados em seu ambiente:

  • Python 3.x
  • PyQt5
  • cryptography

🚀 Instalação

  1. Certifique-se de ter o Python 3.x instalado em seu sistema.
  2. Instale as dependências necessárias executando o seguinte comando no terminal:

pip install PyQt5 cryptography

  1. Baixe ou clone este repositório em seu ambiente local.

💻 Uso

  1. Navegue até o diretório do projeto e execute o arquivo main.py:

python main.py

  1. A interface gráfica do py-crypt-files será aberta.

  2. Clique no botão "Selecionar Arquivo" para escolher o arquivo que você deseja criptografar ou descriptografar.

  3. Insira uma senha no campo "Senha" ou clique em "Gerar Senha" para gerar uma senha aleatória.

  4. Clique no botão "Criptografar" para criptografar o arquivo selecionado.

  5. Clique no botão "Descriptografar" para descriptografar um arquivo criptografado.

🧩 Código-fonte

Aqui está o código-fonte do arquivo main.py que implementa o projeto py-crypt-files:

import sys
import random
import string
import os
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QLineEdit, QPushButton, QVBoxLayout, QFileDialog, QMessageBox
from PyQt5.QtGui import QPalette, QColor, QFont
from PyQt5.QtCore import Qt
from cryptography.hazmat.primitives.asymmetric import rsa, padding
from cryptography.hazmat.primitives import serialization, hashes
from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes

class FileEncryptionApp(QWidget):
    # Código omitido para maior clareza
    ...

if __name__ == "__main__":
    app = QApplication(sys.argv)
    # Código omitido para maior clareza
    ...


🤝 Contribuição
Contribuições para o projeto py-crypt-files são bem-vindas. Se você deseja contribuir, siga as etapas abaixo:

Faça um fork deste repositório.
Crie um novo branch para a sua feature (git checkout -b feature/nova-feature).
Faça as alterações necessárias no código.
Faça o commit das suas alterações (git commit -am 'Adicione uma nova feature').
Faça o push para o branch (git push origin feature/nova-feature).
Abra um pull request neste repositório.
📝 Licença
Este projeto está licenciado sob a MIT License.

py-crypt-files's People

Contributors

chaos4455 avatar

Stargazers

 avatar

Watchers

 avatar

py-crypt-files's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.