pt>

niedziela, 22 kwietnia 2012

SQLite i szyfrowanie kolumn, pomaga MyBatis i Jasypt

    Niedawno, pisząc wieczorami dla siebie aplikacje w .NET natrafiłem na bardzo przyjemną i lekką bazę danych - SQLite. Tak mi się ta baza spodobała, że postanowiłem sprawdzić czy z poziomu Javy i JDBC uda się do niej dostać. SQLite ma jednak jedną wadę - brak szyfrowania i zabezpieczenia hasłem. Baza SQLite mieści się w jednym pliku, który nie jest w jakikolwiek sposób zabezpieczony. Jako że na codzień pracuję w firmie tworzącej oprogramowanie dla banków i policji brak szyfrowania jest dość poważną wadą nawet w bardzo prostych narzędziach jak program do fakturowania.
    Z jakiego powodu potrzebne jest szyfrowanie samych danych? Wiadomo że błędem w sztuce jest trzymanie haseł w bazie danych - co najwyżej można trzymać posolone hashe. Zaszyfrowanie całej bazy danych (pliku sqlite) również nie wydaje się być dobrym pomysłem z powodów wydajnościowych. Dlatego należy rozpatrzyć szyfrowanie poszczególnych kolumn z danymi wrażliwymi. Jako przykład podam program do faktur gdzie są dane naszych kontrahentów. Co jeśli konkurencja przekupi naszego pracownika by zgrał na dysk USB plik z bazą naszych klientów? Ten problem dotyczy wszelkich aplikacji typu standalone, gdzie przetwarzane są wrażliwe dane. Częściowo ten problem jest rozwiązany w aplikacjach typu klient-serwer lecz nie zawsze jest sens stawiania takiej infrastruktury.

środa, 11 kwietnia 2012

O LambdaJ i Guavie i mojej prelekcji na JUG

    Witam pod dłuższej przerwie. Dzisiejszy wpis będzie trochę inny niż pozostałe, dlatego iż nie będzie typowo technicznym wpisem. Przez ostatnie tygodnie, "po godzinach" przygotowywałem się do prelekcji którą wygłosiłem 03.04.2012. Dzięki mojemu osobistemu fotografowi, Annie Mazińskiej, mogę pokazać również parę zdjęć :)