Skip to content
This repository has been archived by the owner on Jul 31, 2021. It is now read-only.
/ sio-p2-3 Public archive

Mecanismos de proteção de dados e comunicações num serviço de reprodução de música, SIO UA 2020/2021

Notifications You must be signed in to change notification settings

hugofpaiva/sio-p2-3

Repository files navigation

Gestão de direitos digitais

Este trabalho tem como objetivo o desenvolvimento de mecanismos de proteção de dados e comunicações num serviço de reprodução de música cliente-servidor, permitindo uma comunicação segura.

Neste sentido, foi fornecida a estrutura base do serviço com algumas funções relativas aos protocolos de comunicação desprotegidos já implementadas, permitindo a reprodução de músicas sem qualquer tipo de segurança ou autenticação, tendo sido necessário desenvolver as capacidades de proteção da troca de informação, de autenticação, etc.

Como Executar

  1. Instalar o ffplay:

    1. Atualizar a lista de packages

      $ sudo apt update
      
    2. Instalar o FFmpeg

      $ sudo apt install ffmpeg
      
    1. Instalar o HomeBrew

    2. Verificar que tem a instalação do Xcode em dia

    3. Instalar o ffmpeg através do HomeBrew:

      $ brew install homebrew-ffmpeg/ffmpeg/ffmpeg
      
  2. Criar um Virtual Environment:

    python3 -m venv venv
    
  3. Instalar os requisitos:

    Se estiver no MacOS, é necessário instalar o swig, em caso contrário ignore a instrução seguinte

    Instalar o swig através do HomeBrew:

     $ brew install swig
    

    Instalar os requisitos:

     $ source venv/bin/activate
     $ pip install -r ./client/requirements.txt
     $ pip install -r ./server/requirements.txt
    
  4. Encriptar as músicas em claro (Não necessário):

    Na pasta server/encrypted_catalog encontram-se as músicas encriptadas com as suas informações no ficheiro server/file_info.txt. Caso algum dos ficheiros na pasta mencionada ou o ficheiro das informações seja alterado/apagado, deve-se voltar a encriptar as músicas executando:

     $ cd server
     $ python3 file_encrypt.py
    
  5. Correr os serviços:

    $ ./run.sh
    

Detalhes

Todos os detalhes podem ser encontrados no Relatório.

Nota

Classificação referente ao trabalho de grupo de 4.61 valores em 5.

About

Mecanismos de proteção de dados e comunicações num serviço de reprodução de música, SIO UA 2020/2021

Topics

Resources

Stars

Watchers

Forks