# 创建哈希值（Hash）

Cravatar上的所有URL都基于电子邮件地址的散列值使用。图像和个人资料都可以通过电子邮件的哈希来访问，它被认为是系统内识别身份的主要方式。为确保一致和准确的哈希值，应采取以下步骤来创建哈希：

1. 从电子邮件地址中删除前导和尾随空格。
2. 强制将所有字符转换为小写。
3. 对最终字符串进行md5哈希处理。

以一个示例来说明，假设我们从 “<MyEmailAddress@example.com> “（注意尾随的空格，这是我们假设的用户误输入的）开始。如果直接对该字符串进行md5编码，我们会得到以下结果（在PHP中）：

```php
echo md5( "MyEmailAddress@example.com " );
// "f9879d71855b5ff21e4963273a886bfc"
```

现在，如果我们将相同的电子邮件地址通过上述过程运行，你会看到我们得到一个不同的结果（再次在PHP中）：

```php
$email = trim( "MyEmailAddress@example.com " ); // "MyEmailAddress@example.com"
$email = strtolower( $email ); // "myemailaddress@example.com"
echo md5( $email );
// "0bc83cb571cd1c50ba6f3e8a78ef1346"
```

这可以很容易地合并为一行：

```php
echo md5( strtolower( trim( "MyEmailAddress@example.com " ) ) );
```

生成一致的哈希后，你可以请求图像或个人资料。