/** * Create sha512 checksum for token * * @param SignOnMode $mode * @param Ip $customerIp * @param TokenExpiration $tokenExpiration * @param string $shopSalt * @param string $serverSalt */ public function __construct(SignOnMode $mode, Ip $customerIp, TokenExpiration $tokenExpiration, $shopSalt, $serverSalt) { $token = $shopSalt . $serverSalt . $tokenExpiration->asTimestamp() . $mode . $customerIp->tokenify(); if ($mode->isUser()) { $token .= ":" . self::ADMIN_ID_DEFAULT; } $this->tokenChecksum = hash('sha512', $token); }