71 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
namespace Safe;
 | 
						|
 | 
						|
use Safe\Exceptions\SsdeepException;
 | 
						|
 | 
						|
/**
 | 
						|
 * Calculates the match score between signature1
 | 
						|
 * and signature2 using
 | 
						|
 * context-triggered piecewise hashing, and returns the match
 | 
						|
 * score.
 | 
						|
 *
 | 
						|
 * @param string $signature1 The first fuzzy hash signature string.
 | 
						|
 * @param string $signature2 The second fuzzy hash signature string.
 | 
						|
 * @return int Returns an integer from 0 to 100 on success, FALSE otherwise.
 | 
						|
 * @throws SsdeepException
 | 
						|
 *
 | 
						|
 */
 | 
						|
function ssdeep_fuzzy_compare(string $signature1, string $signature2): int
 | 
						|
{
 | 
						|
    error_clear_last();
 | 
						|
    $result = \ssdeep_fuzzy_compare($signature1, $signature2);
 | 
						|
    if ($result === false) {
 | 
						|
        throw SsdeepException::createFromPhpError();
 | 
						|
    }
 | 
						|
    return $result;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/**
 | 
						|
 * ssdeep_fuzzy_hash_filename calculates the hash
 | 
						|
 * of the file specified by file_name using
 | 
						|
 * context-triggered piecewise
 | 
						|
 * hashing, and returns that hash.
 | 
						|
 *
 | 
						|
 * @param string $file_name The filename of the file to hash.
 | 
						|
 * @return string Returns a string on success, FALSE otherwise.
 | 
						|
 * @throws SsdeepException
 | 
						|
 *
 | 
						|
 */
 | 
						|
function ssdeep_fuzzy_hash_filename(string $file_name): string
 | 
						|
{
 | 
						|
    error_clear_last();
 | 
						|
    $result = \ssdeep_fuzzy_hash_filename($file_name);
 | 
						|
    if ($result === false) {
 | 
						|
        throw SsdeepException::createFromPhpError();
 | 
						|
    }
 | 
						|
    return $result;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
/**
 | 
						|
 * ssdeep_fuzzy_hash calculates the hash of
 | 
						|
 * to_hash using
 | 
						|
 * context-triggered piecewise hashing, and returns that hash.
 | 
						|
 *
 | 
						|
 * @param string $to_hash The input string.
 | 
						|
 * @return string Returns a string on success, FALSE otherwise.
 | 
						|
 * @throws SsdeepException
 | 
						|
 *
 | 
						|
 */
 | 
						|
function ssdeep_fuzzy_hash(string $to_hash): string
 | 
						|
{
 | 
						|
    error_clear_last();
 | 
						|
    $result = \ssdeep_fuzzy_hash($to_hash);
 | 
						|
    if ($result === false) {
 | 
						|
        throw SsdeepException::createFromPhpError();
 | 
						|
    }
 | 
						|
    return $result;
 | 
						|
}
 |