cache,'signature')) { if ($this->size) { $this->fopen(); $hash = hash_init($alg); while (!is_null($read = $this->fread(16384))) hash_update($hash, $read); $this->fclose(); $this->cache['signature'] = hash_final($hash); } else { $this->cache['signature'] = NULL; } } return $this->cache['signature']; } }