(Bastard Hand)


Paris 29- 10- 98, 16:54 GMT

BHandCatch overview.

WARNING : This is a beta version (early age in development) distributed only for showing the potential of this project.

- Kubernan -


SUMMARY

I -What is BHandCatch ?

II - How does it work ?

III - How to use BHandCatch ?

IV - Little FAQ

V - Previsions


I - What is BHandCatch ?

BHandCatch is one of components of my project called BHand (Bastard Hand).

BHand is a new user authentication software. BHand doesn't use a password, it "learns" to recognize the users' keyboard typing style.

Unlike the use of a password, it should be very difficult to forgot (or to lost) your typing style...

 

II - How does it works ?

 

What does "..it learns to recognize..." mean ? Behind BHand, there is a neural network. This is a special program that its structure is based on some characteristics of our brain. Neural networks are used today for speech or handwritten recognition.

In the beginning, a neural network can do nothing. It needs to learn something. This is the learning phase.

With BHand, the learning phase consists in to give the neural network some samples of your typing style and some samples of impostors typing style. This is the goal of BHandCatch component.

During the learning phase, the neural network "sets up" its internal state. When it's done, it should be able to reject all people but you during each sign on..

In short, BHandCatch is a small program used for training a neural network to recognize your typing style and testing it. This is not the user authentication program itself.

BHand will use the result of this learning phase.

III - How to use BHandCatch ?

 

BHandCatch needs Braininabox software. This is a neural network server working in background (see on line description here ).

 

Step One :

Download the package (PPC ONLY) clicking here. It includes BHandCatch06b and BraininaboxV0.06b-pcc (the neural network program).

Step Two :

Launch BraininaboxV0.06b-ppc (it runs in background).

Step Three :

Launch BHandCatch06b-pcc. This diaog box apperas :

Click "Record patterns" if you use BHandCatch for the first time or if you want to create a new learning phase for the neural network with new entries.

Click "Test an entry" if you want to submit a new test to the neural network.

 

This window appears (if you clicked "Test an entry" in the previous dialog box, there's an 'X' in "Test this entry") :

Step Four :

BHand records the user typing style for each word or sentence ('hello world" in this sample) typed in the text field. You can simply use your full name. You can consider the word used as a not_secret password. (note : "Hello World" and "hello world" are different).

Press Enter key (or click "Add Entry"). Your first typing style is stored. An entry is called a pattern. You must give several patterns (at least 5...more if you want) using each time the same word or sentence.

For recording the impostors click the check box "Impostors". Then ask to other people to type the word or sentence (at least 10 or more patterns per impostors) chosen.

Step Five :

When you think there are enough patterns, click "Execute". At this time, BHandCatch sends to Braininabox all the users typing style. This is the learning phase. Braininabox tries to "classify" all of the characteristics of each typing style.

Learning phase launched clicking "Execute"

 

The work of Braininabox can take several minutes. When it's done, this dialog box appears :

Step Six :

Now you can test the result. ("Test this entry" should have an 'X'), type the word or sentence, click "Execute" and see...

Try with the impostors and see...

 

**NOTES : **

*Use "Clear Entry" button to delete the current entry (or all the patterns), Do Not use the backspace key or the suppr. key to modifiy your entry : each key pressed is considered as a component of the current pattern.

Clear Entry dialog box.

Choose All entries if you want to delete ALL patterns that BHand has stored.

Choose This entry if you want to delete ONLY the current entry.

If you click accidentally "Clear Entry", choose the "This entry" button.

 

*If you click "Execute" without an 'X' in "Test this entry" you'll lost the result of the last learning phase. Be carefull of that. That's why there is a dialog box at startup asking what do you want to do...

*You can launch a learning phase, test it and if the result is not just what you need, you can add new entries (as impostors or not) and start a new learning phase : the old entries wiil be keep until the application was closed. You don't need to enter all entries after each learning.

 

Error dialog boxes :

May be Braininabox is not launched.

May be you do a test before launching the learning phase.

 

IV - Little FAQ

1-BHandCatch accepts all people !!

2-Will I lost the result of learning phase if I quit BHandatch ?

3-How to delete my last learning phase ?

4-Can I quit BHandCatch even if the learning phase is not finished ?

 

1- Are you sure you give both yours and imposters typing style in the same learning phase ? The neural network needs to know how to detect an impostor, that's why after adding your patterns, you have to ask someone else to enter the word or sentence chosen (adding an 'X' in "impostor" check box). Only after this, launch the learning phase clicking "Execute".

2- Nope. The result of learning phase is not the property of BHandCatch. This is the property of the neural network. The internal state of the neural network resulting of the learning phase is stored in a special file. If you quit BHandCatch and launch it again for a test, the neural network will find the appropriate file.

3- Executing a new learning phase.

4- You can. When Braininabox receives the parameters from BHandCatch (when you click "Execute") it can continue alone. Doing this the dialog box that informs you of the end of the learning phase won't appear.

 

V - Previsions

- To work again and again on the GUI (add informations in the status bar such as number of patterns entered....)

- To add an expert mode giving the possibilty to modify the parameters of the neural network learning phase (momemtum term, tolerance, number of neurons in hidden layer and so on).

- Today, BHandCatch needs at least two people : the master and one or more imposters. It doesn't work with a single user, that's why i'm working on the possibitly to build an internal database of imposters.

- With the first release of BHand (comming with BeOS R4 - Intel and PPC), you could protect folders and file.

- Braininabox & BHand should work on separate computers (Braininabox as server).

...and more...

 

kubernan@easynet.fr