A method comprising: detecting an active interface between a conditional access device, CAD, and a general purpose computer; launching an application previously stored on the CAD on the general purpose computer from the CAD via the active interface, wherein the application configures the general purpose computer to allow a user to interact with the application in order to subscribe to internet protocol television, IPTV, services, receive and interact with the IPTV services, decrypt and decode content provided by the IPTV services, display the content to the user, process user requests, and present options associated with the IPTV services to the user; requesting access to the IPTV services via a network using the general purpose computer, wherein the conditional access device and an IPTV service provider determine user access to the IPTV services via the network by using a trusted computing base, TCB, on the CAD and using a hierarchy of keys derived from root keys stored on the CAD; deriving a content decryption key using the hierarchy of keys; providing access to the IPTV services upon determining the user has access to the IPTV services by sending content decryption keys supplied by the TCB from the CAD to the application, wherein the application decrypts and decodes the IPTV services using the content decryption key, and processing and storage capability of the general purpose computer; receiving and processing remote control signals at and by the CAD, wherein the signals are requests or responses from the user interacting with the application; and displaying content requested by the user or indications of responses from the user. detecting an active interface between a conditional access device, CAD, and a general purpose computer; launching an application previously stored on the CAD on the general purpose computer from the CAD via the active interface, wherein the application configures the general purpose computer to allow a user to interact with the application in order to subscribe to internet protocol television, IPTV, services, receive and interact with the IPTV services, decrypt and decode content provided by the IPTV services, display the content to the user, process user requests, and present options associated with the IPTV services to the user; requesting access to the IPTV services via a network using the general purpose computer, wherein the conditional access device and an IPTV service provider determine user access to the IPTV services via the network by using a trusted computing base, TCB, on the CAD and using a hierarchy of keys derived from root keys stored on the CAD; deriving a content decryption key using the hierarchy of keys; providing access to the IPTV services upon determining the user has access to the IPTV services by sending content decryption keys supplied by the TCB from the CAD to the application, wherein the application decrypts and decodes the IPTV services using the content decryption key, and processing and storage capability of the general purpose computer; receiving and processing remote control signals at and by the CAD, wherein the signals are requests or responses from the user interacting with the application; and displaying content requested by the user or indications of responses from the user.