Documentation

The Documentation will be put on the web in stages.

In many countries journalists and human rights workers are under threat from the authorities who wish to know what the journalists have written.  The contents of what has been written can cause the journalists or human rights workers to be killed.  In these countries it would be prudent for the journalists to keep their work encrypted.  The encrypted work requires knowledge of the passwords which could be beaten out of the journalists or human rights workers.  A good journalist will keep a record of different sources in order to verify the accuracy of the story.  The sources could be compromised by passwords to encrypted files being extracted from the journalist/human rights worker under torture.  If the journalist human rights worker cannot know what the password is then no amount of torture can extract the password.

The program has the ability to load and edit keyboards to help ensure that passwords cannot be known.  A  loaded keyboard can be destroyed.  No keyboard no password.  A keyboard can be loaded here to be used later when accessing a password file or can be loaded at the time of entering a password to a password data file.

The keyboard has another important use.  The strength of an encrypted work depends on three things

  1. The strength of the encryption algorithm and its resistance to weaknesses.
    1. met by choosing encryption algorithms that have been well researched and passed by the cryptography community as a strong encryption algorithm
  2. The length of the encryption password
    1. The longer the password the more difficult for the encryption to be cracked by a brute force attack
  3. A Byte has 256 different possibilities.  Many passwords can only use a fraction of these 256 different possibilities.
    1. The larger the fraction of 256 different possibilities each byte of a password can use the stronger the password can be.
  4. The randomness of an encryption password
    1. The more random the password the more difficult it is to guess
  5. The probability of an encryption password being in password cracker
    1. A password cracker used by a large organisation can have a very large database of phases and words that have been published somewhere.
    2. A password cracker database can check through its database extremely quickly and the probability of a long password being found is no different to that of a shorter password.

The use of a password that is not in a password cracker's database requires a random password.  Long random passwords are extremely difficult to remember unless they are practised being used frequently.  The use of a Screen keyboard enables the typing of awkward characters and enables the typing of long random passwords.  By having different keyboards which can be created and saved the creation of difficult to remember random passwords is made easier.  At the same time remembering of a typed keyboard password can be made very difficult if not impossible to remember. 



Menu heading
cRrypto-Secure
Sub menu KeyBoard


Description

Opening Screen
Keyboard Figure 1

Opening Screen with letter Key
Keyboard Figure 2
Opening Screen with letter Key showing example of show KeyBoard Row (A) and
characters of Virtual KeyBoard

Keyboard Figure 3


Buttons and Drop Down Lists

Type



(A) KeyBoard Row -
Selected by Select KeyBoard Row - Drop down List (C)
Edit Box

(B) ASCII Character entry Edit Box Can enter any number 0 to 255  to represent ASCII character.  ASCII Characters 0, 9, 10, 12, 13 or 255 will not be allowed to be used
(C) KeyBoard Row Drop down List Lists rows 1 to 9 of the Virtual KeyBoard and selects which row of the Virtual KeyBoard is displayed in (A)
(D) Button Puts ASCII character in (B) in KeyBoard Row (A)
Focus Button Clicking on this button puts the Window focus on KeyBoard Row (A) and the cursor is shown
(E) Virtual KeyBoard Row Drop down List Selects key in rows 1 to 9
(F) Virtual KeyBoard Column Drop Down List Selects key in column 1 to 20
(E) value 9 and (F) value 5
Selects Key at row 9 and column 5 of Virtual KeyBoard
(G) Clear Button Clears entry in KeyBoard Row (A)
(H) "Hide" or "Show" content Button Hides or shows content of KeyBoard Row (A)

(I) Edit Row Button Puts Character values of characters present in KeyBoard Row (A) on ClipBoard
example format
EditBox details for row 4
  Key No  ASCII No  Row  Column KeyBoard    Type O
       1       189    1       1        
       2       190    1       2        
       3       191    1       3        
       4       192    1       4        
       5       193    1       5        
       6       194    1       6        
       7       195    1       7        
       8       196    1       8        
       9       197    1       9        
      10       198    1      10        
      11       199    1      11        
      12       200    1      12        
      13       201    1      13        
      14       202    1      14        
      15       203    1      15        
      16       204    1      16        
      17       205    1      17        
      18       206    1      18        
      19       207    1      19        
      20       208    1      20        

(J) Full KeyBoard Button Puts the values of the entire Virtual KeyBoard into ClipBoard
example format is as above

(K) Button ASCII character in (B) replaces the key value of key at row value in (E) and column value in (F) of Virtual KeyBoard
(L) Put row value (C) on KeyBoard Button Puts the contents of (A) into keys of row value (E) of Virtual KeyBoard
(M) Edit Row Button Prints the Character values of characters present in KeyBoard Row (A)
example format
EditBox details for row 4
  Key No  ASCII No  Row  Column KeyBoard    Type O
       1       189    1       1        
       2       190    1       2        
       3       191    1       3        
       4       192    1       4        
       5       193    1       5        
       6       194    1       6        
       7       195    1       7        
       8       196    1       8        
       9       197    1       9        
      10       198    1      10        
      11       199    1      11        
      12       200    1      12        
      13       201    1      13        
      14       202    1      14        
      15       203    1      15        
      16       204    1      16        
      17       205    1      17        
      18       206    1      18        
      19       207    1      19        
      20       208    1      20 

(N) Full KeyBoard Button Prints the values of the Virtual KeyBoard in the format shown above
(O) Password Entry Type Drop Down List


20 Random

20 random characters cannot have ASCII values 0. 9, 12, 13, 10 or > 255
20 Linux Characters

20 random characters limited to ASCII values 32 (space) and above
20 Numbers

20 random characters limited to numbers only
20 Caps, Non-Caps & Numbers

20 random characters limited to alphabet of capitals and non capitals and numbers only
20 Caps

20 random characters limited to alphabet of capitals
20 Non-Caps

20 random characters limited to alphabet of non capitals
20 ASCII 33 to 125

20 random characters limited to characters in the ASCII value range of 33 to 125
20 TrueCrypt Characters

20 random characters limited to characters that can be entered into a Truecrypt password
20 Caps, Non-Caps

20 random characters limited to alphabet of capitals and non capitals
(R) Button Select Password Entry Type (O)
(P) KeyBoard Entry Type Drop Down List

Old KeyBoard

KeyBoard of Characters cannot have ASCII values 0. 9, 12, 13, 10 or > 255
Alphabet KeyBoard

KeyBoard of Characters from "!" to "" ASCII value 33 to 245
ClipBoard KeyBoard

KeyBoard of Characters that is loaded from the ClipBoard
Special Characters

KeyBoard of Characters excluding alphabet and numbers 0 to 9
Truecrypt

KeyBoard of Characters that can be entered into a Truecrypt password
Load KeyBoard File

Load a keyboard file which has modifications done as it is loaded to prevent knowledge of key values.
Download example keyboard file here

Load KeyBoard File and SHA

Load a keyboard file which has modifications done by interaction with SHA value as it is loaded to prevent knowledge of key values
Download example keyboard file here

Load Saved KeyBoard

Load a saved keyboard without any modifications
Download example keyboard file here

Save KeyBoard

Save a keyboard.  The key values are saved to a file.
(S)
Button
Select KeyBoard Entry Type (P)

(Q) Replace Duplicate Keys Button Searches for any duplicate keys on Virtual KeyBoard and then replaces key with a new value
(T) Clear ClipBoard Button Clears the ClipBoard
(U) KeyBoard Row to ClipBoard Button Puts characters present in KeyBoard Row (A) on ClipBoard
(V) Paste from ClipBoard to KeyBoard Row Button Puts characters present in ClipBoard onto KeyBoard (A)
(W) Hide or show KeyBoard Button Hides or shows the characters of the Virtual KeyBoard. 
See Keyboard Figures 1 and 3




Old KeyBoard

Alphabet KeyBoard

ClipBoard KeyBoard
KeyBoard of Characters that is loaded from the ClipBoard.
Download example clipboard file here.
Download File and put contents on the ClipBoard.

When the ClipBoard is used for the keys there is mixing with SHA1.  This is to help the user not to know the value of the keys
Special Characters

Truecrypt






Load KeyBoard File
KeyBoard of Characters that is loaded from the keyboard file.
Download example keyboard file here.


When the keyboard is used for the keys there is mixing with SHA1.  This is to help the user not to know the value of the keys.
Load KeyBoard File and SHA
KeyBoard of Characters that is loaded from the keyboard file.
Download example keyboard file here.


When the keyboard is used for the keys there is mixing with SHA1 in a different manner than that of Load KeyBoard File.  This is to help the user not to know the value of the keys.
Load Saved KeyBoard
Load a saved keyboard without any modifications
Download example keyboard file here