original_string: public static function decryptOpenssl($textToDecrypt, string $secretHash = null, string $password = ''): ? string
    {
      if ( !$secretHash ){
        $secretHash = self::$salt;
      }
      if ( $length = openssl_cipher_iv_length(self::$method) ){
        $iv = substr(md5(self::$prefix.$password), 0, $length);
        return openssl_decrypt($textToDecrypt, self::$method, $secretHash, true, $iv);
      }
      return null;
    }
code: public static function decryptOpenssl($textToDecrypt, string $secretHash = null, string $password = ''): ? string
    {
      if ( !$secretHash ){
        $secretHash = self::$salt;
      }
      if ( $length = openssl_cipher_iv_length(self::$method) ){
        $iv = substr(md5(self::$prefix.$password), 0, $length);
        return openssl_decrypt($textToDecrypt, self::$method, $secretHash, true, $iv);
      }
      return null;
    }
code_tokens: public static function decryptOpenssl ( $ textToDecrypt , string $ secretHash = null , string $ password = '' ) : ? string { if ( ! $ secretHash ) { $ secretHash = self :: $ salt ; } if ( $ length = openssl_cipher_iv_length ( self :: $ method ) ) { $ iv = substr ( md5 ( self :: $ prefix . $ password ) , 0 , $ length ) ; return openssl_decrypt ( $ textToDecrypt , self :: $ method , $ secretHash , true , $ iv ) ; } return null ; }
docstring: Decrypt string using openSSL module
  @param string $textToDecrypt
  @param string $secretHash Any random secure SALT string for your website
  @param string $password User's optional password
  @return null|string
docstring_tokens: Decrypt string using openSSL module