Skip to content

Implement Chrome 133+ support #333

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

BRUHItsABunny
Copy link
Contributor

@BRUHItsABunny BRUHItsABunny commented Apr 1, 2025

Since Chrome 133 the TLS fingerprint is changing due to this feature:
https://chromestatus.com/feature/5149147365900288

I found that others are also running into this problem here: #330

It looks like a "full" implementation might be bigger than just extending the current application settings extension, as per another implementation here:
bogdanfinn/utls@fe91add

Opening this PR as a draft to discuss how we should move forward on this, I've also implemented this for the time being as it might be enough to address this (at least for my use case)

@Juktong
Copy link

Juktong commented Apr 2, 2025

Since the previous codepoints are coded in file exttype_values.go, it would be a good idea to also update it as well.

@BRUHItsABunny
Copy link
Contributor Author

I noticed some TLS errors especially on Google domains while using my branch. I have updated it to support the new application settings code point in the ECH as well to fix those errors.

Copy link
Member

@mingyech mingyech left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, added some suggestions

@BRUHItsABunny BRUHItsABunny marked this pull request as ready for review May 12, 2025 17:02
@BRUHItsABunny BRUHItsABunny requested a review from mingyech May 15, 2025 14:56
@RonaldinhoL
Copy link

rename ApplicationSettingsExtension to applicationSettingsExtension break my exist custom spec

@RonaldinhoL
Copy link

RonaldinhoL commented May 16, 2025

Just duplicating the ApplicationSettingsExtension would be cleaner. These changes force unnecessary updates to too many spec settings.

@BRUHItsABunny
Copy link
Contributor Author

I understand, some of my own modules also broke with those changes and wasn't sure if that was the expectation with the approach that was requested.
I made some changes that achieve both goals at the same time (1 only 1 place to implement the extension being written to the wire, 2 no breakages with the pre-existing patterns that expect the SupportedProtocols slice to be available and exported)

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.

4 participants