Skype 5-way Calling Limit Cracked
BobPaul writes "It turns out when Skype limited 10 way calling to Intel Processors only it really was arbitrary! Maxxus has a patched version of Skype that allows 10-way calling regardless of the processor installed. There's also info about the patch: "The patch is the result of two phases: code analysis and design of the patch. The code analysis, or reverse engineering, reveals the relevant code block, which overrides Skype's limitation for Intel's dual-core CPUs. The patch design isolates the minimal set of instructions that need to be modified to cancel this limitation." Windows only so far."
I think this shows this was done on purpose to lock out amd users. A lawsuit by amd should be succesfull.
200GB/2TB $7.95 Coupon: SAVE90DOLLAR
Ah, Maxxuss. Is there anything you can't do? First you crack OS X, now Skype. You and DVD Jon should team up and become some sort of cracking superheros.
Since this limit was "arbitrary", that means the only deciding factor was not technology, but money. I wonder how much the block cost Intel?
And now that it's in the open, (like that was going to take very long?) I wonder if they'll remove the block?
I work for the Department of Redundancy Department.
..is someone demonstrating that the X2 can in fact handle 9+1 persons at once, which I have no doubt it can. Then it's time for Intel to open up the wallet and give AMD some nice $$$ and some even nicer PR. Stand by to bend over!
I know what you all are thinking. Great! He hacked it with three bytes, and showed his work. Now all AMD needs to do is get a 10-way conference call going on an X2 and they'll have another strike in their lawsuit against intel.
But wait -- there is a way out. See the code is written to identify CPUs, and to run on dual core CPUs, but it doesn't make that distinction for AMD. So all the defense needs to do is set up an XP box running an AMD 1.4 GhZ "Firebird", next to some oily rags, get a 10-way conference call going, and simulate a CPU heatsink failure. Clearly they were blocking AMD 10-way calls out of product liability concerns.
Skype made a lot of noise in their press release saying that the 10-way feature was "optimized" for Intel chips. This was picked up by the media of course as well as evidence of AMD's poor performance.
I'm having trouble understanding what this optimization that used the special features of Intel chips (presumably their high power) was. It looks from the patch that they just check who the manufacturer is, and if it is not AMD, they pretend your computer doesn't have the power to host 10 participants.
What's also interesting is that folks likely signed up for SkypeOut and other paid products not realizing that they would be treated differently depending on what chipsets they happen to use, especially as that choice matters almost no where else. They should give more warning about this to paid users.
This focus on locking software into specific vendor chips seems a dangerous one. No longer will it be the best chip that will win, but the focus goes to competing on locking up software applications. The proprietary unix'es went down that path, and it would be sad if Intel managed to get that to happen here.
Yeah right.. I'm gonna' d/l this patch and app from www.silo.ru (in Russia!!!), they even say on their aite that that "There is no virus or backdoor added!". You've got to be kidding me!
Will we see transcripts from depositions done by AMD?
I'd bet that they will be as funny as some of the SCO transcripts.
I'd bet that they will depose the programmer who wrote the code encryption and the GenuineIntel check, and then continue with his supervisors.
Who authorized to add code encryption?
Who approved it?
How were the limits to 5 or 10 concurrent connections determined?
Anybody know anything about their encrypted binary? I can't figure out what they were trying to achieve with that. Some sort of misguided anti-hax0r protection? Or perhaps they're trying to conceal something...
So what is now limiting the conference calls to 10 people now? Is that a phone company limit, or another arbitrary limit?
Religion for nerds. Stuff that really matters
The software doesn't make a call to the registry or other software settings. The software makes a call to the hard coded cpuid. To get around that, need to a) hack the processor; or b) hack the software making the call.
The drop from 64 bit to 32 bit is one thing, however, in this case, the Skype code specifically queried the hardware for the GenuineIntel. If I remember this correctly from another /. post (not mine)
The opcode used in Skype, when activated on the processor, sets 3 4-byte registers on the processor as an identifier. This is burned into the silicon, basically.
For Intel Chips, the registers become
Genu, ineI, ntel - Genuine Intel
For AMD:
Auth, enti, cAMD - Authentic AMD
Like I said, since it's burned into the chip, there's no real way of 'masking' those registers as something else. This crack skips the verification, basically telling Skype that 'any processor is cool to run 10way' as opposed 'only GeniuneIntel chips can run 10way'
BitTorrent Mirror here
>I get a free Disney toy with my Happy Meal
The difference is that Skype is getting paid to make sure their software does NOT work fully with a competitor to Intel. That's a whole different ball game as far as the law is concerned. If this was 'Buy Skype and get a X% off of your next Intel Purchase' no one would give it a second thought. They're not making it BETTER on Intel, they're making it WORSE on AMD. This is very different.
(if this post is redundant it might be because I have to wait no less than 15 minutes in order to post it -- I wish this system could take into account the moderation of my earlier anonymous posts. But maybe that's patented? :-\)
Or, so as not to break other programs that use cpuid (to determine which instructions they can run, for example) perhaps this could be done in a user-space way.
I'm thinking of artsdp as a model, so you would just launch your Skype client with something like "cpufake --cpuid='Genuine Intel Dual Core We Like Skype' skype.bin" (or whatever it's called.)
I've got no idea how such a program would work, but the article did say the code was encrypted so I wonder if that would be an issue.
Just goes to show why we need open protocols and open code for the future of VOIP. It's too important to leave to a single company, which is why I prefer SIP and clients like Google Talk and Gizmo where possible.
utility is not the point. the point is to stick it to the unctuous twits who crippled their product and lied about the reason.
how many pairs of boxer shorts should you own?
Unless Skype's playing reflector for the whole conference, each peer's connectivity limits what you can/can't do.
:-)
At 128kbps (the average upstream speed on broadband these days in the US...), you can typically host a four to six way voice conference or a 2-3 way video conference. This is because you have to provide the outbound traffic for each of the peers and control traffic. With a reflector system, you can host larger conferences, limited only by the inbound bandwidth because the reflector is flipping the traffic from your mic (and possibly camera...) to all the participants. However, that's REALLY bandwidth intensive, so to keep it economical, you'd probably limit it to 10 participants or so to limit hogging of that limited resource.
Now, this is all due to everything being unicast UDP. If we had IPv6 and Multicast support for the same available, one could handle at least up to the 10 without needing a reflector as the router infrastructure would handle it right along with the video on demand, etc. streams. However, since this is not likely to happen in our or several generations' lifetimes at the rates things are going, waiting or wishing for that is a waste of time.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
Considering that SIPPhone already HAS voice conference calls of at least 10 or more, works with ANY SIP enabled device that's not crippled to a single provider (Vonage devices come immediately to mind...), and costs nothing for VoIP calls- I'd say, skip Skype all together, especially after this little stunt.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
It was a made-up limit? No kidding.
Remember folks; Asterisk. Skype isn't open source, and the company behind it has it's own motives. Asterisk is open source, has a good community behind it, and can do *anything* you want it to. Regardless of the hardware behind it.
Mod me down with all of your hatred and your journey towards the dark side will be complete!
Being in a company who worked exclusively on Intel and nVidia chips until recently, it is possible to have horrible performance when switching to AMD and ATI. In our case, we didn't use any nVidia specific GL calls. As for SS2, it is supported on both platform so in theory it shouldn't be an issue. The reality is, unless you are making a game and using what I'd call "game-oriented opengl calls", the performance is going to vary a LOT between ATI and nVidia. Don't believe the hype of these companies when they say that they support full OpenGL. Some either have very bad hardware for 2d ops with OpenGL or literally do software "decelleration". Benchmarks have shown speed dropping as much as 200% in some areas. As for AMD and Intel, after patching the executable, the performance was different, sometimes in favor of Intel, sometimes on AMD.
With that being said, no platform specific instructions or features were used. I suspect the Skype guys may have simply used Intel machines for so long and never bothered using AMD machines for development and then were too lazy to simply rewrite some of the code so that it runs normally on AMD. This happens especially when you write tight assembly loops by taking into account instruction latencies for one processor and then realize the performance sucks on another platform. You then have the choice, rewrite it so that the performance is similar, or slap a OPTIMIZED FOR INTEL on the box.
Thankfully we rewrote.
Of interest here is also the code marked with (*). It reveals that the string is somehow used if a certain memory location has the value 4. Theory is, this 4 means "4 additional conference members";
Is that possible that by modifying some variables...we can have unlimited number of user in the conference?
This sounds an awful lot like the type of code built by Intel's compilers, for which they're being sued by AMD. Is it possible Skype is using that very compiler, and just couldn't figure out how to make it work on AMD machines (presumably pre-lawsuit)?
Mods: Do you disagree with me? Go ahead and mod me down. Meta-mods will sort it out. Good luck!
This is a case of DMCA IP Protection being abused for trade protection rights Intel bought and paid for and AMD did not.
Sherman Anti-trust aside (which this may be a real material breach) it looks like DMCA could either get abridged or affirmed for trade control purposes. For instance, does this mean someone with an Oracle license has the right to use some delta patches to open it wider open on their AMD Opteron for better threading than Intel?
Hmmm... you see how the lines get to be less than black and white.
http://www.aisnota.com/slashdot/ Welcome to Logic and the Future
In other words, he found the problem then fixed it. Forgive my ignorance, but how else would you possibly go about it? Apply random patches until one kind of works?
Dewey, what part of this looks like authorities should be involved?
Spoiled kids. When I was young, an occasional 3-way was enough.
The Skype software has been preset to only accept Intel's chips as having the performance necessary to host conference calls of more than five people, the representative said.
If that was said by a representative from Intel then that statement quite qualifies as misrepresenting a competing product. Comparison is perfectly fine, misrepresentation is definitely not and Intel should be forced to compensate for it.
Can't you get the OS to look through the code before it's executed and replace the offending instruction with a simulated version, like they do to workaround the pentium f00f bug?
I am trolling
Sound software typically is optimized quite well for both company's offerings, esp. if you don't use special features of the other brand. To be sure, there's edge cases where you need that- but Skype's NOT one of them nor is there evidence that there's the degredation you claim happened with your app experience. (Not to mention that there's tons of other P2P VoIP applications that use SIP and Jabber technology that work as good or better than Skype, and there's other commercial proprietary systems (such as Eyeball Networks' stuff...) that DOES handle up to 10 people (or more as bandwidth will allow...) without needing a dual core anything, let alone an Intel one.)
This is plain and simple being bought to support one over the other. Please don't try to defend this- it's not something that has much of any good explanation for this, especially considering that they actually DO appear to be just CPUIDing and crippling the app if it's not a dual core Intel CPU...
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
Come on. The idea behind declaring a company a monopoly is that consumer choice is limited because of collusion and anti-competitve behavior. In this case, there is some potential to support the idea that Intel and Sykpe may have colluded to create an artificial barrier that is anti-competitive. As a result, it limits consumer choice. When that barrier is arbitrary and is not based on the merrits of the product, for example that AMD chips really don't have some sort of defect that limit the number of telephone calls down to five while an Intel dual core allows up to ten phone calls at the same time, that is anti-competitive. Worse, is when it limits consumer choice and in a business sense, forces a business to adopt a chip that they might not otherwise buy, that is where the issues start to come into play. Merely stating that you don't buy the chip is a straw man arguement. The protections against monopolies where put in to protect the consumer. When companies and monopolies collude, the consumer looses. AMD is outselling their chips -- they can't make them fast enough. Intel might feel threatened, but that is by no means a reason for them to engage in anti-competetive behavior. Also, it is interesting to note that Intel and AMD have agreements for them to coperate together in the development of the x86 instruction set. But Intel doesn't play nice. Intel stopped cooperating with AMD when AMD started to outshine them. It took a judge to order Intel to play nice. Now that AMD is winning the x86-64 game, and has a better server chip, has integrated memory controllers (although Intel does have DDR2 memory, and their mobile chips are about par) people are paying attention to AMD. And an AMD chip is cheaper than an Intel chip. So forcing a company that wants to use the features of Syke or any software to use a particular chip for an arbitarary reason (and Intel verse AMD is arbitarary for the most part) is anti-competitive IF there was any undue influence on the part of the chip maker. If Intel paid any amount of money or applied any pressure that makes the whole arbitarary restriction very illegal and would probably result in an FTC investigation.
The views expressed are mine own and do not express the views of my employer.
There is no bribe here, it's a business agreement. Happens AL THE TIME in business. One business says to the other, "If you make your product exclusive to my product, I'll pay you some money". This is n ot called a "bribe". Get your facts straight.
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
Skype didn't break any laws, and no one (except /.ers) said they did. It's their software and if they want to intentionally limit their customer based they are more than welcome to do so.
The reason this issue is important is that it seems likely Intel went to Skype, and in some way coerced/bribed them to do this. This could be extremely strong evidence in helping AMD with their current lawsuit against Intel. Hence AMD issuing a subpoena to Skype, to retrieve information that will show whether or not Intel is to blame for this limitation.
It's silly to hear people saying AMD should sue Skype. AMD doesn't care about skype, nor are they trying to run a huge campaign of lawsuits. They are only interested in forcing Intel to stop their current tactics which have arguably kept AMD from massive success in the OEM market.
Big ones, small ones, some as big as yer 'ead!
Give 'em a twist, a flick o' the wrist...
The rules change slightly when you've got a near-monopoly. This is part of what tripped up Microsoft in their anti-trust trials.
The problem is that it's far easier to convince someone to exclude "the competition" from the market when the competition has a disproportionately small portion of the market.
For the ease of math, let's say that the Skype market is 90% Intel, 10%AMD. If Intel had to pay Skype 10million to compensate Skype for the lost market in excluding AMD then AMD would have to pay 90million to get Skype to do the same thing. Add to that the fact that Intel has 10x as much income from their larger market share (presuming the same gross profit margin -- which is rarely accurate in a near-monopoly situation) and you have a 90-1 difference in impact on their profit margins.
Or - - to put it another way, between gross profits and market share, Intel could afford to buy off 100 market slots for every one that AMD could afford to.
If it came to open warfare like this, AMD would be reduced to a tiny portion of the market and customers would be effectively unable to even find business that deal with AMD. (Dell anyone?). Once you further reduced AMD's market share like this, Intel's ability to further marginalize them would increase until AMD was reduced to an insignificant market access independent of the relative quality of their products.
It's basically a market-ratio squared relationship which can easily spiral into a near-absolute market ownership, denying customers any real choice in the market no matter how good the competition is. (MS/Linux, anybody?)
It's actually a worse than ratio squared relationship because we haven't taken into account the probability that, if Intel has a 100-1 ratio of market-exclusionary agreements, they can now charge a higher profit margin without significantly affecting customers' willingness to buy AMD. That, however is harder to quantitize, so I'll only mention it, rather than including it in my math.
About the only real way to avoid this problem is to create artificial rules designed to stop such market-killing agreements when the market gets too lopsided, to prevent market choice from getting totally destroyed.
Free Software: Like love, it grows best when given away.
In this case, I would say "get a life." Honestly, getting hot and bothered because "Skype tried to blow smoke up our arses" sounds like childish foot stamping. Show your displeasure with Skype by not using their product, spend your valuble time (it is, right?) doing something productive rather than reactive. By the way, all this frothing and arm waiving will accomplish nothing at all, it's wasted energy. Move on to some other VoIP app in the secure knowledge that due to their greed, Skype will soon be dead. Or part of some spyware package...
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
bribe
n.
1. Something, such as money or a favor, offered or given to a person in a position of trust to influence that person's views or conduct.
2. Something serving to influence or persuade.
If you hold monopoly status in the market (which is what AMD is alledging) then making a deal that locks potential competitors out of the market violates antitrust rules.
Then you might as well just go write your own patcher. Hell, he told you *exactly* what to do in the article.
More likely its in a server exterior to the US so some judge-with-a-god-complex can't just rip the server down at a request from the people who run Skype. Injunctions are like candy these days.
I wonder what your reaction would be if microsoft announced they believe Intel's CPUs aren't powerfull enough to run Vista in all its glory. So if it detects an Intel CPU, you can only open 2 windows at a time. It's microsoft's product, so their free to market it as they like. So either you don't buy Vista which has previously informed you about this limitation (there are plenty of alternatives), or you throw away your Dell... How about if Oracle started thinking the same way and limited the conections to their DB buy CPUID (just so people don't exclude MS for their monopoly)? With all do respect, it isn't so funny now, General 8883 sir, is it? :)
One thing I also haven't seen pointed out yet is this: Let's say that AMD's CPUs really can't handle 10 conferences at the same time. How can skype guarantee that this will be the case six months down the road. Determining the CPU's capabilities by its manufacturer is lame...
Maybe you should go and *read* the DMCA. It specifically allows reverse engineering for compatibility reasons.
Oh well, what the hell...
It would lose sales for them, though.
:(
Exactly. So, why would skype want to make such a move if it obviously would lose sales from it also? If Intel has a hand in this, I don't see how it is legal for Intel and skype to make a deal that would make AMD and/or other CPUs look bad when they most likely can handle the conferences. Or if not, they can probably 'catch up' with Intel really quick. I don't know how the law works in the USA exactly and IANAL, but this sort of defamation is illegal in Europe (I don't know how much this is relevant to this situation). It's one thing to add value to skype when you buy Intel (optimize it for intel CPUs) and another thing to remove value when you buy AMD (remove features it probably is capable of handling), ultimately making AMD look bad unfairly.
I could be sort of ok with this if it was a QoS thing, but if it was, it shouldn't have been implemented by checking for the chips manufacturer and th user should be given the opportunity to "use at his own risk". At least skype should have announced the feature Intel's CPUs have AMD lacks. I think this is a dangerous road to go down. Imagine a future where you would choose the programs you run based on the manufacturer of the CPU you use. Even worse, imagine the deadlocks where you need to run 2 programs that favor different manufacturers. The worst part being that the 'obsticales' are completely artificial. And the competition wouldn't be on each cpu's merits, but on the manufacturer's connections.
I think an xp2000 should be enable to push 10 streams via vnware.
I mean, wtf is supposed to take the cpu power?
An xp 2000 can compress mp3 in 10 times realtime, for example. Plus in a conference call, you actually send THE SAME to everybody...
Mixing audio is quasi cpu free (with less than 50 channels or so)
Sending data over the net is nearly cpu-free.
So what needs a dual core cpu for 10 connections?
I would understand that for VIDEO streaming, but its simply inconcievable for audio...
HI O WISE PRINCE. WHT TOOK U SO DAM LONG?
The requirement is that the Intel chip returns a 'GenuineIntel' signature, which, if the chip IS an Intel chip, any Intel chip (at least since they introduced such ID signatures on chips) should be every single Intel chip. So yes, it pretty much is AMD they're locking out. It should be interesting to see how this revelation pans out in court with AMD already pressing charges to this effect, this article should be all the evidence they really need, although the courts have done weirder things in the past. I hope that such evidence as presented here is allowed into court.
This is really a form of product tying, which was made illegal by the Sherman Antitrust Act (1890), but only if a non-trivial amount of business is affected by the tying. This last requirement will likely be the reason the suit isn't successful, but that certainly dosn't mean that the behavior isn't borderline, at best.
Again, this isn't a compatibility issue, as you said, "Why should Skype have to write software to work on AMD?" The real question is "Why should Skype be allowed to artificially exclude AMD users in exchange for money from AMD's competitor?"
As far as I know, that was actually hashed out in Sega v. Accolade, where Sega was trying to prevent unlicensed cartridges by requiring software to contain the trademark "SEGA" and to write it at a specific hardware register (the infamous TMSS or "trademark security system"). The court found that it was legal for Accolade to include the TMSS for the purposes of making their own code work on the system, as the TMSS was initally intended to help fight counterfeiters (by counterfeiting such a cartridge, it would display the "SEGA" mark that shows up before all games on a Genesis 2 or 3).
For more indepth information, read Sega v. Accolade.
FC Closer
Has anyone tested whether Skype allows 10-way conference calls on any of the Macs powered by the Intel Core Duo?
It's not fraud. Get your facts and definitions correct. Talking like a lawyer does not make you a lawyer.
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
f00f bug workarounds don't scan the binary for the invalid instruction, they do tricks with the exception handler so that a page fault (or some other error) will occur, at which point you can generate the correct exception rather than locking up.
Do you even lift?
These aren't the 'roids you're looking for.
There is no lawsuit vs Skype. AMD has an ongoing anti-trust lawsuit vs Intel, and they subpoenaed Skype to find evidence that Intel had Skype put in the pointless restriction. Many other companies have already been similarly subpoenaed including most major PC manufacturers.
This is a sig. There are many others like it, but this one is mine.
You can get all the other data from the CPUID instruction as well (by using other values than 0 in EAX on the call). However the interpretation of the resulting values does indeed depend on if your processor is an Intel or an AMD (or something else, for that matter).
The Tao of math: The numbers you can count are not the real numbers.