-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
ExtensionZ: ...
That becomes a string like "1-C,B,A-X,Y,Z", which gets hashed to a fingerprint like "ae76e4566b036882147de2f7feddad4a". That gives us a totally different unique id, with the same ciphers but in a different order.
(This is pseudocode of course - the actual fingerprints have a few more params and use the number ids for each cipher and extension instead of strings, but it's equivalent)
Here, with 3 ciphers in two different orders, we've seen two different fingerprints already. With those three ciphers alone, there's actually 6 (3 factorial) possible permutations - i.e. a client could order those ciphers any one of 6 different ways, and each ordering has a different fingerprint.
If you have 4 ciphers, there's 24 possible orderings, 6 gives 720, 10 gives 3.6 million, and this goes up very rapidly, so that for a more realistic set of 20 ciphers there's 2 * 10^18 possible orderings, each one of which gives a unique fingerprint, even before we start talking about extension order.
Does that make more sense? The full algorithm is here: https://github.com/salesforce/ja3#how-it-works
Related posts
-
Ask HN: How do you develop and maintain a good note-taking habit?
-
Rabbit R1 can be run on a Android device
-
Flags Are Not Languages
-
Download your Learn course content with this free and open-source tool. All you need is a working computer and basic Python knowledge, and you can save a local copy of your Learn courses' content for future reference after the end of the term.
-
What Are HTML Meta Tags And What Is Their Importance?