Abstract:
A content server provides a browser of a client with encrypted content and with obfuscated browser-executable code for decrypting and displaying the content within the browser. Both the encrypted content and the obfuscated browser-executable code are generated based at least in part on an identity of the user requesting the content, and thus are different from encrypted content and obfuscated browser-executable code provided to other users. Further, in one embodiment the browser-executable code provided by the server changes periodically, such as weekly, thereby rendering ineffective any malicious software tools that obtain decrypted content by calling expected functions of the code. In one embodiment, the obfuscated browser-executable code for a user is pre-computed before that user makes a request for content.
Abstract:
Information about named entities referenced in an electronic book (ebook) is provided to a client device. An ebook identifier identifying the ebook is received from the client device. A set of layers available for use with the ebook is determined. The layers in the set provide information associated with the ebook and a layer in the set provides information associated with named entities referenced in content of the ebook. A content range identifying a range of content of the ebook for which layer information is requested and an identification of one or more of the layers in the set for which layer information is requested is received from the client device. Layer information associated with the ebook content identified by the content range for the identified layers is transmitted to the client device. The transmitted layer information includes information associated with named entities referenced by ebook content.
Abstract:
The functionality of an ereader module that is displaying an electronic book (“ebook”) is extended. A user identifier specifying a user using a client device executing the ereader module and an ebook identifier specifying the ebook displayed by the ereader module are received from the client device. One or more layers associated with the user are determined. One or more layers associated with the ebook are determined. A list of one or more layers is assembled. The layer list is transmitted to the client device. The client device enables the user to select a layer and use the selected layer to interact with content of the ebook.
Abstract:
The functionality of an ereader module that is displaying an electronic book (“ebook”) is extended. A user identifier specifying a user using a client device executing the ereader module and an ebook identifier specifying the ebook displayed by the ereader module are received from the client device. One or more layers associated with the user are determined. One or more layers associated with the ebook are determined. A list of one or more layers is assembled. The layer list is transmitted to the client device. The client device enables the user to select a layer and use the selected layer to interact with content of the ebook.
Abstract:
Information about named entities referenced in an electronic book (ebook) is provided to a client device. An ebook identifier identifying the ebook is received from the client device. A set of layers available for use with the ebook is determined. The layers in the set provide information associated with the ebook and a layer in the set provides information associated with named entities referenced in content of the ebook. A content range identifying a range of content of the ebook for which layer information is requested and an identification of one or more of the layers in the set for which layer information is requested is received from the client device. Layer information associated with the ebook content identified by the content range for the identified layers is transmitted to the client device. The transmitted layer information includes information associated with named entities referenced by ebook content.