The library provides locks interfaces to conveniently and securely re-authenticate users. The library provides four interfaces with each providing a different screen transparency (fadeInDelay) and delay in the appearance of the lock (lockDelay). The four interfaces provided by the library are:
- imm-trans-imm-lock- Remains transparent, No fadeInDelay, No lockDelay
- imm-dark-imm-lock- Turns dark immediately, No fadeInDelay, No lockDelay
- grad-dark-imm-lock- Turns dark gradually, has a fadeInDelay (default- 8 seconds), No lockDelay
- grad-dark-grad-lock- Turns dark gradually, has a fadeInDelay (default- 8 seconds), has a lockDelay (default- 4 seconds)
imm-trans-imm-lock | imm-dark-imm-lock | grad-dark-imm-lock | grad-dark-grad-lock |
(Pattern Lock) | (PIN Lock) | (PIN Lock) | (Pattern Lock) |
The lock interfaces can be used with both PIN and Pattern locks. The fadeInDelay and the lockDelay can be customised depending on the need.
In order to use the library in your app, call the PinLock/PatternLock activity from the current activity:
Intent pinLock= new Intent(this, PinLock.class); //call PatternLock.class to use the Pattern Lock
pinLock.putExtra("category", <category>);
pinLock.putExtra("fadeInDelay", <seconds>); //This is optional, default is 8 sec
pinLock.putExtra("lockDelay", <seconds>); //This is optional, default is 4 sec
We provide an implementation of FireLock with Itus, which is an Android library authenticating users using touch-based and keystroke-based classifiers. We integrate both FireLock and Itus with an open-source messaging application called Signal. The demo re-authenticates the users based on the classification score as provided by Itus. In case of a low score, the re-authentication prompt is activated whenever the user presses the send button to send a text message. The user is unable to send the message unless they re-authenticate themselves by entering the correct pass-code.