Projekt zakłada stworzenie aplikacji webowej umożliwiającej szyfrowanie i deszyfrowanie wiadomości. Składa się ona z dwóch głównych komponentów: front-endu i back-endu.
- Front-end: JavaScript z wykorzystaniem frameworka React.
- Back-end: Java z wykorzystaniem frameworka Spring, działający na Spring Boot.
- Szyfrowanie i deszyfrowanie wiadomości przez użytkownika.
- Formularz logowania z walidacją danych.
- Zapisywanie i odczytywanie zaszyfrowanych wiadomości z bazy danych PostgreSQL.
- Zabezpieczenie przed atakami typu SQL injection i XSS.
- Kontrola dostępu do zaszyfrowanych wiadomości dla uprawnionych użytkowników.
W celu uzupełnienia kluczy i haseł należy utworzyć plik application.properties
w folderze backend/src/main/resources
i dodać do niego następujące linie:
spring.application.name=
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=
jwt.secret=
oraz .env
POSTGRES_USER=
POSTGRES_PASSWORD=
POSTGRES_DB=
SPRING_DATASOURCE_URL=
SPRING_DATASOURCE_USERNAME=
SPRING_DATASOURCE_PASSWORD=
docker-compose up --build
Serwisy działają na następujących portach
- Frontend: http://localhost:4173
- Backend: http://localhost:8080
- Baza danych: http://localhost:5432