public function HashValue($dynamicSalt, $data, $hashLength = null) {
        $separator = "$%*{//}*%$";
        return
                is_null($hashLength) && is_int($hashLength) ?
                substr(sha1($this->hashSalt . $separator . $dynamicSalt . $separator . $data), 0, $hashLength) :
                sha1($this->hashSalt . $separator . $dynamicSalt . $separator . $data);
    }