Jump to content


Photo

full ci+ support


  • Please log in to reply
342 replies to this topic

Re: full ci+ support #201 littlesat

  • PLi® Core member
  • 57,440 posts

+708
Excellent

Posted 11 April 2017 - 08:28

The tar file gets a removed by WanWizard if posted to the forum.

These sources were removed due to it contained a "stolen" CI+ license...


WaveFrontier 28.2E | 23.5E | 19.2E | 16E | 13E | 10/9E | 7E | 5E | 1W | 4/5W | 15W


Re: full ci+ support #202 adri

  • Senior Member
  • 373 posts

+5
Neutral

Posted 11 April 2017 - 12:19

At least PLi tries to stay within the legal limits. Contrary to e.g. VTi, who's images are 100% illegal.....

 

Staying within the legal limits for CI+ support means you have to implement the support, then submit your solution to the consortium for approval.

After approval, you will receive the legal certificates.

The approval seems to cost about €15000,- per receiver plus an annual fee.

And we all know, Open source linux receiver will have big problems confirming to the CI+ requirements to get approval.

 

Pick your poison?



Re: full ci+ support #203 WanWizard

  • PLi® Core member
  • 70,857 posts

+1,832
Excellent

Posted 11 April 2017 - 13:28

There is, as always, a grey area.

 

We can implement the support, and leave it at that. If you, as a user, want to submit the solution, fine. If you, as a user, want to steal borrow someone elses certificate and use it, entirely up to you. 

 

We provide the hammer, whether or not you use it to kill someone, is not our problem. There is nothing illegal about selling hammers... ;)


Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Ultimate (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)

Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.

Many answers to your question can be found in our new and improved wiki.


Re: full ci+ support #204 SpaceRat

  • Senior Member
  • 1,030 posts

+65
Good

Posted 11 April 2017 - 13:38

That reminds me of "For someone who only has a hammer in his toolbox, every problem looks like a nail." ... :)


1st box: Vu+ Ultimo 4k 4xDVB-S2 FBC / 2xDVB-C / 1.8 TB HDD / OpenATV 6.2
2nd box: Gigablue Quad 4k 2xDVB-S2 FBC / 2xDVB-C / 1.8 TB HDD / OpenATV 6.2
testing boxes: Vu+ Duo² + AX Quadbox HD2400 + 2x Vu+ Solo² + Octagon SF4008
Sats & Pay-TV: Astra 19.2°E + Hotbird 13°E with Redlight / SCT HD / SES Astra HD- / Sky V14 / 4th empire propaganda TV
Card-Server: Raspberry Pi + IPv6-capable oscam
Router: Linksys WRT1900ACS w/ LEDE + Fritz!Box 7390

Re: full ci+ support #205 WanWizard

  • PLi® Core member
  • 70,857 posts

+1,832
Excellent

Posted 11 April 2017 - 13:44

Yup, very true. But not applicable in this case. ;)


Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Ultimate (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)

Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.

Many answers to your question can be found in our new and improved wiki.


Re: full ci+ support #206 adri

  • Senior Member
  • 373 posts

+5
Neutral

Posted 11 April 2017 - 17:20

There is, as always, a grey area.

 

We can implement the support, and leave it at that. If you, as a user, want to submit the solution, fine. If you, as a user, want to steal borrow someone elses certificate and use it, entirely up to you. 

 

We provide the hammer, whether or not you use it to kill someone, is not our problem. There is nothing illegal about selling hammers... ;)

So all the necessary code and/or sources are already available from other implementations. :)

All you need to do is remove the embedded certificates and provide a means to supply them as an external resource.

But following this discussion, i get the impression even a relatively simple task like that isn't acceptable. :(


Edited by adri, 11 April 2017 - 17:21.


Re: full ci+ support #207 WanWizard

  • PLi® Core member
  • 70,857 posts

+1,832
Excellent

Posted 11 April 2017 - 17:25

The problem with the current code is that is is manufacturer specific, so that doesn't help much.

 

Not only needs the embedded certificate be removed and a config file solution implemented, but also the code has to be made generic so it can support all manufaturers. Which is what our CI+ API does (it only needs the specific driver API for all manufacturers implemented, which need to be reverse engineered if the code for that manufacturer is not public).

 

So you get: your CI+ module -> CI+ "cam" -> Enigma CI+ API -> hardware abstraction -> hardware drivers.

 

Oh, and it needs someone with the time, will and C++ knowledge to do it. Which isn't me, my last compile of a C program was 30 years ago, using Turbo C. ;)


Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Ultimate (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)

Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.

Many answers to your question can be found in our new and improved wiki.


Re: full ci+ support #208 Dimitrij

  • PLi® Core member
  • 10,379 posts

+354
Excellent

Posted 11 April 2017 - 17:40


 

So you get: your CI+ module -> CI+ "cam" -> Enigma CI+ API -> hardware abstraction -> hardware drivers.

This will never happen.


GigaBlue UHD Quad 4K /Lunix3-4K/Duo 4K


Re: full ci+ support #209 WanWizard

  • PLi® Core member
  • 70,857 posts

+1,832
Excellent

Posted 11 April 2017 - 17:53

And why not?

 

The work is already 80% or 90% done, the existing code needs to be changed to make it a generic cam-type binary (i.e. don't talk directly to the drivers, but talk to the Enigma API that is already finished), and the IO controls for currently non-supported hardware (DMM, VU+, etc) need to be added.

 

Not that much work for someone with a bit of coding experience.


Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Ultimate (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)

Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.

Many answers to your question can be found in our new and improved wiki.


Re: full ci+ support #210 Lost in Space

  • Senior Member
  • 876 posts

+69
Good

Posted 11 April 2017 - 18:30

Maybe we should simply listen when babsy98 says which vendors are just using a simple ioctl as DMM does to tell the encoder that they pass an AES encrypted pid (and tracing the ioctl number they use is a 10 min job even if the code is non-public and they don't use the 137 as DMM does).

 

I'm pretty sue that when HE makes such a statement he is not talking nonsense. But I'm repeating myself ...

 

What is more (off course only intellectually) interesting is why VU does it different and how ...


Edited by gutemine, 11 April 2017 - 18:31.


Re: full ci+ support #211 babsy98

  • Senior Member
  • 166 posts

+18
Neutral

Posted 11 April 2017 - 19:18

this is allready done only 3 vendors use different solution all other use same way as dm



Re: full ci+ support #212 betacentauri

  • PLi® Core member
  • 7,185 posts

+323
Excellent

Posted 11 April 2017 - 19:20

I can only say that the dream code(the one in the tar file which was attached here in the thread) don't work on a et8500. It's not the iotcl. It's I guess a driver bug. One of the poll calls don't work. The driver don't tell the software that it wants more data(epollout).
Fixing it is not very difficult, but you see that it might need more workarounds for different manufacturers...
(E2 with patch don't have this problem as e2 only uses poll if there is a queue with data).
Xtrend ET-9200, ET-8000, ET-10000, OpenPliPC on Ubuntu 12.04

Re: full ci+ support #213 Lost in Space

  • Senior Member
  • 876 posts

+69
Good

Posted 11 April 2017 - 19:33

That's why I said take the missing res_*.c and forget about your great ci plus message interface and you will be done in a few hours ...

 

The dreamciplus code is just using his own main loop and epoll because their core is closed, so there is no other way to do it for them.

 

But as babsy98 said then you have a working solution for 80% of the manufacturers ...

 

I spend weeks to build AutoPin Plugin to overcome all the inherent limitations that it causes ... 

 

The only interesting piece is the res_content_ctrl.c which can build the cert chain and using it when asked, and this reads nicely external certificate files too.


Edited by gutemine, 11 April 2017 - 19:38.


Re: full ci+ support #214 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 11 April 2017 - 19:49

@babsy98, The solution you are mentioning is not public yet! No enigma2 team published that code, why?

Solution 1. Vu+ using streamguru ciplus stack!!!, private, E2 changes

Solution 2. GB using binary helper, no E2 changes

Solution 3. Mut@nt using binary helper, two flavors, one requires the E2 helper interface, the other, newer, no E2 changes

Solution 4. Dream CI Plus, public (requires registration in a forum), no E2 changes, only some python for more that one slot.

Solution 5. Duckbox Developers libdvbci, based on 4, public in github, E2 changes

Solution 6. Universal CI+, based on 4, private patch, E2 changes

Solution 7. Linux CI+ (non STB), uses openssl, based on 4, private, non E2 solution


Seems dream ci plus inspired several people to create a solution using that code.

I really wonder what SW uses the solution 7, vdr? tvheadend? minisatip?

Edited by athoik, 11 April 2017 - 19:53.

Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: full ci+ support #215 Lost in Space

  • Senior Member
  • 876 posts

+69
Good

Posted 11 April 2017 - 19:52

ask the developer - he asked in NN2 board where the sources are if I remember correctly  ...

 

the dreamciplus sources compiles nicely on an Intel PC, so if you add the aes in software decryption as suggested further up in the thread you can easily get a working solution there too ... as CPU power is no issue on a PC ...

 

To be honest I think even the dream solution is based on the libdvbci code from Duckbox git, because despite switching from C++ to C, the interrestinmg pice of the sources is almost 98% identical, hence it is also pretty simple to switch them back to C++ They even replicated some bugs from there.


Edited by gutemine, 11 April 2017 - 19:56.


Re: full ci+ support #216 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 11 April 2017 - 20:09

Also seen that code: https://github.com/j...vb/libci/ciplus

Seems like an early development, but has many interesting comments!
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: full ci+ support #217 Lost in Space

  • Senior Member
  • 876 posts

+69
Good

Posted 11 April 2017 - 20:19

Look I only had to read the ugly code from dreamciplus to see how the authentification and MMI interface works, so that I could enable e2 to handle such virtual modules via AutoPin Plugin  (because the ci interface is completely removed from e2 and only recently there was a fake fifo device added to make e2 directly aware of the module name, which made parts of AutoPin obsolete on Open* Images).

 

I will NOT start reading and comparing even more code, as nobody is listening and for me it has no added value.

 

I only spent some more time when the camd socket interface was added to the dreamciplus solution (for whatever reason) and suddenly the dreamciplus also worked on Open* Images, then I was so kind to make AutoPin work on Open* Images, only to find out that your socket interface is outdated and not able to handle multiple connections which produced even more workarounds. because there was no willingness to fix that either


Edited by gutemine, 11 April 2017 - 20:20.


Re: full ci+ support #218 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 11 April 2017 - 20:25

I tried to fix socket interface once.. https://github.com/O...nigma2/pull/438

Anyway you are the only to understand that code, but all the others cannot understand you. What a strange situation ;)

Edited by athoik, 11 April 2017 - 20:26.

Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: full ci+ support #219 Lost in Space

  • Senior Member
  • 876 posts

+69
Good

Posted 11 April 2017 - 21:28

Regarding the SocketMMI.py OpenATV was so kind to check into their git my suggested compatibility changes with the optional slot=0 parameter to be at least API compatible on the python side. But this still doesn't solve the problem that internally the old socketmmi.so that you use supports only one connection ... but this is another story ...

 

I didn't say that only I understand the code, but at least I have looked into it - some comments here are simply proving the opposite - like embedded certificates, or binary blob, etc.

 

You added the ciplus message interface already so that some closed source helpers on some boxes are able to work with you image, which is understandable, but if you want a complete and comprehensive solution this is a strange way to hope that now somebody will create an open source helper implementation for this one.

 

But we are circling here the building instead of entering it. Most of the good meant advice was already given by myself and others ... you can now act .... or wait for others ...


Edited by gutemine, 11 April 2017 - 21:30.


Re: full ci+ support #220 SpaceRat

  • Senior Member
  • 1,030 posts

+65
Good

Posted 12 April 2017 - 09:38

Regarding the SocketMMI.py OpenATV was so kind to check into their git my suggested compatibility changes with the optional slot=0 parameter to be at least API compatible on the python side. But this still doesn't solve the problem that internally the old socketmmi.so that you use supports only one connection ... but this is another story ...

What would we need to change? :)
1st box: Vu+ Ultimo 4k 4xDVB-S2 FBC / 2xDVB-C / 1.8 TB HDD / OpenATV 6.2
2nd box: Gigablue Quad 4k 2xDVB-S2 FBC / 2xDVB-C / 1.8 TB HDD / OpenATV 6.2
testing boxes: Vu+ Duo² + AX Quadbox HD2400 + 2x Vu+ Solo² + Octagon SF4008
Sats & Pay-TV: Astra 19.2°E + Hotbird 13°E with Redlight / SCT HD / SES Astra HD- / Sky V14 / 4th empire propaganda TV
Card-Server: Raspberry Pi + IPv6-capable oscam
Router: Linksys WRT1900ACS w/ LEDE + Fritz!Box 7390


3 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users


    Bing (1)