CSA Brute Force

K2TSET

Registered
Messages
125
Still have the idea that a CSA BF in 10 sec would change a lot :)

Just wanted to know if there are any new findings or idea to the CSA Brute Force which can reduce the key space lower than 2^48?

As far I know you still need
56 rounds of BC
32 rounds of SC init and
12 rounds of SC run could be stopped if result are wrong (easy in software hard in hardware if fully unrolled / pipeline core on fpga are used)

I'm aware of RBT, but I doubt a c8 for 10 sec will tell you what to search for. This problem point back to normal BF approach.

It's possible to do a complete 2^48 BF search in about 12 hours on 1 FPGA, but to reach 10 sec. you will need about 4500 chips = not possible.

Come with your great ideas :)
 

MickeEst

Registered
Messages
68
I think that it is better to make tool first that bruteforce CSA in recordings, not live-tv. Because one can record any encrypted signal with interesting show or movie and then decrypt it later. It's not so critical anymore, how long it takes to decrypt these recordings.
 

K2TSET

Registered
Messages
125
I think that it is better to make tool first that bruteforce CSA in recordings, not live-tv. Because one can record any encrypted signal with interesting show or movie and then decrypt it later. It's not so critical anymore, how long it takes to decrypt these recordings.

Sure it has to work on recordings first, you will also have to use recording (buffer) on live since a full search will lets say now take 12 hours this will make an average on 6 hours if you transfer that to 10 sec in average you will have 20 sec to a full search.

So if you have a buffer on a few minutes you might be lucky to have an average on 10 sec for each search.

For full recording you might be able to get a CW list from someone who did a CW logging of a valid card.

The live approach are the interesting goal so you can zap around :)
 

K2TSET

Registered
Messages
125
We do look for 00 00 01 as shown here with 2 different payloads

Test with key from 00 00 00 00 00 00 to FF FF FF FF FF FF
You should get a hit on 11 22 33 44 55 66

 

kebien

Registered
Messages
1,329
In practice,you do not have 10 seconds,I believe.

As soon as the new ECM packet comes in,the control words is used instantly.But there are two keys in packet,odd and even in buffer.
If takes you 8 seconds to BF the key,you'd only be able to watch video for 2 seconds,then black screen for the next 8 seconds until you find the next key.
This would push you to delay/buffer the video if the idea is to watch live.
I understand what you are looking after.
Tables so far proved to be the fastest so far.
 

K2TSET

Registered
Messages
125
In practice,you do not have 10 seconds,I believe.

As soon as the new ECM packet comes in,the control words is used instantly.But there are two keys in packet,odd and even in buffer.
If takes you 8 seconds to BF the key,you'd only be able to watch video for 2 seconds,then black screen for the next 8 seconds until you find the next key.
This would push you to delay/buffer the video if the idea is to watch live.
I understand what you are looking after.
Tables so far proved to be the fastest so far.

I agree you will need at least 10 sec buffer of the payload since you do not decode the ECM, but 10 sec black after a zap could be accepted :)

So the tables you refer to, will they be RBT based on c8?
I doubt you will find enough stuffing bytes in 10 sec packet to use it but I might be wrong, please explain what kind of tables you have in mind?
 

C0der

Registered
Messages
267
Interesting thought experiment.
My opinion:
Is there a weakness in CSA to find the CW any "easy" way these days? Very unlikely.

Maybe given vast amounts of computing power there is a small chance with some advanced automatic code-breaking or artificial intelligence someday.
There has been some advances in that area in the past, but I guess will will take about another 10 years or so.
 

kebien

Registered
Messages
1,329
So the tables you refer to, will they be RBT based on c8?
I doubt you will find enough stuffing bytes in 10 sec packet to use it but I might be wrong, please explain what kind of tables you have in mind?

yes,RBT I reffer to.
And also true you cannot find good enough C8 in that little time.
Specially since the new C8 will be in sync with new ECM packet,now you have 2 things to find,a C8 and after that the key.

I remember in a paper that said the CSA device is not using all bits of the CW to decrypt the video.(of the actual key,not the checksums)
If that is also true then will reduce the BF time.
Maybe starting by assessing how true this is,may help.
We are talking about long shots,right?

I agree with Coder we are not fast enough yet to do any of that... but in the next 10 years an implementation of CSA v3 might be is use with 128-bit key and will become impossible again
 

K2TSET

Registered
Messages
125
yes,RBT I reffer to.
And also true you cannot find good enough C8 in that little time.
Specially since the new C8 will be in sync with new ECM packet,now you have 2 things to find,a C8 and after that the key.

I remember in a paper that said the CSA device is not using all bits of the CW to decrypt the video.(of the actual key,not the checksums)
If that is also true then will reduce the BF time.
Maybe starting by assessing how true this is,may help.
We are talking about long shots,right?

I agree with Coder we are not fast enough yet to do any of that... but in the next 10 years an implementation of CSA v3 might be is use with 128-bit key and will become impossible again

I agree not an easy way, but still it's worth to look for new ideas.

I doubt that some of the bit are not used from the CW.
I have made a more detailed image of CSA part we do look at



If we do look on the BC you will see how each of the rounds takes 8 bit from the CW.
In the next image you see 4 rounds of BC where KK are the 8 bits coming and use as input for the s-box which are an 8x8 (256) LUT



Not sure how you will have some bit not used?

It might be a bit different on the SC (here are 2 rounds)

 
Last edited by a moderator:

kebien

Registered
Messages
1,329
The notes about not all bits were used came up many years ago,when they started VOD on dishnet.
VOD use a single session key for each event,and at the time,some keys were used that didn't exactly match,but both worked..a bit difference.Once was bruteforced and one was taken from the stream.
The theory was around not all bits were meaningful.
But again,it was only a theory,or maybe was a fluke (encoder problem?),an oddity.
VOD works the same today as it did back then,but who knows if the oddity can be reproduced.
I wish I could point an idea regarding this experiment,but have seen many that tried to accomplish the same without a favorable outcome.
As processor power grows over the years,so grow the chances to make it happen
 

C0der

Registered
Messages
267
I agree with Coder we are not fast enough yet to do any of that... but in the next 10 years an implementation of CSA v3 might be is use with 128-bit key and will become impossible again
Yeah, maybe.

But the main thing is not so much speed alone but the basic idea of approaching any attempt, I think.
 

zayden

Registered
Messages
61
How do you know you have the right key before returning it to the decoder since many keys will satisfy the checksums ?
 

kebien

Registered
Messages
1,329
Going by what happens in enigma 2,for example,when checksums are ok,the CA device takes the key,but just won't decode properly,and you'd have no video.
The idea of BF to verify the key is to check the decrypted packet for known fixed bytes.If those are not present is a bad decrypt,not the correct key.
You never know if you have the correct key until this point.
 

K2TSET

Registered
Messages
125
How do you know you have the right key before returning it to the decoder since many keys will satisfy the checksums ?

Basic you you grab 2 or 3 blocks where the start bit are set in
the encrypted payload.

Do BF on the first and look for one with result 00 00 01 then you check the forund CW on block 2 and 3 and if they gives 00 00 01 as well you properly have a valid CW.

If you look on my first image you will see 2 rows of inputs and outputs of SC and BC this it from 2 different blocks which both end up in 00 00 01 when XOR together :D
 

zayden

Registered
Messages
61
That makes perfect sense thanks for clearing it up. The image comes up blurry on my mobile so couldn't make out the print.
 

K2TSET

Registered
Messages
125
One small shortcut I did find on the BC while back are like this:

Due to we do have 2 chksum in the cw and it's like a low 3+1 and a high cw 3+1 (total 6+2) it's very logic to divide them as 2 counters a CW low and a CW high each of 2^24.

If you look at the image below you will see BC ONLY use the green part of the CW for the first 4 rounds.

This does mean you only need to the first 4 rounds each time the blue counter starts over, this will reduce the BC time to a factor 52/56



Different study show that the BC are the one taking absolute moste time/space when doing BF.

I recall someone did an analyse of the Cudabiss and found the time for threads of the BC vs SC are like 100:1.

Also on FPGA the absolute resource killer are the BC and in there it's the S-box killing resource/performance.

On FPGA Permutation does not exist (it's just wires)

BC does take the 64 bit payload in at top and then you will do all the combination of CW to get 64 bit out in the bottom (we only need 24bit)

So here comes an idea (not tested yet)

Since each block of 8 rounds do XOR on the CW first with 06 then later with 05 etc. We could have 7 different S-box tables (where the Xor are included) this will save a litle bit of computation time.

But if we to a lookup table with input of 00 00 00 00 00 00 00 00 and go over the complete CW space 2^48 (huge table on a SSD drive)

Could it then be possible "just" xor the CW with the input payload to have the CW to give the result for the input payload?
 

K2TSET

Registered
Messages
125
I remember in a paper that said the CSA device is not using all bits of the CW to decrypt the video.(of the actual key,not the checksums)
If that is also true then will reduce the BF time.
Maybe starting by assessing how true this is,may help.
We are talking about long shots,right?

I have been thinking about this for a while and been looking over the algo many times and can't see how it should be posible to eliminate some bits of the CW.

I did look through a lot of CW list to see if I coud see some bit's not used, but they all seam to be used now and then.

So I just found a pdf called "Securing digital video. Techniques for DRM and Content Protection"
which says on page 108

On behalf of DVB, a group of international experts defined the DVB Common
Scrambling Algorithm (DVB-CSA) used to protect content. DVB-CSA uses a
40-bit key Control Word.5 DVB-CSA’s crypto period can vary from 10 to 120 s.

5 In fact, DVB-CSA used a 56-bit key with only 40 bits of entropy. This was to comply with
limiting regulations. Due to the short lifetime of the key, it is assumed to be long enough. A new
version called CSA V2 uses the full range of 56 bits. A newer version CSA V3, using a 128 bit
key, should be deployed in the coming years [217].

So if this is true then it might be the case that public transmission have to stick to this rule with 40 bit if using CSA1 even the CSA algo does support 64 bit.

Could someone do a CW log of a public channel and post the cw log?

I could be so simple that they do not use every 8th bit
 

kebien

Registered
Messages
1,329
Yeah,I think that's the paper I've read it from many years ago.
Isn't a shame nobody took the time to address all this things 15 years ago so future research has some grounds to go on?
It is uncertain they don't use all the bits,until someone start investigating.
 

dale_para_bajo

Registered
Messages
646
Imagine we ALL find a way to make our own money. No more work. spend money without limits, right.

Well that fantasy will end fast as something big will then show up. New Monetary system issue. Bank may close, war, Who knows?

Well if you guys render CSA useless what you guys will expect will happen! Full FREE TV watch for everyone. Or the end of Pay TV base of CSA as we know. Surely no more hack as we know.
 

kebien

Registered
Messages
1,329
dale para abajo
Why would you think they developed CSA v3 with 128 bits keys for? they know computer power moves fast past today's limits.

At the same time,your statement is true since the first day there was a software implementation of CSA (freedec).
At the time,a breakthrough,and a warning for security companies.

All you are saying is well known,and eventually everything phase out.
The point is you can learn something in the process,which might be invaluable.
As an example.....
you can use nagra 2 cards to open any encryption (irdeto,viaccess,cryptoworks,powervu,others),since you can modify codespace to your needs,and use embedded algos as needed.
Like that,many things are "proof of concept",not useful for most users,but you learn tons of things in the process.

This is the same,even knowing it possibly gets nowhere,the process teach you things you cannot learn otherwise.

The irony is people that had no interest in doing it,if there are some real results,they take advantage of the work of others,naturally.
 
Top