Abstract:
The security of block cipher counter mode of operation can be improved, and stream ciphers can be converted to a "block-like" (stateless) mode of operation, by using a modified key which is a fixed secret key (K) combined with a varying random non-secret byte sequence (J) with same size as the keysize of key K. In accordance with various embodiments, the modified key can be generated by XORing the fixed secret key with a varying random sequence that is newly generated for each plaintext message. Alternatively, the fixed secret key can be modified with a variable, non-secret initialization vector and used with stream ciphers. In still another embodiment, the key and sequence are concatenated and passed through a mask generation function.
Abstract:
A communications manager provides communication services for an activity-based collaboration system, in which data change requests comprising deltas are communicated over a network between network-capable devices. The communications manager is operable on a local network capable device for sending locally-generated deltas over the network to at least one remote network-capable device and for receiving remotely-generated deltas over the network from the at least one remote network-capable device. The communications manager can send the deltas via unicasting, muticasting, or broadcasting techniques. The communications manager is responsive to network connection status information indicating that the remote network-capable device is connected to the network for sending the local deltas directly to an address for the remote network-capable device. A presence mechanism maintains and distributes, on request, the network connection status information, which it acquires from each of the network-capable devices. The communications manager is also responsive to the network connection status information indicating that the remote network-capable device is disconnected from the network for sending the local deltas to an address of a relay. The relay stores deltas until the relay is notified that the remote network-capable device has reconnected to the network, and then the relay sends the deltas to the reconnected remote network-capable device.
Abstract:
A distributed, activity-based collaboration system can employ a data change request priority scheme for determining an order of execution of data change requests in effecting changes to local copies of data so as to optimize data consistency for collaborative activities. The data change request priority scheme can entail encoding sequence number information and dependency information in the data change requests, responsive to which data changes can be made, unmade and remade to the data.
Abstract:
An in-memory storage manager represents XML-compliant documents as a collection of objects in memory. The collection of objects allows the storage manager to manipulate the document, or parts of the document with a consistent interface and to provide for features that are not available in conventional XML documents, such as element attributes with types other than text and documents that contain binary rather than text information. In addition, in the storage manager, the XML-compliant document is associated with a schema document which defines the arrangement of the document elements and attibutes. The schema data associated with a document can contain a mapping between document elements and program code to be associated with each element. The storage manager further has methods for retrieving the code from the element tag. The retrieved code can then be invoked using attributes and content from the associated element and the element then acts like a conventional object. Further, the storage manager allows real-time access by separate process operating in different contexts. The objects that are used to represent the document are constructed from common code found locally in each process. In addition, the data in the objects is also stored in memory local to each process. The local memories are synchronized by means of a distributed memory system that continually equates the data copies of the same element in different processes. Client-specified collections are managed by a separate collection manager. The collection manager maintains a data structure called a "waffle" that represents the XML data structures in tabular form. A record set engine that is driven by user commands propagates a set of updates for a collection to the collection manager. Based on those updates, the collection manager updates index structures and may notify waffle users via the notification system.
Abstract:
A component manager receives requests for component updates from a variety of sources, parses the requests and extracts URL information that identifies the location of a file containing the component resources. The component manager presents the URL to a download manager that asynchronously retrieves the component resources from the specified location and places the file in a staging area. Once the component resources have been downloaded, an install manager, also operating asynchronously from the component manager and the download manager, installs the component update.
Abstract:
A connection between a secure shared space and an external system is created with a connector tool. The connector tool code is included in an independent agent called a "bot" that is created by a software developer. Bots run in the background in an automated and unattended manner in a specialized enterprise integration server. Each bot has a unique identity and runs under an account assigned to the enterprise integration server. A bot can be invited to a shared space much as another collaborator. Bots can also invite others to shared spaces. All bots running in the enterprise integration server are administered by a centralized administrative control. This allows account and identity policies to be established and global behaviors, including authentication settings, startup options and scope to be determined centrally. The centralized control allows simple installation, configuration and deployment and administrative control of bot operation and access. It also allows for logging and monitoring of system behavior.
Abstract:
A communications manager provides communication services for an activity-based collaboration system, in which data change requests comprising deltas are communicated over a network between network-capable devices. The communications manager is operable on a local network capable device for sending locally-generated deltas over the network to at least one remote network-capable device and for receiving remotely-generated deltas over the network from the at least one remote network-capable device. The communications manager can send the deltas via unicasting, muticasting, or broadcasting techniques. The communications manager is responsive to network connection status information indicating that the remote network-capable device is connected to the network for sending the local deltas directly to an address for the remote network-capable device. A presence mechanism maintains and distributes, on request, the network connection status information, which it acquires from each of the network-capable devices. The communications manager is also responsive to the network connection status information indicating that the remote network-capable device is disconnected from the network for sending the local deltas to an address of a relay. The relay stores deltas until the relay is notified that the remote network-capable device has reconnected to the network, and then the relay sends the deltas to the reconnected remote network-capable device.
Abstract:
A distributed, activity-based collaboration system can employ a data change request priority scheme for determining an order of execution of data change requests in effecting changes to local copies of data so as to optimize data consistency for collaborative activities. The data change request priority scheme can entail encoding sequence number information and dependency information in the data change requests, responsive to which data changes can be made, unmade and remade to the data.
Abstract:
A connection between a secure shared space and an external system is created with a connector tool. The connector tool code is included in an independent agent called a "bot" that is created by a software developer. Bots run in the background in an automated and unattended manner in a specialized enterprise integration server. Each bot has a unique identity and runs under an account assigned to the enterprise integration server. A bot can be invited to a shared space much as another collaborator. Bots can also invite others to shared spaces. All bots running in the enterprise integration server are administered by a centralized administrative control. This allows account and identity policies to be established and global behaviors, including authentication settings, startup options and scope to be determined centrally. The centralized control allows simple installation, configuration and deployment and administrative control of bot operation and access. It also allows for logging and monitoring of system behavior.
Abstract:
Different levels of security are provided in a security system so that users can decide the security level of their own communications. Users can choose a low level of security and maintain the security overhead as low as possible. Alternatively, they can choose higher levels of security with attendant increases in security overhead. The different levels of security are created by the use of one or more of two keys: an encryption key is used to encrypt plaintext data in a delta and a message authentication key is used to authenticate and insure integrity of the data. Two keys are used to avoid re-encrypting the encrypted data for each member of the telescape. In one embodiment, the security level is determined when a telespace is created and remains fixed through out the life of the telespace. For a telespace, the security level may range from no security at all to security between the members of the telespace and outsiders to security between pairs of members of the telespace. In another embodiment, subgroups called "tribes" can be formed within a telespace and each tribe adopts the security level of the telespace in which it resides.