Without a User Agent, You Can’t Get on the Internet.
(Don’t Worry. You Have One.)
Most of the time, technical terms can be…well, just too technical for the average Joe with a computer. User Agent, or UA, is one such term.
A User Agent is any computer application or system that helps you get onto the internet and access online content. User agents include web browsers, media players, plug-ins, consumer electronics with web-widgets and other stand-alone applications.
Still too technical?!
Let’s take web browsers as an example.
Each web browser has its own distinctive user agent. When you visit a website, your web browser contains a text string that it gives to that site:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322) Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36
This means you’re using Internet Explorer 6.0 with an operating system of Windows NT 5.1 Service Pack 1 on a .NET framework.
The web server uses this information to customize content that best suits your particular device, browser and operating system. It may serve mobile pages to mobile browsers or serve simpler web pages to old browsers. It might even ask you to upgrade or change your browser to better view the content. The User Agent is your browser’s way of saying “Hi! I’m Chrome on Windows 10” to the web server. Like the herald or Court Marshal in the old days that announced the name and title of a guest of the court. The anouncement would ensure the guest received the appropriate welcome or treatment.
The second example says you’re using Chrome 64 on Windows 10.
Why Does It say Mozilla, Apple Webkit or Gecko?
When the Internet was young, the World Wide Web was dominated by a few of the first generation of browsers. As a result, many web servers were designed to interact and connect with only those leading browsers. When web servers got a request for access, and the browser user agent didn’t look familiar, it would reply with incomplete information or it simply denied website access.
You now see “Mozilla” at the start of different browser user agents because, back in the day, Mozilla was the only browser that supported frames. When web servers checked the text string and it contained the word “Mozilla”, it knew to send web pages containing frames—the rest were sent old pages.
When Microsoft’s Internet Explorer came along, although it too supported frames, the web servers didn’t recognize it and continued to send old pages to IE browsers. To address this problem, Microsoft added the word “Mozilla” to their user agent and threw in additional information (the word “compatible” and a reference to IE.) Web servers were happy to see the word Mozilla and sent IE the modern web pages.
Other browsers that came later did the same thing. Same was true for the word “Gecko,” referring to Firefox’s rendering engine. KHTML—originally developed for Konquerer on Linux’s KDE desktop—added the words “like Gecko” so they’d get the modern pages designed for Gecko, too. WebKit was based on KHTML—when it was developed, they added the word WebKit and kept the original “KHTML, like Gecko” line for compatibility purposes.
Because web servers don’t really care what the exact user agent string is—just that it contains a specific word when they check it—browser developers kept adding words to their user agents over time. Sounds simple but messy at the same time, doesn’t it?
The practice of web servers showing different content depending on certain user agent is known as user agent sniffing. This results, for the user, in having a different online experience when browsing the page with a specific browser. Microsoft Exchange Server 2003’s Outlook Web Access, for instance, displayed more functionality compared to other browsers when viewed with IE6 or newer, it.
As a workaround, various browsers have a feature to cloak or spoof their identification. For example, the Android browser identifying itself as Safari—to force certain server-side content. User agent sniffing is considered poor practice. Why? Because it promotes the use of a particular brand/technology to the detriment of new players or innovations in the online space.
The user agent is an important part of your internet experience. When you go online, it’s at work, letting websites and online services know that you need access.
- Easy Prey Podcast
- General Topics
- Home Computing
- IP Addresses
- Online Privacy
- Online Safety
In today’s age of disinformation and fake news, conspiracy theories are running rampant. Some are small and…[Read More]
Your mobile phone…is it a life-changing invention or the end of all privacy? Our cell phones give…[Read More]
A recent study from Check Point Research revealed hackers can gain access to smart lightbulbs.[Read More]
You need to know how to clear browsing history on your computers and phones. Still, that's not...[Read More]
The teenage nerd next door isn't the hacker to worry about. Now it's foreign governments, ransomware, and...[Read More]