static public function hash($algorithm, $data, $raw_output = false)
    {
        $hashBits = self::getHashBitLength($algorithm);
        return Keccak::hash($data, (int) $hashBits, (bool) $raw_output);
    }
static public function hash($algorithm, $data, $raw_output = false)
    {
        $hashBits = self::getHashBitLength($algorithm);
        return Keccak::hash($data, (int) $hashBits, (bool) $raw_output);
    }
static public function hash ( $ algorithm , $ data , $ raw_output = false ) { $ hashBits = self :: getHashBitLength ( $ algorithm ) ; return Keccak :: hash ( $ data , ( int ) $ hashBits , ( bool ) $ raw_output ) ; }
Non-Incremental Keccak Hash implementation.

@param   null|string|integer     $algorithm      The hashing algorithm or Hash Bit Length.
@param   string|\NEM\Core\Buffer $data           The data that needs to be hashed.
@param   boolean                 $raw_output     Whether to return raw data or a Hexadecimal hash.
@return  string
Non - Incremental Keccak Hash implementation .