Is mixed password secure?

When I came up with an idea of Aksesi project, I started to think about its security. First thought was that it will be as safe as HTTP(s) protocol is. Realizing it, I stopped any considerations. Three weeks later I realized that this solution will be very safe or, at least, safer than ordinary password usage.

In this post, I’m going to cover a few reasons why Aksesi will be safer than classic authentication which bases only on passwords consisting of characters.

Continue Reading

Stop making those weird gestures, start typing!

I think that it is the best time to connect oldschool-boring password typing with new-fresh-visionary gesture recognition. I hope that connection like this is going to provide appropriate usability for boys and girls, old and young.

In the following post I’m going to describe how to adjust code created in the Handling user gestures post to use both characters and gestures. I will also describe how I resolved usability issues and how the application handles the backspace key usage.

Continue Reading

Handling user gestures

During the short planning session I decided that at first I should implement gestures handling in the front-end application. This feature will be developed with jQuery library.

There are a few strategies how to detect sequence of gestures. First one assumes that the application recognizes mouse movement and, basing on the time between each of the moves, is able to establish if a gesture drawing is completed. This solution has some limitations. The main one is a problem with splitting moves into separate ones. If a user moves a pointer to the top and backward, as preparation to the next gesture (due to e.g. screen resolution), then application won’t be able to recognize that the top-bottom move shouldn’t be treated as part of the password.

Continue Reading

Pierwszy miesiąc z Hobusu

Aplikacja Hobusu jest rozwijana od 1.5 miesiąca. Niniejszy post jest podsumowaniem okresu, w którym do aplikacji dorabiałem kolejne funkcjonalności oraz weryfikowałem działanie tych istniejących. Przez mienione 1.5 miesiąca odrzuciłem kilka pomysłów na nowe możliwości aplikacji. Powodem, dla którego funkcjonalności te nie były wdrażane był sposób w jaki korzystam z aplikacji czyli krótko mówiąc rzeczywistość je zweryfikowała.

Continue Reading

Podsumowanie projektu inżynierskiego – architektura mikroserwisowa

Od kliku miesięcy projekt inżynierski zajmował 90% czasu, który mogłem poświęcić na programowanie po godzinach. Oficjalnie projekt nosił nazwę „Architektura mikroserwisowa na przykładzie aplikacji do komunikacji”. Na początku nieco obawiałem się podejmować problem (czyt. mikroserwisy), który znałem tylko teoretycznie, ale po pewnym czasie przekonałem się, że nie taki diabeł straszny jak go malują. Wykonane odpowiednio wcześnie planowanie oraz wczesne rozpoczęcie projektu pozwoliło mi na zrealizowanie go z dużym zapasem czasowym. Cały proces rozwijania architektury był bardzo przyjemny, ponieważ połączyłem zagadnienie, które interesuje mnie od dłuższego czasu z wizją, że zdobytą wiedzę będę mógł wykorzystać poza murami uczelni. Sytuacja win-win.

Continue Reading

Szybka akcja #2 – AngularJS

W ramach Szybka akcja #1 – Play Framework napisane zostało REST API do aplikacji Hobusu. Mając stworzoną logikę po stronie serwera przyszedł czas na realizację części frontendowej.

Do tej pory wszystkie projekty realizowałem na bardzo podobnym stosie technologicznym – Bootstrap + jQuery + zewnętrzne biblioteki JavaScript. Miałem również chwilową przygodę z MustacheJS. Projekt Hobusu chciałem zrealizować jako Single Page Application, więc pisanie funkcjonalności z wcześniej wspomnianymi technologiami zajęłoby dużo czasu i wymagało sporo rzeźbienia. Wybór padł na framework AngularJS.

Continue Reading

Szybka akcja #1 – Play Framework

Jesteśmy obecnie w trakcie okresu w roku, w którym poziom naszej motywacji sięga najwyższych wartości. Jednym z moich postanowień na rok 2017 jest zaoszczędzenie pewnej sumy pieniędzy. W związku z tym stwierdziłem, że potrzebuję w jakiś sensowny sposób mieć wgląd w swoje wydatki, aby móc je stale kontrolować, analizować i na bieżąco korygować. W ten sposób powstał pomysł na napisanie aplikacji, która będzie zaspokajała podstawowe potrzeby w tym temacie.

Continue Reading

Konwersja obiektów z użyciem ConversionService

Projekt, nad którym obecnie pracuję, to system aplikacji mikroserwisowych komunikujących się za pomocą protokołu HTTP. Ze względu na ograniczone konteksty używanej domeny poszczególne aplikacje nie mają pełnej wiedzy o encjach – po prostu nie ma takiej potrzeby. Niestety „odchudzenie” encji w pewnych częściach systemu powoduje konieczność ich konwertowania i uzupełniania o dodatkowe dane podczas komunikacji. W celu enkapsulacji logiki konwersji tworzyłem kolejne konwertery, które z czasem zaczęły być uciążliwe i niepraktyczne w zastosowaniu.

Continue Reading

Zestawienie połączenia HTTPS pomiędzy Apache Tomcat a klientami

HTTPS to szyfrowana wersja protokołu HTTP, która zabezpiecza dane wymieniane pomiędzy serwerem a klientem. W niniejszym wpisie pokażę w jaki sposób włączyć obsługę HTTPS w kontenerze Apache Tomcat oraz jak skonfigurować aplikacje klienckie.

Poprawna konfiguracja HTTPS wymaga, aby serwer posiadał „dokumenty”, które to będzie przedstawiał przy łączeniu się do źródeł wrażliwych danych. Takim dokumentem jest certyfikat, który możemy wygenerować za pomocą keytool.

Continue Reading