Documentation

The Documentation will be put on the web in stages.

The documentation here is in two tables.  The first table looks at the Sub Menu.  The second Table describes the entries of the Sub Sub Menu.  The second Table also describes what SHA1 log files and SHA1 double log files are.  Above the Second Table is a description of the difference between SHA1 and the variation of SHA1 that is used in this program.


Logs

Menu Level

Why Needed

Sub Sub Menu

Description

Affirm between Log File and Directory Sub

--------Not Encrypted---------
1 SHA1 Log
2 Double SHA1 Log
--------Single Password---------
3 SHA1 Log
4 Double SHA1 Log
--------Double Password---------
5 SHA1 Log
6 Double SHA1 Log
                              
This is now longer used replaced by "4 Compare Log File and Directory"
Back Up SHA Logs Sub



- (Root Directories - not root)----
1 Un-Encrypted
Encrypted -&2
---------------- (Multi Drive)-----
3 Un-Encrypted
4 Encrypted
---------------- (Directory)-------
5 Un-Encrypted
6 Encrypted

Compare Log Files Sub
-------Not Encrypted---
1 SHA1 File
2 Double SHA1 File
-------Single Password-
3 SHA1 File
4 Double SHA1 File
-------Double Password-
5 SHA1 File
6 Double SHA1 File
                    
Will compare 2 log files and find:
  • files which are the same in both log files
  • files with same name are different in both log files
  • files which are in Log file 1 and not in log file 2
  • files which are in Log file 2 and not in log file 1
The findings are indexed by:
  • name
  • size
  • Directory
  • Extension
4 Compare Log File and Directory Sub

-------Not Encrypted---
1 SHA1 File
2 Double SHA1 File
-------Single Password-
3 SHA1 File
4 Double SHA1 File
-------Double Password-
5 SHA1 File
6 Double SHA1 File
Will compare log file and directory and find:
  • files which are the same in both log file and directory
  • files with same name that are different in both log file and directory
  • files which are in Log file and not in directory
  • files which are in  directory and not in log file
The findings are indexed by:
  • name
  • size
  • Directory
  • Extension


Determine Log Type Sub

-------Not Encrypted---
1 SHA1 File
2 Double SHA1 File
-------Single Password-
3 SHA1 File
4 Double SHA1 File
-------Double Password-
5 SHA1 File
6 Double SHA1 File
Log Files come in two types:
  • a root log file
  • a sub directory root log file
7 Find Duplicates in 2 Log Files Sub

-------Not Encrypted---
1 SHA1 File
2 Double SHA1 File
-------Single Password-
3 SHA1 File
4 Double SHA1 File
-------Double Password-
5 SHA1 File
6 Double SHA1 File
Will compare two log files and search for duplicate files by SHA-1:

The findings are indexed by:
  •     name
  •     size
  •     Directory
  •     Extension

Find Duplicates in Single Log File Sub

-------Not Encrypted---
1 SHA1 File
2 Double SHA1 File
-------Single Password-
3 SHA1 File
4 Double SHA1 File
-------Double Password-
5 SHA1 File
6 Double SHA1 File
                        
Will search a  log file for duplicates

The findings are indexed by:

  •     name
  •     size
  •     Directory
  •     Extension

8 Modify and Change Log Files Sub
Log files record directory structures.  Sometimes when files are backed up they are backed up to different directory positions and names.  It is useful to be able to change the directory name and structure so that a signature is available of the transferred files and the transferred files can be checked by the modified log file ---------------Using SINGLE SHA----------
1 Convert Log File to Different Directory
2 Delete Directories in Log File
3 Delete Files in Log File
---------------Using DOUBLE SHA----------
4 Convert Log File to Different Directory
5 Delete Directories in Log File
6 Delete Files in Log File
---------------Using CRC-----------------
7 Convert Log File to Different Directory
8 Delete Directories in Log File
9 Delete Files in Log File
---------------ABOUT-----------------
a Normalise

Match Names in Two Log Files Sub

-------Not Encrypted---
1 SHA1 File
2 Double SHA1 File
-------Single Password-
3 SHA1 File
4 Double SHA1 File
-------Double Password-
5 SHA1 File
6 Double SHA1 File
                            
Searches for files in the log files with the same name and checked if the SHA-1 is the same or different
Name Match in Single Log File Sub

-------Not Encrypted---
1 SHA1 File
2 Double SHA1 File
-------Single Password-
3 SHA1 File
4 Double SHA1 File
-------Double Password-
5 SHA1 File
6 Double SHA1 File   
Searches for files in the log file with the same name and checked if the SHA1 is the same or different
Read Log Files Sub
-------Not Encrypted---
1 SHA1 File
2 Double SHA1 File
-------Single Password-
3 SHA1 File
4 Double SHA1 File
-------Double Password-
5 SHA1 File
6 Double SHA1 File  
Reads content of log file and displays file with four choices of index
  • name
  • size
  • Directory
  • Extension


Get File Index - Single Directory Sub

Loads all log files in parent directory and lists the file contents. On file selection it will display:
  • The log file it came from
  • The parent directory
  • The sub directory of parent directory log file is located in
  • The SHA1 value obtained from log file
Displays file with four choices of index
  • name
  • size
  • Directory
  • Extension
Get File Index - Parent Directory Sub

Loads all log files in parent directory and its sub directories and lists the file contents. On file selection it will display:
  • The log file it came from
  • The parent directory
  • The sub directory of parent directory log file is located in
  • The SHA1 value obtained from log file
Displays file with four choices of index
  • name
  • size
  • Directory
  • Extension


The difference between SHA1 and SHA-1.  This program uses SHA-1 in its log files.
SHA-1 (499,999,999) = SHA(500,000);
SHA-1(500,000,010) = SHA(500,000)+SHA(10);
SHA-1(1,001,000 size file) = SHA-1(SHA1(500,000) + SHA1(500,000)+ SHA1(2000)) = SHA1(SHA1(500,000) + SHA1(500,000)+ SHA1(2000)).

The NTFS file system can have very large files.  A High quality video file may be many times larger than 4GB.  If the number of 500k chunks in a file exceeds 500k then we take the signature of 500k signatures and continue.

for example
SHA-1(250,000,001,000 size file) = SHA1(SHA-1(250,000,000,000) + SHA-1(1000)).

Test Vectors (from FIPS PUB 180-1)
"abc"
A999-3E36-4706-816A-BA3E-2571-7850-C26C-9CD0-D89D
"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
8498-3E44-1C3B-D26E-BAAE-4AA1-F951-29E5-E546-70F1

A million repetitions of "a" which under SHA-1 gives
34AA-973C-D4C4-DAA4-F61E-EB2B-DBAD-2731-6534-016F
will under SHA1 give:
C3AC-C310-183F-238A-CEA1-CF5C-243C-74C1

Sub Sub Menu

Description

Single SHA1 Hash The Secure Hash Algorithm (SHA), was developed by National Institute of Standards and Technology (USA) NIST.  When a message of any length < 2 power 64 bits is input, the SHA produces a 160-bit output called a message digest. This program uses the implementation as written by Peter C. Gutmann on 2 September 1992 and modified 1 June 1993, by Colin Plumb.

160 bits (20 bytes) are not easily readable by the human being or always capable of being displayed on a computer screen.  A byte can be represented by two Hex characters.  20 byte  message digest are translated into 40 Hex characters for readability.
Eg:

File Name: Graphics.cpp
File Size: 26290
Hash: 9761-AC8E-8094-5EBA-78BC-CCE2-3ECE-4FB1-8BBE-AE76

The 40 Hex characters here displayed in groups of four for readability.

This enables identification of file's contents without the need to display a file which can vary in size from 0 bytes to Gigabytes.  There is always the problem that you can have two files with different contents having the same SHA1.

This enables identification of file's contents without the need to display a file which can vary in size from 0 bytes to Gigabytes.  There is always the problem that you can have two files with different contents having the same SHA1.



--------Not Encrypted--------- Separator
1 SHA1 Log Log file of single SHA1 hashes
2 Double SHA1 Log Log file of double SHA1 hashes
--------Single Password--------- Separator
3 SHA1 Log Log file of single SHA1 hashes.  The log file is encrypted by a single password. Double SHA1 Hash A one way hash function H(M), operates on an arbitrary-length pre-image message,
M. It returns a fixed-length hash value, h.
h = H(M). This is our first file signature.

To each byte of an arbitrary-length pre-image message M we add 1 to get M1.
we apply the one way hash function to M1 to get
h1 = H(M1). This is our second file signature.

There is always a probability that two files can share the same hash.  This fact can be used by the legal profession to claim that a file is not unique and hence the file is not the original legal document.  The probability of two files meeting the criteria of having the same double SHA1 hash value is very small.  The probability of finding two files with the same single SHA1 is a lot larger in comparison.

This enables identification of file's contents without the need to display a file which can vary in size from 0 bytes to Gigabytes.  There is always the problem that you can have two files with different contents having the same SHA1.  This problem does not occur with the double SHA1.



4 Double SHA1 Log Log file of double SHA1 hashes. The log file is encrypted by a single password.
--------Double Password--------- Separator
5 SHA1 Log Log file of single SHA1 hashes.  The log file is encrypted by a single password.
6 Double SHA1 Log Log file of double SHA1 hashes. The log file is encrypted by a double password.