@@ -5,7 +5,7 @@ lazy-password performs 2 functions:
5
5
* It tries to stop the usual corporate screen saver from locking your session.
6
6
* It let you enter quickly pre recorded passwords as they would be typed from a keyboard.
7
7
8
-
8
+ The number of passwords is set to 5.
9
9
10
10
## Hardware
11
11
You need:
@@ -14,36 +14,55 @@ You need:
14
14
3 . 1602 based LCD (1602 Arduino LCD Keypad Shield), the keys are not used.
15
15
16
16
## Operation
17
- On start, the device is protected. A user has to enter 5 numbers to unlock it.
17
+ On start, the device is protected. In order to unlock it, a user has to enter a pin consisting
18
+ of five hex numbers. Default pin is FF FF FF FF 00 and can be changed once unlocked.
18
19
Once unlocked, mouse calibration is activated. Observe mouse movement on the screen.
19
20
Use rotary to adjust it. Make sure there are no missed steps. Calibration is completed automaticaly
20
- after 5 seconds of inactivity, or by pressing the embeded rotary key.
21
+ after 5 seconds of inactivity, or by pressing the rotary key.
21
22
22
23
In normal operation, rotary can be used to select a user name. Pressing the rotary key
23
24
triggers corresponding password entry.
24
25
Every minute a small mouse movement and shift key press are generated by a device.
25
26
26
27
## Password Update
27
- In order to record password, you have to get lazy-password in normal operation mode.
28
-
29
- Prepare a file containing: ``` <password_idx>:<password>\n\0 ```
28
+ In order to record password, you have to first unlock lazy-password.
29
+ Next you send a password update command using serial interface.
30
30
31
+ Prepare a command file containing: ``` p<password_idx>:<password>\n\0 ```
31
32
32
- For example p0 .txt:
33
+ For example password000 .txt which sets first password to password000 :
33
34
34
35
```
35
- 0000000 0 : q u e r y 1 2 3 4 5 \n \0
36
- 30 3a 71 75 65 72 79 31 32 33 34 35 0a 00
36
+ 0000000 p 0 : p a s s w o r d 0 0 0 \n \0
37
+ 70 30 3a 70 61 73 73 77 6f 72 64 30 30 30 0a 00
37
38
```
38
39
and execute on command line:
39
40
40
41
```
41
- sudo sh -c 'cat p0.txt > /dev/ttyACM0'
42
+ sudo sh -c 'cat password000.txt > /dev/ttyACM0'
43
+ ```
44
+ The maximum length of a password is 48 characters.
45
+ The ``` test ``` directory contains numerous examples of files containing password and label update commands.
46
+
47
+
48
+ ## Label (username) Update
49
+ Similar to password update, label update involves sending a command over a serial interface.
50
+
51
+ Command file contains: ``` l<label_idx>:<label>\0 ```
52
+
53
+ For example label000.txt which sets first label to label000:
54
+
55
+ ```
56
+ 0000000 l 0 : l a b e l 0 0 0 \0
57
+ 6c 30 3a 6c 61 62 65 6c 30 30 30 00
42
58
```
59
+ The maximum size of a label is 16 (length of the lcd display).
60
+ The ``` test ``` directory contains numerous examples of files containing password and label update commands.
61
+
43
62
44
63
## Keyboard
45
64
lazy-password includes support for 2 keyboard layouts, US and Swiss German. The keyboard layout can
46
- be switched as needed.
65
+ be switched as needed. The default keyboard layout is preserved in EEPROM.
47
66
48
67
## Security consideration:
49
68
The passwords are stored unprotected in EEPROM and can be dumped using standard atmega tools.
0 commit comments