__toString() ); } /** * @return string */ public static function get_step_token() { $str = self::generate( self::STEP_TOKEN_KEY_LENGTH ); return $str->toBase64()->__toString(); } /** * @return string */ public static function get_session_id() { $str = self::generate( self::SESSION_KEY_LENGTH ); return $str->toBase64()->__toString(); } /** * @return string */ public static function get_pusher_session_id() { $str = self::generate( self::PUSHER_SESSION_KEY_LENGTH ); return md5( $str->__toString() ); } /** * @param int $length * * @return Str */ private static function generate( $length ) { $generator = new RandomStringGenerator( new NonCryptographicalRandomIntGenerator() ); return $generator->string( $length ); } }