Abstract:
Methods for ad-hoc trust establishment using visual verification are described. In a first embodiment, a visual representation of a shared data is generated on two or more devices and the visual representations generated can be visually compared by a user. This method can be used to verify that the correct devices are involved in a negotiation, when pre-existing trust relationships do not exist between the devices. The visual representation may, for example, comprise a picture with a number of different elements, each representing a part of the shared data. In another embodiment, a method of secure key exchange is described in which, before sharing the keys, the parties exchange information which encapsulates the key. This information can be used subsequently to check that a party has not changed the key that they are using and prevents a man in the middle attack.
Abstract:
A method of executing embedded system applications is disclosed. In an embodiment, an embedded system stores a software application for processing data collected by the embedded system and/or for controlling the embedded system. The embedded system transmits the application to a nearby computing device. The computing device executes the application using its own processing capability. The application contains instructions which, when executed, cause the computing device to interact with the embedded system. This may result in the computing device controlling the embedded system or in data being downloaded from the embedded system and processed by the computing device.
Abstract:
Provided is ad-hoc creation of groups based on contextual information comprising. Two mechanisms are used to restrict valid members of a group. First, to make sure that devices are somehow related, devices provide contextual information that is compared to the contextual information provided by other devices willing to join the group. Only devices providing “similar” contextual information are accepted as possible candidates in the group. Second, to scope the group, a time window is used to limit the duration of the group creation. In other words, access to the group is reserved to the devices that can provide similar context information to existing member of the group in a defined time window. Security properties are ensured by enabling a visual check of the list of group participants. For instance, a member can verify that the displayed pictures indeed represent the attendees of an ongoing meeting.
Abstract:
The disclosure describes a method for programming applications for embedded systems such as sensor nodes. In an embodiment, this comprises writing embedded system applications in a high-level language such as C# or Java using a software development framework which includes a set of tools and class libraries. The class libraries contain pre-written code to carry out tasks which may be required of an embedded system. The class libraries may be extended following identification of a need for a particular function in an embedded system. Developed applications may be subsequently stored on the embedded system but executed on a gateway computing device which interacts with the embedded system. This means that the application(s) can be executed without requiring the presence of a virtual execution system located on the embedded system while allowing a high-level programming model for application programmers.
Abstract:
Cognitive radio adaptation is employed in WSNs to reduce effects of RF interference. Communication channel quality is assessed locally at each node. Using beacons to propagate channel quality and node related information among the nodes of the network, channel adaptation decision is made either centrally by identifying a channel that is optimum for a majority of nodes through a tree-structure dissemination (Majority Voting Scheme) or in a distributed manner by identifying a channel where maximum interference for any node is less than maximum interference on the other channels (Veto Voting Scheme). If two channels have the same level of maximal interference, the channel with a lesser number is chosen. Channel quality assessment may be optimized based on expected interference type and/or statistical methods.
Abstract:
A stream processing execution engine evaluates development-time performance characteristic estimates in combination with run-time parameters to schedule execution of stream processing software components in a stack of a stream processing application that satisfy a defined performance criterion in a heterogeneous hardware device. A stream processing application includes a stack of interdependent stream processing software components. A stream processing execution engine evaluates one or more performance characteristics of multiple computational resources in the heterogeneous hardware device. Each performance characteristic is associated with performance of a computational resource in executing a computational-resource-dependent instance of a stream processing software component. The stream processing execution engine schedules within the run-time environment a computational resource on which to execute a computational-resource-dependent instance of one of the stream processing software components. The computational-resource-dependent instance is targeted for execution on the computational resource that satisfies a performance policy attributed to the stream processing software component.
Abstract:
A framework capable of providing transparent handling of network traffic in close proximity networks such as home networks is provided. A single virtual network interface is exposed to users/applications on connected devices. A virtual network interface manager determines available physical network interfaces and switches to a different physical network interface or a different configuration on the same physical network interface in a transparent manner to the communicating application(s). This enables the framework to optimize network communications for the communicating applications, devices, and users based on predefined criteria, application requirements such as different data throughput, or changing environment conditions such as interference. Network communication operations are also simplified for users since they are no longer required to have the necessary knowledge for configuring physical network interfaces manually in response to changing conditions.
Abstract:
A framework capable of providing transparent handling of network traffic in close proximity networks such as home networks is provided. A single virtual network interface is exposed to users/applications on connected devices. A virtual network interface manager determines available physical network interfaces and switches to a different physical network interface or a different configuration on the same physical network interface in a transparent manner to the communicating application(s). This enables the framework to optimize network communications for the communicating applications, devices, and users based on predefined criteria, application requirements such as different data throughput, or changing environment conditions such as interference. Network communication operations are also simplified for users since they are no longer required to have the necessary knowledge for configuring physical network interfaces manually in response to changing conditions.
Abstract:
Architecture for exposing a virtual private network of peer devices into the public domain via an overlay network. Computing devices, peripheral devices, as well as mobile devices can be physically distributed, but appear to belong to the same virtual private (or home) network, and be accessible from anywhere. Benefits include access to user media/documents from anywhere, searching of all connected devices from one location, multicast and broadcast connectivity, management of the private network and the associated policies, and device discovery on the private network from across public networks. P2P networks and ad-hoc networks can be exposed as a virtual interface, as well as the utilization of client operating systems to create the virtual network, grouping, graphing, the integration with relay services and other NAT/firewall traversal schemes, and the creation of a P2P overlay manager on a physical NIC (network interface card) address rather than a virtual address.
Abstract:
Among other things, one or more techniques and/or systems are provided for controlling resource access for background tasks. For example, a background task created by an application may utilize a resource (e.g., CPU cycles, bandwidth usage, etc.) by consuming resource allotment units from an application resource pool. Once the application resource pool is exhausted, the background task is generally restricted from utilizing the resource. However, the background task may also utilize global resource allotment units from a global resource pool shared by a plurality of applications to access the resource. Once the global resource pool is exhausted, unless the background task is a guaranteed background task which can consume resources regardless of resource allotment states of resource pools, the background task may be restricted from utilizing the resource until global resource allotment units within the global resource pool and/or resource allotment units within the application resource pool are replenished.