Patent classifications
G06F21/101
Protecting a software program against tampering
In a general aspect, a method of protecting a software program against tampering can include: executing, by a processor of a user device, an executable code of the software program, the executable code comprising integrity check code sections; during execution of one of the integrity check code sections of the executable code, computing by the processor an integrity check result applied to a code segment of the executable code; transmitting by the processor to a server a message containing the integrity check result and an identifier of the code segment; and when the integrity check result does not correspond to a reference result for the code segment of a genuine version of the software program, receiving by the processor from the server a signal that prevents an operation of the software program from being executed by the processor.
MODULAR SYSTEMS AND METHODS FOR SELECTIVELY ENABLING CLOUD-BASED ASSISTIVE TECHNOLOGIES
Systems and methods are disclosed for manually and programmatically remediating websites to thereby facilitate website navigation by people with diverse abilities. For example, an administrator portal is provided for simplified, form-based creation and deployment of remediation code, and a machine learning system is utilized to create and suggest remediations based on past remediation history. Voice command systems and portable document format (PDF) remediation techniques are also provided for improving the accessibility of such websites.
CODE OBFUSCATION AND UNIQUE INSTANCES
Obfuscation transforms original code into an obfuscated code that is less intelligible, but behaves like the original. In one embodiment, a code representation obtained by applying a code template to input data is given to a code host that selects a location for the code representation and returns a reference. The reference can be used to replace the data and thus may be used for code obfuscation. The original code may not be required or modified. In another embodiment, a method is described that receives requests, either from a human or a device, and provides unique executable obfuscated instances along with unique data files.
Apparatus and method for preventing cloning of code
An apparatus and corresponding method for preventing cloning of code. The apparatus includes a memory, an authentication module, and a device. The memory is configured to store the code, which includes unencrypted code and a fragment of encrypted code. The authentication module is configured to receive and decrypt the fragment of encrypted code from the memory into a fragment of decrypted code, and to store the fragment of decrypted code in an authentication module buffer. The device configured to execute the unencrypted code from the memory and to execute the fragment of decrypted code from the authentication module buffer, wherein the fragment of encrypted code is personalized to the device.
Modular systems and methods for selectively enabling cloud-based assistive technologies
Systems and methods are disclosed for manually and programmatically remediating websites to thereby facilitate website navigation by people with diverse abilities. For example, an administrator portal is provided for simplified, form-based creation and deployment of remediation code, and a machine learning system is utilized to create and suggest remediations based on past remediation history. Voice command systems and portable document format (PDF) remediation techniques are also provided for improving the accessibility of such websites.
PRODUCT ORDER MANAGEMENT
Apparatuses, methods, systems, and program products are disclosed for product order management. An apparatus includes a processor and a memory that stores code executable by the processor. The code is executable by the processor to receive an order for a product from a consumer. The order has a temporal element that begins upon delivery of the product. The code is executable by the processor to receive a notification that the product is delivered to the consumer. The code is executable by the processor to begin the temporal element of the order in response to receiving the delivery notification.
Server-side audio rendering licensing
A content server system is provided that includes at least one processor configured to store a user account for a user at a content server of the content server system that is configured to serve server-side rendered content to a client computing device of the user. Audio is played out via a sound output device associated with the client computing device. The at least one processor is further configured to determine a licensing identifier associated with a device of the user or the user account of the user, send the licensing identifier to a third-party licensing server device, receive an indication that an active license is associated with the licensing identifier, determine that the user is authorized to access a digital rights managed audio rendering software, and cause audio of the server-side rendered content to be rendered using audio rendering algorithms of the digital rights managed audio rendering software.
Modular systems and methods for selectively enabling cloud-based assistive technologies
Systems and methods are disclosed for manually and programmatically remediating websites to thereby facilitate website navigation by people with diverse abilities. For example, an administrator portal is provided for simplified, form-based creation and deployment of remediation code, and a machine learning system is utilized to create and suggest remediations based on past remediation history. Voice command systems and portable document format (PDF) remediation techniques are also provided for improving the accessibility of such websites.
Secure software updates
Improved techniques to update software in electronic devices that are already in use are disclosed. In one embodiment, software can be updated in a secure and controlled manner using cryptography. The authenticity of the updated software as well as its appropriateness for the particular electronic device can be confirmed prior to update. The software can also be updated on a per module basis. In one embodiment, a server hosts software updates for various electronic devices, and supplies the appropriate software update to the electronic devices via a data network.
Non-Fungible Tokens with Enhanced Metadata
An example embodiment may involve, based on input from an entity, defining, by a computing system, a non-fungible token (NFT) that is associated with metadata representing a value and an expiry time that defines when the NFT expires, wherein the NFT incorporates smart contract functionality to emit an event when the NFT expires, and wherein the NFT is usable by its holder to modify behavior of a software application; submitting, by the computing system, the NFT as an entry proposed for addition to a cryptographically-immutable distributed database; receiving, by the computing system, confirmation that the entry has been added to the cryptographically-immutable distributed database; and listening, by the computing system, for the event, wherein firing of the event causes the value associated with the NFT to be transferred to the entity.