Skip to content

MattiaNicolis/SHA-256

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SHA256

Il progetto consite nel realizzare un server che permetta multiple computazioni di impronte SHA-256.

Il tempo di calcolo per impronta è proporzionale al numero di byte dell’ingresso (ovvero il file), dipendente dalla piattaforma e dalla implementazione dell’algoritmo (∼1 secondo per 70 MB su laptop moderno nella implementazione OpenSSL, ∼1 secondo per 30 KB su MentOS in QEMU).

Successivamente va realizzato un client che invii l’informazione di file di input al server e riceva l’impronta risultante appena computata.

🛠️ Build e Run

1. Prerequisiti

Il sistema richiede le librerie di sviluppo OpenSSL per il calcolo crittografico e CMake per la compilazione.

  • macOS (via Homebrew):
    brew install openssl cmake
  • Ubuntu/Debian:
    sudo apt update
    sudo apt install libssl-dev cmake build-essential

2. Compilazione

Per generare i file eseguibili del progetto, seguire i seguenti comandi:

mkdir build
cd build
cmake ..
make

3. Esecuzione

Il sistema richieda l'apertura di terminali separati.

  • Terminale 1: avvio del server

    ./server
  • Terminale 2: invio richiesta

    ./client <path/nome_file>
  • Terminale 3 (opzionale): query cache

    ./cache_query

4. Chiusura e Pulizia

  • Per fermare il server: Premere CTRL+C nel terminale del server.
  • Per pulire i file temporanei: rm -rf build

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors