360haven works best with JavaScript enabled
Algorithm Tool

1. ## Algorithm Tool

Algorithm Tool
version: 2.2.0.0
created by: JizzaBeez

How to use:

1) open a file (drag n drop, or open from menu).
2) there are 2 ways to use this tool:

1) Calculator
a) enter the [start] position/offset.
b) enter the [length], or check [select all].
c) click [calculate].

2) Brute Force
a) select the [type] from the ListView.
b) enter the [start] position/offset.
c) enter the known [value] (must be in HEX format).
d) check [retry?] if you want the [start] to advance +1 when it reaches the end of data and then start the search again.
e) select the [direction]. "forward" will increase bytes read from beginning to end and "reverse" will decrease bytes read from end to beginning.
f) click [start] to start searching. if needed, click [stop] to stop searching.
- the tool will search the data with the [type] beginning at the [start] until it reaches the end of the data or if the [length] is found. if the calculated data's sum/hash matches the [value] then it will message with the details of the calculation, if not then it will message "length not found".

Information:

[type]
- the known checksum/hash algorithm type. if unknown then select all to cycle through all available.

[value]
- the known checksum/hash value (must be in HEX format).

[start]
- the starting position/offset in the data to start calculating from.

[length]
- the length of data to calculate using the given algorithm type.

[retry?]
- when the scan reaches the end of the data it will advance the [start] +1 then restart the calculation (loop) until the end of the file.

[select all]
- selects the entire file to be calculated.

[direction]
- the direction in which to scan the file. "forward" will increase bytes read from beginning to end and "reverse" will decrease bytes read from end to beginning.

Direction Example:

Forward:
scan1 : [X]
scan2 : [X][X]
scan3 : [X][X][X]

Reverse:
scan1 : [X][X][X]
scan2 : [X][X]
scan3 : [X]

Requirements:

1) .net framework 3.5, or greater.
2) windows xp, or greater (not tested on os below xp).
3) 32bit os. may work on 64bit os.
*) Plugins.dll. This DLL is needed to run and should be included.

1) 2.0.0.0
- completely recoded.
- new ui design/layout.

2) 2.1.0.0
- Required: "Plugins.dll" is a Plugin that holds the algorithms to use. "Plugins.dll" can be updated as needed.

Example of Plugins.dll:

The program uses System.Reflection to get the Classes and Methods from the DLL file, so as long as the DLL is built like below then the program can use it...
```
Namespace Algorithms

Public Class Checksum32

Public Function Compute(ByVal Bytes As Byte()) As Byte()
Dim Value As UInteger = 0
For Each b As Byte In Bytes
Value = CUInt((Value + b) And &HFFFFFFFF)
Next
Dim OutBytes As Byte() = BitConverter.GetBytes(CUInt(Value))
Array.Reverse(OutBytes)
Return OutBytes
End Function

End Class

End Namespace
```

3) 2.2.0.0
- new design/ui (again)
- optimized code so it should scan faster now.
- included the "direction" feature for brute force.

Screenshots:

2. ## Please enable JavaScript to view the comments powered by Disqus. The Following 37 Users Say Thank You to JizzaBeez For This Useful Post:

+ Show/Hide list of the thanked

3. Looks like a nice piece of kit, any particular gamesaves you would recommend for someone looking to learn about detecting and repairing checksums to throw at this program?

4. Originally Posted by 8Ball
Looks like a nice piece of kit, any particular gamesaves you would recommend for someone looking to learn about detecting and repairing checksums to throw at this program?
Yeah here's an easy one from After Burner Climax...

Info:
-The CRC32 checksum is at (0x8 - 0xB)
-The Length of the covered data is at (0xC - 0xF)
-The data covered is at (0x10 - Length/EOF)

5. Great tool :)

6. I'm being given an error when i press calculate.

I tested it on a 32Bit XP-SP3 system.
I have all the .Net frameworks installed and all that jazz.
Seems none of the algos are willing to work for me, in either mode.

7. What if you don't know the Algorithm Type (Calculator)?

8. Originally Posted by 8Ball
I'm being given an error when i press calculate.

I tested it on a 32Bit XP-SP3 system.
I have all the .Net frameworks installed and all that jazz.
Seems none of the algos are willing to work for me, in either mode.
Hmmm... I don't know, I've never seen that. I use Win7 and Vista 32bit. All I can guess is that the specified cryptographic algorithm is not supported on that platform... lol. But for real, I'm running it right now on my PC...

9. Originally Posted by pureIso
What if you don't know the Algorithm Type (Calculator)?
If you want to calculate then you should know what type you want... brute force is for when you don't know what type or the length covered and the program will try to find these. The application does not currently support calculating and displaying results for multiple types... maybe I will update some things and add more features soon.

Page 1 of 6 123456 Last

#### Posting Permissions

• You may not post new threads
• You may not post replies
• You may not post attachments
• You may not edit your posts
•