|
|
1
8
一种典型的方法是编写一条明文消息,解释访问密钥所需的内容,随后是安全摘要。因此你会返回类似
|
|
|
2
1
一种方法是使用unix时间戳,然后将其分成若干位,使其精度达到3个月左右。 例如: 1275068416(星期五,2010年5月28日17:40:16 GMT) 等于: 00000000000000000000000 如果我们把其中的9位保存在散列中,第9位会改变: 010011001 等于: 1283457024(周四,2010年9月2日19:50:24 GMT) 97天2小时10分8秒 比3个月多7天。 假设第9位再次更改(正向): 010011010 00000000000000000000000 等于:1291845632(星期三,2010年12月8日22:00:32 GMT) 其区别在于: 距1283457024(2010年9月2日星期四19:50:24 GMT)97天3小时10分8秒。 因此,尝试一下,将严格意义上的32位unix时间戳的前9位保存在hash中,您将获得3个月的有效期。请注意,有效期是以三个月为单位的,因此,如果在三个月期限结束时生成密钥(例如,2010年12月7日星期二22:00:32 GMT),它将只在较短的时间内有效。 |