Skip to content

Update GrandSlam authentication user agent - #47

Open
BreezeDelegate wants to merge 1 commit into
rileytestut:marketplacefrom
BreezeDelegate:fix/authkit-user-agent
Open

Update GrandSlam authentication user agent#47
BreezeDelegate wants to merge 1 commit into
rileytestut:marketplacefrom
BreezeDelegate:fix/authkit-user-agent

Conversation

@BreezeDelegate

Copy link
Copy Markdown

Use a current AuthKit user agent for GrandSlam authentication requests instead of the Mojave-era akd value.

Related to altstoreio/AltStore#1716.

@Calvin-Zikakis

Calvin-Zikakis commented Sep 4, 2026

Copy link
Copy Markdown

Adding data in support of this, and correcting my earlier thoughts of what was going on.

I said elsewhere that the User-Agent looked unrelated to the 503s people are hitting on GsService2. That was based on a 6 request sample and it was wrong. Re-ran it interleaved so time variation is controlled, 100 requests per UA:

old  akd/1.0 CFNetwork/978.0.7 Darwin/18.7.0        100 requests, 12x 503
new  AuthKit/1 (Macintosh; OS X 26.5.2) (...26.0)   100 requests,  0x 503

@MeemeeLab also reports this patch got them signing in again on altstoreio/AltStore#1776.

What seems to be going on: a connection gets a fixed number of requests before Apple starts 503ing it, and the User-Agent changes that number. Six requests down one reused connection, five trials each, identical every time:

old UA:  200 200 503 503 503 503
new UA:  200 200 200 200 503 503

Two requests on the old UA, four on the new one, then everything after that fails on that connection. Sign in sends three requests down one connection, which is exactly why it dies on the third one with the old UA and why this patch fixes it.

There is a separate baseline failure rate on top of that, around 20 to 25 percent even on a fresh connection's first request, and the UA does not change that part (old 15/20, new 16/20). So this patch solves the deterministic part, and retrying 5xx on a fresh connection (#49 for marketplace, #50 for notarized) covers the rest.

@Calvin-Zikakis

Copy link
Copy Markdown

Opened #51 to port this onto the notarized branch, since that is what AltStore's classic branches pin and it does not inherit from marketplace. The commit keeps you as author, the change is yours unchanged. Hope that is alright, happy to close it if you would rather open it yourself.

Calvin-Zikakis pushed a commit to Calvin-Zikakis/AltSign that referenced this pull request Sep 4, 2026
The akd/1.0 CFNetwork/978.0.7 Darwin/18.7.0 string dates from macOS 10.14.
Apple's GSA edge now allows only two requests per connection with it, and
sign in sends three, so the third always fails with an HTML 503 that surfaces
as NSCocoaErrorDomain 3840. A current AuthKit string raises that to four.

Port of rileytestut#47 by @BreezeDelegate onto the notarized branch,
which AltStore's classic branches pin.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants