use hashed cache key to prevent too long cache key