Electronics-Related.com
Forums

wifi command set secrecy - why?

Started by Dimiter_Popoff November 25, 2021
On 11/26/2021 12:27, Carlos E.R. wrote:
> On 25/11/2021 19.40, Dimiter_Popoff wrote: >> I have been looking for some wifi chip(set) to be able to use in our >> systems and it has turned out it is impossible to get one which is >> documented in a way we could write our own driver so our tcp/ip >> stack under dps would treat it as yet another medium, like it does >> with Ethernet or via PPP and sort of. >> What I don't get is *why* do they keep things so secret? When wifi >> was starting there was some PRISM hardware which had been documented; >> at some point it was bought and *all* documentation was carefully >> made extinct. Now all you can buy are modules which will do the tcp/ip >> for you, you can only ask for a tcp connection *they* will make and >> maintain etc. >> Why is that, does anybody know? I am trying to understand the motivation >> of those who pull the strings to keep these data so secret, perhaps >> if I once understand it I can advance a step closer. I am really >> reluctant to spend a year of my life writing my firmware for >> some wifi radio (these can be bought), not least because I have better >> things to do with the active years I can hope to have left. > > Have a look at the Linux driver if it exists. They usually > reverse-engineer the needed specs. >
These drivers are not open source, not for the part that matters. The reverse engineered part is available IIRC, but what I try to understand is *why* do they (and I) have to reverse engineer what the likes of microsoft and android makers have access to.
On 26/11/2021 13.06, Dimiter_Popoff wrote:
> On 11/26/2021 12:27, Carlos E.R. wrote: >> On 25/11/2021 19.40, Dimiter_Popoff wrote: >>> I have been looking for some wifi chip(set) to be able to use in our >>> systems and it has turned out it is impossible to get one which is >>> documented in a way we could write our own driver so our tcp/ip >>> stack under dps would treat it as yet another medium, like it does >>> with Ethernet or via PPP and sort of. >>> What I don't get is *why* do they keep things so secret? When wifi >>> was starting there was some PRISM hardware which had been documented; >>> at some point it was bought and *all* documentation was carefully >>> made extinct. Now all you can buy are modules which will do the tcp/ip >>> for you, you can only ask for a tcp connection *they* will make and >>> maintain etc. >>> Why is that, does anybody know? I am trying to understand the motivation >>> of those who pull the strings to keep these data so secret, perhaps >>> if I once understand it I can advance a step closer. I am really >>> reluctant to spend a year of my life writing my firmware for >>> some wifi radio (these can be bought), not least because I have better >>> things to do with the active years I can hope to have left. >> >> Have a look at the Linux driver if it exists. They usually >> reverse-engineer the needed specs. >> > > These drivers are not open source, not for the part that matters. > The reverse engineered part is available IIRC, but what I try to > understand is *why* do they (and I) have to reverse engineer > what the likes of microsoft and android makers have access to.
The Linux drivers are open source (whether they are documented enough or what you want, is another matter). If the makers do their own closed source driver for Linux, that's their driver, not the Linux driver. Why they (makers) keep all that documentation secret is a long debate. They claim to have their reasons. Microsoft, Apple, and Android makers probably have NDA signed prior to seeing any spec. -- Cheers, Carlos.
On 11/26/2021 20:51, Carlos E.R. wrote:
> On 26/11/2021 13.06, Dimiter_Popoff wrote: >> On 11/26/2021 12:27, Carlos E.R. wrote: >>> On 25/11/2021 19.40, Dimiter_Popoff wrote: >>>> I have been looking for some wifi chip(set) to be able to use in our >>>> systems and it has turned out it is impossible to get one which is >>>> documented in a way we could write our own driver so our tcp/ip >>>> stack under dps would treat it as yet another medium, like it does >>>> with Ethernet or via PPP and sort of. >>>> What I don't get is *why* do they keep things so secret? When wifi >>>> was starting there was some PRISM hardware which had been documented; >>>> at some point it was bought and *all* documentation was carefully >>>> made extinct. Now all you can buy are modules which will do the tcp/ip >>>> for you, you can only ask for a tcp connection *they* will make and >>>> maintain etc. >>>> Why is that, does anybody know? I am trying to understand the >>>> motivation >>>> of those who pull the strings to keep these data so secret, perhaps >>>> if I once understand it I can advance a step closer. I am really >>>> reluctant to spend a year of my life writing my firmware for >>>> some wifi radio (these can be bought), not least because I have better >>>> things to do with the active years I can hope to have left. >>> >>> Have a look at the Linux driver if it exists. They usually >>> reverse-engineer the needed specs. >>> >> >> These drivers are not open source, not for the part that matters. >> The reverse engineered part is available IIRC, but what I try to >> understand is *why* do they (and I) have to reverse engineer >> what the likes of microsoft and android makers have access to. > > The Linux drivers are open source (whether they are documented enough or > what you want, is another matter). > If the makers do their own closed source driver for Linux, that's their > driver, not the Linux driver.
All wifi chipsets I have seen - and I have probably looked at any maker over the years - are quite explicit they come with "drivers for windows, Linux" etc. These drivers are what talks to the firmware of course, which is what the secrecy is about.
> > Why they (makers) keep all that documentation secret is a long debate. > They claim to have their reasons. Microsoft, Apple, and Android makers > probably have NDA signed prior to seeing any spec. >
I have not seen any credible claim why they keep these data secret, they just won't talk about it. If it were just about an NDA.... A few months ago I got contacted by a rep of NXP for our region (another guy at NXP who sends me some errata sheets under NDA on a large power architecture processor of theirs had notified him of my interest, which I had expressed when NXP bought Marvel (it was Marvel, right?)). Being under NDA was no help at all. I offered to sign any sort of NDA, be responsible with decapitation or whatever - nothing. He got in touch with some asshole professor somewhere in France (I saw the latter check on our website, like he was equipped to be able to judge what we were...) and that was the end of the story. ====================================================== Dimiter Popoff, TGI http://www.tgi-sci.com ====================================================== http://www.flickr.com/photos/didi_tgi/
On 26/11/21 5:40 am, Dimiter_Popoff wrote:
> I have been looking for some wifi chip(set) to be able to use in our > systems and it has turned out it is impossible to get one which is > documented in a way we could write our own driver so our tcp/ip > stack under dps would treat it as yet another medium, like it does > with Ethernet or via PPP and sort of. > What I don't get is *why* do they keep things so secret? When wifi > was starting there was some PRISM hardware which had been documented; > at some point it was bought and *all* documentation was carefully > made extinct. Now all you can buy are modules which will do the tcp/ip > for you, you can only ask for a tcp connection *they* will make and > maintain etc. > Why is that, does anybody know? I am trying to understand the motivation > of those who pull the strings to keep these data so secret, perhaps > if I once understand it I can advance a step closer. I am really > reluctant to spend a year of my life writing my firmware for > some wifi radio (these can be bought), not least because I have better > things to do with the active years I can hope to have left.
I believe that there is a fair amount of trade secrecy in making WiFi chipsets, and they're trying to protect their advantages from other manufacturers. Broadcom has been a standout performer in the sekrit sauce club.
On 11/27/2021 0:25, Clifford Heath wrote:
> On 26/11/21 5:40 am, Dimiter_Popoff wrote: >> I have been looking for some wifi chip(set) to be able to use in our >> systems and it has turned out it is impossible to get one which is >> documented in a way we could write our own driver so our tcp/ip >> stack under dps would treat it as yet another medium, like it does >> with Ethernet or via PPP and sort of. >> What I don't get is *why* do they keep things so secret? When wifi >> was starting there was some PRISM hardware which had been documented; >> at some point it was bought and *all* documentation was carefully >> made extinct. Now all you can buy are modules which will do the tcp/ip >> for you, you can only ask for a tcp connection *they* will make and >> maintain etc. >> Why is that, does anybody know? I am trying to understand the motivation >> of those who pull the strings to keep these data so secret, perhaps >> if I once understand it I can advance a step closer. I am really >> reluctant to spend a year of my life writing my firmware for >> some wifi radio (these can be bought), not least because I have better >> things to do with the active years I can hope to have left. > > I believe that there is a fair amount of trade secrecy in making WiFi > chipsets, and they're trying to protect their advantages from other > manufacturers. Broadcom has been a standout performer in the sekrit > sauce club.
This is quite likely the case (being competitive), but the firmware command protocols?... I don't think it is possible they don't know each other's protocols, could well be they use the same or very similar ones. If they hide things from each other it will be in the dsp-ing parts and sort of, where they can get a performance advantage.
On 26/11/21 22:44, Dimiter_Popoff wrote:
> On 11/27/2021 0:25, Clifford Heath wrote: >> On 26/11/21 5:40 am, Dimiter_Popoff wrote: >>> I have been looking for some wifi chip(set) to be able to use in our >>> systems and it has turned out it is impossible to get one which is >>> documented in a way we could write our own driver so our tcp/ip >>> stack under dps would treat it as yet another medium, like it does >>> with Ethernet or via PPP and sort of. >>> What I don't get is *why* do they keep things so secret? When wifi >>> was starting there was some PRISM hardware which had been documented; >>> at some point it was bought and *all* documentation was carefully >>> made extinct. Now all you can buy are modules which will do the tcp/ip >>> for you, you can only ask for a tcp connection *they* will make and >>> maintain etc. >>> Why is that, does anybody know? I am trying to understand the motivation >>> of those who pull the strings to keep these data so secret, perhaps >>> if I once understand it I can advance a step closer. I am really >>> reluctant to spend a year of my life writing my firmware for >>> some wifi radio (these can be bought), not least because I have better >>> things to do with the active years I can hope to have left. >> >> I believe that there is a fair amount of trade secrecy in making WiFi >> chipsets, and they're trying to protect their advantages from other >> manufacturers. Broadcom has been a standout performer in the sekrit sauce club. > > This is quite likely the case (being competitive), but the firmware > command protocols?... I don't think it is possible they don't know > each other's protocols, could well be they use the same or very similar > ones. If they hide things from each other it will be in the dsp-ing > parts and sort of, where they can get a performance advantage.
There are other possibilities... Price and power consumption are important. Certainly in the wired interface arena a quarter of a century ago there was secret sauce in how you divided MAC and packet level processing between the various processors. Many unfortunate choices were made at that time. Then there's the possible issue that they don't want to let miscreants easily change RF parameters, since that would enable them to commit all sorts of RF sins. Security through obscurity is better than nothing, although maybe they use stronger techniques. Also, impeding reverse engineering allows them to have more leverage w.r.t. licencing their technology, especially if drivers are only issued in the form of big blobs of optimised code.
Dimiter_Popoff <dp@tgi-sci.com> wrote in news:snrdr4$bvs$1@dont-
email.me:

> I have not seen any credible claim why they keep these data secret, > they just won't talk about it. >
You're mumbling. Cisco Systems had a modem with hardware that ran under Linux. They had to release the source code. In that code are numerous settings that do not apply to the gear it gets put on. So a good bit of the "wifi API" must be in there. There may be many hardware specific hooks involved and it only works on their gear, but one could load it and tweak out settings on their router that were not previously available. Great routers too. It was called DD-WRT. There have since been numerous more: https://en.wikipedia.org/wiki/List_of_router_firmware_projects
DecadentLinuxUserNumeroUno@decadence.org wrote in news:sns494$1s25$1
@gioia.aioe.org:

> Cisco Systems had a modem with hardware that ran under Linux. >
Supposed to have written "router".
On 11/27/2021 1:45, Tom Gardner wrote:
> On 26/11/21 22:44, Dimiter_Popoff wrote: >> On 11/27/2021 0:25, Clifford Heath wrote: >>> On 26/11/21 5:40 am, Dimiter_Popoff wrote: >>>> I have been looking for some wifi chip(set) to be able to use in our >>>> systems and it has turned out it is impossible to get one which is >>>> documented in a way we could write our own driver so our tcp/ip >>>> stack under dps would treat it as yet another medium, like it does >>>> with Ethernet or via PPP and sort of. >>>> What I don't get is *why* do they keep things so secret? When wifi >>>> was starting there was some PRISM hardware which had been documented; >>>> at some point it was bought and *all* documentation was carefully >>>> made extinct. Now all you can buy are modules which will do the tcp/ip >>>> for you, you can only ask for a tcp connection *they* will make and >>>> maintain etc. >>>> Why is that, does anybody know? I am trying to understand the >>>> motivation >>>> of those who pull the strings to keep these data so secret, perhaps >>>> if I once understand it I can advance a step closer. I am really >>>> reluctant to spend a year of my life writing my firmware for >>>> some wifi radio (these can be bought), not least because I have better >>>> things to do with the active years I can hope to have left. >>> >>> I believe that there is a fair amount of trade secrecy in making WiFi >>> chipsets, and they're trying to protect their advantages from other >>> manufacturers. Broadcom has been a standout performer in the sekrit >>> sauce club. >> >> This is quite likely the case (being competitive), but the firmware >> command protocols?... I don't think it is possible they don't know >> each other's protocols, could well be they use the same or very similar >> ones. If they hide things from each other it will be in the dsp-ing >> parts and sort of, where they can get a performance advantage. > > There are other possibilities... > > Price and power consumption are important. Certainly in the > wired interface arena a quarter of a century ago there was > secret sauce in how you divided MAC and packet level processing > between the various processors. Many unfortunate choices were > made at that time.
The first Ethernet chip I used, the "SONIC" from NSC, introduced in the early 90-s (or was it late 80-s), was completely documented, never had to look beyond its datasheet to use it. The Motorola parts with MACs were were also documented as far as I have noticed (never used any of them). You must be talking about some other "world" (PC?) I am not familiar with, but in my world things were documented as usual.
> > Then there's the possible issue that they don't want to let > miscreants easily change RF parameters, since that would enable > them to commit all sorts of RF sins. Security through obscurity > is better than nothing, although maybe they use stronger > techniques.
This sounds like a credible excuse but it does not explain why also all the embedded wifi modules are so strict about not allowing you to do IP packets, you *must* go through their tcp/ip stack. Surely you cannot do any RF-evil by doing IP packets and being unable to tinker with the radio.
> > Also, impeding reverse engineering allows them to have more > leverage w.r.t. licencing their technology, especially if > drivers are only issued in the form of big blobs of optimised > code.
This can be some motivation for them but it still does not explain the "no IP packets" policy, which is the bizarre part of it all and which is likely driven by what drives the secrecy I am wondering about. And if we all can only speculate about the *why* obviously it is very very serious. ====================================================== Dimiter Popoff, TGI http://www.tgi-sci.com ====================================================== http://www.flickr.com/photos/didi_tgi/
On 27/11/21 03:51, Dimiter_Popoff wrote:
> On 11/27/2021 1:45, Tom Gardner wrote: >> On 26/11/21 22:44, Dimiter_Popoff wrote: >>> On 11/27/2021 0:25, Clifford Heath wrote: >>>> On 26/11/21 5:40 am, Dimiter_Popoff wrote: >>>>> I have been looking for some wifi chip(set) to be able to use in our >>>>> systems and it has turned out it is impossible to get one which is >>>>> documented in a way we could write our own driver so our tcp/ip >>>>> stack under dps would treat it as yet another medium, like it does >>>>> with Ethernet or via PPP and sort of. >>>>> What I don't get is *why* do they keep things so secret? When wifi >>>>> was starting there was some PRISM hardware which had been documented; >>>>> at some point it was bought and *all* documentation was carefully >>>>> made extinct. Now all you can buy are modules which will do the tcp/ip >>>>> for you, you can only ask for a tcp connection *they* will make and >>>>> maintain etc. >>>>> Why is that, does anybody know? I am trying to understand the motivation >>>>> of those who pull the strings to keep these data so secret, perhaps >>>>> if I once understand it I can advance a step closer. I am really >>>>> reluctant to spend a year of my life writing my firmware for >>>>> some wifi radio (these can be bought), not least because I have better >>>>> things to do with the active years I can hope to have left. >>>> >>>> I believe that there is a fair amount of trade secrecy in making WiFi >>>> chipsets, and they're trying to protect their advantages from other >>>> manufacturers. Broadcom has been a standout performer in the sekrit sauce club. >>> >>> This is quite likely the case (being competitive), but the firmware >>> command protocols?... I don't think it is possible they don't know >>> each other's protocols, could well be they use the same or very similar >>> ones. If they hide things from each other it will be in the dsp-ing >>> parts and sort of, where they can get a performance advantage. >> >> There are other possibilities... >> >> Price and power consumption are important. Certainly in the >> wired interface arena a quarter of a century ago there was >> secret sauce in how you divided MAC and packet level processing >> between the various processors. Many unfortunate choices were >> made at that time. > > The first Ethernet chip I used, the "SONIC" from NSC, introduced > in the early 90-s (or was it late 80-s), was completely documented, > never had to look beyond its datasheet to use it. The Motorola > parts with MACs were were also documented as far as I have > noticed (never used any of them). You must be talking about > some other "world" (PC?) I am not familiar with, but in my > world things were documented as usual.
I was thinking of workstation networking, and for more than ethernet. Back then it was a pre-Cambian explosion of technologies, 802.11 wasn't yet on the horizon, and XTP was a proposed replacement for TCP since it was wrongly believed that TCP limited userspace-to-userspace bandwidth. The limitation was poor implementations of the networking stack.
>> Then there's the possible issue that they don't want to let >> miscreants easily change RF parameters, since that would enable >> them to commit all sorts of RF sins. Security through obscurity >> is better than nothing, although maybe they use stronger >> techniques. > > This sounds like a credible excuse but it does not explain > why also all the embedded wifi modules are so strict about not > allowing you to do IP packets, you *must* go through their > tcp/ip stack. Surely you cannot do any RF-evil by doing > IP packets and being unable to tinker with the radio.
There might be other antisocial sins, e.g. DOS attacks, but these are only conceptions. A lot will depend on system partitioning and implementations. But it is only speculation.
>> Also, impeding reverse engineering allows them to have more >> leverage w.r.t. licencing their technology, especially if >> drivers are only issued in the form of big blobs of optimised >> code. > > This can be some motivation for them but it still does not > explain the "no IP packets" policy, which is the bizarre > part of it all and which is likely driven by what drives > the secrecy I am wondering about. And if we all can only > speculate about the *why* obviously it is very very serious.
It might also allow manufacturers to hide bugs and to re-partition functionality over time. A lot will depend on what interfaces they want to guarantee stable and correct over time. Is any of that a justification? No. But there might be some respectable reasons hidden in there.