Sign in

iiinova is part of the Atmosphere — an open, public network where you own your identity.

Теодор Златанов / Ted Zlatanov

@tzz.infosec.exchange.ap.brid.gy
6 followers 2 following 38 posts

🌉 bridged from ⁂ infosec.exchange/@tzz, follow @ap.brid.gy to interact

PostsRepliesMedia
Reposted by Теодор Златанов / Ted Zlatanov
Mark T. Tomczak @mark.mastodon.fixermark.com.ap.brid.gy · 07/10/2026
Wow... So I went to install treesitter markdown for emacs and encountered the "the latest ABI is version 15" issue. Dealing with that is literally DLL hell. Up to and including "restart emacs because regardless of what it is telling you, the process itself loaded an old .so and won't unload it […]
mastodon.fixermark.com
Original post on mastodon.fixermark.com
001 1
Reposted by Теодор Златанов / Ted Zlatanov
Laura Hilliger @epilepticrabbit.social.coop.ap.brid.gy · 06/10/2026
Good post today about not letting platforms determine the words we use from @anildash www.anildash.com/2026/10/06/kill-un…
anildash.com
We are going to kill "unalive"
Comments
0111 11
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 01/10/2026
#iPhone with latest OS has started forgetting Bluetooth exists every morning. Headphones and other stuff dead. Nothing but restarting the phone fixes it. So fun.
000 0
Reposted by Теодор Златанов / Ted Zlatanov
Zach Weinersmith @zachweinersmith.bsky.social · 29/09/2026
Just to elaborate, what I appreciate here isn't just the language and images, it's the way in which it gently snuggles up to that weird thing where there's a whole universe, which you can't help but perceiving is somehow just there for you. A whole sun had to exist to make light play on the wall.
27716 77
Reposted by Теодор Златанов / Ted Zlatanov
josh buermann @buermann.mastodon.social.ap.brid.gy · 26/09/2026
RE: mastodon.social/@buermann/113206030… Happy #StanislavPetrov Day to all those who celebrate, live it like it's your last. I guess I could observe this year's #Ramadoom by refusing to use LLMs but you'd have to make me in the first place. Like the one where the Catholic gives […]
mastodon.social
Original post on mastodon.social
0014 14
Reposted by Теодор Златанов / Ted Zlatanov
Ada Palmer @adapalmer.bsky.social · 20/09/2026
The world’s largest battery-electric aircraft flew for the first time on the 12th of August, a 27-minute test flight over upstate New York that cost about five dollars in electricity. Heart Aerospace’s 30-seat prototype is a big step toward a commercial version. buff.ly/i3f0PhR #ShareGoodNewsToo
techspot.com
The largest all-electric plane ever flew for 27 minutes, on $5 of electricity
Heart's X1 demonstrator flew for 27 minutes from a regional airport in upstate New York, running on battery power the entire time. The aircraft reached 1,100 feet...
191042293 1K
Reposted by Теодор Златанов / Ted Zlatanov
bontchev.infosec.exchange.ap.brid.gy @bontchev.infosec.exchange.ap.brid.gy · 20/09/2026
Front end, back end, and user interface:
004 4
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 17/09/2026
Damn, “Once Upon a Time in the West” is an amazing movie.
000 0
Reposted by Теодор Златанов / Ted Zlatanov
Guy Emerson @angloperanakan.lingo.lol.ap.brid.gy · 08/09/2026
This Is Just To Say I have trained on the proofs that were on our servers and which you were probably saving for publication. Forgive me I can't rule out that your proofs improved our models but burning $15m on a $1m prize so lean and so slop
0935 35
Reposted by Теодор Златанов / Ted Zlatanov
John Rogers @johnrogers.bsky.social · 06/09/2026
The animating principle of representational democracy is to protect the rest of us from the whims of deranged rich people, be they kings or oligarchs. Everything else is wainscoting. www.hollywoodreporter.com/movies/movie...
hollywoodreporter.com
Elon Musk Unmasked in Alex Gibney Documentary: “Insane a Person This Chaotic Has So Much Power”
He is the richest man on earth. An explosive new film from the Oscar-winning director suggests he also may be among the most dangerous.
226683 266
Reposted by Теодор Златанов / Ted Zlatanov
Adam Shostack :donor: :rebelverified: @adamshostack.infosec.exchange.ap.brid.gy · 05/09/2026
Today, in some reviews are about the reviewer news: www.techtimes.com/articles/326535/2…
techtimes.com
Kill Jackie Dramatizes Real Criminal Tech: Dark Web, Gig Drugs, Art Fraud
Kill Jackie AMC+ premiere date, cast, and real-world dark web and art fraud connections: Catherine Zeta-Jones stars in the October 2, 2026 thriller that accurately dramatizes gig-economy drug logistics, Tor network architecture, and art market money laundering as documented by Europol and the US
010 1
Reposted by Теодор Златанов / Ted Zlatanov
Ada Palmer @adapalmer.wandering.shop.ap.brid.gy · 02/09/2026
India is refilling its aquifers with an engineering technique that long predates the arrival of the British. India holds 18% of the world’s people yet just 4% of its fresh water, so it’s now turning to its johads and stepwells, structures built to store water or slow it down until it soaks in […]
wandering.shop
Original post on wandering.shop
1214 14
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 01/09/2026
Tariffs are bullshit
000 0
Reposted by Теодор Златанов / Ted Zlatanov
Adam Shostack :donor: :rebelverified: @adamshostack.infosec.exchange.ap.brid.gy · 31/08/2026
Congratulations to @grimalkina who's really winning the scrum... 😂
An amazon screen capture showing the book as #1 in ... Rugby
003 3
Reposted by Теодор Златанов / Ted Zlatanov
Andrew Nesbitt @andrewnez.mastodon.social.ap.brid.gy · 28/08/2026
Now Hiring: Senior Open Source Maintainer nesbitt.io/2026/08/28/now-hiring-se…
nesbitt.io
Now Hiring: Senior Open Source Maintainer
**Location:** Lincoln, Nebraska, USA **Employment type:** Volunteer **Term:** Permanent **Compensation:** $0 **Reports to:** The community **Direct reports:** None **Start date:** Immediate We’re looking for a passionate, self-directed engineer to take full ownership of one of the most widely deployed libraries in the ecosystem. This is a rare opportunity to make a real impact on software that millions of developers depend on every single day. If you thrive on autonomy, love working in the open, and want to wear many hats in a fast-paced environment, we’d love to hear from you. **About the role** As Senior Open Source Maintainer you will be the primary technical owner and public face of the project. You’ll drive the roadmap, ship releases, support a global user base, and champion the project across the wider industry. This is a highly visible individual contributor role with enormous scope. No two days are the same, and you’ll have full autonomy to decide how you spend your time. **What you’ll do** * Own the technical roadmap and long-term architectural direction * Review and merge contributions from a diverse, global community of open source developers * Triage and prioritise the issue tracker and feature request backlog * Maintain comprehensive documentation, examples, migration guides, and API references * Ensure project websites and documentation meet current accessibility standards * Cut releases across all supported major version lines and write the release notes * Own the CI pipeline, release automation, and package publishing infrastructure * Keep dependencies current and promptly action automated update pull requests * Support users on GitHub, Discord, Slack, Stack Overflow, Mastodon, Bluesky, and email * Ensure compatibility across all current runtimes, operating systems, and architectures * Preserve backwards compatibility, including widely relied-upon undocumented behaviour * Coordinate release timing with downstream distributions, registries, and redistributors **You’ll also** * Participate in the on-call rotation for incidents at downstream production deployments * Support enterprise consumers where project issues block business-critical systems * Define and communicate support, deprecation, and end-of-life policies for all release lines * Provide migration guidance to adopters upgrading from end-of-life releases * Coordinate advisories, CVE records, disclosure timelines, and researcher credits * Ship embargoed CVE patches across all supported version lines within the disclosure window * Produce SBOMs, VEX statements, and signed provenance attestations for every release * Maintain reproducible builds and independently verifiable release artifacts * Complete supplier security assessments and questionnaires for enterprise consumers * Remediate findings from OpenSSF Scorecard, dependency scanners, and compliance platforms **As well as** * Review high volumes of contributions from AI coding agents and automated refactoring tools * Triage vulnerability reports generated by commercial AI security scanners * Champion the project at international conferences, on podcasts, and across social media * Moderate all community spaces and enforce the Code of Conduct * Engage constructively with feedback shared on social media and public forums * Represent the project in working groups, standards bodies, and regulatory consultations * Prepare grant applications and quarterly reports for current and prospective funders * Administer domains, trademarks, signing keys, cloud accounts, and social media * Advise enterprise legal teams on licensing, patent, warranty, and export control matters * Own the succession plan: identify, recruit, and onboard your replacement **How we’ll measure success** * GitHub stars * Time to first response on issues and pull requests * Release cadence and mean time to patch for disclosed vulnerabilities * Open issue and stale pull request backlog * Dependency freshness * OpenSSF Scorecard result and other automated project scoring * Community sentiment across public channels * Downstream adoption * Bus factor **What we’re looking for** * 8+ years of professional software engineering experience * Deep expertise in one systems language and professional proficiency in at least four others * Written communication pitched to audiences from first-time contributors to Fortune 500 CISOs * Consistent release cadence with minimal dependency churn and no breaking changes * Comfortable across engineering, support, security, community, marketing, finance, and legal * Balances contributors, enterprises, security researchers, regulators, and automated systems * Comfortable receiving direct public feedback and turning it into improvements * Availability overlapping core business hours in AMER, EMEA, and APAC * Able to respond to time-sensitive security matters outside normal working hours * Provides own hardware, reliable internet, and test environments for all supported platforms **Nice to have** * Prior experience in technical writing, developer relations, or community management * Experience migrating existing codebases to memory-safe languages * Working knowledge of licence compatibility and international trademark registration * Grant writing and nonprofit financial reporting experience * Media training * An established personal audience on at least one major social platform * Conversational proficiency in a second and third language * A second job **What we offer** * 100% remote, work from anywhere in the world * Complete flexibility over your working hours * High-impact work depended on by startups and Fortune 500 companies alike * Exceptional visibility and personal brand building opportunities * Regular speaking slots at leading industry events * The opportunity to develop close working relationships with several national CERTs * A passionate, highly engaged global user community * GitHub Sponsors enabled on the repository **How to apply** Please submit a CV, a link to your GitHub profile, and a short cover letter telling us what ownership means to you. Our interview process consists of a recruiter screen, a technical interview, a system design round, a take-home exercise, and a final community panel. If you don’t meet every requirement listed above, we’d still encourage you to apply. We are committed to building a diverse and inclusive community and welcome applicants from all backgrounds. This position will remain open until filled. Due to the volume of applications received, we are unable to respond to every candidate individually. _This role is not eligible for relocation assistance or visa sponsorship._
21346 46
Reposted by Теодор Златанов / Ted Zlatanov
A. No, née: Moose @a-no-nee-moose.nrw.social.ap.brid.gy · 01/02/2026
An absolute must-read: A researcher of concentration camp history on the current state of the US and what to do: degenerateart.beehiiv.com/p/into-th…
degenerateart.beehiiv.com
Into the abyss
The correct response to Dachau was not better training for the guards.
003 3
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 30/08/2026
Great article on global shipping, navies, and the USA role in it acoup.blog/2026/08/28/collections-g…
acoup.blog
Collections: Global Trade and United States Navy
This week we’re doing another one of our series of military theory primers, this time focusing on a fairly simple contention: **that the United States Navy is a load-bearing component of the global economy**. I considered attempting to work in A.T. Mahan and the concept of command of the seas in here but simply outlining the basic argument about the navy’s role in sustaining global standards of living has run out more than 10,000 words, so a primer on Mahan will have to wait for another day.1 The argument here is actually quite easy to state as a series of propositions: global trade is an important part of the global economy, necessary to maintain our standards of living (and in many cases, essential for the survival of people in poorer countries) and seaborne trade makes up the overwhelmingly vast majority of all trade. Moreover, in history to this point it has been a relative constant that in the absence of major naval powers committed to freedom of navigation, pirates and states at maritime choke-points tend to emerge and seriously disrupt maritime trade. Finally, at current, only the United States maintains the kind of navy that traditionally has been necessary to keep sea lanes open, thus making the US Navy at present a ‘load bearing’ component of the global economy. Consequently, this makes the United States’ apparent turn away from freedom of navigation troubling – a move likely to be bad for Americans but also bad for _everyone else_. If you nodded your head through all of those points, you are good to go. Hit the tip jar on the way out. But I find that many folks want to contest at least one of those points – they don’t think trade is important (or that it only enriches ‘big corporations’) or don’t realize how substantial sea trade is, or don’t expect sea commerce to break down in the absence of naval power, or don’t understand the kind of navy necessary to provide that sort of power. So the _rest_ of this far-too-many-words-long post (it turned out to be 10,430) is going to belabor each point, one by one, in order to explain why the United States Navy – which I should stress is very much an imperfect institution; we are not here to uncritically glaze the USN, just to describe its function – is configured the way it is and why there is not currently a replacement for it on offer. Also, let me note at the beginning: if you want regular updates on global shipping as well as good explainers about how global shipping works, I cannot recommend Sal Mercogliano’s _What’s Going On With Shipping_ channel enough. But first, as always, building navies is expensive. Really expensive. _**Absurdly expensive**_. If you want to help keep this ship afloat, you can help by spreading the word to new readers and by supporting this project over at Patreon. If you want updates whenever a new post appears or want to hear my more bite-sized musings on history, security affairs and current events, you can follow me on Bluesky (@bretdevereaux.bsky.social). I am also active on Threads (bretdevereaux) and maintain a _de minimis_ presence on Twitter (@bretdevereaux). ## Email Address Subscribe! ## A World With Trade Now I want to start by talking about what global trade really _is_ and its role in the global economy, because in many cases before I can get to anything about shipping lanes and choke points and pirates and so on, I find many regular folks have already immediately objected that _they do not care_ about global trade. They think of global trade as a thing which mostly benefits big corporations or ‘cosmopolitan globalist’ elites. But, you must pardon me, they are wrong: they do not yet _know_ that they care about global trade. When global trade is disrupted – even just a relatively little bit! – and the price of a barrel of oil nearly doubles, leading to a one-third surge in the price of gasoline and a 50% jump in the price of diesel, it turns out they care a great deal. They often just don’t think about that in terms of global trade, because global trade is one of the key things that makes modern prosperity possible, mostly invisibly. That very invisibility, as we’ll see in the end, is part of what poses real political problems, but let us first make trade a bit more visible. **The first mistake that folks make here is to assume that trade is a relatively small part of the global economy**. It is an easier mistake to make in a place like the USA, which is very big and thus trades with itself more than most, but**globally trade makes up between a quarter to a third of all economy activity**.2 That is, it turns out, quite a lot. If your household income fell by a third, that would be very difficult for you. If _every_ household’s income fell by a third, the resulting economic contraction would be _double the size of the Great Depression_ (which reduced global GDP by roughly 15%) and have all sorts of knock-on effects as those households themselves had to cut back on other, non-imported goods and services.3 The second potential mistake here is to assume that all of this trade is mostly a luxury: that it just accrues to the rich or to rich countries or to big corporations. We may remove the ‘rich countries’ here right off: a lot of the countries with very high trade-to-gdp ratios (imports+exports, thus the ability to exceed 100%) are poor countries (the other big group are small, rich countries): countries like Vietnam (190%), Djibouti (206%), Namibia (108%), Somalia (128%), Libya (137%), Guinea (103%) and so on. We’ll come back to this in a moment, but **a breakdown in global trade is actually _especially_ bad for poorer, developing countries**. Likewise, while big corporations surely profit off of trade – no poor man ever owned a freighter – they’re not the only ones. We can think about this by thinking about the most staple of all bulk staples: food. In the developing world, access to global food markets is an essential lifeline. Most developing countries, especially across Africa, are net-food importers, some quite substantially so. Moreover, whereas food imports in developed countries are often ‘exotic’ foods that grow in other climates (think bananas away from the equator), for developing countries, these are often bulk staples. As we saw in 2008-2010 and again in 2022 and may grimly see again soon, increases in the price of bulk stable foods are associated with political instability and suffering in the developing world. Because if the price of bread goes up by 25% in the United States, for most Americans that is _annoying_ , but in many developing countries it means _people go hungry_ because they cannot afford food. Developing countries are also more likely to have agricultural systems that are exposed to more variability (drought, pests, blight, etc.) as compared to developed countries. And fundamentally _**everyone**_ relies on trade to insure against famine in the event of a local failure in food production. **Trade is what allows us to even out a freak drought in one country or a flood in the other to keep everyone fed**. That trade may be in the form of market interactions or it may arrive as foreign aid or disaster relief, but it is still the movement of goods from one place, from one country, to another. Trade is also important for the **develop _ing_ part of developing countries**. Doing the industrial revolution from scratch – designing and building better steam engines, creating factories, developing precision tools, steadily expanding production as all of that industrial capital accrues – took Great Britain something like a century and a half (roughly 1750 to 1900 – we’re being quite approximate here) to hit an economic standard we might define as ‘middle income’ today.4 But developing countries today that have access to trade – and here we mean not just the movement of goods (but also that) but also people – can go through that transformation much faster. The classic interaction is that developing countries sell raw materials5 to import the machinery and experts to build basic manufacturing industries (think steel, concrete, agricultural goods processing and so on) and then sell _those_ goods to be able to afford to important the experts (including educators) and advanced equipment to make more complex finished goods. Because manufacturing, say, a car requires not just raw materials, but the ability to craft high quality materials (like very precise steel alloys) as well as very complex components and very precise parts within low tolerances and that both requires really fancy manufacturing _equipment_ (which _also_ requires those same high quality materials, complexity and low tolerance components to build) and very skilled workers, designers and engineers. Trade allows developing countries to jump-start progress on each rung of that ladder, importing the experts who already know how to do these things (and can teach more) and importing the machines that can do these things (with which more may be built), ideally resulting in a high-income, more self-sufficient economy achieved in decades rather than centuries. And you can see any number of countries that either have accomplished this (China, Japan and South Korea, for instance) or are now accomplishing it (India, Vietnam), often from _very low_ initial industrial ‘baselines’ (frequently as a result of tremendous neglect or malice at the hands of European imperial masters). As those developing countries work their way up the value chain from raw materials to basic goods (often textiles) to low-cost, low-complexity consumer goods (e.g. plastic toys) to higher complexity consumer goods (cars, washing machines) to the very top of the value chain (software, aircraft, etc.), their standard of living improves, but equally because the cost of labor in those countries is lower, they provide much cheaper goods to _developed_ countries. Those cheaper goods in turn lower the cost of living in developed countries, making the sort of ‘American Dream’ middle-class lifestyle available to more people. Of course even among developed countries, trade does not lose its value – **there are forms of comparative advantage that have nothing to do with labor costs**. Some industries are so large, technical and expensive that few countries are big enough to absorb the entire demand of it – aeronautics is a classic example. It might make sense for some countries to _specialize_ in aircraft production, but most countries are too small to have a domestic aircraft manufacturer just for the heck of it – they’d be better off specializing in _something else_ and using that product to buy the planes. Meanwhile, some goods are simply hard to produce in certain places: **Norway is never going to grow many bananas** , Japan is probably not going to ever be a major producer of oil, Mali is not going to export much in the way of fish. All of which is to say that **trade directly improves the living standards of regular people in both developed and developing countries** and equally, **we do a lot of it** , with trade representing something approaching a third of the global economy. All of which now brings us to the key observation: **80% of all goods transported globally move by sea**. That is a figure which is too big for bold, so let’s step it up a bit: ## 80% of All Good Transported Globally Move By Sea There we go. So not only do more goods move by ship than by aircraft, railway or truck or river barge or what have you, **four times** more goods move by ship than by every other alternative system of transportation combined. And if roughly 30% of global GDP is goods being traded, that means that **about a quarter of global GDP moves by ship each year**. That is a very big part of the global economy! The main reason for this is simple: it is _much_ cheaper to move goods by sea than by any other method. For the cost of sending one shipping container across the United States by land (truck or rail; when I checked in 2023 around $2,500-7,500, with some variation by weight and exact route) you could also ship that same shipping container from an American cargo port to _any port in the world at all_ (around $6,000). Shipping by sea is (this is the rule of thumb I was given a few years back when I asked) around three times cheaper than rail, five times cheaper than truck and eight or more times cheaper than air freight. **That is an _enormous_** **cost difference**. Believe it or not, that huge difference in cost is actually _**less**_ than it was before railways and internal combustion engines made bulk overland transport somewhat affordable. In antiquity, the ratio of cost (derived from Diocletian’s Price Edict) for transport between land, river and sea was 20:4:1, with land transport for a given quantity of bulk staples being _**twenty times**_ as expensive as land transport. With the miracles of the industrial revolution, we’ve brought down ‘twenty times as expensive’ to _**merely!**_ three to five times as expensive, per ton-mile. There are two basic reasons for this. One is that it simply takes less energy to move things over water than it does to move them through the air or overland. But the other reason, that I think is worth stressing here is **ships can be really, really big**. Via Wikipedia, a pair of Maersk Line container ships, showing just how much cargo they can handle. Each of these ships, which are Triple E-class container ships, can carry around the equivalent of 18,000 to 20,000 semi-trucks worth of cargo. A truck can move a single cargo container. A typical freight train might have 100 or so freight cars each moving about a cargo container. A large Suez canal capable container ship, by contrast, might carry upwards of **_20,000 TEUs_** (twenty-foot equivalent units, the size of a cargo container). That means a single container ship might match the cargo capacity of hundreds of trains or _tens of thousands_ of trucks. That holds true for other kinds of freight: a tanker truck can move about 200 barrels (bbls) of liquid, like oil. Suezmax tankers can get up to a _million_ bbls and Very Large Crude Carriers (VLCCs) are often in excess of _two million._ So the scale that sea shipping can operate on is simply much greater than what is currently possible on land. Even _pipelines_ for oil generally move less than active major shipping lanes (as we’ve seen demonstrated in the Strait of Hormuz) and of course you cannot move iron ore or consumer goods or grain via pipeline but you can move them in large freighters. As a result, nearly all long-distance trade moves _as far as it can_ by ship before transferring to truck or rail for the ‘first mile’ and ‘last mile’ of its transit. **It is thus far to say that global trade** – which, as we’ve established, is an important part of the global economy which enables rich countries to eat well and poor countries to eat at all – **is mostly about shipping on the water**. ## Strait Up Piracy All of that seaborne trade, however, is the product of a long period since 1945 in which there have been relatively minimal disruptions of the security of civilian ships moving over the world’s oceans. What I want to note is that **this is not automatic** , it is an outcome that has been _produced_. Instead, the historical pattern has generally been that in the absence of major powers exerting themselves to keep sea lanes open (because it benefits them to do so), what we see is that **sea trade fragments** , with polities sitting on maritime choke-points moving to exploit that control (at the expense of everyone else) and both pirates and privateers disrupting shipping more generally. Piracy, of course, is extremely old: it is treated as a well-established and perfectly normal thing to be doing in Homer, for instance. We actually have references to sea raiders and pirates even farther back, including in the Amarna tablets (c. 1350 BC). Now I should note that while we generally think about piracy as ships attacking ships, there is a land based component to it: piracy often also includes the raiding of coastal settlements and at the same time pirates themselves need coastal bases (often with friendly local populations) in order to operate out of. Notably, a lot of this early evidence for Mediterranean piracy comes in the context of the Late Bronze Age Collapse and the period immediately following it (the latter including piracy’s place in Homer’s conception of maritime activity, where it is a normal and regular thing to be doing), **periods of state fragmentation** where there weren’t any major naval powers in the Eastern Mediterranean capable or willing to enforce freedom of navigation. That changes as we move into the Late Archaic and Classical periods (as reckoned in Greece, so c. 550 BC onwards): the Achaemenid Persians are able to dominate effectively the entire litoral of the Levantine Sea (the part of the Mediterranean between Egypt and Anatolia) and maintained a strong navy – and we hear a lot less about piracy in this period. Later emerging Greek naval powers (particularly the Athenian navy after 483) also had an interest in piracy suppression – Athens was reliant on imported grain and timber and also profited immensely from trade. That state of affairs continues broadly until the death of Alexander, where we get a resurgence in our evidence for piracy in the context of the Wars of the Diadochoi. Our visibility here is better and one thing worth noting is that piracy here dovetails with what we might term privateering – state-sanctioned piracy – as some of the Macedonians scrapping for control (Demetrius Poliorcetes most notably) hired pirates and mercenaries to harass their enemies. Men might move smoothly from being mercenary sailors in the service of a king to ‘pirates’ and back again while doing effectively the same things on the water. That said, these states _also_ had an interest in trade (especially Rhodes) and so alongside the piracy were efforts in piracy suppression. Via Wikipedia, a map of the territory of the diadochoi, including the Ptolemaic Kingdom with its fairly expansive naval holdings, mostly lost by the 160s. Rome crippled these key powers without replacing them and got a serious pirate problem in the bargain. This system famously gets out of hand when the Romans in the mid-second century destroyed or crippled most of the major maritime powers of the Eastern Mediterranean (Macedon, the Seleucid Kingdom, the Ptolemaic Kingdom, Rhodes, Pergamum) but didn’t move into the region to replace them. This ends up leading to a series of relatively Roman commands against pirates in various parts of the eastern and central Mediterranean: L. Fabius Labeo in 189, M. Antonius in 102, L. Licinius Lucullus in 86, P. Servilius Vatia in 78, M. Antonius Creticus in 74, L. Caecilius Metellus in 70. This eventually culminates in Cn. Pompeius (Pompey)’s famous command against the pirates in 69, where he was given unprecedented authority to operate basically everywhere in the Mediterranean (using subordinates to coordinate distant activity), a command whose overweening scale is one of the major marker points in the emergence of the Late Republican ‘rogue general’ in Roman history. Pompey’s success here is, as far as I can tell, actually emblematic of how anti-piracy campaigns succeed: he targeted the pirate’s coastal bases, not their boats and used the coercive threat of force to negotiate rather than just trying to wipe out all pirates. In the end, Pompey smashed some strongholds and used the leverage the threat of that gave him to resettle the pirates (and their supportive populace) inland, away from the coast. Roman piracy suppression after Pompey is much more successful: as Roman controlled effectively the whole Mediterranean litoral, it could deny pirates bases _everywhere_ – although through the imperial period the Romans still had to maintain a navy to keep the trade lanes, upon which their empire’s prosperity relied, open. To simplify greatly, we see a similar set of processes in the ‘Golden Age of Piracy’ (c. 1650 to c. 1730). It was enabled by state fragmentation and warfare, particularly the rivalries between England and France to one side and Spain on the other. It ended in part because those wars ended, but notably also with the application of the same mix of coercion and negotiation, perhaps most famously with the destruction of the ‘Republic of Pirates’ at Nassau – many pirates took the offered ‘King’s Pardon’ leaving the remainder isolated enough to be destroyed in detail and for British power over the Bahamas to remove the coastal bases necessary for piracy. And we see a similar interaction with the Barbary Pirates in the Mediterranean. The activities of the Barbary pirates also arose out of a kind of fragmentation, as the Barbary states were weakly controlled vassals of larger Muslim states (most notably from the 1500s on, the Ottoman Empire). To _greatly simplify_ , initially European (and later, American) states found it most expedient to simply pay off these states, but as the balance of power shifted in their favor in the 1800s, they shifted towards coercion. The United States famously ended most Barbary raiding of its commerce with the Second Barbary War (1815), a major achievement for its young navy, with Britain and the Netherlands following suit the next year with the Bombardment of Algiers (1816). Once again the ultimate resolution came when naval powers were able to demonstrate their ability not just to strike pirate ships but to project power inland either by bombardment or the landing of troops. **It is the ability to shut down the _bases_ which suppresses piracy successfully in the long term**. Via Wikipedia, a painting, Bombardment of Algiers by George Chambers (1836), depicting, somewhat dramatically, the nine-hour bombardment of Algiers by the Royal and Dutch Navies in 1816. An example of power projection ashore as the Anglo-Dutch fleet could credibly threaten to essentially destroy the city (which is coastal) from the water. Ironically, the fleet was able to effectively bluff a surrender out of Omar Agha, the Dey of Algiers, by announcing they would continue their bombardment if he did not surrender, despite being almost totally out of ammunition. The Dey, unaware of this, surrendered rather than endure a continued bombardment – a useful reminder that the effective window for negotiation may often be narrow and easily missed. Now alongside pirates, states and other larger polities can also be a problem for maritime trade **if they sit on major choke-points**. As you can see on the trade-route map below, **most trade moves through one or more ‘choke points’** – narrow sea passages where alternative routes are either much longer or simply unavailable. Some of these are major canals (Panama, Suez) or narrow straits or channels (the English Channel, the Strait of Hormuz, the Bab el-Mandeb, the Strait of Malacca, the Öresund, the strait of Gibraltar, the Turkish straits and so on). Via Wikipedia, a map showing the density of commercial shipping on the world’s oceans. While **most countries globally have an interest in relatively free movement through these shipping channels** , the **countries directly on these choke-points may have an interest in _extracting value_ from their control**. The classic example of this is the Sound Tolls, the toll that Denmark extracted from ships passing the Öresund until 1857, which at points made up the majority of the Danish state’s revenue. While any _one_ such ‘closed’ or tolled strait may be little more than an inconvenience globally (although notice _just how much_ of an inconvenience restricts on the Strait of Hormuz have been!), because nearly all shipping moves through at least one if not more of these choke-points, if **other countries** were to follow suit and every country on a choke-point tried to maximize extraction off of it, the result would be a major drop in global trade, which, as discussed above, would lead to a sharp decline in living standards in rich and poor countries alike. Everyone would be worse off. The current global system, which assumes freedom of navigation in nearly all of these waterways and only allows fees to be charged to the degree that ships require active assistance to navigate a given choke-point (canals have to be maintained and some straits – though not the Hormuz – are narrow enough that safe passage requires help (‘pilotage’); the Turkish straits are the classic example of the latter) is largely a product of the 1800s eventually codified in the 1982 United Nations Convention of the Law of the Sea (UNCLOS), a result of imperial maritime powers (first Britain, later the United States) twisting arms in order to establish a global standard of “innocent passage.” That said, this standard was always backed up, implicitly or explicitly, by force: countries agreed to these limitations in part because everyone understood that if they didn’t, the imperial powers would _make them_ because those imperial powers relied heavily on the free movement of goods and people over the water. And we should be clear here: that this state of affairs – few-to-no pirates, open choke-points – benefited humanity as a whole was for the most part a happy side benefit of imperial maritime powers (initially mostly Britain, then later the United States and Britain, then later mostly the United States) pursuing their own interests. I want to stress that very clearly for any ‘America First’ers still sticking around: while this system benefits most people globally, **we built this system because it _benefits us in particular_**. As we’re going to see in a moment when we get to blockades, **we wrote the rules to favor us, to favor the kind of naval power we have and the kind of trade we engage in**. But maintaining and enforcing those rules remains reliant on **naval power** or more correctly **it remains reliant on a certain specific _kind_ of naval power**. ## Power Projection Navies The distinction I want to draw here is the specific subset of navies **able to project power over the oceans**. Navies, after all, come in different sorts. One distinction you will hear quite often is between a **blue water navy** (a navy capable of operations on the oceans, the ‘high seas’) and a ‘brown water navy’ (which only operates along the rivers and coastlines of its country) or ‘green water navy’ (not capable of global projection, but able to push out into local oceans and seas). **But not all blue water navies are made equal either**. As noted above, effectively suppressing piracy long-term generally requires the ability not merely to get to the body of water in question, but to **have the ability to project power ashore** , because the ultimate piracy suppression requires removing the coastal bases that pirates operate on. Likewise, the kind of coercion that can compel potentially truculent countries sitting on maritime choke-points to allow unhindered traffic generally also requires the ability to project power ashore. It isn’t enough to threaten to sink that country’s navy (especially if they don’t have much of one), you need to be able to threaten to bombard key cities or deliver a seaborne invasion (we’ll come back to why this is such a problem in the Strait of Hormuz in a moment). Since trade is _global_ , maintaining _global_ maritime networks means we either need one navy with global projection (which is generally how this works) or a consortium of regional navies that maintain these capabilities in their neighborhood. In practice for the last few centuries, relying on one or a few big navies with global projection has been the norm. So we need a navy **capable of _global_ projection**, which includes the ability to **get to any key choke-point**. It has to, once on station, be able not only to defend itself against other ships **but also project power ashore**. Since projecting power ashore is a process that invariably takes time **it also needs to be able to _sustain_ itself at any key choke-point**. The first requirement alone actually already rules out most of the world’s navies: only a handful of relatively large, relatively wealthy countries maintain navies with a significant number of large warships (generally destroyers and bigger) that can actually do oceanic operations on the regular. Most smaller countries instead operate a mix of smaller frigates, corvettes and cutters which are perfectly serviceable for defending and policing their own territorial waters, but are not suitable for long distance operations. You can actually see this distinction with remarkable clarity because the United States doesn’t operate just one navy – it operates two: the US Coast Guard would, for most countries, _**be the navy**_. But for blue water operations, we’re generally going to want larger ships: both because larger ships are more capable (they can carry more weapons, munitions and supplies) but also simply because open ocean travel often demands bigger ships due to more intense weather and longer time at sea. Of course, bigger ocean-going warships are going to be more expensive (which is why countries that have no designs on creating a blue water navy tend to prefer smaller, cheaper coastal ships). But blue water isn’t enough: **we need to be able to _project power ashore_**. Historically, the right ship for this kind of power projection has varied, but since 1945 **the ship type for power projection ashore has been the aircraft carrier** , particularly a _fleet_ carrier. Many navies operate smaller carriers that mostly carry helicopters and maybe a handful of vertical take-off-and-landing (VTOL) platforms, but if you want to actually project power ashore, you need a large airwing of full-sized capable fixed-wing aircraft. You can actually see this distinction in the US Navy as well. When we say ‘the United States has 11 aircraft carriers’ we’re only counting the CVNs, the _fleet_ carriers. The United States _also_ maintains a bunch of amphibious warfare ships – 2 America-class LHA (landing helicopter assault) and 7 Wasp-class LHD (landing helicopter dock) – which in any other navy would be treated as aircraft carriers, given that they can both operate fixed-wing aircraft. But while these ships exist to _support_ amphibious operations, you wouldn’t want to rely on them exclusively to project air power, especially against an enemy who can actually shoot back. You want the much larger air wing of a CVN (40+ strike aircraft, as compared to half a dozen on an LHA/LHD). Via Wikipedia, a United States Navy carrier strike group, organized around the USS George Washington (CVN-73), taken in 2003. The supply ship is in the back, while the carrier is supported by what looks to be three Ticonderoga-class cruisers and three Arleigh Burke class destroyers. I don’t immediately recognize the ship to the far right (maybe a Whidbey Island-class dock landing ship? Let me know in the comments). Now there has been a _lot_ of chatter lately about if aircraft carriers are actually obsolete, most of it being about the ways in which modern anti-ship missiles make aircraft carriers vulnerable. But aircraft carriers have _always_ been vulnerable – look how many of them the RN, USN and IJN lost in WWII! The question is not ‘is the carrier vulnerable?’ but ‘what role does the carrier serve and can any other ship perform it?’ And the answer is that **a (fleet) carrier is the striking arm of a fleet, able to project a _lot_ of combat power out a long distance** and no, **no other ship is able to do that**. Yes, you can throw missiles out of VLS (vertical launch system) cells on a destroyer or a frigate, but you are quite limited as to how many of those missiles you can carry and missiles are a lot more expensive than bombs. A carrier can, over time, output a lot more ‘boom’ at a lot greater distance using its air wing (while its air wing also _protects_ the fleet as well). And that’s really relevant for us because we’re interesting in projecting a lot of combat power ashore, often while keeping our vulnerable ships reasonably far away from any coastal weapons. The big carrier is the _sine qua non_ of doing this sustainably over a long period, which is why countries continue to build them: China’s People’s Liberation Army Navy (PLAN) certainly doesn’t think that carriers are obsolete! A carrier thus is the modern form of a ship doing shore bombardment – able to throw a lot of boom at coastal (and inland) targets – and also required if you intend to actually put troops on land (where they will require both air cover and air support). A carrier thus makes the threat to drop the marines (US Marines, Royal Marines, etc.) on someone credible. Of course you _also_ need marines available to be dropped and the shipping and landing infrastructure to get them to the theater and onto land. The US Navy does this via the combination of Marine Expeditionary Unit (MEU) with a Expeditionary Strike Group (ESG); the former being what you are putting ashore and the latter being the ships to support doing so. Prior to that, of course, this task was done by the British; as Lord Edward Grey famously put it, “the British army should be a projectile to be fired by the Royal Navy.” Of course, once you have that fleet, capable of moving to any given choke-point or sea lane and projecting power (including power ashore), you also need to be able to potentially sustain it there, keeping ships in supply and rotating them as necessary to maintain a continual presence until those operations ashore are complete. And _**that**_ requires more than just ships, it requires a global network of logistics bases. In the Age of Steam, these were coaling stations – places where a navy could stockpile coal and other necessary supplies to resupply fleets. Of course, one coaling station wasn’t enough, you needed a connected network of them so ships traveling to distant oceans could sail from one station to the next, refilling their coal bunkers at each point. The British, of course, maintained the most expensive such network in the late 1800s and early 1900s, enabling the royal navy to operate in effectively any ocean. During the 1900s, the United States undertook to set up a similar network and indeed one of the exercises I sometimes do with my students is noting how neatly many of the United States’ key naval bases parallel neatly the older British network, with the United States in some cases sharing or taking over the exact bases the Royal Navy had once used. That network of bases let you run supplies short distances to your fleet on station, rather than having to do shuttle runs all the way from the home country or – worse yet – be in a situation where the fleet only has the supplies it can bring with it when it departs, operating with a fixed ‘timer’ for its operations. That said, the problem of logistics combined with how big full-sized carriers (even sub-super-carrier) are brings in another implication: **you probably want nuclear-powered carriers**. Fuel is one of the largest logistics needs for a fleet that is on the move or actively doing an operation and these ships need a lot of it. But the thing is, for a carrier-centered task force, the carrier is probably at least **half of the total displacement** of the force. A USN carrier strike group (CSG)’s displacement is around 100,000 tons of carrier, around 40,000 tons of surface ship and around 20,000 tons of submarine. The carrier and the submarines are nuclear powered, so the force is roughly 75% nuclear by weight. The advantage here is that on a practical, operational scale, nuclear carriers and submarines can operate almost indefinitely without refueling. You will run out of munitions, out of food, out of sailor’s sanity _long_ before you need to change out the reactor fuel. **Having your carriers be nucleared powered is _really expensive_** (it requires a large body of trained nuclear technicians and engineers), **but it makes global power projection _much easier_**. **What those ingredients** – a blue water navy with power-projection assets (read: carriers and amphibious warfare capability) supported by a network of logistics bases allowing them to operate globally – **what those ingredients let you do is _threaten_ force on anyone who would close down the global shipping lanes** (closures that would, to be clear, violate international law under UNCLOS). Historically speaking, once this hammer is in hand, while it may have to be demonstrated form time to time, **for the most part it exists as latent force**. If you are doing it right, your navy should not actually be doing a lot of fighting, because everyone involved should understand you _**would**_ drop the hammer if they made you, so they don’t make you. It’s deterrence, but using a conventional military force (a navy) rather than nuclear weapons. So if we want to stand back for a moment, we can say **one of the main purposes of large power-projection navies is to deter disruptions to shipping**. It isn’t their only purpose, of course, but it is perhaps their chief purpose. ## The Unique Role of the United States Navy So to recap before moving forward: global trade is essential for providing for modern living standards and most of that trade must move by sea. Sea lanes do not keep themselves open, historically they must by _kept open_ , typically by a particular form of naval power, which I’ve termed a ‘power projection’ navy – one which is able to logistically sustain itself at long distances and project combat power ashore (via bombardment, air strikes and landing troops). _Doing that mission_ , in turn requires a navy that has a substantial supply of larger surface warships (destroyers, cruisers, as opposed to corvettes, cutters and frigates), as well as larger aircraft carriers (which provide the modern shore strike capability), supported by a robust global network of supply bases. Since no country maintains a worldwide colonial empire anymore, that robust global network of bases has to be predicated on a robust global network of allies and security partners. And I’ll cut to the chase: **at present, only the United States Navy can do this**. No other country is even really on the _verge_ of doing it, though one country may be moving in that general direction. The first angle we can think about this through, of course, is power projection assets, which is to say, “which countries have fleet carriers, anyway?” Not very many, it turns out. The People’s Republic of China currently has three aircraft carriers, all diesel based; a fourth, rumored to be nuclear-powered and super-carrier sized, is on the way. The United Kingdom maintains two fleet carriers (the Queen Elizabeth class), which are fairly large and robust, but diesel powered. France has the Charles de Gaulle, the only other large nuclear-powered carrier deployed globally outside of the United States navy. After that, the pickings get slim quick. India has a pair of diesel-powered carriers, but they’re both quite small. Russia _had_ a diesel powered carrier, which it did use for power projection in the Syrian Civil War, but the Kuznetsov is both not a very good carrier and also has been inoperative and in need of repairs for almost a decade now. Then we have navies which operate some small carriers that are basically on the scale of a USN LHD or LHA: Italy and Japan have two each, Spain has one. Frankly, all of the carriers in this paragraph are too small to do serious power projection on their own (the Kuznetsov’s Mediterranean operations were in support of the former Syrian Assad regime, which also offered the Russians land bases). They can _enhance_ a fleet which already includes a powerful air component (indeed, this is a key part of the mission for the smaller NATO carriers – they can assume that in a big operation, they’ll have a friendly Nimitz, Ford, Queen Lizzie or Chuck d’G to support), but they cannot offer the necessary combat power on their own. Via Wikipedia, an image from 2024 of the USS Dwight D. Eisenhower (CVN-69) operating alongside the USS Laboon (DDG-58), the French Horizon-class frigate Forbin (D620) and the Italian carrier Cavour. A lot of European naval procurement has assumed that in any fight, NATO navies would be fighting alongside the United States Navy, and so what ships they have built are often aimed at supplementing that core capability, rather than replicating it. One manifestation of this is that a number of European navies have better minesweeping capabilities than the USN, a sensible burden-sharing arrangement that proved awkward when the United States unilaterally went to war with Iran without consulting any of our allies. **It turns out that it is good to have allies and even better to consult them with your plans**. When the current crisis in the Hormuz began, I saw people asking why European or Chinese navies didn’t intervene to keep the shipping lanes open, especially given that it was their oil being blocked. And the answer here is quite simple: **_they couldn’t_**. It is one thing to have a military capability at home. It is something _**very different**_ to be able to project that power overseas and right now the only country that has a full suite of power projection assets is the United States. We’ve already discussed above the limitations imposed by non-nuclear-powered carriers: maintaining them at sea for long periods is a lot more logistically intensive, which is why countries that think they might be doing power projection missions with carriers tend to at least think _really hard_ about having them be nuclear powered. That said, the travails of the Royal Navy really speak to how hard this is to do – and why so few small countries do it. Maintaining a bespoke military nuclear program that can design _**and maintain**_ a meaningful number of compact nuclear reactors is no small task. For four decades the Royal Navy has struggled to actually decommission old nuclear-powered submarines6 in part because they have a hard time getting enough nuclear technicians to supervise removing and safely disposing of the reactors in them. **The United States Navy pours a _tremendous_ amount of resources into training nuclear propulsion specialists**. Indeed, this is something I’ve interacted with directly, because I teach at a university that has both a Navy ROTC program and a research reactor. When I taught US Naval History, required by the NROTC program, _a lot_ (more than half, I think) of my NROTC students were nuclear engineering majors. Smaller countries are simply going to struggle to generate enough nuclear technicians and engineers to sustain such a program without a huge, dedicated national effort. Nevertheless, not (currently) having nuclear-powered carriers puts meaningful limits on China and the UK’s ability to employ their carriers on power projection missions. That, of course, interacts with the systems of global basing. Here, I think China’s experience in anti-piracy operations off of Somalia is actually really instructive. The PLAN has been sending task forces to operate in the Gulf of Aden since 2008 when the issues there became acute. But despite the fact that there are signs that the People’s Republic of China is trying to assemble a network of bases through the Indian Ocean (termed by western analysts a ‘string of pearls’), the structure of PLAN missions was pretty consistent: each force was one frigate, one destroyer and one supply ship. Each mission lasts about 180 days, including travel time from China, time on station and the return trip. Via Wikipedia, the Fujian, China’s current largest aircraft carrier, displacing some 80,000 tons (about 80% of a Ford-class super-carrier. It is currently China’s only CATOBAR (catapult-assisted take-off, barrier arrested recovery) carrier, a capability which lets it launch heavier and more capable fighters more rapidly than older ‘ski jump’ designs. It’s air wing is still meaningfully smaller than a Nimitz or Ford-class carrier (52 aircraft compared to c. 75), but still quite formidable. That short duration is pretty striking, because the c. 15,000 ton displacement (not including the support ship) PLAN squadrons here have roughly the same amount of support ship (one ship, in the 20,000 tons displacement range) as many American carrier strike groups (as noted above, a CSG is _160,000_ tons displacement – ten times the size; it has _far_ more combat power), but these exercises remain small and comparatively short. The suspicion one has is that what is happening here is that each of these squadrons is leaving the Chinese mainland with most of the supplies they are going to get on their one supply ship (which represents more than half of the total displacement of the squadron!) and so they have to transit _all the way back home_ when that runs out. There is a Chinese naval base in Djibouti that must also be playing a key logistics role here, but the short duration and small size of the PLAN forces really is suggestive of the approach here. This approach, of course, is hardly sufficient to allow the PLAN to deploy basically anything in the Atlantic or Eastern Pacific or basically anywhere except the west Pacific and Indian Ocean. At that scale, for the PLAN to deploy the combat-power equivalent of an American CSG to the western Indian Ocean (which, because their flight decks are smaller, would require basically all of them) would probably require nearly the entire PLAN logistics fleet and strain PLAN logistics such that the fleet couldn’t be kept there long and would be very vulnerable if it did not accomplish its objective very rapidly. In naval warfare, you _do not_ want to be caught in a fight at the ragged end of your logistics tether with low fuel or munitions. Now the PLAN apparently _is building_ a nuclear-powered carrier. They _are trying_ to begin setting up networks of logistics bases. That suggests at least some interest in the PRC in moving towards a global power projection navy, though I would note that history is replete with countries that _started_ to invest in that kind of navy only to revert back to regional defense navies when it became clear just how jaw-droppingly expensive such a navy would be. In either case **naval strategy is built strategy** and the PLAN probably has at least a decade to go before they have the rudiments of a truly global power projection navy, even if they steamed there at full speed. Which brings us to a key conclusion**: at present, only the United States Navy is capable of performing the kind of power projection which sustained maritime commerce** and at present, no other navy is particularly close to being able to replicate that capability. The two most obvious candidates to replace the United States would presumably be China or some kind of combined EU Navy, but it is not clear that China is actually _interested_ in maintaining global maritime commerce beyond their own and a combined EU Navy on the USN’s scale would face tremendous political and economic hurdles, to say the least. **For now, the United States Navy is the only game in town**. Which, it turns out, may be a problem. ## Implications You may have noticed that the infrastructure of global maritime security is fraying lately. Indeed, I would argue, it has been fraying for quite some time. Although establishing a direct causation is impossible, the fact that the beginnings of these issues correlate to the point at which the United States’ Global War on Terror began to go south and thus the American public began (understandably) decisively souring on America’s traditional role as the guarantor of the global system does not seem like an accident.7 Instead, it has led to the current baleful condition where in the United States is the only state capable of actually sustaining the global maritime system but at the same time is anywhere from indifferent to _actively hostile_ to it. The earliest of the current woes back back to the mid-aughts with the rise of piracy off of the coast of Somalia. That piracy intensified dramatically in 2008 and 2009, though by 2013 or so a robust international effort had largely clamped down on pirate activity. Starting in 2023, however, the United States was not able to fully restore shipping through the Bab-el-Mandeb, a crucial maritime choke-point (it’s where traffic moving through the Suez and the Red Sea gets to the Indian Ocean). Traditionally, the American response – all the way since the First Barbary War (1801-1805) to a state (and the Houthis are, in practice, the government of large parts of Yemen) disrupting its shipping in this manner would be to invade and topple that regime. Instead, for very obvious reasons, the political will to land the marines in Yemen simply didn’t exist, so the response was instead Operation Prosperity Guardian, an effort to accomplish the mission through ship defense and air strikes. Then, of course, early in 2026, the United States _started_ a major regional war with Iran which resulted in the closure of the Strait of Hormuz. What is striking about this decision is that **deciding to go to war with Iran required disregarding freedom of navigation – traditionally an _overriding American strategic interest_ – as unimportant**. Of course some of that was simply because the war’s planners – being dumb as hell – assumed they would accomplish a quick and easy victory. But equally it is hard not to notice that the decision to disregard freedom of navigation – at least until the oil price spike reminded everyone why it was important – came from an administration that is also the first American presidency to be **openly hostile to global trade since the 1930s**. Moreover, **once again the political will in the United States for ground operations which might restore trade simply does not exist**.8 I want to note something actually quite important here: **the war in Iran does not represent a _failure_ of US maritime deterrence, but an _abandonment_ of it**. Prior to the decision to launch a massive decapitation and regime-change strike on the Iranian Regime, the United States _was deterring_ Iran from doing the _very obvious thing_ and using its geographic leverage over the strait as a tool against its regional rivals (the Arab Gulf states). The Iranian Regime operated under the quite reasonable conclusion that if it _did_ try to shut down shipping in that region, the United States might respond with overwhelming strikes, perhaps aimed at regime change. That threat was sufficient to achieve deterrence. The **problem** , of course is that once you **do those attacks _anyway_** they no longer have deterrence value: you cannot threaten someone with something you are already doing. You especially cannot threaten someone with a bullet _you have already fired and cannot fire again_. Once the Iranian Regime was placed in an existential (for it) war, they had no reason _not_ to close the strait or assert their control over it and so of course they promptly did so. Iran didn’t decide it could ‘take’ the American retaliation and thus decide to close the straight, it realized it was _already_ taking the maximum American retaliation and so would pay no greater cost _for_ closing the strait. **The United States, in attempting regime change in Iran _abandoned_ its maritime deterrence**. But the crisis in the Strait of Hormuz isn’t even the only current maritime crisis. There have also been renewed attacks on shipping in the Bab-el-Mandeb but even more than this, Putin’s War in Ukraine has taken dramatically to the waves with Ukrainian efforts to shut down Russian exports to strangle the Russian war economy and Russian retaliation. While Iranian disruptions of shipping in the Strait of Hormuz have involved striking a few ships here or there (adding up to more the 70 such attacks since the war began), Ukraine is operating on a much larger scale, having struck more than 200 ships in just a couple of months. **The United States is retrenching** and in some cases is even becoming actively hostile to the global international order. Consequently, **every other country in the world must confront the possibility of a future in which the United States Navy does not guarantee the global maritime system**. In the period from 1914 to 1945, as Great Britain increasingly found that it lacks the economic resources to maintain its role as the global guarantor of that system, the United States was both ready and willing to act, first as a partner (from 1918 to 1945) and eventually as the primary guarantor. **There was a country _to pass the baton to_.** What the above analysis is meant, in part, to show **is that there is no country to pass the baton to now** , nor does one appear likely to emerge soon. The PLAN is, as noted, likely many years away from being able to pick of the mantle, but more to the point it is not clear that the PRC is _interested_ in doing so. The PRC’s policy in its nearer seas has not been ‘a rising tide lifts all boats,’ but a mix of dominance politics and beggar-thy-neighbor revanchism. When disaster strikes coastlines, the United States Navy has, historically, been a key player in humanitarian relief efforts, the PLAN much less so. When in 2013 a major typhoon hit the Philippines, the United States sent $37m in disaster relief and a humanitarian relief force that included numerous ships including a complete carrier-strike group. Those fleet carriers are useful for projecting firepower ashore, but they’re also _really useful_ for delivering humanitarian aid in conditions where ports, roads and railroads may be inoperative. By comparison, the PRC sent $200,000 and one hospital ship. The thing is, **there is no way to build a power-projection navy quickly** and there _**really**_**is no way to build it cheaply**. Modern warships take time to build and cost a lot of money and effectively projecting power globally hinges on the _most expensive_ and difficult to build platforms. Starting a naval buildup from nothing is not too hard – because you are not carrying the running costs of existing ships – but that stops being the case as your fleet expands. The United States Navy costs on the order of $230-280bn per year. Another country might do it cheaper, but even something like half that cost would require even the wealthiest countries to massively increase their military budget. China may be building up to this kind of navy, but they are years (probably _decades_) away and likely would need to expand their capital ship fleet something like three-fold, which is hardly a trivial expense. But as we’ve established, **the United States Navy is effectively a load-bearing component of the global economy**. While obviously not all trade would cease if the United States dissembled its fleets, the crisis in Hormuz seems to make it fairly clear that maritime trade would be both reduced and quite a bit more expensive. And the economics of long-distance bulk transport mean that land- and air-based options simply cannot replace maritime shipping. **If the trade lanes are not kept open, they may not close completely, but history suggests they will narrow**. One counter-argument here is to assert that, unlike in previous centuries, there simply aren’t enough states on major choke-points with an incentive to close them down to make this a problem. I think the last few years have thrown up considerable challenges to this notion, as we see states and non-state actors doing exactly that in the Black Sea, the Red Sea, the Indian Ocean and the Persian Gulf – and regional powers unable to resolve the problem. As we saw above, that is the normal historical pattern, slowly reasserting itself and I think, if American retrenchment continues, we ought to expect that to continue. Now of course even in that future, global trade doesn’t simply stop altogether. It simply becomes more constrained, more limited and more expensive. Some goods become less available, ships have to take the long way around or pay expensive tolls, perhaps in some areas they have to mount greater security precautions and all of those costs get passed to the consumer. Armed merchantmen were common in some periods of history, but it is worth noting that arming merchant ships has never been sufficient to fully protect a merchant marine, for the obvious reason that the defending country must split their defenses across their many, many ships whereas the pirates or rogue states may concentrate all of their force on a single ship of their choosing. In that world of constrained global trade, we wouldn’t expect some apocalyptic total economic collapse. But some goods that are commonly available – out-of-season or out-of-climate fruit, for instance – might mostly vanish from store shelves. Goods in advanced economies would become more expensive and living standards would decline, as wealthy countries would – on the margin – have to ‘on-shore’ low value-added industries which would pay worse wages, while at the same time the products themselves (imported or domestically made) got more expensive. **Autarky – the effort to make most or all of a country’s needed goods domestically – is and always will be a losing economic strategy** , because it forgoes **competitive advantage**. But a marked increase in the cost of trade, a reduction in the availability of imported goods will push wealthy countries in that direction and their economic growth will slow as a result. What is inconvenient for rich countries, however, will arrive as catastrophe to poor countries who, as noted above, will find their opportunities for development curtailed and their access to affordable necessities limited. Thus my assessment is that **the American voter is making a terrible mistake**. On the waves, there is at present no alternative to American naval power and the result of its absence will be a poorer United States. Indeed, Americans are _right now_ living through a small taste of what that world looks like, as the current administration’s decision to abandon freedom of navigation as a priority brings almost immediate karma in the form of higher prices for crude oil, diesel and gasoline.9 Of course a lot of oil has been re-routed around the blockage in Hormuz either via pipelines or sneaking it through via ship-to-ship transfers, but all of that entails _additional costs_ which raises prices. The problem, of course, is that it has taken me 10,000 words to walk through why this is so – why global trade matters, why specifically _maritime_ trade matters, what the USN’s role in that is and why we cannot simply easily ‘burden shift’ to another country. And the median voter does not have the time in their day to take in a 10,000 word lecture on naval strategy and economics. **This was always a policy that relied upon the unified commitment of the elite** , for the folks actually _running_ these things to present a collective understanding to their voters that these capabilities were essential.10 Although the facts on the ground have not meaningfully changed, that elite consensus has broken and so here we are. It is worth remembering that a worse, poorer world is possible, so that we do not become its authors. ### Share this: * Share on X (Opens in new window) X * Share on Facebook (Opens in new window) Facebook * 1. Which is fine. Mahan is very focused on the benefits sea power can bring _one country_ (the one that has it) and much less interested in the idea that sea power can provide a collective benefit to most or all countries, but it is the latter question I am focused on here. 2. The standard statistic here that I’ve seen is ‘trade openness’ which is imports and exports combined as a measure of global GDP. But for the question of ‘how much global GDP are goods moving country-to-country, that counts each transaction twice (once as an import and once as an export) so we have to halve the figure. 3. American GDP contracted by 30% during the Great Depression, so you could also say, “it would be like the Great Depression in the United States.” Those were, I recall being told often by my grandparents who were kids at the time, not the best of times. 4. And of course the existence of a British _Empire_ was a meaningful factor in that. 5. Or, in some cases, _services_ , enabled by modern information technology. 6. Nuclear power provides _even more_ benefit to submarines than to carriers (you can keep a nuclear powered submarine submerged for very long periods of time, while moving at full speed), which is why you see countries that have nuclear-powered submarines but not nuclear-powered carriers 7. I’d be remiss if I didn’t note that there’s a good argument to make that the War in Iraq (2003-2011) _also_ represents an abandonment of the United States’ global role, but that is a sticky question for another day. What matters here is that perceived failure in the GWOT is very specifically and explicitly a foundation of the current ‘America First’ movement which evidently isn’t against intervention _per se_ , but is against intervention to uphold the Status Quo global order. 8. To be clear, reasonably so, I would argue (and indeed, have argued). Such operations would be enormously costly in both blood and treasure. Instead, a United States truly committed to freedom of navigation would have judged that whatever was to be gained by a war with Iran (not much, in the event) was not worth the disruption to that key strategic interest. 9. As an aside, while politicians focus a lot on gas prices – the distillate that people feel hitting their wallet – in the long term diesel is a bigger deal. _Everything_ in your local store required diesel to get from a warehouse to the shelf (via a truck). Higher diesel prices thus push up the price of basically _everything_ a little bit. 10. To expand briefly: voters quite reasonably do not have time to be educated on every issue. They take their cues from their elites, from the political and cultural leaders who they understand to have a similar worldview as their own. If the political elites _all_ seem to accept something, the public will generally accept that as true (that’s why it is so useful to be able to present things as ‘bipartisan’ in the United States). But you lose that ‘accepted reality’ if one set of political elites disagrees, as we’ve seen with issues like vaccine and climate change where there is no real doubt about the facts, but the public _thinks_ there is, because the political system _acts_ like there is. The same is true here and honestly the problem is that maritime security and gains through trade are so counter-intuitive to many folks that holding a political consensus to spend _two hundred billion dollars a year_ – even though that spending is probably a _net gain_ for Americans – seems very difficult indeed. ### Like this: Like Loading…
000 0
Reposted by Теодор Златанов / Ted Zlatanov
Stephen Sekula @steve.mastodon.cooleysekula.net.ap.brid.gy · 20/08/2026
Learn more about what I saw and experienced at the 2026 #Stellafane convention … “Three Days at Stellafane” steve.cooleysekula.net/blog/2026/08…
steve.cooleysekula.net
Three Days at Stellafane
For the second time, Jodi and I participated in the annual Stellafane Convention. Last year, I was a speaker at the pre-convention event (The Hartness House Workshop) and then again at the end of t…
010 1
Reposted by Теодор Златанов / Ted Zlatanov
Stephen Sekula @steve.mastodon.cooleysekula.net.ap.brid.gy · 15/08/2026
It has been a great few days at the #Stellafane Convention. Blog posts will follow, but here are some cool photos of stuff we have been up to. You can follow the more detailed posts here: steve.cooleysekula.net/blog/tag/ste…
Jodi talks about building dark matter detectorsA 3-d printed telescope.An image of the sun showing sunspotsA spectrum of the sun showing magnesium lines
020 2
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 15/08/2026
Stargazing at #stellafane
010 1
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 15/08/2026
Stargazing at #stellafane
110 1
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 15/08/2026
Enchanted Skies Star Party talk at #stellafane
000 0
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 15/08/2026
Telescope making innovations talk at #stellafane
000 0
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 15/08/2026
Fun with PVC presentation at #stellafane
000 0
Reposted by Теодор Златанов / Ted Zlatanov
Zach Weinersmith @zachweinersmith.bsky.social · 12/08/2026
I've done it. At last. A comic with an audience smaller than zero.
361180138 1.2K
Reposted by Теодор Златанов / Ted Zlatanov
Miguel de Icaza ᯅ🍉 @migueldeicaza.mastodon.social.ap.brid.gy · 11/08/2026
For more than twenty years, I have faithfully maintained and published a PGP key, ensuring that journalists, dissidents, intelligence agencies, or anyone else with sufficiently sensitive information could establish a secure channel directly to me, and as far as I can tell, not one person has […]
mastodon.social
Original post on mastodon.social
407 7
Reposted by Теодор Златанов / Ted Zlatanov
Todor Hlebarov @todor.mograph.social.ap.brid.gy · 30/07/2026
If you haven't seen the latest video by TAXOMA (a Bulgarian rap artist) - not only is the song a freaking masterpiece, but the video itself is such an amazing find too. It's like a #poster in #motion, and it's a lyric video at the same time. It's also 4 songs into one […]
mograph.social
Original post on mograph.social
001 1
Reposted by Теодор Златанов / Ted Zlatanov
2 Spoopy 4 You @jcrabapple.dmv.community.ap.brid.gy · 24/07/2026
🔋 MIT just published the most comprehensive EV emissions study yet, analyzing every US zip code with real driving data. Battery EVs cut lifetime emissions 40-60% vs gas cars in most locations. Even on the dirtiest grid in the country, they still come out ahead. The study used DOE's GREET […]
dmv.community
Original post on dmv.community
2992 92
Reposted by Теодор Златанов / Ted Zlatanov
Julia Evans @b0rk.social.jvns.ca.ap.brid.gy · 22/07/2026
cool to see that the ICFP programming contest this year is focused on systems programming icfpcontest2026.com (via @lindsey)
icfpcontest2026.com
ICFP Programming Contest 2026
The 29th ICFP Programming Contest runs July 24–27, 2026. An online programming competition for teams of any size, anywhere.
001 1
Reposted by Теодор Златанов / Ted Zlatanov
Boston Cyclists Union: BCU.bike/act @bikeboston.bsky.social · 22/07/2026
Read our latest email on what we can do to continue to fight for safe streets in Boston and across the Commonwealth. We are looking for commitments at the local and state level. It's up to us to hold our elected officials accountable. Your voice matters! prod.cdn.everyaction.com/emails/van/E...
prod.cdn.everyaction.com
Thank you for any and all actions you take, including gathering with your community to support each other. Together, we can and will make change.
011 1
Reposted by Теодор Златанов / Ted Zlatanov
Andrew Nesbitt @andrewnez.mastodon.social.ap.brid.gy · 21/07/2026
--end-of-options nesbitt.io/2026/07/21/end-of-option…
nesbitt.io
--end-of-options
I was reading through the fix for a package manager CVE last week and ran into a git flag I’d somehow never noticed: `--end-of-options`. My first reaction was that some LLM had hallucinated it, but it’s documented in `gitcli(7)`, it was added in git 2.24.0 in November 2019, and it exists because git had already used `--` for something else. In most Unix tools `--` marks the end of option parsing, so `rm -- -f` removes a file called `-f` rather than passing the force flag. Git had repurposed `--` early on to separate revisions from pathspecs, because `git log foo` on its own is ambiguous between a branch named `foo` and a file named `foo` and one of the two readings needed a marker: `git log main -- README.md` means commits on `main` touching that file. That left the revision position with no terminator, so if a script runs `git log "$rev"` and `$rev` starts with a dash, git parses it as an option. From the commit that introduced `--end-of-options`: > But that doesn’t work for the revision parser, because `--` is already meaningful there: it separates revisions from pathspecs. So we need some other marker to separate options from revisions. `--` and `--end-of-options` are different things in git, and treating them as interchangeable is a mistake I’ve now seen in several places. Putting `--` before a URL in `git clone -- "$url"` works, because `clone` follows the POSIX convention. A trailing `--` after a ref, as in `git checkout "$ref" --`, marks `$ref` as a revision rather than a filename but still lets it be read as an option first. Passing an untrusted revision safely means writing `git log --end-of-options "$rev" -- "$path"`, with both markers doing separate jobs. Support for the new flag arrived per subcommand rather than all at once: `git rev-parse` only got it in 2.30.0, a year after the initial release, because it has its own hand-rolled argument parser, and `git checkout` and `git reset` rejected it until 2.43.1 in February 2024 because they parse `--` themselves and the initial implementation left `--end-of-options` in the argument list where their parsers rejected it. ## Argument injection Git, hg, and ssh all ship options whose documented purpose is to run a command the caller names. `git clone` accepts `--upload-pack=<cmd>` to specify the server-side binary, and any `git` invocation accepts `-c core.sshCommand=<cmd>` to override how it connects. Mercurial accepts `--config=alias.<subcmd>=!<shell>` on any subcommand, which redefines the subcommand you’re running as an arbitrary shell script. `ssh` accepts `-oProxyCommand=<cmd>`. These are documented features that become attack primitives when a wrapping program passes an untrusted string into the argument list. The failure mode has its own CWE, CWE-88, argument injection, and it’s distinct from command injection because there’s no shell involved: the wrapping program builds an argv array and calls `exec` directly, exactly as every “don’t use `system()`” guide recommends, the array reaches git intact, and git then parses one of the arguments as an option because it starts with a dash. CVE-2019-13139 in `docker build` is a clean example: Go’s `os/exec` package, an argv array, no shell, and a git-context URL whose `#ref:dir` fragment reached `git fetch origin <ref>` as `--upload-pack=<cmd>`. The pattern was demonstrated across four version control systems on the same day in August 2017, when CVE-2017-1000117 (git), CVE-2017-1000116 (Mercurial), CVE-2017-9800 (Subversion), and CVE-2017-12836 (CVS) were disclosed together. Each passed a URL’s hostname to `ssh` as an argument, and a hostname starting with `-oProxyCommand=` became an ssh option. Phabricator’s post-mortem on the disclosure noted that of the three actively maintained tools, only Subversion actually added `--` before the hostname in its fix; git and Mercurial validated the hostname format instead, partly because `--` isn’t supported by every ssh implementation. The same write-up called the `--` mechanism itself “unsafe by default”, since code without it looks correct and works fine right up until an argument starts with a dash. ## Package managers Package managers routinely take a git URL or ref as data and pass it to a subprocess: `gem 'foo', git: '...'` in a Gemfile, `github:user/repo#ref` in a `package.json`, and equivalents in `pyproject.toml`, `Cargo.toml`, `mix.exs`, `Package.swift`, `pubspec.yaml`, `conanfile.py`, and `go.mod`. The URL and ref arrive in a manifest, a lockfile, or a transitive dependency’s metadata. Of nineteen package managers I checked1, seventeen fork the `git` binary as their default or only path. The two that default to a library are Cargo, which uses libgit2 with an opt-in `net.git-fetch-with-cli` setting to fork instead, and Poetry, which switched to dulwich in 1.2.0 with a `system-git-client` setting to fall back. Nix uses libgit2 for reading local repositories but forks `git` for fetches, because libgit2 lacks git-credential helper support. The published CVEs against package managers in this class include CVE-2021-43809 (Bundler), CVE-2021-29472 and CVE-2022-24828 (Composer), CVE-2022-36069 (Poetry), CVE-2023-5752 (pip), CVE-2022-21223 and CVE-2022-24440 (CocoaPods), and CVE-2025-68119 (Go). The Snyk research that produced several of the 2022 entries is written up here, and Sonar maintains a catalogue of the dangerous options per binary. Of the seventeen that fork git, exactly one uses `--end-of-options`: Go’s `cmd/go`. It added `--` before repository URLs in June 2019 as a general hardening pass. In January 2026 that turned out to be insufficient and `--end-of-options` was added across the board as the fix for CVE-2025-68119, along with `HGPLAIN=+strictflags`, which has restricted Mercurial’s early-option parsing since hg 4.4.2 in 2017. The commit message ends: “We should probably follow up with a more structured change to make it harder to accidentally re-introduce these issues in the future, but for now this addresses the issue at hand.” ## Minimum git versions The other package managers that guard the argument list at all use `--` or a leading-dash check on the input, and looking at when each guard was added, most arrived as the fix for a reported vulnerability rather than in the original implementation. The `--` before the URL in Bundler’s `git clone` is the CVE-2021-43809 patch. The leading-dash rejection in cocoapods-downloader landed in three commits over ten days in March 2022, matching the CVE-2022-21223 disclosure. Poetry’s guard arrived in September 2021 with a CVE assigned a year later, and the switch to dulwich followed six months after that. vcpkg is the exception I found where `--` was present from the day git registry support was written. Composer’s advisory for CVE-2022-24828 explains why almost none of these tools use `--end-of-options`: it names the flag as the correct fix and then says Composer supports git versions that predate it, so the patch rejects leading-dash branch names instead. vcpkg’s git integration has a comment stating a floor of git 2.7.4. Homebrew’s `HOMEBREW_MINIMUM_GIT_VERSION` is 2.7.0 on Linux, set in 2018. Amazon Linux 2, which packaged git 2.14.3, reached end of life last month, so the distributions those floors track are only now ageing out. Ubuntu 18.04 with git 2.17.0 is in extended support until 2028. Ubuntu 20.04, in extended support until 2030, packages 2.25.1, which is new enough to accept `--end-of-options` on `git fetch` but old enough to reject it on `git rev-parse`. Relying on the flag means raising the minimum git to 2.24.0 for most subcommands, 2.30.0 for `rev-parse`, or 2.43.1 for `checkout` and `reset`, and losing anyone still on the distribution-packaged git. ## Git libraries libgit2, gitoxide, go-git, JGit, and dulwich all implement enough of the git wire protocol to clone and fetch in-process, with no argv boundary and so no argument list to inject into. Jujutsu uses gitoxide for its git interop and has no published CVEs in the argument-injection class; its two advisories to date are a path traversal and a missing SHA-1 collision check inherited from the library. go-git has one, CVE-2025-21613, and it’s specifically on the `file://` transport, the one code path in go-git that spawns the `git` binary. I noted in the package manager CWEs post that this trades one problem for another, since a bundled git implementation has to track every checkout-safety fix upstream git ships, and libgit2 and JGit have both had rounds of those. That’s a real cost, but it’s a stream of specific patches to apply rather than a check that has to be remembered at every call site forever. Writing this prompted me to open a PR against Homebrew raising its minimum git to 2.30.0 and adding `--end-of-options` before URLs in `clone`, `remote set-url`, and `ls-remote`, and before refs in `rev-parse`. The `checkout` and `reset` calls are left alone, since covering those would need a floor of 2.43.1, released February 2024, and that’s recent enough to still be ahead of several supported distributions. 1. Bundler, Cargo, CocoaPods, Composer, Conan, Go, Helm, Homebrew, Mix, Nix, npm, pip, pnpm, Poetry, Pub, SwiftPM, uv, vcpkg, Yarn. All checked at HEAD in July 2026. ↩
112 2
Reposted by Теодор Златанов / Ted Zlatanov
Ada Palmer @adapalmer.wandering.shop.ap.brid.gy · 15/07/2026
A Roman scroll that should be ash has just been read without being opened. In 79 AD, Mount Vesuvius buried the Roman town of Herculaneum under metres of ash. In one villa, a library of papyrus scrolls was buried too. The scrolls didn’t burn, but were charred: turned into fragile, cigar-shaped […]
wandering.shop
Original post on wandering.shop
107 7
Reposted by Теодор Златанов / Ted Zlatanov
Bundyo @bundyo.bundyo.com.ap.brid.gy · 10/07/2026
@hristosivov.bsky.social Айде и на бугарски: "Поддръжник на Путин влиза на бензиностанция и пита: - Колко струва бензинът? Служителят отговаря: - 200 рубли за литър. - Как 200?! Вчера беше 100! - Точно така: 100 рубли са за бензин, а други 100 отиват за изграждането на многополюсен свят […]
bundyo.com
Original post on bundyo.com
021 2
Reposted by Теодор Златанов / Ted Zlatanov
bontchev.infosec.exchange.ap.brid.gy @bontchev.infosec.exchange.ap.brid.gy · 09/07/2026
"GitHub 'Verified' Commits Can Be Rewritten Into New Hashes Without Breaking Signatures": thehackernews.com/2026/07/github-ve…
thehackernews.com
GitHub 'Verified' Commits Can Be Rewritten Into New Hashes Without Breaking Signatures
New research shows that a signed Git commit's hash is not the one-of-a-kind name that much of the software world assumes it to be. Given any signed commit, someone without the signing key can mint a second commit with the same files, author, and date, and a valid signature, GitHub still stamps "Verified." Everything a reviewer would check matches. The commit's hash does not. That matters
002 2
Reposted by Теодор Златанов / Ted Zlatanov
:privTri: Volpeon :areonNSmol: @volpeon.at.icy.wyvern.rip · 08/07/2026
@nikitonsky It's even worse, the SVG exists purely to handle the text selection, and what's displayed on top of it is a dynamically generated raster graphic put into an `img` tag. That's also why there's the weird copy-paste discrepancy, because both don't line up. This is amazing, it's like […]
icy.wyvern.rip
Original post on icy.wyvern.rip
212 2
Reposted by Теодор Златанов / Ted Zlatanov
Niki @nikitonsky.mastodon.online.ap.brid.gy · 08/07/2026
Jira patch viewer already was my favorite thing (page marging! page breaks!) but today I looked under the hood and it is even more hilarious. Apparently patches are rendered as SVG (!!! for text!), and at what appears to be 1/4 of screen resolution somehow […] [Original post on mastodon.online]
415 5
Reposted by Теодор Златанов / Ted Zlatanov
Ge0rG @ge0rg.chaos.social.ap.brid.gy · 23/06/2026
From the "Pivot to woodworking" department #InfoSec #ShitPost #DevOps #Logs #VennDiagram
Venn diagram:
left: forest ranger
right: devops engineer
middle: looking for bugs in logs
414114 114
Reposted by Теодор Златанов / Ted Zlatanov
Ben Werdmuller @ben.werd.social.ap.brid.gy · 23/06/2026
The unusually long sentences criminalize being an anti-fascist activist, reading the wrong zines, and using the wrong communication apps. They're incredibly dangerous. #Democracy werd.io/signs-youre-a-dangerous-ter…
werd.io
Signs you're a dangerous terrorist: using Signal, moving zines
The unusually long sentences criminalize being an anti-fascist activist, reading the wrong zines, and using the wrong communication apps. They're incredibly dangerous.
1213 13
Reposted by Теодор Златанов / Ted Zlatanov
éric 🚲 🇪🇺 :emacs: @ericsfraga.fediscience.org.ap.brid.gy · 18/06/2026
Part of the afternoon wasted (not really; it's raining so having fun inside 🙂) tweaking my Emacs configuration due to some really good posts about version 31 (soon to hit the high street near you 😉): karthinks.com/software/even-more-ba… […]
fediscience.org
Original post on fediscience.org
100 1
Reposted by Теодор Златанов / Ted Zlatanov
Kit Bashir @unixbigot.aus.social.ap.brid.gy · 30/12/2024
I signed up for a black-market time-travel tour as soon as I heard about them. (The first rule of Time Club etc.) There’s an hour long pre-mission briefing on how you must be extremely careful in what you say or do as the smallest event could have future-changing consequences. After that […]
aus.social
Original post on aus.social
26116 116
Reposted by Теодор Златанов / Ted Zlatanov
Tim Greenli ⁂ @timgreenli.datasci.social.ap.brid.gy · 10/06/2026
I’m looking for resources, groups, etc—preferably on the Fediverse—for connecting with people and job placement for data science in Copenhagen 🇩🇰. If you know of any or are in Copenhagen and are happy to help, send me a message! #fedihire #datascience #datasci #datascientist #copenhagen #denmark
011 1
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 12/06/2026
@muiiio every situation is different depending on the child and parent previous interactions that day, week, month etc. and there is a big range of circumstances and mental conditions and disabilities that can make such interactions very difficult for the parents in a public setting. My […]
infosec.exchange
Original post on infosec.exchange
100 1
Reposted by Теодор Златанов / Ted Zlatanov
bontchev.infosec.exchange.ap.brid.gy @bontchev.infosec.exchange.ap.brid.gy · 10/06/2026
"The future of Siri, or: why private inference isn’t private enough": blog.cryptographyengineering.com/20…
blog.cryptographyengineering.com
The future of Siri, or: why private inference isn’t private enough
Yesterday Apple announced a big step towards deploying real AI in their Siri ecosystem. In most ways this is good and inevitable: Siri is one of the world’s most widely-used voice agents, and it would be good if it didn’t suck. The idea that Apple would boost its capabilities with frontier models wasn’t so much … Continue reading The future of Siri, or: why private inference isn’t private enough →
001 1
Reposted by Теодор Златанов / Ted Zlatanov
Laurens Hof @mastodon.laurenshof.online · 09/06/2026
the cyberpunk present is weird as fuck: the latest Shai Hulud malware wave contains an LLM prompt to create biological weapons and nuclear weapons, with the purpose to trip LLM safety refusals so that LLM-based code scanning wont see the malware […] [Original post on indieweb.social]
llm prompt for creating bioweapons and nuclear weapons
4140181 181
Reposted by Теодор Златанов / Ted Zlatanov
Bodil @bodil.lol · 08/06/2026
People all over my feed posting random excitable sentences with no context. It's either a big sports event or Apple.
125 5
Reposted by Теодор Златанов / Ted Zlatanov
Aaron Pettman @aaronpettman.unbound.social.ap.brid.gy · 06/06/2026
To avoid throttling / blockage, web scraping (data extraction) for AI is being re-routed through residential smart TVs by Israeli company Bright Data. blog.includesecurity.com/2026/06/th…
blog.includesecurity.com
The Smart TV in Your LivingRoom Is a Node in the AIScraping Economy
The work at Include Security has us working with AI day in and day out (hacking it, using it, training it, etc). We’re all aware of the community-level opposition happening against datacenters, aimed at improving AI capabilities, being built recently. What you might not be aware of are the distributed efforts to train AI that could be using the devices inside your home. In this post, we’re going to explore how the company Bright Data facilitates modern AI models scraping training data from the Internet using its residential proxy network. Bright Data is a data-collection company that sells access to what it markets as the world’s largest residential proxy network of 400M+ home IP addresses that its customers route web-scraping traffic through. The supply behind that network comes from an SDK: a piece of software embedded in consumer apps that, with the user’s consent, turns their phone or smart TV into one of those exit nodes. We’ll document what you, the average user, should know about what this company’s SDK does on your systems such as your mobile phone and your smart TV. We’re going to explore how their SDK works, which platforms have shipped it, and why your Internet-connected TV is the ultimate proxy for AI models looking to train on data scraped from the Internet. ### **Why This Matters Now** AI companies depend on web-scraped content: for pre-training, for retrieval, for agent grounding, for search. But the modern web isn’t scrapeable from a datacenter. Cloudflare, DataDome, HUMAN, among others throttle or block requests from known cloud IPs. The workaround is residential proxies. A scraping job routed through a Comcast or T-Mobile subscriber’s connection arrives at the target site from an IP that belongs to a paying residential customer. Krebs reported in October 2025 that _“a glut of proxies from Aisuru and other sources is fueling large-scale data harvesting efforts tied to various AI projects.”_ Academic measurement going back to 2019 shows these networks are overwhelmingly misused. The FBI issued a formal advisory earlier this year. Most of the existing press has focused on the **illegal** residential-proxy supply: botnets (Aisuru, Kimwolf), trojanized apps (HUMAN Security’s PROXYLIB disclosure), pre-infected IoT hardware (Google/Mandiant’s IPIDEA takedown). These are the bad actors. On the other hand, the legal supply side has received far less scrutiny. Today Bright Data is the largest residential proxy network in the world by its own marketing, advertising “150M+ IPs” sourced via a consent SDK embedded in partner apps. This research documents how that SDK works, which platforms have shipped it, and why the connected-TV is the ultimate residential proxy. ### **Why Connected TV (CTV) is the Ideal Proxy** Connected TV, a.k.a Smart TV, is a near-perfect residential proxy. Compared to a mobile phone: **Factor**| **Mobile phone**| **Smart TV / CTV** ---|---|--- Power| Battery most of the day| Always plugged in Network| WiFi + cellular| Always WiFi, high-speed Uptime| Intermittent| 24/7 in standby Bandwidth ceiling| Low (cellular caps)| Effectively unlimited User attention| Actively used| Often unattended Consent UI| Text on a phone screen| Text navigated via TV remote arrow keys Corporate/family oversight| Higher (MDM, mobile EDR)| Virtually none A TV never hits 1% battery, jumps between WiFi networks or gets locked when the user is asleep. Some partner publishers do disclose the Bright Data relationship in their privacy policies PlayWorks is one example. But privacy-policy disclosure is the wrong control surface for a TV. It is hard to scroll through a legal document navigated by arrow keys on a remote, and the in-app consent dialog, doesn’t convey that a paying Bright Data customer is about to route their scraping traffic through the user’s home internet. Petflix, a Roku app documented by The Verge, is a representative case. Its opt-in screen reads: _“To enjoy Petflix for free with fewer ads, you are allowing Bright Data to occasionally use your device’s free resources and IP address to download public web data from the internet. Bright Data will only use your IP address for approved business-related use cases. None of your personal information is accessed or collected except your IP address. Period.”_ The Petflix dialog says “occasionally.” The SDK’s publicly queryable config sets `max_bw_monthly_wifi: 200,000,000,000` bytes — a 200 GB default monthly WiFi budget. **Who Bright Data Names as Partners** Bright Data exposes a partner manifest endpoint. The endpoint is unauthenticated and anyone can fetch it. Names in the manifest that I was able to identify with high confidence from public sources: **Partner ID (from config)**| **Entity**| **Scale** ---|---|--- playworks_digital| **PlayWorks Digital Ltd**| 400+ CTV game titles; reach ~250M TV homes via Comcast, Sky, Cox, LG, Samsung, Vizio, Roku cloudtv| **CloudTV**| Integrated across 125+ TV brands and 15+ OEMs longvision_media_hong_kong_co_limited| **Longvision Media HK (LongTV)**| 5M OTT users across HK and Malaysia viber_media_s_r_l| **Viber Media S.à r.l. (Rakuten)**| 250M–820M monthly users of the Viber messenger supercent_inc| **Supercent** (Korea)| #1 Korean mobile publisher by downloads in 2023 moonfrog_labs_private_limited| **Moonfrog Labs** (Stillfront subsidiary)| ~10M MAU on Teen Patti Gold alone; acquired for $90M hola_networks| **Hola Networks**| Bright Data’s lineage parent; user base reported in the tens to ~100M+ range at peak per Hola’s own historical marketing Others (`desoline, free_time, ott_studio, global_microtrading, m_m_media, easystaff_lp`) are present but less identifiable from public sources. `bright_screensavers, bright_videos`, and `brightdata `are Bright Data’s own apps. A note on what the partner list proves: Being listed in Bright Data’s config means an integration might have existed at some point. It does _not_ by itself prove that a specific publisher’s currently-shipping app(s) includes the SDK in production. For any named publisher, per-app verification is required. What the partner list _does_ directly prove: 1. Bright Data ships this roster in an **unauthenticated public endpoint**. 2. At least three CTV-focused entities (PlayWorks, CloudTV, Longvision) monetized their user’s devices as residential proxy exit nodes. PlayWorks in particular reports CTV distribution across major TV platforms and ISPs, with reach figures in the hundreds of millions of households per its own marketing materials. ### **How does the Bright Data SDK turn a user’s device into a residential proxy exit node?** The Bright Data SDK is a publicly documented commercial product, offered to publishers via Bright Data’s SDK integration docs (with a JavaScript variant for web). What follows builds on that public surface with findings from reverse-engineering the shipping iOS framework and instrumenting 30 days of its runtime traffic. The SDK ships as an iOS framework (brdsdk.framework) inside partner apps. I reverse-engineered the binary and captured 30 days of traffic from a research fleet running the SDK inside a consent-installed partner app. #### **The Unauthenticated Config** On every launch the SDK calls: `GET <https://clientsdk.bright-sdk.com/sdk_config_ios.json>?appid=<bundle>&ver=<sdk-version>&uuid=sdk-ios-<32hex>` The endpoint is unauthenticated in any meaningful sense. The server gates only on two query parameters `appid `(an app bundle ID, which can be found in the App Store listing of the partner app) and `ver `(the SDK version string). Supply those and any randomly generated UUID, and the server returns the same response a real device gets: feature flags, idle-detection thresholds (battery %, CPU/memory ceilings, WiFi-vs-cellular rules), per-country bandwidth tiers, and the partner manifest I showcased above. Each of these branches is worth examining on its own: the idle rules that decide when your device is eligible to relay, a flag that routes peer traffic around your VPN, a map that stitches your installs across platforms into one identity, and the per-country bandwidth caps. #### **The Peer Tunnel** After config fetch, the SDK opens a persistent WebSocket to: `wss://proxyjs.brdtnet.com:443` This hostname resolves to AWS Global Accelerator IPs (3.33.193.183, 15.197.193.114 as of this writing). The TLS certificate is `CN=*.luminatinet.com` — the domain for Luminati Networks, Bright Data’s pre-2018 corporate name. The rebrand was publicly announced in 2018. Active SDK infrastructure still runs on the legacy cert, which is a useful detection pivot: the current customer-facing proxy service lives on brightdata.com-branded domains, so any luminatinet.com / brdtnet.com traffic on your network is specifically the peer-tunnel plane, not customer-side Bright Data usage. The server identifies itself as `uWebSockets: 20`. The peer endpoint requires no authentication to upgrade. The server accepts any TLS-valid WebSocket upgrade and immediately pushes the connecting client an application-layer frame with the client’s public IP echoed back. From there, a handshake unfolds: 1. **Server → client: tunnel_init** establishes the session, returns the client’s public IP. 2. **Server → client: cid_set** the server assigns the client a session-tracking identifier in the format `<IP>-<token>/ls<N>c<M>p443_<IP>_<counter>`. We confirmed this format matches the cid field present in the SDK’s captured telemetry traffic from real devices. 3. **Server → client: status_get** the server polls the device for its idle state, battery, network type, and available bandwidth. The device responds with a continuous telemetry feed: `idle, wifi_connected, mobile_connected, mobile_type` (LTE/5G), `roaming, battery_level, using_battery, screen_on, on_call, cpu_usage, mem_usage, raw_bw, bw, ipv6_supported, appid` (the host app), `sdk_version, platform`, and the assigned `cid`. This is a continuous feed of physical-device state to a third party, delivered via a consent dialog whose text is chosen by the host app publisher. 4. **Handshake complete.** Once the device reports favorable status, the server’s job-matching layer is free to push `cmd_tun` frames: individual scraping-job instructions that the SDK executes as HTTP requests against third-party sites, using the user’s residential IP as the source. Every frame on the WebSocket is plain JSON with a fixed envelope: `{"type": "ipc_call"|"ipc_post"|"ipc_result"|"ipc_error", "cmd": <command>, "cookie": <correlation-id>, "err_code": 0, "msg": { ...payload... }}` The full command vocabulary extracted from the binary and verified on the wire: **Direction**| **cmd**| **Purpose** ---|---|--- Server → Client| tunnel_init| Open session, echo public IP Server → Client| cid_set| Assign session identifier Server → Client| status_get| Poll device idle/battery/bandwidth Server → Client| cmd_tun / tun| Dispatch a scraping job Server → Client| dns| Request DNS resolution of a target Server → Client| consent| Request consent state Client → Server| status_send| Periodic heartbeat with device state Client → Server| tun_report / tun_ack / tun_fin| Relay-job lifecycle responses Client → Server| tunnel_init_decline| Decline a session Client → Server| logs| Ship diagnostic logs to server There’s no message signing, HMAC, client certificate or device attestation. Only the TLS layer and the server’s IP-reputation filter gating which peers actually receive jobs. For readers familiar with commercial malware protocol design: this is substantially less secure than typical C2. #### **When the SDK considers you “idle”** The config ships an explicit rulebook for when the device is eligible to relay someone else’s traffic: `"idle_metrics": { "ignore_screen_on": true, // relay even with the screen on "ignore_on_call": true, // relay while the user is on a phone call "max_bw_ratio": 1, "min_battery": 0.2, "wifi_on_battery": true, "min_battery_wifi": 0.2, "max_cpu_usage": 70, "max_mem_usage": 90, "mem_screen_off": true, "idle_timeout": 30, "not_idle_timeout": 10 }` The ignore_screen_on and ignore_on_call flags are notable: “idle” does not mean the user is away from the device. It means the device’s CPU, memory, and battery are within the SDK’s thresholds. A user on a phone call, actively reading the screen, is considered idle for relay purposes. #### **Cross-Platform Identity Linkage** The config also ships a dual_pairing map: ``**"dual_pairing":** { "ios_com.brd.earnapp": ["win_earnapp.com", "mac_com.earnapp"] }`` That’s a server-side map tying a user’s iOS, Windows, and macOS installations of the same brand into one entity. It’s cross-platform identity stitching documented inside a public config file.One more forward-looking field: http3_enabled: true. The SDK is already shipping the flag for QUIC-based peer transport. A future version may move the peer tunnel from TCP/443 to UDP/443, which would break any defender relying on TCP connection tracking to detect the WebSocket. #### **The Inspection Bypass** The SDK’s config ships a flag “use_netifs”: true. That flag triggers code in the SDK binary that constructs its NWConnection with a specific required interface: `en0 `(WiFi) or `pdp_ip0 `(cellular), rather than using the system default route. **On iOS, this bypasses any configured VPN’s tun0 interface entirely.** The peer tunnel does not cross a user-configured VPN, even when the rest of the app’s HTTPS traffic does. We observed this empirically. My research setup includes transparent TLS interception. It captured every HTTPS call the SDK made, except the peer tunnel to proxyjs.brdtnet.com:443, even though port 443 is explicitly redirected to the inspector. The bypass uses Apple’s documented NWParameters.requiredInterface API. It’s worth emphasizing that the SDK uses **two independent inspection bypasses** , one per plane: * **Control plane** (config fetch, telemetry pings): built on CFNetwork’s CFHTTPMessage primitives rather than URLSession/NSURLConnection. This defeats URLSessionlevel instrumentation (swizzling, network extensions, URLProtocol subclasses) commonly used in mobile app-sec tooling, while still respecting the system proxy and so remaining visible to TLS-intercepting researchers. * **Data plane** (peer tunnel): built on NWConnection with requiredInterface set to the physical interface. This is what defeats VPNs and ensures the scraping is executed from a residential IP. Both choices are legitimate Apple APIs. The combination is the interesting artifact: the data plane is invisible to VPN-based inspection _and_ the control plane is invisible to URLSession-based hooks. Researchers who rely on either single technique see only half the SDK’s behavior. For enterprise security teams running MDM, corporate-VPN-based traffic inspection, or home-router parental controls: the most sensitive channel this SDK operates is designed to go around your visibility layer. ### **The geography tiers** The config ships per-country bandwidth thresholds. Four countries get explicit non-default policies: **Country**| **Min battery to relay**| **Daily cap**| **Monthly cap** ---|---|---|--- **Uzbekistan**| **1%**| 1 GB| 30 GB **Oman**| **1%**| 1 GB| 30 GB Qatar| 20%| 40 MB| 250 MB UAE| 20%| 40 MB| 250 MB default (worldwide)| 20%| 50 MB| 500 MB Looking at the config, Uzbekistan and Oman devices are permitted to relay down to **1% battery** , with daily caps 20× the default and monthly caps 60× the default. Qatar and UAE devices are throttled _below_ default. We can only speculate as to why the tiers are drawn this way. One reading is deliberate market segmentation, relaxing limits where grid power is stable and throttling where mobile data is expensive. The default-worldwide allowance still permits **500 MB of someone else’s traffic per month** over the user’s home internet. ### **Testing Setup and Methodology** Three data sources: 1. **Thirty days of TLS-inspecting proxy captures** from iOS device running consent-installed partner apps (including XYO COIN, which embeds the Bright SDK). 2. **Static analysis of the SDK binary** (brdsdk.framework, version 1.532.120, iOS arm64). All specific Bright Data hostnames, cert fingerprints, and TLS infrastructure described are publicly observable by anyone making the same requests. No session-specific identifying data from either the research fleet or the research client appears in this document. ### **Timeline** * **May 11, 2026** – Email notice sent to privacy@brightdata.com notifying their team about the release of this blog post. No response to the notification has been received at the time of this article’s publishing. ### **Defense Approaches** The traffic leaves clear fingerprints at the network boundary, and the SDK leaves identifiable symbols in the app binary. The approaches below let you detect and block the peer tunnel — at the network level or on the device itself. Three approaches, ordered by ease of deployment: **Approach 1: DNS block** (trivial, effective for network-routed devices): proxyjs.brdtnet.com proxyjs.luminatinet.com proxyjs.bright-sdk.com clientsdk.bright-sdk.com clientsdk.brdtnet.com Blocking proxyjs.* kills the peer tunnel without affecting any customer who legitimately uses Bright Data’s customer-facing proxy service on a different domain. **Approach 2: TLS SNI filtering:** Drop or alert on TLS handshakes where server_name matches *.brdtnet.com, *.luminatinet.com, or *.luminati.io. Works at the network boundary without TLS inspection. **Approach 3: TLS certificate fingerprint:** * .brdtnet.com → SHA256 313ce4ec7d5a51e5… * .luminatinet.com → SHA256 5028612e625befea… Stable until Sectigo cert rotation (current certs valid through mid-2026). **The use_netifs caveat:** All three layers only work on traffic that crosses your network boundary. The SDK’s use_netifs binding means that on iOS, when the device is on cellular, peer traffic bypasses corporate WiFi entirely. For managed fleets, the complementary control is MDM-based app binary scanning: search installed apps for the Swift symbols BrdWebSocketFacade and BrdNetwork.DNSResolver, and prohibit apps containing them on corporate-issued devices. For household users concerned about a specific smart TV or mobile app: block the hostnames above at your router’s DNS settings (Pi-hole, NextDNS, Cloudflare Gateway, your ISP’s equivalent). — This blog post was written in partnership with our guest author and independent security researcher Buchodi. ### Share this: * Share on X (Opens in new window) X * Share on Facebook (Opens in new window) Facebook * ### Like this: Like Loading…
138 8
Reposted by Теодор Златанов / Ted Zlatanov
ben @benjamineskola.hachyderm.io.ap.brid.gy · 05/06/2026
@cks You can possibly do (use-package emacs) with the :custom keyword github.com/jwiegley/use-package#cus…
001 1
Reposted by Теодор Златанов / Ted Zlatanov
Tim Bray 🇨🇦 @timbray.cosocial.ca.ap.brid.gy · 02/06/2026
In which I consider the state of incumbent markup formats. www.tbray.org/ongoing/When/202x/202… #json #xml
The best thing about long-lived incumbent technologies like JSON and XML is that nobody really has to think about them much any more. Except for, I do occasionally, because while I’m not the inventor of either, my name’s on the front of both official specifications. Hey, it’s JSON’s 25th birthday, what a run! And what ever happened to XML? Let’s shake off the dust and have a look.
4219 19
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 02/06/2026
@ross ANTINEWS
100 1
Теодор Златанов / Ted Zlatanov @tzz.infosec.exchange.ap.brid.gy · 02/06/2026
RE: mastodon.world/@jobsfordevelopers/1… #saltstack #debian environment. Let me know if you have questions or want to apply directly. Happy to help.
mastodon.world
000 0