• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Qt i odczyt na enkryptowanej bazie danych

Object Storage Arubacloud
+2 głosów
357 wizyt
pytanie zadane 1 maja 2021 w C i C++ przez Hubertius Bywalec (2,970 p.)

Zdrastwujtie programistyczni tawarisz :P

Piszę w ramach ćwiczeniowych aplikację, której rolą są działania CRUD (CREATE, READ, UPDATE i DELETE) na bazie danych zawierającej dane na temat nauczycieli akademickich.

Struktura zadania wygląda w ten sposób:

Pliki loginwindow.h i loginwindow.cpp odpowiadają za logowanie (pierwsza baza danych w programie zawierająca dane logowania), podczas gdy mainview zapewnia tabwidget, gdzie dla każdego page-a odpowiadają im znowu dane pliki create, read, update i delete (tutaj druga baza danych zapewniająca dla całego CRUD dane o nauczycielach).

​​​​​​guestLogin.txt jest do usunięcia, natomiast login.sqlite do baza danych z danymi do logowania, a teachers.sqlite to baza danych z nauczycielami akademickimi.

W programie są dwie bazy danych danych, które są otwierane i zamykane przez wywołanie dwóch poniższych funkcji:

    bool connOpen(QSqlDatabase * myDatabase, QString  path) // function is opening connection with database
    {
        (*myDatabase).setDatabaseName(path);
        if((*myDatabase).open())
        {
            qDebug() << "Connected to database.";
            return true;
        }
        else
        {
            qDebug() << "Failed to open the database!";
        }
        return false;
    }

    void connClose(QSqlDatabase * myDatabase) // function is closing connection with database
    {
        (*myDatabase).close();
        (*myDatabase).removeDatabase(QSqlDatabase::defaultConnection);
    }

Wszystko działa świetnie, lecz powstał nowy problem, którego z racji mojego braku doświadczenia z początku nie zauważyłem i zignorowałem, a teraz wyrósł do poziomu góry giganta. indecision

Mianowicie to nie jest na obecną chwilę "najlepsza sytuacja", gdy przy logowaniu do apki użytkownik jest w stanie bez znajomości danych swojego loginu "z marszu" odczytać dane swoje logowania bezpośrednio je odczytując z pliku .sqlite (dzięki choćby takiemu programowi jak SQLiteStudio) albo uzyskać wszystkie informacje o nauczycielach z drugiej kolei bazie danych zawierających informacje na temat nauczycieli akademickich. 

Zwracam się do was z prośbą... co teraz? Znalazłem informacje na temat sqlcipher i jakiś film jak tworzyć "enkryptowane" bazy danych z jego pomocą, ale nie wiem czy to krok w dobrą stronę i zarazem czy jest on jedyny.

Z góry dzięki za wszelkie odpowiedzi.  :)

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
0 odpowiedzi 134 wizyt
pytanie zadane 30 grudnia 2016 w C i C++ przez piter600 Użytkownik (610 p.)
0 głosów
1 odpowiedź 1,052 wizyt
0 głosów
1 odpowiedź 209 wizyt
pytanie zadane 23 czerwca 2015 w C i C++ przez Linker Bywalec (2,690 p.)

92,696 zapytań

141,607 odpowiedzi

320,114 komentarzy

62,056 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...