US20140283136A1 - Systems and methods for securing and locating computing devices - Google Patents
Systems and methods for securing and locating computing devices Download PDFInfo
- Publication number
- US20140283136A1 US20140283136A1 US14/210,397 US201414210397A US2014283136A1 US 20140283136 A1 US20140283136 A1 US 20140283136A1 US 201414210397 A US201414210397 A US 201414210397A US 2014283136 A1 US2014283136 A1 US 2014283136A1
- Authority
- US
- United States
- Prior art keywords
- user
- location
- user device
- devices
- environment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/01—Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
- G01S5/012—Identifying whether indoors or outdoors
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/01—Determining conditions which influence positioning, e.g. radio environment, state of motion or energy consumption
- G01S5/017—Detecting state or type of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/107—Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2111—Location-sensitive, e.g. geographical location, GPS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/63—Location-dependent; Proximity-dependent
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/006—Locating users or terminals or network equipment for network management purposes, e.g. mobility management with additional information processing, e.g. for direction or speed determination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Definitions
- the present invention is in the technical field of computer security. More particularly, the present invention is in the technical field of identifying a computing device and/or the user of such a device using credentials stored on an authentication token and/or based on the location of the computing device.
- Securing a device may include authenticating a user's credentials.
- An additional element of security may be added based on the location of the device. For example, a user of a device may be able to authenticate on the device, but may not get access to certain files unless the device is in a certain location. Similarly, a user may be able to authenticate on the device, but may be prohibited from accessing certain applications while in a certain location (e.g. prohibited from texting while in a car).
- Embodiments provide a plurality of beacons in the environment, wherein each beacon emits a localization signal.
- a system receives data derived from a localization signal from a user device and determines the initial location of a user device within the environment based on the localization signal.
- a plurality of devices are also located within the environment, each of which may provide user interaction.
- a first user interaction is provided via a first device, where the first device is selected from the plurality based on an initial location of the user device.
- An updated location of the user device is determined, and a second user interaction is provided via a second device, where the second device is selected from the plurality based on the updated location of the user device.
- Embodiments also operate by providing multiple user devices, each of which emits and receives localization signals.
- Each device may include a display, a receiver, and an emitter. At least some devices also include a modification system which modifies the display of the device based on localization signals received from other devices.
- Tracking user devices may also enable additional applications for the user devices. For example, location information may be used for gathering input for customer analytics, enabling the user devices to behave as universal remotes, and enhancing multiplayer games.
- FIG. 1 depicts certain components of a system that may be utilized in providing a secure device.
- FIG. 2 depicts a workflow for securing a computing system based on the presence of users of a group of users.
- FIG. 3 depicts a workflow for securing a computing system based on a user authenticated on a computing device in proximity to the computing system.
- FIG. 4 depicts a workflow for securing a device.
- FIG. 5 depicts a workflow for identifying the location of a computing device.
- a platform for tracking the location of a user device may be useful for enhancing the security of the user device and other computing systems. Additionally, the location information derived from such a platform may permit additional functionality for the user device, the other computing systems or both.
- methods and systems of a platform for tracking a user device may comprise a network 114 , one or more user devices 102 A-C in an environment 120 and enabled to communicate via the network 114 , a locator enabled to communicate via the network 114 , and a computing system 162 enabled to communicate via the network 114 and to determine the location in the environment of the one or more user devices 102 A-C.
- the locator may be a location beacon 160 enabled to receive presence information, such as a high frequency sound created by a user device 102 A.
- the locator may be a transmitter 130 enabled to send presence information, such as a high frequency sound to be received by a user device 102 A, B, and/or C.
- the locator may be a plurality of locators.
- the user device 102 A, B, and/or C may be a mobile device, such as a tablet, a mobile phone or a laptop.
- the user device 102 A, B, and/or C may comprise a processor 164 , a memory 168 , an application 138 , a microphone 144 , a speaker 142 , a display 154 , a data 148 , a screen lock facility 104 , a credential processing facility 110 , an authentication token reading facility 108 , a device location monitor 132 and an IR remote control facility 150 .
- the computing system 162 may be a server, a workstation, a desktop, a laptop, a missile launching facility, a testing facility, a mobile device, a vehicle system and/or some other computing system.
- the network 114 may be one or more of a LAN, a wireless network, a wired network, and the like.
- the present invention includes a system for securing the screen lock of a device using credentials stored on an authentication token.
- the present disclosure may provide greater security than just password protection in the respect that users of a device may be required to authenticate with an external authentication token before the device allows the users to access the screen lock.
- This disclosure may increase the security of a mobile device by preventing access to the device screen lock. This may be accomplished using an external authentication token. Said tokens may provide a greater level of security by increasing the number of possible unlock combinations. For instance, a challenging password to remember may be 10 characters long, for example. By comparison, authentication tokens may provide passwords of 256 characters or longer.
- An example of such an authentication token is a Common Access Card (CAC).
- Another example of such an authentication token is a Personal Identity Verification card, such as a card implementing NIST standard FIPS 201 .
- a device 102 A may comprise a screen lock facility 104 , an authentication token reading facility 108 and a credential processing facility 110 .
- devices 102 B and C may also comprise such facilities and components as device 102 A, and devices 102 B and C may also communicate with the same items as described in relation to device 102 A although such specific facilities, components, and communications may not be shown.
- devices 102 A, B, and/or C may be employed as appropriate.
- the device 102 A, B and/or C may be a mobile device, such as a mobile phone, a smartphone, a tablet, a laptop or some other device.
- the operating system 104 may be Android, bada, BlackBerry OS, iOS, Series40, Symbian OS, Windows Phone or some other operating system. Such operating systems may support built-in screen lock facilities.
- the screen lock facility 104 may require user authentication (e.g. by providing PIN, or by requiring the user to swipe to unlock, etc.) in order to authenticate the user.
- a custom screen lock facility 104 may be implemented as software widget that replaces or otherwise overrides the operating system's built-in screen lock facility 104 .
- the screen lock facility 104 may be implemented either as an accessory application, or the screen lock facility 104 may implement code for directly controlling the native screen locking functions.
- the screen lock facility 104 may use OptioCore code to implement a screen lock for an Android device.
- a user may be required to authenticate on the device 102 A, B and/or C using an external authentication token 112 in order to access the screen lock facility 104 on the device 102 A, B and/or C.
- the user may also be required to authenticate on the device 102 A, B and/or C using an external authentication token 112 in order to decrypt a root file system on the device 102 A, B and/or C, and/or to use an operating system on the device 102 A, B and/or C.
- the credential processing facility 110 may instruct the user of the device 102 A, B and/or C to provide authentication information via the authentication token reading facility 108 .
- the authentication token reading facility 108 may read authentication information from a physical device.
- the information may be an authentication token 112 .
- the authentication token 112 may be stored on a Common Access Card, Personal Identity Verification card (e.g. a card implementing NIST standard FIPS 201 ), a smartcard, a USB token, a SD card, a key fob, or some other physical device.
- the authentication token 112 may be a cryptographic key, such as a public key certificate, a digital signature, biometric data, a user id, or some other authentication information.
- the authentication token reading facility 108 may be an external device connected to the device 102 A, B and/or C.
- the authentication token reading facility 108 may be configured to communicate with the device 102 A, B and/or C via a communications medium, such as Bluetooth, near field communication (“NFC”), Wi-Fi, or other wired or wireless communications medium.
- a communications medium such as Bluetooth, near field communication (“NFC”), Wi-Fi, or other wired or wireless communications medium.
- the authentication token reading facility 108 may be a smartcard reader connected to the device 102 A, B and/or C via Bluetooth.
- the device 102 A, B and/or C may be enabled to connect to a network 114 .
- authenticating the user on the device 102 A, B and/or C may include communicating first, second, and third authentication data over a short-range wireless signal between the device 102 A, B and/or C and an in-location access point, wherein the second authentication data from the device 102 A, B and/or C is based on the first authentication data from the in-location access point and the third authentication data from the in-location access point is based on the second authentication data; communicating a fourth authentication data between the mobile device and a web-based information system, wherein the fourth authentication data comprises at least a portion of at least one of the first, second, and third authentication data; and authenticating access to network accessible content by the mobile device with the web-based information system.
- the first authentication data may be the authentication token 112 data.
- the web-based information system may be a proxy 118 .
- the authentication token reading facility 108 associated with the device 102 A, B and/or C may receive the authentication token 112 via NFC, send the second authentication data to the in-location access point via Bluetooth heartbeat messages, receive the third authentication data as responses to the Bluetooth heartbeat messages, send a request to a web proxy 118 that includes the third authentication data (e.g. in the form of hypertext transport protocol (HTTP) request with such data in the HTTP headers, for example), and receive access to the device if the proxy 118 determines that the user is authorized, based on the third authentication data.
- HTTP hypertext transport protocol
- the credential processing facility 110 may determine whether the authentication token 112 data is valid and whether the user is permitted to access the screen lock facility 104 , based on the user provided authentication token 112 .
- Credential processing may include local or distributed processing, using processing and storage capabilities of the authentication token device 112 or using remote (e.g., server-based) processing capabilities.
- the device 102 A, B and/or C may present the user with the unlock screen and prompt the user for a password and/or PIN.
- the credential processing facility 110 may prevent the device 102 A, B and/or C from presenting the user with the unlock screen. In some embodiments, the credential processing facility 110 could erase part or all of the data stored on the device 102 A, B and/or C upon a predetermined number of failed authentication attempts.
- the user of the device 102 A, B and/or C may provide a smartcard to be read by the authentication token reading facility 108 associated with the device 102 A, B and/or C, where the smartcard includes the user's authentication token 112 .
- the authentication token 112 data may be one or more X.509 certificates.
- the authentication token reading facility 108 may read the authentication token 112 from the smartcard and provide the authentication token 112 information to the credential processing facility 110 .
- the credential processing facility 110 may, then, determine whether the user is authorized to access the screen lock facility 104 , based on the authentication token 112 information.
- the process for authenticating the user may comprise locking a device 402 ; prompting a user to provide an authentication token 404 ; reading, by the device, the authentication token 408 ; determining, by a credential processing facility, whether the user is authorized to access the device, based on the authentication token 410 ; and granting a user access to the device's unlock screen.
- granting the user access to the device's unlock screen may include presenting the unlock screen, if the user is determined to be authorized by the credential processing facility 414 .
- presenting the unlock screen 414 may include prompting the user for a password and/or PIN, if the user is determined to be authorized by the credential processing facility. If the user is unauthorized to access the device's unlock screen, based on the authentication token, then the device may prohibit access to the unlock screen by the user 412 .
- Location services such as GPS provide reliable and precise location information when the receiver has a clear view of the sky.
- these technologies are not effective indoors, making them unsuitable for use in determining concentrations of customers at particular product areas within a retail store.
- methods and systems of a customer service representative dispatch system to locate and track customers in an environment 120 may comprise a network 114 ; one or more transmitters 130 A-C located in the environment 120 and enabled to emit an electronic heartbeat message and to connect to the network 114 ; a user device 102 A-C enabled to connect to the network 114 and to send location information based on a received electronic heartbeat message; and a server 122 enabled to connect to the network 114 .
- the server 114 may be comprised of a customer location monitor facility 124 enabled to track the user device 102 A-C based on the location information, and a customer service dispatch facility 128 enabled to dispatch a customer service representative based on the user device 102 A-C location.
- such device 102 A, B and/or C may further comprise additional devices as would suit the number of users in the environment.
- the transmitter 130 A-C may be enabled to send an electronic heartbeat message.
- Such heartbeat message may utilize one or more protocols, such as, but not limited to Wi-Fi, Bluetooth, Bluetooth LE, ultrasonic sound, Zigbee and the like.
- a transmitter may broadcast a unique identifier. For example, if an environment 120 has a plurality of transmitters 130 A-C, each transmitter 130 may broadcast its own unique identifier so that the location within the environment 120 of a customer's mobile device 102 A, B and/or C may be determined based on the unique identifier(s) received by the customer's mobile device 102 A, B and/or C.
- the customer mobile computing device 102 A-C may be a cellular phone, such as an iPhone, a Motorola Droid Razr Maxx, a HTC One X, a Samsung Focus 2, a Samsung Gusto 2, or some other cellular phone.
- the customer mobile computing device may be a tablet, such as an iPad, an Asus Eee Pad Transformer Prime, a Sony Tablet S, a Samsung Galaxy Tab 10.1, or some other tablet.
- the server 122 may be comprised of a customer location monitor facility 124 and a customer service dispatch facility 128 .
- the server may be connected to the one or more transmitters 130 A-C in the environment via a network 114 .
- the network 114 may be one or more of a wireless network, a wired network, a LAN, a WAN, a MAN or some other network.
- the server 122 may also be connected to a data store 134 .
- Such data store 134 may be a database or file system.
- the customer mobile computing device 102 A, B, and/or may be enabled to use the unique identifier received from a transmitter 130 A, B and/or C to determine the said customer mobile computing device's 102 A, B and/or C location in the environment 120 .
- the step of determining may involve uploading the unique identifier by the customer mobile computing device 102 A, B and/or C to the server 122 via the network 114 .
- the customer location monitor facility 124 on the server 122 may use the unique identifier to look up in a data store 134 the location of the transmitter 130 A, B and/or C transmitting said unique identifier, where the data store 134 may store the unique identifier associated with each such transmitter and the location of each such transmitter.
- determining the location of the customer mobile computing device 102 A, B and/or C may comprise the customer mobile computing device 102 A, B and/or C comparing a first identifier with a local data store, such as a database or file system, containing a plurality of identifiers and corresponding location information to determine the location of a first transmitter 130 A.
- the location of the first transmitter 130 A may then be used to determine the location of the customer mobile computing device 102 A, B and/or C based on one or more of the configuration parameters of said electronic heartbeat message and the transmitter 130 A (e.g. the range of the transmitter's signal, a triangulation based on a plurality of heartbeat messages from a plurality of transmitters, etc.).
- the server 122 may not be the same server 122 that determined the location of the customer mobile computing device 102 A, B and/or C.
- the customer location monitor facility 124 may determine the location of the customer mobile computing device 102 A, B and/or C and pass the location information to the customer dispatch facility 128 .
- the customer service dispatch facility 128 on the server 122 may then, automatically or otherwise, dispatch one or more customer service representatives to the location in the environment 120 where the customer mobile computing devices 102 A, B and/or C is located.
- the customer service dispatch facility 128 may also be enabled to perform business intelligence based on the customer mobile computing devices 102 A, B and/or C location information. For example, the customer service dispatch facility 128 may determine that there are a sufficient number of customer service representatives in the vicinity of the customer mobile computing devices 102 A, B and/or C. In another example, the customer service dispatch facility 128 may determine that there are more customers in a different location in the environment and that one or more customer service representatives in the vicinity of the customer mobile computing devices 102 A, B and/or C should be dispatched to a location of greater need in the environment 120 . In embodiments, a person may actively monitor the system and/or data therefrom and may dispatch personnel based on the same. The step of dispatching could occur in other ways as well.
- the process for identifying the location of a user device may comprise entering a shopping environment by a user with a device 502 , transmitting a heartbeat message by a transmitter 504 , receiving the heartbeat message by the user device 508 , determining the user device's location based on the heartbeat message 510 , dispatching to a location one or more customer service representatives based on the number of devices at the user device's location 512 .
- the environment may be a store, an arena, a mall, or some other shopping environment.
- the user device may be a mobile computing device, such as a mobile phone or a tablet.
- the heartbeat message may include a unique identifier.
- the unique identifier may be location-related information (e.g. the coordinates of the transmitter, the name of a section or some other location-related information).
- the heartbeat message may comprise one or more of a unique identifier, a location identifier and/or some other identifier information.
- determining the user device's location based on the heartbeat message 510 may comprise determining the location by the user device. For example and as discussed above, the user device may determine its location by comparing the heartbeat message to data in a local data store. In embodiments, such local data store may reside on the user device. In some embodiments, determining the user device's location based on the heartbeat message 510 may comprise determining the location by a server.
- the user device may receive a heartbeat message with a unique identifier from a transmitter, transmit the unique identifier to a server via a network, and the server may determine the location of user device based on the received unique identifier.
- dispatching to a location one or more customer service representatives based on the number of devices at the user device's location 512 may further comprise determining a heat map of user devices in the shopping environment, determining a heat map of customer service representatives in the shopping environment, determining a redistribution of customer service representatives by comparing the two heat maps, and dispatching to a location or more customer service representatives. For example, if the user device is located in an area with a ratio of customers-to-customer service representatives is over a specified threshold, a customer service representative may be dispatched to that location to provide additional assistance.
- the step of dispatching may occur automatically using an automated dispatch system, or could include a person actively monitoring the system and dispatching personnel as appropriate. The step of dispatching could occur in other ways as well.
- Determining a redistribution of customer service representatives may further comprise a business intelligence analysis.
- the server may perform one or more of the following steps in connection with determining the redistribution of customer service representatives: record a customer shopping pattern, record a customer service representative redistribution outcome, analyze a customer shopping pattern, analyze a customer service representative redistribution outcome, or some other business intelligence action.
- Businesses may also benefit from the ubiquity of mobile devices and networks by using information regarding the locations of user devices to dispense coupons for encouraging users in certain locations.
- systems and methods for dispensing coupons based on the location of a user may comprise providing a user device 102 A, B and/or C, which may comprise a display 154 and a microphone 144 , and which may execute an application 138 ; providing a transmitter 130 A, B and/or C, wherein the transmitter 130 A, B and/or C may be enabled to emit a high frequency sound and may be located in an environment 120 ; receiving, by the microphone 144 on the device 102 A, B and/or C, a high frequency sound from the transmitter 130 A, B and/or C; and altering the display 154 , by the application 138 , to provide a coupon, based on the one or more of the characteristics and contents of the high frequency sound.
- the transmitter 130 A, B and/or C may be a plurality of transmitters 130 A-C.
- the display 154 may be a touch screen.
- the transmitter 130 may be a speaker.
- the characteristics and contents of the high frequency sound may include location information of the transmitter 130 A, B and/or C, location information of an item in the environment (e.g. the location of a good for sale in a store), a timestamp, the frequency, a pattern of the high frequency sound, or some other characteristics and contents.
- the user device 102 A, B and/or C may execute an application 138 that runs in the background and that monitors the microphone 144 for high frequency sounds.
- the application 138 may change the display 154 to depict a coupon, such as in a web browser or other application, for use in the retail store.
- the transmitter 130 A, B and/or C may emit a high frequency sound to alter one or more of a sale, transaction, lease, offer for sale, proposed transaction, or other information. Such alteration may be a change to the sale price, the characteristics of a sale, lease, or other transaction.
- the transmitter 130 A, B and/or C may be located in a store in the vicinity of a particular good that the store is marketing heavily.
- the application 138 determines that the microphone 144 has received a broadcast from the transmitter 130 A, B and/or C, the application 138 may change the sale price for the good and the like.
- the high frequency sound emitted by the transmitter 130 A, B and/or C may include an information associated with a product or category of products located in proximity with the transmitter 130 .
- the transmitter 130 may be located near a particular television or brand of televisions, and the high frequency sound emitted by the transmitter 130 may include information regarding discounts on such televisions.
- the application 138 may send information related to the high frequency sound to a server 122 .
- the information may be one or more characteristics and contents of the high frequency sound.
- the server 122 may include a coupon analytics facility 158 .
- the coupon analytics facility 158 may, based on the information received from the application 138 , determine a coupon to be displayed on the device display 154 and send such coupon to the device 102 A, B and/or C via the network 114 . Additionally, the coupon analytics facility 158 may be enabled to direct the transmitter 130 A, B and/or C to emit a particular high frequency sound in order to change the response of the application 138 .
- the coupon analytics facility 158 may direct the transmitter 130 A, B and/or C to change the high frequency sound it emits so that an application 138 would display a new sales price or an offer for a discount on an existing price.
- the coupon analytics facility's 158 direction to a transmitter 130 A, B and/or C to emit a particular high frequency sound may be based on one or more of marketing input, inventory input, a timer input, customer location input, other customer data input, or other inputs.
- businesses may track customers in a retail space in order to dispatch customer service representatives. Tracking customers may also be useful for analyzing the behavior of the customers
- methods and systems of analyzing customer behavior based on tracking customer locations may comprise providing a transmitter 130 A, B and/or C in an environment 120 wherein such transmitter is enabled to emit a high frequency sound signal; providing one or more customers each with a user device 102 A, B and/or C comprising a microphone 144 enabled to receive a high frequency sound signal, and wherein the user device 102 A, B and/or C is enabled to send data based on the received high frequency sound signal; providing a computing system 162 , wherein the computing system 162 is enabled to receive data from each such user device 102 A, B and/or C and to determine the user device 102 A, B and/or C location in the environment 120 based on such received data; and analyzing the user device 102 A, B and/or C location information by the computing system 162 to identify useful characteristics.
- such device 102 A, B and/or C may further comprise additional devices as would suit the number of users in the environment.
- Such analysis may include one or more of generating a heat map based on where the user spent time in the environment 120 , comparing what the user purchased against the heat map, totaling the time user spent in the environment 120 , comparing what the user purchased against other users, comparing the user heat map with other heat maps, or other analyses.
- the business for whom the analysis is performed may perform one or more of push data to customers (e.g. coupons, updated sales or marketing materials, product comparison information, etc.), optimize the layout of the business (e.g. move products to be highlighted to certain end caps or other high-traffic areas), provide information to vendors (e.g. customer heat map information related to the vendors' products, etc.) and use the analysis for other business purposes.
- a grocery store may have high frequency emitting transmitters located in several aisles to provide the customers devices with location information.
- the customers devices could transmit periodic updates to a server 122 connected via the store's wireless network 114 .
- the store's server 122 may analyze the customer location data received to identify customer movement patterns.
- the customer movement patterns to be used, for example, by a consultant, to reorganize the layout of the store in order to make a typical customer's movement path more efficient or draw customer attention to certain sections of the store to increase revenue and customer experience.
- Methods and systems of a customer service representative dispatch system may be used to locate and track customers in an environment. Such methods and systems may be associated with analyzing customer behavior based on tracking customer locations as described herein, for example.
- the determination to dispatch a customer service representative may be based on the results of analyzing customer behavior based on tracking customer locations.
- a business may note that there is not much customer traffic near where a popular consumer good is being sold, and, therefore, may dispatch one or more customer service representatives to that area to help customers find the good.
- Methods and systems for dispensing coupons based on the location of a user may be used to track customers in an environment and offer for sale some good in the environment. Such methods and systems may be associated with analyzing customer behavior based on tracking customer locations.
- the determination to dispense a coupon may be based on the results of analyzing customer behavior based on tracking customer locations, as described herein, for example.
- the business may determine that one or more users with certain heat map patterns are less likely to buy certain goods sold by the business. Based on this determination, the business may issue a coupon for such goods to users who exhibit similar or the same patterns.
- systems and methods for automatic switching of output devices based on a location may comprise providing a user device 102 A, B and/or C in an environment 120 , providing a plurality of output devices 140 A-B located in the environment 120 , providing one or more transmitters 130 A-C in the environment for determining the location of the user device 102 A, B and/or C within the environment 120 , streaming a media stream to a first output device 140 A, determining the location of the user device 102 A, B and/or C in the environment 120 , and switching a media stream from a first output device 140 A to a second output device 140 B, based on the location determination.
- the media stream may be an audio stream (e.g.
- a radio broadcast e.g. a podcast, mp3 audio, audio played from a CD, or some other media stream
- a video stream e.g. images to be displayed on a monitor
- an audio/video stream e.g. a movie, a television show or some other combined audio and video stream
- some other media stream e.g. a radio broadcast, a podcast, mp3 audio, audio played from a CD, or some other media stream
- a video stream e.g. images to be displayed on a monitor
- an audio/video stream e.g. a movie, a television show or some other combined audio and video stream
- the environment 120 may be a home, an office, or some other environment.
- the user device 102 A, B and/or C may be a mobile device, such as a cell phone, a personal assistant, a tablet, a laptop or some other mobile device.
- the user device 102 A, B and/or C may be comprised of a microphone 144 .
- An output device 140 may be a monitor, a television, an audio component, a printer, a media device (e.g. a Roku, an Apple TV, a PlayStation, an Xbox, etc.), another user device 102 B, or some other output device.
- the user device 102 A, B and/or C, the transmitter 130 , and the output devices may be connected via a network 114 .
- the network 114 may be wired or wireless.
- the network 114 may be a LAN.
- the transmitters 130 A-C may be enabled to emit a message and/or data.
- such message may be a high frequency.
- such message may utilize one or more protocols, such as, but not limited to Wi-Fi, Bluetooth, Bluetooth LE, ultrasonic sound, Zigbee and the like.
- the user may select an output device 140 for the user device 102 A, B and/or C. Selecting the output device 140 may include one or more of selecting the initial output device 140 A and/or B, selecting a default output device 140 , selecting the output device 140 A and/or B for the current location, selecting the output device 140 A and/or B for a different location and selecting the output device 140 A and/or B for some other purpose. Selecting an output device 140 A and/or B may also include defining a location within the environment 120 .
- the user device When a user with a user device 102 A, B and/or C enters into an environment, the user device may be enabled to receive a message from a first transmitter 130 A.
- the user may enter the living room in his home and his cell phone may receive a high frequency sound from a first transmitter 130 A located in the living room.
- the user device's 102 A, B and/or C may receive, via a microphone 144 , the high frequency sound from the first transmitter 130 A.
- the output device 140 A for example, associated with that location
- the device 102 A, B and/or C upon receiving the high frequency sound may route output to the associated output device 140 A.
- the output device 140 A may be a set of speakers located in the living room.
- the user device 102 A, B and/or C may receive a high frequency sound from the second transmitter 130 B located in the bedroom. Upon receiving the new high frequency sound and the user device 102 A, B and/or C may switch the media stream to the second output device 140 B associated with the bedroom, for example, a different set of speakers in the bedroom.
- the media stream may be from a remote computing system (e.g. a streaming media device, like a Roku, or a cable box, etc.).
- the user device 102 A may, in response to receiving a high frequency sound from a transmitter 130 A, B and/or C, may transmit data (e.g. observed characteristics of the high frequency sound) to a remote computing system, such as a server 122 .
- the remote computing system may associate the (e.g. the characteristics of the high frequency sound) with an output device 140 A and/or B and, then switch the media stream to the output device 140 .
- the device 102 A, B and/or C may be further enabled to determine when it no longer is receiving a message from a first transmitter 130 A.
- the device 102 A, B and/or C may communicate such determination to the server 122 .
- the server 122 may terminate the media stream to the first output device 140 A.
- devices As devices become more mobile and networks become more ubiquitous, device users also have a growing number of devices that may be controlled remotely, either by IR signals or over some other protocol.
- many home audio or theater systems are networked and may contain multiple speakers and other output devices throughout a home, and such devices may be controlled remotely, including by other devices on the network. Since the user already has one device, it may be desirable to enable that device to control the other devices in the environment. Furthermore, it may be desirable to enable the device to automatically detect its location and configure itself to control the devices in the same location. In the home user example, the user may start watching a media stream in one room and use the user device to control the home media system in the first room.
- systems and methods for automatic switching of the controls of a plurality of output devices based on a location may comprise providing a user device 102 A, B and/or C in an environment 120 , providing a plurality of output devices 140 A-B located in the environment 120 , providing one or more transmitters 130 A-C in the environment for determining the location of the user device 102 A, B and/or C within the environment 120 , providing a control interface for the first output device 140 A on the display 154 of the user device 102 A, B and/or C, determining the location of the user device 102 A, B and/or C in the environment 120 , and modifying the IR remote control facility 150 and the display 154 of the user device 102 A, B and/or C to control of a second output device 140 B, based on the location determination.
- the user device 102 A, B and/or C may include a microphone.
- the transmitters 130 A-C may be enabled to emit a message and may each be associated with one of the output devices 140 A-B.
- a transmitter 130 may be physically located within close proximity to the output device 140 controlled by the user device 102 .
- the transmitter 130 A, B and/or C associated with a speaker system in one room may be located adjacent to that speaker system, and the transmitter 130 A, B and/or C associated with a speaker system in another room would be located adjacent to that speaker.
- the systems and methods may further comprise altering an output from the user device 102 A, B and/or C based on the characteristics or contents of the message received from a transmitter 130 A, B and/or C.
- the user device 102 A, B and/or C may be enabled to, based on the frequency of sound received from a transmitter 130 A, B and/or C, download and configure specific IR remote control facility codes for controlling an output device in the environment 120 via the IR remote control facility 150 on the user device 102 A, B and/or C.
- Modifying the IR remote control facility on the user device 102 A, B and/or C may further comprise determining which output device 140 is located at a location and associated with a transmitter 130 A, B and/or C, based on the message from the transmitter 140 A and/or B, then modifying the control interface. Modifying the control interface may also include changing one or more output signals and/or protocols from the user device 102 A, B and/or C for controlling the correct output device 140 A and/or B.
- the user device 102 A, B and/or C may, but is not limited to, determine its location based upon a high frequency sound from a transmitter 130 A, B and/or C in the room, and adjust the volume of all speakers within a home in order to maintain a consistent volume to the user as they move from room to room.
- the user device 102 A, B and/or C may receive a message from a first transmitter 130 A located in the living room.
- the device may modify the IR remote control facility 150 to control an output device 140 A and modify the display 154 to depict controls for an output device 140 A in the living room, such as a home theater system.
- the controls depicted on the display 154 may include the controls available via the IR remote control facility 150 , such as a volume control, frequency tuning control, a device input control, a power control, a DVD player control or some other device control.
- the user device 102 A, B and/or C may receive a message from a second transmitter 130 B located in the kitchen.
- the device may modify the IR remote control facility 150 and the display 154 to depict controls for an output device 140 B in the kitchen, which may be an iPod docking station, for example.
- Methods and systems of automatically switching of output devices based on a location may be used to track a user in environment and provide dynamic output selection, based on the user's location. Such methods and systems may be associated with automatically switching the controls for a plurality of output devices. For example, upon determining that a user has moved from one location associated with a first output device to a second location associated with a second output device, the user device may automatically switch the media stream from the first to the second output device and automatically switch the controls and the display on the user device from the controls associated with the first output device to those associated with the second output device. In embodiments, such determination may be made by receiving at the device a high frequency message from a transmitter associated with a specific output device, as described herein, for example.
- locating and tracking a user based on the location of the user's device may have game and/or multiplayer game applications. This may provide an inexpensive way of introducing potentially asymmetric information dissemination to players of a multiplayer game.
- Asymmetric gameplay is an emerging sector of the game industry, and has the potential to drive a large amount of innovation, as evidenced by the development of the Wii U.
- systems and methods of detecting players for a multiplayer game may comprise a multiplayer game; a first user device 102 A for playing the game and comprising a display 154 , a microphone 144 and a speaker 142 for emitting a high frequency sound signal; and a second user device 102 B for playing the multiplayer game and comprising a display 154 , a microphone 144 and a speaker 142 for emitting a high frequency sound signal, wherein the second user device 102 B is enabled to alter the content of the first user device's 102 A display 154 , based on a high frequency sound signal emitted by the speaker 142 of the first user device 102 A.
- the multiplayer game may be an application 138 executing on the device 102 A, B and/or C.
- the multiplayer game may be a coop game, a competitive coop game, a sports game, a deathmatch-style game, a capture-the-flag-style game, a king-of-the-hill-style game, or some other multiplayer game.
- the device 102 A, B and/or C may be a game system, such as Wii U, an Xbox, a PlayStation 3, a PlayStation Vita, a Gameboy, a tablet (e.g. an iPad) with a game installed, a controller for a game system (e.g. a Wii U GamePad) or some other game system and/or component of a game system.
- a game system such as Wii U, an Xbox, a PlayStation 3, a PlayStation Vita, a Gameboy, a tablet (e.g. an iPad) with a game installed, a controller for a game system (e.g. a Wii U GamePad)
- Altering the content of the first user device's 102 A display 154 based on a high frequency sound signal emitted by the speaker 142 of the first user device 102 A may include altering the display 154 to show location information related to the user of the second user device 102 B.
- two players may be playing a multiplayer game on a Wii U in the same room.
- the players' characters may be located in different parts of the same game map and the first player may be hiding from the second player.
- the first player's controller may emit a sound, such as a high frequency sound based on the first player's character's location in the game map.
- the second player's GamePad may receive the sound, analyze it in whole and/or in part, and update the map information displayed on the GamePad to indicate the general direction of the first player's character.
- the emitted sound may alter one or more of various devices and/or one or more of various devices may emit a sound for altering content of the display of one or more devices based on an analysis of the sound and/or an analysis of the sound and other data and/or one or more items.
- devices such as a game headset could alter the intensity of an indicator and/or display to reflect a detected amplitude of a specific sound frequency, and may thereby indicate the proximity of other players.
- methods and systems of authenticating a group of users may comprise a plurality of user devices 102 A, B and/or C, each comprising a speaker for emitting a high frequency sound signal; a location beacon in an environment 120 and enabled to receive a plurality of high frequency sound signals; and a computing system enabled to communicate with the location beacon and comprising a location determination facility that is enabled to provide access to the computing system based on a determination that every user of a plurality of users is located within the environment.
- the high frequency sound signals may be unique for each user device 102 A, B and/or C, for example in a given environment 120 , so that each user device 102 A, B and/or C may be uniquely identified.
- each device 102 A, B and/or C may be assigned a high frequency sound signal with a unique variation in frequency or other acoustic characteristic.
- a testing environment may have a fixed location beacon 160 that is configured to receive ultrasonic signals.
- the students who are required to be present for the test may each have a user device 102 A, B and/or C.
- Each device 102 A, B and/or C may have a speaker 142 enabled to produce an ultrasonic signal.
- the location beacon 160 and the user devices 102 A, B and/or C may each be connected to a computing system 162 via a wireless network 114 .
- the user devices 102 A, B and/or C may receive from the computing system 162 a specific ultrasonic signal configuration, unique to each device 102 .
- the computing system 162 may send said user's device 102 A, B and/or C the specific ultrasonic signal configuration to be emitted for a period before the exam and during the exam. Each device 102 A, B and/or C may then transmit the specific signal with the configuration received from said computing system 162 .
- the location beacon 160 may provide updates to the computing system 162 regarding the ultrasonic signals from the devices received by the location beacon 160 .
- the computing system 162 may track which students are located in the testing environment based on the updates from the location beacon 160 . Once the computing system 162 determines that all the required students are located in the testing environment, the computing system 162 may begin the test and grant the students access to the test materials.
- authenticating a group of users may comprise providing a computing system, including a fixed location beacon configured to receive signals 202 ; entering of an environment by a user with a user device 204 ; receiving by the computing system via the location beacon of a signal from the user device 208 ; determining by the computing system whether all the users required in a group are in the environment, based on the received signals 210 ; providing access to the computing system if all the required users are in the environment 214 ; and accessing of the computing system by the group of users 218 .
- all the users may be prohibited from accessing the computing system 212 .
- the system may continue receive signals from users until all users are present or some other defied time.
- An additional application for location-based security is to secure access to data in a file system (i.e. read, write, execute, modify, delete, copy, and/or transmit) based on a user's location.
- systems and methods of controlling access to data on a device may comprise a first user device 102 A, comprising a speaker 142 enabled to send a heartbeat message; a second user device 102 B, comprising a microphone 144 enabled to receive a heartbeat message and a speaker 142 , enabled to send a first data, including data to indicate receipt or failure to receive the heartbeat message; and a third user device 102 C enabled to send a second data upon receiving the first data from the second user device 102 B and determining that the second data may be sent to the second user device.
- the determination of whether the second data may be sent to the second device may be a location-related determination.
- the determination may be based whether the location of the second device is considered secure (e.g. based on where, whether the user of the second device is authorized to access the second data in the given location, whether the second data is related to the location of the second user device (e.g. the user of the second device may be permitted to access a second data related to a room of museum based on whether the second device is located in the relevant room in the museum), or some other location-related determination.
- the location of the second device is considered secure (e.g. based on where, whether the user of the second device is authorized to access the second data in the given location, whether the second data is related to the location of the second user device (e.g. the user of the second device may be permitted to access a second data related to a room of museum based on whether the second device is located in the relevant room in the museum), or some other location-related determination.
- a user device could pick up a high frequency sound broadcast by a speaker device, identify the frequency of the sound, and report the frequency to a remote file server in an effort to gain access to files on that server. The server would then process the reported data and determine whether to grant access to the mobile device.
- the heartbeat message may be sent as a high frequency sound embedded in television or radio media.
- a mobile device 102 A, B and/or C may be enabled to receive such media and use the high frequency sound to request content from a server 122 that may be relevant advertising content.
- controlling access to first data stored on a first device may include sending a heartbeat message from a second device to a third device (having memory, a processing unit and a microphone), prompting the third device to send second data to a fourth device (which may also be the first device) said data including, but not limited to, information signifying receipt or failure to receive heartbeat messages, so that the fourth device may process the second data in whole or in part to determine whether access to the first data should be granted to the third device.
- Such access may include the ability to read, copy, modify, delete and/or transmit said data.
- such firs, second, third, fourth, etc, device may comprise a plurality of devices such that messages are send to and from one or more devices at the steps described.
- a mobile device may pick up a high frequency sound broadcast by a speaker device, identify the frequency, and report the frequency to a remote file server in an effort to gain access to files on that server. The server may then process the reported data and determine whether to grant access to the mobile device.
- An additional application for location-based security is to secure access to an application based on a user's location.
- methods and systems of controlling access to an application 138 on a device 102 A, B and/or C may comprise providing a transmitter 130 A, B and/or C enabled to emit a high frequency sound; providing a user device 102 A, B and/or C enabled to receive a high frequency sound; and blocking access by a user of the user device 102 A, B and/or C to an application on the user device, while the user device 102 A, B and/or C receives the high frequency sound from the transmitter 130 A, B and/or C.
- the transmitter 130 A, B and/or C may be located in a car, truck, other automobile, or other piece of machinery around which certain kinds of phone usage might be dangerous.
- the transmitter 130 A, B and/or C may broadcast a signal whenever the automobile is not in park, so that the driver's mobile device disables the SMS messaging application 138 during the operation of the automobile.
- Methods and systems of controlling access to data on a device may be used to track users and either grant or block access to files, based on where the user is located. Such methods and systems may be associated with granting and/or blocking user access to one or more applications, based on where the user is located.
- a user located in a car may not be permitted to use the SMS application on the user's device while the car is running Additionally, the user may be permitted to access certain media files while in the car (e.g. MP3s) and prohibited from accessing certain other media files while in the car (e.g. video files).
- Tracking a player of game based on the location of the player's device is a species of the foregoing. So, for example, a function or data in multiplayer game may be associated with detecting or locating another player. Such function or data may be enabled or disabled, based on the proximity of a first player to a second player of the game.
- Mobile devices such as smartphones, tablets and other mobile computing devices are becoming ubiquitous and, when tied to an individual, possess the capability to authenticate a user in a different system.
- a secured computing system may be maintained without requiring a nearby user to repeat the step of logging in by tracking the previously authenticated user's location.
- systems and methods of logging in a current user to a computing device based on the user location may comprise providing a computing system enabled to communicate with a user's device 302 ; storing, by the computing system, the user's credentials capable of authenticating the user 304 ; authenticating on the computing system by the user with the user's device 308 ; determining by the computing system the location of the user based on the location of the user's device 310 (such location determination mechanism could be a system such as GPS or could be a proprietary system implemented using a technology such as ultrasonic sound, RF signals, Bluetooth signals, Wi-Fi signals, NFC tags, and/or the like); confirming the user's credentials by the user's device 312 ; transmitting by the user's device the user's credentials to the computing system 314 ; authenticating the user by the computing system if the determination is made that the user's device is in proximity to the computing system 320 ; and providing the user access to the computing system 322 .
- confirming the users credentials with the user device 312 may comprise requiring the user to re-authenticate if the user's credentials are not confirmed. In embodiments, if the user device is not within proximity to the computing system, the computing system may prohibit access by the user 318 and may require the user re-authenticate. In embodiments, the user may be required to confirm transmission of credentials before transmission. In embodiments, a user may be authenticated without user intervention. In embodiments, authenticating the user may include authenticating the user based on one or more of a token, a password, a PIN, biometrics (e.g. retina scan, thumbprint, voice recognition, etc.).
- biometrics e.g. retina scan, thumbprint, voice recognition, etc.
- the computing system 162 may be a server, such as a web server, a file server, an application server, a mail server, an SaaS, an IaaS, a PaaS, a media server, a FTP server or some other server.
- the computing system 162 may be a laptop, a terminal, a desktop, a workstation, a game console or some other computing system.
- the user's device 102 A, B and/or C may be a smartphone, tablet or other mobile device.
- the user device 102 A, B and/or C may determine its location by way of a location determination mechanism.
- This location determination mechanism could be a system such as GPS or could be a proprietary system implemented using a technology such as ultrasonic sound, RF signals, Bluetooth signals, Wi-Fi signals, NFC tags, and/or the like, such that the location of the user device 102 A, B and/or C can be determined to be close to the location of the computing system 162 .
- authentication credentials are automatically transmitted to the computing system 162 either directly or indirectly.
- transmitting the authentication credentials may include transmitting them via a network 114 , which may be a wireless LAN.
- the computing system 162 may then authenticate the user and may grant access to the secured content without user intervention at the computing system 162 .
- the user device 102 A, B and/or C may require the user to confirm the transmission of credentials before transmission of credentials from the user device 102 A, B and/or C to the computing system 162 .
- the computing system 162 may automatically de-authenticate the user upon determining that the user device 102 A, B and/or C is no longer present at the location corresponding to the computing system 162 .
- the computing system 162 may automatically de-authenticate the user.
- a person of skill in the art would understand that arbitrary levels of security may be added to this system without significant deviation from the aforementioned embodiments, such as encryption, device authentication, and the like.
- the methods and systems described herein may be deployed in part or in whole through a machine that executes computer software, program codes, and/or instructions on a processor.
- the present invention may be implemented as a method on the machine, as a system or apparatus as part of or in relation to the machine, or as a computer program product embodied in a computer readable medium executing on one or more of the machines.
- the processor may be part of a server, cloud server, client, network infrastructure, mobile computing platform, stationary computing platform, or other computing platform.
- a processor may be any kind of computational or processing device capable of executing program instructions, codes, binary instructions and the like.
- the processor may be or may include a signal processor, digital processor, embedded processor, microprocessor or any variant such as a co-processor (math co-processor, graphic co-processor, communication co-processor and the like) and the like that may directly or indirectly facilitate execution of program code or program instructions stored thereon.
- the processor may enable execution of multiple programs, threads, and codes. The threads may be executed simultaneously to enhance the performance of the processor and to facilitate simultaneous operations of the application.
- methods, program codes, program instructions and the like described herein may be implemented in one or more thread.
- the thread may spawn other threads that may have assigned priorities associated with them; the processor may execute these threads based on priority or any other order based on instructions provided in the program code.
- the processor may include memory that stores methods, codes, instructions and programs as described herein and elsewhere.
- the processor may access a storage medium through an interface that may store methods, codes, and instructions as described herein and elsewhere.
- the storage medium associated with the processor for storing methods, programs, codes, program instructions or other type of instructions capable of being executed by the computing or processing device may include but may not be limited to one or more of a CD-ROM, DVD, memory, hard disk, flash drive, RAM, ROM, cache and the like.
- a processor may include one or more cores that may enhance speed and performance of a multiprocessor.
- the process may be a dual core processor, quad core processors, other chip-level multiprocessor and the like that combine two or more independent cores (called a die).
- the methods and systems described herein may be deployed in part or in whole through a machine that executes computer software on a server, client, firewall, gateway, hub, router, or other such computer and/or networking hardware.
- the software program may be associated with a server that may include a file server, print server, domain server, internet server, intranet server, cloud server and other variants such as secondary server, host server, distributed server and the like.
- the server may include one or more of memories, processors, computer readable media, storage media, ports (physical and virtual), communication devices, and interfaces capable of accessing other servers, clients, machines, and devices through a wired or a wireless medium, and the like.
- the methods, programs or codes as described herein and elsewhere may be executed by the server.
- other devices required for execution of methods as described in this application may be considered as a part of the infrastructure associated with the server.
- the server may provide an interface to other devices including, without limitation, clients, other servers, printers, database servers, print servers, file servers, communication servers, distributed servers, social networks and the like. Additionally, this coupling and/or connection may facilitate remote execution of program across the network. The networking of some or all of these devices may facilitate parallel processing of a program or method at one or more location without deviating from the scope of the disclosure.
- any of the devices attached to the server through an interface may include at least one storage medium capable of storing methods, programs, code and/or instructions.
- a central repository may provide program instructions to be executed on different devices.
- the remote repository may act as a storage medium for program code, instructions, and programs.
- the software program may be associated with a client that may include a file client, print client, domain client, internet client, intranet client and other variants such as secondary client, host client, distributed client and the like.
- the client may include one or more of memories, processors, computer readable media, storage media, ports (physical and virtual), communication devices, and interfaces capable of accessing other clients, servers, machines, and devices through a wired or a wireless medium, and the like.
- the methods, programs or codes as described herein and elsewhere may be executed by the client.
- other devices required for execution of methods as described in this application may be considered as a part of the infrastructure associated with the client.
- the client may provide an interface to other devices including, without limitation, servers, other clients, printers, database servers, print servers, file servers, communication servers, distributed servers and the like. Additionally, this coupling and/or connection may facilitate remote execution of program across the network. The networking of some or all of these devices may facilitate parallel processing of a program or method at one or more location without deviating from the scope of the disclosure.
- any of the devices attached to the client through an interface may include at least one storage medium capable of storing methods, programs, applications, code and/or instructions.
- a central repository may provide program instructions to be executed on different devices.
- the remote repository may act as a storage medium for program code, instructions, and programs.
- the methods and systems described herein may be deployed in part or in whole through network infrastructures.
- the network infrastructure may include elements such as computing devices, servers, routers, hubs, firewalls, clients, personal computers, communication devices, routing devices and other active and passive devices, modules and/or components as known in the art.
- the computing and/or non-computing device(s) associated with the network infrastructure may include, apart from other components, a storage medium such as flash memory, buffer, stack, RAM, ROM and the like.
- the processes, methods, program codes, instructions described herein and elsewhere may be executed by one or more of the network infrastructural elements.
- SaaS software as a service
- PaaS platform as a service
- IaaS infrastructure as a service
- the methods, program codes, and instructions described herein and elsewhere may be implemented on a cellular network having multiple cells.
- the cellular network may either be frequency division multiple access (FDMA) network or code division multiple access (CDMA) network.
- FDMA frequency division multiple access
- CDMA code division multiple access
- the cellular network may include mobile devices, cell sites, base stations, repeaters, antennas, towers, and the like.
- the cell network may be a GSM, GPRS, 3G, EVDO, mesh, or other networks types.
- the mobile devices may include navigation devices, cell phones, mobile phones, mobile personal digital assistants, laptops, palmtops, netbooks, pagers, electronic books readers, music players and the like. These devices may include, apart from other components, a storage medium such as a flash memory, buffer, RAM, ROM and one or more computing devices.
- the computing devices associated with mobile devices may be enabled to execute program codes, methods, and instructions stored thereon. Alternatively, the mobile devices may be configured to execute instructions in collaboration with other devices.
- the mobile devices may communicate with base stations interfaced with servers and configured to execute program codes.
- the mobile devices may communicate on a peer to peer network, mesh network, or other communications network.
- the program code may be stored on the storage medium associated with the server and executed by a computing device embedded within the server.
- the base station may include a computing device and a storage medium.
- the storage device may store program codes and instructions executed by the computing devices associated with the base station.
- the computer software, program codes, and/or instructions may be stored and/or accessed on machine readable media that may include: computer components, devices, and recording media that retain digital data used for computing for some interval of time; semiconductor storage known as random access memory (RAM); mass storage typically for more permanent storage, such as optical discs, forms of magnetic storage like hard disks, tapes, drums, cards and other types; processor registers, cache memory, volatile memory, non-volatile memory; optical storage such as CD, DVD; removable media such as flash memory (e.g.
- RAM random access memory
- mass storage typically for more permanent storage, such as optical discs, forms of magnetic storage like hard disks, tapes, drums, cards and other types
- processor registers cache memory, volatile memory, non-volatile memory
- optical storage such as CD, DVD
- removable media such as flash memory (e.g.
- USB sticks or keys floppy disks, magnetic tape, paper tape, punch cards, standalone RAM disks, Zip drives, removable mass storage, off-line, and the like; other computer memory such as dynamic memory, static memory, read/write storage, mutable storage, read only, random access, sequential access, location addressable, file addressable, content addressable, network attached storage, storage area network, bar codes, magnetic ink, and the like.
- the methods and systems described herein may transform physical and/or or intangible items from one state to another.
- the methods and systems described herein may also transform data representing physical and/or intangible items from one state to another.
- machines may include, but may not be limited to, personal digital assistants, laptops, personal computers, mobile phones, other handheld computing devices, medical equipment, wired or wireless communication devices, transducers, chips, calculators, satellites, tablet PCs, electronic books, gadgets, electronic devices, devices having artificial intelligence, computing devices, networking equipment, servers, routers and the like.
- the elements depicted in the flow chart and block diagrams or any other logical component may be implemented on a machine capable of executing program instructions.
- the methods and/or processes described above, and steps associated therewith, may be realized in hardware, software or any combination of hardware and software suitable for a particular application.
- the hardware may include a general purpose computer and/or dedicated computing device or specific computing device or particular aspect or component of a specific computing device.
- the processes may be realized in one or more microprocessors, microcontrollers, embedded microcontrollers, programmable digital signal processors or other programmable device, along with internal and/or external memory.
- the processes may also, or instead, be embodied in an application specific integrated circuit, a programmable gate array, programmable array logic, or any other device or combination of devices that may be configured to process electronic signals. It will further be appreciated that one or more of the processes may be realized as a computer executable code capable of being executed on a machine readable medium.
- the computer executable code may be created using a structured programming language such as C, an object oriented programming language such as C++, or any other high-level or low-level programming language (including assembly languages, hardware description languages, and database programming languages and technologies) that may be stored, compiled or interpreted to run on one of the above devices, as well as heterogeneous combinations of processors, processor architectures, or combinations of different hardware and software, or any other machine capable of executing program instructions.
- a structured programming language such as C
- an object oriented programming language such as C++
- any other high-level or low-level programming language including assembly languages, hardware description languages, and database programming languages and technologies
- methods described above and combinations thereof may be embodied in computer executable code that, when executing on one or more computing devices, performs the steps thereof.
- the methods may be embodied in systems that perform the steps thereof, and may be distributed across devices in a number of ways, or all of the functionality may be integrated into a dedicated, standalone device or other hardware.
- the means for performing the steps associated with the processes described above may include any of the hardware and/or software described above. All such permutations and combinations are intended to fall within the scope of the present disclosure.
Abstract
Methods and systems are provided for identifying a computing device and/or the user of such a device and granting or prohibit access to one or more devices based on the location of the computing device. User devices include receivers and emitters for localization signals, and behavior of user devices or user interaction devices are modified according to received localization signals. Example systems may provide tracking media streaming to local devices, automatic configuration of transmitters, or adaptation of multi-user interactions based on user location.
Description
- Some of the aspects of the methods and systems described herein have been described in U.S. Provisional Application Nos. 61/780,408 entitled “Systems And Methods To Synchronize Data To A Mobile Device Based On A Device Usage Context”, filed Mar. 13, 2013; 61/781,252 entitled “Systems And Methods To Secure Short-Range Proximity Signals”, filed Mar. 14, 2013; 61/781,509 entitled “Systems And Methods For Securing And Locating Computing Devices”, filed Mar. 14, 2013; 61/779,931 entitled “Systems And Methods For Securing The Boot Process Of A Device Using Credentials Stored On An Authentication Token”, filed Mar. 13, 2013; 61/790,728 entitled “Systems And Methods For Enforcing Security In Mobile Computing”, filed Mar. 15, 2013; and U.S. Non-Provisional application Ser. No. 13/735,885 entitled “Systems and Methods for Enforcing Security in Mobile Computing”, filed Jan. 7, 2013, each of which is hereby incorporated by reference herein in its entirety.
- The present invention is in the technical field of computer security. More particularly, the present invention is in the technical field of identifying a computing device and/or the user of such a device using credentials stored on an authentication token and/or based on the location of the computing device.
- As mobile devices, such as smartphones and tablet computers, become more powerful and ubiquitous, it becomes advantageous to use them for an increasing number of applications. In some instances, these applications may require that sensitive information be stored in nonvolatile memory on the device. It is therefore important to be able to protect said information stored on the device both while the device is running and while the device is powered off. Securing a device may include authenticating a user's credentials.
- An additional element of security may be added based on the location of the device. For example, a user of a device may be able to authenticate on the device, but may not get access to certain files unless the device is in a certain location. Similarly, a user may be able to authenticate on the device, but may be prohibited from accessing certain applications while in a certain location (e.g. prohibited from texting while in a car).
- Embodiments provide a plurality of beacons in the environment, wherein each beacon emits a localization signal. A system receives data derived from a localization signal from a user device and determines the initial location of a user device within the environment based on the localization signal. A plurality of devices are also located within the environment, each of which may provide user interaction. A first user interaction is provided via a first device, where the first device is selected from the plurality based on an initial location of the user device. An updated location of the user device is determined, and a second user interaction is provided via a second device, where the second device is selected from the plurality based on the updated location of the user device. Embodiments also operate by providing multiple user devices, each of which emits and receives localization signals. Each device may include a display, a receiver, and an emitter. At least some devices also include a modification system which modifies the display of the device based on localization signals received from other devices.
- Tracking user devices may also enable additional applications for the user devices. For example, location information may be used for gathering input for customer analytics, enabling the user devices to behave as universal remotes, and enhancing multiplayer games.
-
FIG. 1 depicts certain components of a system that may be utilized in providing a secure device. -
FIG. 2 depicts a workflow for securing a computing system based on the presence of users of a group of users. -
FIG. 3 depicts a workflow for securing a computing system based on a user authenticated on a computing device in proximity to the computing system. -
FIG. 4 depicts a workflow for securing a device. -
FIG. 5 depicts a workflow for identifying the location of a computing device. - A platform for tracking the location of a user device may be useful for enhancing the security of the user device and other computing systems. Additionally, the location information derived from such a platform may permit additional functionality for the user device, the other computing systems or both.
- Referring to
FIG. 1 , methods and systems of a platform for tracking a user device may comprise anetwork 114, one ormore user devices 102A-C in anenvironment 120 and enabled to communicate via thenetwork 114, a locator enabled to communicate via thenetwork 114, and acomputing system 162 enabled to communicate via thenetwork 114 and to determine the location in the environment of the one ormore user devices 102A-C. In embodiments, the locator may be alocation beacon 160 enabled to receive presence information, such as a high frequency sound created by auser device 102A. In some embodiments, the locator may be a transmitter 130 enabled to send presence information, such as a high frequency sound to be received by auser device 102A, B, and/or C. In embodiments, the locator may be a plurality of locators. - In embodiments, the
user device 102A, B, and/or C may be a mobile device, such as a tablet, a mobile phone or a laptop. Theuser device 102A, B, and/or C may comprise aprocessor 164, amemory 168, anapplication 138, amicrophone 144, aspeaker 142, adisplay 154, adata 148, ascreen lock facility 104, acredential processing facility 110, an authenticationtoken reading facility 108, adevice location monitor 132 and an IRremote control facility 150. - The
computing system 162 may be a server, a workstation, a desktop, a laptop, a missile launching facility, a testing facility, a mobile device, a vehicle system and/or some other computing system. Thenetwork 114 may be one or more of a LAN, a wireless network, a wired network, and the like. - It may be imperative that the identity of the user be verified before granting access to the information stored on a device. Current solutions to this problem involve using a “screen lock” function, which requires users to enter a password or PIN before granting access to the device. However, passwords may still be a point of insecurity, since the passwords may be shared, stolen, sniffed, cracked, and/or have poor password strength. Such vulnerabilities relating to password security present a broad attack surface to malicious users. A need exists for improved solutions.
- To provide the greatest level of security, methods and systems are provided herein to prevent unauthorized users from unlocking a device, including without limitation by reducing the exposure to attacks by requiring a user to authenticate himself or herself prior to unlocking the device.
- The present invention includes a system for securing the screen lock of a device using credentials stored on an authentication token.
- The present disclosure may provide greater security than just password protection in the respect that users of a device may be required to authenticate with an external authentication token before the device allows the users to access the screen lock.
- This disclosure may increase the security of a mobile device by preventing access to the device screen lock. This may be accomplished using an external authentication token. Said tokens may provide a greater level of security by increasing the number of possible unlock combinations. For instance, a challenging password to remember may be 10 characters long, for example. By comparison, authentication tokens may provide passwords of 256 characters or longer. An example of such an authentication token is a Common Access Card (CAC). Another example of such an authentication token is a Personal Identity Verification card, such as a card implementing NIST standard FIPS 201.
- Referring to
FIG. 1 , adevice 102A may comprise ascreen lock facility 104, an authenticationtoken reading facility 108 and acredential processing facility 110. In embodiments,devices 102 B and C may also comprise such facilities and components asdevice 102A, anddevices 102B and C may also communicate with the same items as described in relation todevice 102A although such specific facilities, components, and communications may not be shown. In various embodiments described throughout, it is understood that while a specific elements, such asdevice 102A, B, and/or C is described, it is understood that a plurality of devices (or other elements) may be employed as appropriate. Thedevice 102A, B and/or C may be a mobile device, such as a mobile phone, a smartphone, a tablet, a laptop or some other device. Theoperating system 104 may be Android, bada, BlackBerry OS, iOS, Series40, Symbian OS, Windows Phone or some other operating system. Such operating systems may support built-in screen lock facilities. Thescreen lock facility 104 may require user authentication (e.g. by providing PIN, or by requiring the user to swipe to unlock, etc.) in order to authenticate the user. A customscreen lock facility 104 may be implemented as software widget that replaces or otherwise overrides the operating system's built-inscreen lock facility 104. In embodiments, thescreen lock facility 104 may be implemented either as an accessory application, or thescreen lock facility 104 may implement code for directly controlling the native screen locking functions. For example, thescreen lock facility 104 may use OptioCore code to implement a screen lock for an Android device. - In embodiments, a user may be required to authenticate on the
device 102A, B and/or C using anexternal authentication token 112 in order to access thescreen lock facility 104 on thedevice 102A, B and/or C. In embodiments, the user may also be required to authenticate on thedevice 102A, B and/or C using anexternal authentication token 112 in order to decrypt a root file system on thedevice 102A, B and/or C, and/or to use an operating system on thedevice 102A, B and/or C. When thedevice 102A, B and/or C is locked, thecredential processing facility 110 may instruct the user of thedevice 102A, B and/or C to provide authentication information via the authenticationtoken reading facility 108. The authenticationtoken reading facility 108 may read authentication information from a physical device. The information may be anauthentication token 112. Theauthentication token 112 may be stored on a Common Access Card, Personal Identity Verification card (e.g. a card implementing NIST standard FIPS 201), a smartcard, a USB token, a SD card, a key fob, or some other physical device. Theauthentication token 112 may be a cryptographic key, such as a public key certificate, a digital signature, biometric data, a user id, or some other authentication information. In some embodiments, the authenticationtoken reading facility 108 may be an external device connected to thedevice 102A, B and/or C. In such embodiments, the authenticationtoken reading facility 108 may be configured to communicate with thedevice 102A, B and/or C via a communications medium, such as Bluetooth, near field communication (“NFC”), Wi-Fi, or other wired or wireless communications medium. For example, the authenticationtoken reading facility 108 may be a smartcard reader connected to thedevice 102A, B and/or C via Bluetooth. - In embodiments, the
device 102A, B and/or C may be enabled to connect to anetwork 114. In such embodiments, authenticating the user on thedevice 102A, B and/or C may include communicating first, second, and third authentication data over a short-range wireless signal between thedevice 102A, B and/or C and an in-location access point, wherein the second authentication data from thedevice 102A, B and/or C is based on the first authentication data from the in-location access point and the third authentication data from the in-location access point is based on the second authentication data; communicating a fourth authentication data between the mobile device and a web-based information system, wherein the fourth authentication data comprises at least a portion of at least one of the first, second, and third authentication data; and authenticating access to network accessible content by the mobile device with the web-based information system. The first authentication data may be theauthentication token 112 data. The web-based information system may be aproxy 118. For example, the authenticationtoken reading facility 108 associated with thedevice 102A, B and/or C may receive theauthentication token 112 via NFC, send the second authentication data to the in-location access point via Bluetooth heartbeat messages, receive the third authentication data as responses to the Bluetooth heartbeat messages, send a request to aweb proxy 118 that includes the third authentication data (e.g. in the form of hypertext transport protocol (HTTP) request with such data in the HTTP headers, for example), and receive access to the device if theproxy 118 determines that the user is authorized, based on the third authentication data. - The
credential processing facility 110 may determine whether theauthentication token 112 data is valid and whether the user is permitted to access thescreen lock facility 104, based on the user providedauthentication token 112. Credential processing may include local or distributed processing, using processing and storage capabilities of the authenticationtoken device 112 or using remote (e.g., server-based) processing capabilities. Upon determining that theauthentication token 112 data is valid and the user is permitted to access thescreen lock facility 104, thedevice 102A, B and/or C may present the user with the unlock screen and prompt the user for a password and/or PIN. Upon determining that theauthentication token 112 data is invalid and/or the user is not permitted to access thescreen lock facility 104, thecredential processing facility 110 may prevent thedevice 102A, B and/or C from presenting the user with the unlock screen. In some embodiments, thecredential processing facility 110 could erase part or all of the data stored on thedevice 102A, B and/or C upon a predetermined number of failed authentication attempts. - For example, the user of the
device 102A, B and/or C may provide a smartcard to be read by the authenticationtoken reading facility 108 associated with thedevice 102A, B and/or C, where the smartcard includes the user'sauthentication token 112. Theauthentication token 112 data may be one or more X.509 certificates. In this example, the authenticationtoken reading facility 108 may read theauthentication token 112 from the smartcard and provide theauthentication token 112 information to thecredential processing facility 110. Thecredential processing facility 110 may, then, determine whether the user is authorized to access thescreen lock facility 104, based on theauthentication token 112 information. - Referring now to
FIG. 4 , the process for authenticating the user may comprise locking adevice 402; prompting a user to provide an authentication token 404; reading, by the device, theauthentication token 408; determining, by a credential processing facility, whether the user is authorized to access the device, based on the authentication token 410; and granting a user access to the device's unlock screen. In some embodiments, granting the user access to the device's unlock screen may include presenting the unlock screen, if the user is determined to be authorized by the credential processing facility 414. In some embodiments, presenting the unlock screen 414 may include prompting the user for a password and/or PIN, if the user is determined to be authorized by the credential processing facility. If the user is unauthorized to access the device's unlock screen, based on the authentication token, then the device may prohibit access to the unlock screen by the user 412. - In retail store environments, such as BestBuy, Wal-Mart, Target, and others, the appropriation of customer service representatives to particular areas of the store is typically performed on a predetermined schedule. For example, at any given time, three customer service reps may be assigned to the electronics section, while two others are in home goods. Currently, there is no effective method for determining, in real time, the number of customer service representatives that are needed in a given product section of a store. The most effective method currently employed is for customers to actively seek out existing personnel. However, this can become problematic in times of heavy volume, since personnel in one section may become overwhelmed while personnel in another section are idle. It would be advantageous for a retail store to be able to dynamically appropriate personnel based on number of customers in a particular area.
- Therefore, it may be useful to implement a system for identifying the locations and distribution of customers within a store and tracking the same based on the locations of the customers' mobile computing devices. Location services, such as GPS provide reliable and precise location information when the receiver has a clear view of the sky. However, these technologies are not effective indoors, making them unsuitable for use in determining concentrations of customers at particular product areas within a retail store. Instead, it may be desirable to utilize a network of transmitters, transmitting an electronic heartbeat message to establish a precise location for each user in the store.
- Referring to
FIG. 1 , in embodiments, methods and systems of a customer service representative dispatch system to locate and track customers in anenvironment 120 may comprise anetwork 114; one ormore transmitters 130A-C located in theenvironment 120 and enabled to emit an electronic heartbeat message and to connect to thenetwork 114; auser device 102A-C enabled to connect to thenetwork 114 and to send location information based on a received electronic heartbeat message; and aserver 122 enabled to connect to thenetwork 114. Theserver 114 may be comprised of a customer location monitor facility 124 enabled to track theuser device 102A-C based on the location information, and a customerservice dispatch facility 128 enabled to dispatch a customer service representative based on theuser device 102A-C location. In embodiments,such device 102 A, B and/or C may further comprise additional devices as would suit the number of users in the environment. - In embodiments, the
transmitter 130A-C may be enabled to send an electronic heartbeat message. Such heartbeat message may utilize one or more protocols, such as, but not limited to Wi-Fi, Bluetooth, Bluetooth LE, ultrasonic sound, Zigbee and the like. In embodiments, a transmitter may broadcast a unique identifier. For example, if anenvironment 120 has a plurality oftransmitters 130A-C, each transmitter 130 may broadcast its own unique identifier so that the location within theenvironment 120 of a customer'smobile device 102A, B and/or C may be determined based on the unique identifier(s) received by the customer'smobile device 102A, B and/or C. - In some embodiments, the customer
mobile computing device 102A-C may be a cellular phone, such as an iPhone, a Motorola Droid Razr Maxx, a HTC One X, a Samsung Focus 2, a Samsung Gusto 2, or some other cellular phone. In other embodiments, the customer mobile computing device may be a tablet, such as an iPad, an Asus Eee Pad Transformer Prime, a Sony Tablet S, a Samsung Galaxy Tab 10.1, or some other tablet. - The
server 122 may be comprised of a customer location monitor facility 124 and a customerservice dispatch facility 128. The server may be connected to the one ormore transmitters 130A-C in the environment via anetwork 114. Thenetwork 114 may be one or more of a wireless network, a wired network, a LAN, a WAN, a MAN or some other network. In some embodiments, theserver 122 may also be connected to adata store 134.Such data store 134 may be a database or file system. - The customer
mobile computing device 102A, B, and/or may be enabled to use the unique identifier received from atransmitter 130A, B and/or C to determine the said customer mobile computing device's 102A, B and/or C location in theenvironment 120. In some embodiments, the step of determining may involve uploading the unique identifier by the customermobile computing device 102A, B and/or C to theserver 122 via thenetwork 114. The customer location monitor facility 124 on theserver 122 may use the unique identifier to look up in adata store 134 the location of thetransmitter 130 A, B and/or C transmitting said unique identifier, where thedata store 134 may store the unique identifier associated with each such transmitter and the location of each such transmitter. In embodiments, determining the location of the customermobile computing device 102A, B and/or C may comprise the customermobile computing device 102A, B and/or C comparing a first identifier with a local data store, such as a database or file system, containing a plurality of identifiers and corresponding location information to determine the location of afirst transmitter 130A. The location of thefirst transmitter 130A may then be used to determine the location of the customermobile computing device 102A, B and/or C based on one or more of the configuration parameters of said electronic heartbeat message and thetransmitter 130A (e.g. the range of the transmitter's signal, a triangulation based on a plurality of heartbeat messages from a plurality of transmitters, etc.). - In embodiments, once the location of the customer
mobile computing device 102A has been determined, said location ofmobile computing device 102A, B and/or C may be accessed at theserver 122. In some embodiments, theserver 122 may not be thesame server 122 that determined the location of the customermobile computing device 102A, B and/or C. For example, the customer location monitor facility 124 may determine the location of the customermobile computing device 102A, B and/or C and pass the location information to thecustomer dispatch facility 128. The customerservice dispatch facility 128 on theserver 122 may then, automatically or otherwise, dispatch one or more customer service representatives to the location in theenvironment 120 where the customermobile computing devices 102A, B and/or C is located. The customerservice dispatch facility 128 may also be enabled to perform business intelligence based on the customermobile computing devices 102A, B and/or C location information. For example, the customerservice dispatch facility 128 may determine that there are a sufficient number of customer service representatives in the vicinity of the customermobile computing devices 102A, B and/or C. In another example, the customerservice dispatch facility 128 may determine that there are more customers in a different location in the environment and that one or more customer service representatives in the vicinity of the customermobile computing devices 102A, B and/or C should be dispatched to a location of greater need in theenvironment 120. In embodiments, a person may actively monitor the system and/or data therefrom and may dispatch personnel based on the same. The step of dispatching could occur in other ways as well. - Referring now to
FIG. 5 , the process for identifying the location of a user device may comprise entering a shopping environment by a user with a device 502, transmitting a heartbeat message by atransmitter 504, receiving the heartbeat message by the user device 508, determining the user device's location based on the heartbeat message 510, dispatching to a location one or more customer service representatives based on the number of devices at the user device's location 512. As discussed above, the environment may be a store, an arena, a mall, or some other shopping environment. Similarly, as discussed above, the user device may be a mobile computing device, such as a mobile phone or a tablet. As also discussed above, the heartbeat message may include a unique identifier. In embodiments, the unique identifier may be location-related information (e.g. the coordinates of the transmitter, the name of a section or some other location-related information). - In embodiments, the heartbeat message may comprise one or more of a unique identifier, a location identifier and/or some other identifier information. In embodiments, determining the user device's location based on the heartbeat message 510 may comprise determining the location by the user device. For example and as discussed above, the user device may determine its location by comparing the heartbeat message to data in a local data store. In embodiments, such local data store may reside on the user device. In some embodiments, determining the user device's location based on the heartbeat message 510 may comprise determining the location by a server. For example and as discussed above, the user device may receive a heartbeat message with a unique identifier from a transmitter, transmit the unique identifier to a server via a network, and the server may determine the location of user device based on the received unique identifier.
- In embodiments, dispatching to a location one or more customer service representatives based on the number of devices at the user device's location 512 may further comprise determining a heat map of user devices in the shopping environment, determining a heat map of customer service representatives in the shopping environment, determining a redistribution of customer service representatives by comparing the two heat maps, and dispatching to a location or more customer service representatives. For example, if the user device is located in an area with a ratio of customers-to-customer service representatives is over a specified threshold, a customer service representative may be dispatched to that location to provide additional assistance. The step of dispatching may occur automatically using an automated dispatch system, or could include a person actively monitoring the system and dispatching personnel as appropriate. The step of dispatching could occur in other ways as well. Determining a redistribution of customer service representatives may further comprise a business intelligence analysis. For example, the server may perform one or more of the following steps in connection with determining the redistribution of customer service representatives: record a customer shopping pattern, record a customer service representative redistribution outcome, analyze a customer shopping pattern, analyze a customer service representative redistribution outcome, or some other business intelligence action.
- Businesses may also benefit from the ubiquity of mobile devices and networks by using information regarding the locations of user devices to dispense coupons for encouraging users in certain locations.
- Referring to
FIG. 1 , in embodiments, systems and methods for dispensing coupons based on the location of a user may comprise providing auser device 102 A, B and/or C, which may comprise adisplay 154 and amicrophone 144, and which may execute anapplication 138; providing atransmitter 130A, B and/or C, wherein thetransmitter 130A, B and/or C may be enabled to emit a high frequency sound and may be located in anenvironment 120; receiving, by themicrophone 144 on thedevice 102A, B and/or C, a high frequency sound from thetransmitter 130A, B and/or C; and altering thedisplay 154, by theapplication 138, to provide a coupon, based on the one or more of the characteristics and contents of the high frequency sound. In embodiments, thetransmitter 130A, B and/or C may be a plurality oftransmitters 130A-C. In embodiments, thedisplay 154 may be a touch screen. The transmitter 130 may be a speaker. The characteristics and contents of the high frequency sound may include location information of thetransmitter 130A, B and/or C, location information of an item in the environment (e.g. the location of a good for sale in a store), a timestamp, the frequency, a pattern of the high frequency sound, or some other characteristics and contents. - For example, the
user device 102A, B and/or C may execute anapplication 138 that runs in the background and that monitors themicrophone 144 for high frequency sounds. When theapplication 138 determines that themicrophone 144 has received a broadcast from a speaker within a retail store, theapplication 138 may change thedisplay 154 to depict a coupon, such as in a web browser or other application, for use in the retail store. - In some embodiments, the
transmitter 130A, B and/or C may emit a high frequency sound to alter one or more of a sale, transaction, lease, offer for sale, proposed transaction, or other information. Such alteration may be a change to the sale price, the characteristics of a sale, lease, or other transaction. For example, thetransmitter 130A, B and/or C may be located in a store in the vicinity of a particular good that the store is marketing heavily. When theapplication 138 determines that themicrophone 144 has received a broadcast from thetransmitter 130A, B and/or C, theapplication 138 may change the sale price for the good and the like. - In embodiments, the high frequency sound emitted by the
transmitter 130A, B and/or C may include an information associated with a product or category of products located in proximity with the transmitter 130. For example, the transmitter 130 may be located near a particular television or brand of televisions, and the high frequency sound emitted by the transmitter 130 may include information regarding discounts on such televisions. - In embodiments, when the
application 138 determines that themicrophone 144 has received the high frequency sound emitted by thetransmitter 130A, B and/or C, theapplication 138 may send information related to the high frequency sound to aserver 122. The information may be one or more characteristics and contents of the high frequency sound. Theserver 122 may include acoupon analytics facility 158. Thecoupon analytics facility 158 may, based on the information received from theapplication 138, determine a coupon to be displayed on thedevice display 154 and send such coupon to thedevice 102A, B and/or C via thenetwork 114. Additionally, thecoupon analytics facility 158 may be enabled to direct thetransmitter 130A, B and/or C to emit a particular high frequency sound in order to change the response of theapplication 138. Returning to the example above with thetransmitter 130A, B and/or C near the televisions, thecoupon analytics facility 158 may direct thetransmitter 130A, B and/or C to change the high frequency sound it emits so that anapplication 138 would display a new sales price or an offer for a discount on an existing price. In such embodiments, the coupon analytics facility's 158 direction to atransmitter 130A, B and/or C to emit a particular high frequency sound may be based on one or more of marketing input, inventory input, a timer input, customer location input, other customer data input, or other inputs. - Currently, large retail locations do not have a good method for analyzing the movements of customers within a store. This kind of information could be extremely valuable to commercial organizations that typically operate in large spaces, helping them to arrange the store layout in such a way that improves customer experience, increases purchases and reduces lost sales to other retailers, such as e-commerce platforms. Furthermore, such information could also allow retailers to deliver targeted advertisements based on previous customer interest in products and services.
- As described above, businesses may track customers in a retail space in order to dispatch customer service representatives. Tracking customers may also be useful for analyzing the behavior of the customers
- Referring again to
FIG. 1 , methods and systems of analyzing customer behavior based on tracking customer locations may comprise providing atransmitter 130 A, B and/or C in anenvironment 120 wherein such transmitter is enabled to emit a high frequency sound signal; providing one or more customers each with auser device 102 A, B and/or C comprising amicrophone 144 enabled to receive a high frequency sound signal, and wherein theuser device 102 A, B and/or C is enabled to send data based on the received high frequency sound signal; providing acomputing system 162, wherein thecomputing system 162 is enabled to receive data from eachsuch user device 102A, B and/or C and to determine theuser device 102A, B and/or C location in theenvironment 120 based on such received data; and analyzing theuser device 102A, B and/or C location information by thecomputing system 162 to identify useful characteristics. In embodiments,such device 102A, B and/or C may further comprise additional devices as would suit the number of users in the environment. Such analysis may include one or more of generating a heat map based on where the user spent time in theenvironment 120, comparing what the user purchased against the heat map, totaling the time user spent in theenvironment 120, comparing what the user purchased against other users, comparing the user heat map with other heat maps, or other analyses. Based on the analysis, the business for whom the analysis is performed may perform one or more of push data to customers (e.g. coupons, updated sales or marketing materials, product comparison information, etc.), optimize the layout of the business (e.g. move products to be highlighted to certain end caps or other high-traffic areas), provide information to vendors (e.g. customer heat map information related to the vendors' products, etc.) and use the analysis for other business purposes. - For example, a grocery store may have high frequency emitting transmitters located in several aisles to provide the customers devices with location information. The customers devices could transmit periodic updates to a
server 122 connected via the store'swireless network 114. The store'sserver 122 may analyze the customer location data received to identify customer movement patterns. The customer movement patterns to be used, for example, by a consultant, to reorganize the layout of the store in order to make a typical customer's movement path more efficient or draw customer attention to certain sections of the store to increase revenue and customer experience. - Methods and systems of a customer service representative dispatch system may be used to locate and track customers in an environment. Such methods and systems may be associated with analyzing customer behavior based on tracking customer locations as described herein, for example. By way of example, the determination to dispatch a customer service representative may be based on the results of analyzing customer behavior based on tracking customer locations. In this example, based on the analysis of the customer behavior, a business may note that there is not much customer traffic near where a popular consumer good is being sold, and, therefore, may dispatch one or more customer service representatives to that area to help customers find the good.
- Methods and systems for dispensing coupons based on the location of a user may be used to track customers in an environment and offer for sale some good in the environment. Such methods and systems may be associated with analyzing customer behavior based on tracking customer locations. By way of example, the determination to dispense a coupon may be based on the results of analyzing customer behavior based on tracking customer locations, as described herein, for example. In this example, based on the analysis of the customer behavior, the business may determine that one or more users with certain heat map patterns are less likely to buy certain goods sold by the business. Based on this determination, the business may issue a coupon for such goods to users who exhibit similar or the same patterns.
- As devices become more mobile and networks become more ubiquitous, device users have a growing number of options of outputs to connect to their devices. For example, many home audio or theater systems are networked and may contain multiple speakers and other output devices throughout a home. Similarly, offices have multiple output sources for users, such as monitors at a user's desk and a projector in a meeting room. Often, users of these systems will move throughout their environment, whether at home or in the office, and switch their output device. In the home user example, the user may move through their home while listening to or otherwise consuming content. Currently, such users must manually turn on and turn off output devices based on the room they are entering or leaving respectively. It would be advantageous for such a system to be able to automatically enable or disable output devices based on the detected location of the user. Again, providing transmitters throughout an environment may provide a desirable solution for such automatic switching.
- Referring again to
FIG. 1 , in embodiments, systems and methods for automatic switching of output devices based on a location may comprise providing auser device 102A, B and/or C in anenvironment 120, providing a plurality ofoutput devices 140A-B located in theenvironment 120, providing one ormore transmitters 130A-C in the environment for determining the location of theuser device 102A, B and/or C within theenvironment 120, streaming a media stream to afirst output device 140A, determining the location of theuser device 102A, B and/or C in theenvironment 120, and switching a media stream from afirst output device 140A to asecond output device 140B, based on the location determination. The media stream may be an audio stream (e.g. a radio broadcast, a podcast, mp3 audio, audio played from a CD, or some other media stream), a video stream (e.g. images to be displayed on a monitor), an audio/video stream (e.g. a movie, a television show or some other combined audio and video stream), or some other media stream. - The
environment 120 may be a home, an office, or some other environment. Theuser device 102 A, B and/or C may be a mobile device, such as a cell phone, a personal assistant, a tablet, a laptop or some other mobile device. Theuser device 102A, B and/or C may be comprised of amicrophone 144. An output device 140 may be a monitor, a television, an audio component, a printer, a media device (e.g. a Roku, an Apple TV, a PlayStation, an Xbox, etc.), anotheruser device 102B, or some other output device. - In embodiments, the
user device 102A, B and/or C, the transmitter 130, and the output devices may be connected via anetwork 114. Thenetwork 114 may be wired or wireless. Thenetwork 114 may be a LAN. - In embodiments, the
transmitters 130A-C may be enabled to emit a message and/or data. In embodiments, such message may be a high frequency. As previously noted, such message may utilize one or more protocols, such as, but not limited to Wi-Fi, Bluetooth, Bluetooth LE, ultrasonic sound, Zigbee and the like. - In embodiments, the user may select an output device 140 for the
user device 102A, B and/or C. Selecting the output device 140 may include one or more of selecting theinitial output device 140A and/or B, selecting a default output device 140, selecting theoutput device 140A and/or B for the current location, selecting theoutput device 140A and/or B for a different location and selecting theoutput device 140 A and/or B for some other purpose. Selecting anoutput device 140 A and/or B may also include defining a location within theenvironment 120. - When a user with a
user device 102 A, B and/or C enters into an environment, the user device may be enabled to receive a message from afirst transmitter 130A. For example, the user may enter the living room in his home and his cell phone may receive a high frequency sound from afirst transmitter 130A located in the living room. In this example, the user device's 102 A, B and/or C may receive, via amicrophone 144, the high frequency sound from thefirst transmitter 130A. If the user has anoutput device 140A, for example, associated with that location, thedevice 102 A, B and/or C, upon receiving the high frequency sound may route output to the associatedoutput device 140A. In this example, theoutput device 140A may be a set of speakers located in the living room. If, in this example, the user has asecond transmitter 130B located in his bedroom and walks to his bedroom, theuser device 102A, B and/or C may receive a high frequency sound from thesecond transmitter 130B located in the bedroom. Upon receiving the new high frequency sound and theuser device 102A, B and/or C may switch the media stream to thesecond output device 140B associated with the bedroom, for example, a different set of speakers in the bedroom. - In some embodiments, the media stream may be from a remote computing system (e.g. a streaming media device, like a Roku, or a cable box, etc.). In such embodiments, the
user device 102A may, in response to receiving a high frequency sound from atransmitter 130A, B and/or C, may transmit data (e.g. observed characteristics of the high frequency sound) to a remote computing system, such as aserver 122. The remote computing system may associate the (e.g. the characteristics of the high frequency sound) with anoutput device 140A and/or B and, then switch the media stream to the output device 140. - In embodiments, the
device 102A, B and/or C may be further enabled to determine when it no longer is receiving a message from afirst transmitter 130A. When thedevice 102A, B and/or C no longer is receiving a message from thefirst transmitter 130A, thedevice 102A, B and/or C may communicate such determination to theserver 122. In response to receiving such determination, theserver 122 may terminate the media stream to thefirst output device 140A. - As devices become more mobile and networks become more ubiquitous, device users also have a growing number of devices that may be controlled remotely, either by IR signals or over some other protocol. As previously noted, many home audio or theater systems are networked and may contain multiple speakers and other output devices throughout a home, and such devices may be controlled remotely, including by other devices on the network. Since the user already has one device, it may be desirable to enable that device to control the other devices in the environment. Furthermore, it may be desirable to enable the device to automatically detect its location and configure itself to control the devices in the same location. In the home user example, the user may start watching a media stream in one room and use the user device to control the home media system in the first room. If the user moves to another room to finish watching the media, it may be useful to have the user device identify the location change and reconfigure which devices it is set to control. Currently, such users must either keep separate controls for each room, or manually switch a controller based on the room they are entering or leaving. It would be advantageous for such a system to be able to automatically enable or disable the control of the output devices based on the detected location of the user. Again, providing transmitters throughout an environment may provide a desirable solution for such automatic switching.
- Referring still to
FIG. 1 , in embodiments, systems and methods for automatic switching of the controls of a plurality of output devices based on a location may comprise providing auser device 102A, B and/or C in anenvironment 120, providing a plurality ofoutput devices 140A-B located in theenvironment 120, providing one ormore transmitters 130A-C in the environment for determining the location of theuser device 102A, B and/or C within theenvironment 120, providing a control interface for thefirst output device 140A on thedisplay 154 of theuser device 102A, B and/or C, determining the location of theuser device 102A, B and/or C in theenvironment 120, and modifying the IRremote control facility 150 and thedisplay 154 of theuser device 102A, B and/or C to control of asecond output device 140B, based on the location determination. As noted above, theuser device 102A, B and/or C may include a microphone. Thetransmitters 130A-C may be enabled to emit a message and may each be associated with one of theoutput devices 140A-B. In some embodiments, a transmitter 130 may be physically located within close proximity to the output device 140 controlled by the user device 102. For example, thetransmitter 130A, B and/or C associated with a speaker system in one room may be located adjacent to that speaker system, and thetransmitter 130A, B and/or C associated with a speaker system in another room would be located adjacent to that speaker. - In some embodiments, the systems and methods may further comprise altering an output from the
user device 102A, B and/or C based on the characteristics or contents of the message received from atransmitter 130A, B and/or C. For example, theuser device 102 A, B and/or C may be enabled to, based on the frequency of sound received from atransmitter 130A, B and/or C, download and configure specific IR remote control facility codes for controlling an output device in theenvironment 120 via the IRremote control facility 150 on theuser device 102A, B and/or C. - Modifying the IR remote control facility on the
user device 102A, B and/or C may further comprise determining which output device 140 is located at a location and associated with atransmitter 130A, B and/or C, based on the message from thetransmitter 140A and/or B, then modifying the control interface. Modifying the control interface may also include changing one or more output signals and/or protocols from theuser device 102A, B and/or C for controlling thecorrect output device 140A and/or B. For example, theuser device 102A, B and/or C may, but is not limited to, determine its location based upon a high frequency sound from atransmitter 130A, B and/or C in the room, and adjust the volume of all speakers within a home in order to maintain a consistent volume to the user as they move from room to room. - Returning the example of the user at home, the user may walk into the living room. The
user device 102A, B and/or C may receive a message from afirst transmitter 130A located in the living room. Upon receiving the message from thefirst transmitter 130A, the device may modify the IRremote control facility 150 to control anoutput device 140A and modify thedisplay 154 to depict controls for anoutput device 140A in the living room, such as a home theater system. The controls depicted on thedisplay 154 may include the controls available via the IRremote control facility 150, such as a volume control, frequency tuning control, a device input control, a power control, a DVD player control or some other device control. - Staying with this example, when the user walks into the kitchen, the
user device 102A, B and/or C may receive a message from asecond transmitter 130B located in the kitchen. Upon receiving the message from thesecond transmitter 130B, the device may modify the IRremote control facility 150 and thedisplay 154 to depict controls for anoutput device 140B in the kitchen, which may be an iPod docking station, for example. - Methods and systems of automatically switching of output devices based on a location may be used to track a user in environment and provide dynamic output selection, based on the user's location. Such methods and systems may be associated with automatically switching the controls for a plurality of output devices. For example, upon determining that a user has moved from one location associated with a first output device to a second location associated with a second output device, the user device may automatically switch the media stream from the first to the second output device and automatically switch the controls and the display on the user device from the controls associated with the first output device to those associated with the second output device. In embodiments, such determination may be made by receiving at the device a high frequency message from a transmitter associated with a specific output device, as described herein, for example.
- In addition to the foregoing security and business benefits discussed above, locating and tracking a user based on the location of the user's device may have game and/or multiplayer game applications. This may provide an inexpensive way of introducing potentially asymmetric information dissemination to players of a multiplayer game. Asymmetric gameplay is an emerging sector of the game industry, and has the potential to drive a large amount of innovation, as evidenced by the development of the Wii U.
- Referring still to
FIG. 1 , in embodiments, systems and methods of detecting players for a multiplayer game, may comprise a multiplayer game; afirst user device 102A for playing the game and comprising adisplay 154, amicrophone 144 and aspeaker 142 for emitting a high frequency sound signal; and asecond user device 102B for playing the multiplayer game and comprising adisplay 154, amicrophone 144 and aspeaker 142 for emitting a high frequency sound signal, wherein thesecond user device 102B is enabled to alter the content of the first user device's102 A display 154, based on a high frequency sound signal emitted by thespeaker 142 of thefirst user device 102A. The multiplayer game may be anapplication 138 executing on thedevice 102A, B and/or C. The multiplayer game may be a coop game, a competitive coop game, a sports game, a deathmatch-style game, a capture-the-flag-style game, a king-of-the-hill-style game, or some other multiplayer game. Thedevice 102A, B and/or C may be a game system, such as Wii U, an Xbox, a PlayStation 3, a PlayStation Vita, a Gameboy, a tablet (e.g. an iPad) with a game installed, a controller for a game system (e.g. a Wii U GamePad) or some other game system and/or component of a game system. Altering the content of the first user device's102 A display 154 based on a high frequency sound signal emitted by thespeaker 142 of thefirst user device 102A may include altering thedisplay 154 to show location information related to the user of thesecond user device 102B. - For example, two players may be playing a multiplayer game on a Wii U in the same room. The players' characters may be located in different parts of the same game map and the first player may be hiding from the second player. The first player's controller may emit a sound, such as a high frequency sound based on the first player's character's location in the game map. The second player's GamePad may receive the sound, analyze it in whole and/or in part, and update the map information displayed on the GamePad to indicate the general direction of the first player's character. In embodiments, the emitted sound may alter one or more of various devices and/or one or more of various devices may emit a sound for altering content of the display of one or more devices based on an analysis of the sound and/or an analysis of the sound and other data and/or one or more items. In embodiments, devices such as a game headset could alter the intensity of an indicator and/or display to reflect a detected amplitude of a specific sound frequency, and may thereby indicate the proximity of other players.
- In some situations, it may be beneficial to ensure that all the users of a particular system are present in the same location before granting any user access to a system. A potential example of this need arises from a testing scenario in which no user should be granted an unfair advantage over another user by being granted access to test materials before any other user. Another example involves the authorization of particular actions that carry significant consequences, such as launching a missile or overriding a safety control. In such cases, it may be necessary to guarantee that the required users are physically present together before allowing a specific action (e.g. launching a missile) to be executed. This may be accomplished by securing access to some resource, such as a computing system, until all the required users are located in the vicinity of the resource. Tracking and confirming the locations of the required users may be accomplished with a location beacon to track unique sounds emitted by enabled devices carried by the required users.
- Referring again to
FIG. 1 , in embodiments, methods and systems of authenticating a group of users may comprise a plurality ofuser devices 102A, B and/or C, each comprising a speaker for emitting a high frequency sound signal; a location beacon in anenvironment 120 and enabled to receive a plurality of high frequency sound signals; and a computing system enabled to communicate with the location beacon and comprising a location determination facility that is enabled to provide access to the computing system based on a determination that every user of a plurality of users is located within the environment. The high frequency sound signals may be unique for eachuser device 102A, B and/or C, for example in a givenenvironment 120, so that eachuser device 102A, B and/or C may be uniquely identified. For example, eachdevice 102A, B and/or C may be assigned a high frequency sound signal with a unique variation in frequency or other acoustic characteristic. - For example, a testing environment may have a fixed
location beacon 160 that is configured to receive ultrasonic signals. The students who are required to be present for the test may each have auser device 102A, B and/or C. Eachdevice 102A, B and/or C may have aspeaker 142 enabled to produce an ultrasonic signal. Thelocation beacon 160 and theuser devices 102 A, B and/or C may each be connected to acomputing system 162 via awireless network 114. Theuser devices 102A, B and/or C may receive from the computing system 162 a specific ultrasonic signal configuration, unique to each device 102. For example, when a user signs up for the test, thecomputing system 162 may send said user'sdevice 102A, B and/or C the specific ultrasonic signal configuration to be emitted for a period before the exam and during the exam. Eachdevice 102A, B and/or C may then transmit the specific signal with the configuration received from saidcomputing system 162. Thelocation beacon 160 may provide updates to thecomputing system 162 regarding the ultrasonic signals from the devices received by thelocation beacon 160. Thecomputing system 162 may track which students are located in the testing environment based on the updates from thelocation beacon 160. Once thecomputing system 162 determines that all the required students are located in the testing environment, thecomputing system 162 may begin the test and grant the students access to the test materials. - Referring now to
FIG. 2 , authenticating a group of users may comprise providing a computing system, including a fixed location beacon configured to receive signals 202; entering of an environment by a user with a user device 204; receiving by the computing system via the location beacon of a signal from the user device 208; determining by the computing system whether all the users required in a group are in the environment, based on the received signals 210; providing access to the computing system if all the required users are in the environment 214; and accessing of the computing system by the group of users 218. In embodiments, if not all the required users are in the environment, all the users may be prohibited from accessing the computing system 212. In embodiments, where not all users are in the environment at a particular time, the system may continue receive signals from users until all users are present or some other defied time. - An additional application for location-based security is to secure access to data in a file system (i.e. read, write, execute, modify, delete, copy, and/or transmit) based on a user's location.
- Referring again to
FIG. 1 , systems and methods of controlling access to data on a device may comprise afirst user device 102A, comprising aspeaker 142 enabled to send a heartbeat message; asecond user device 102B, comprising amicrophone 144 enabled to receive a heartbeat message and aspeaker 142, enabled to send a first data, including data to indicate receipt or failure to receive the heartbeat message; and athird user device 102C enabled to send a second data upon receiving the first data from thesecond user device 102B and determining that the second data may be sent to the second user device. In embodiments, the determination of whether the second data may be sent to the second device may be a location-related determination. For example, the determination may be based whether the location of the second device is considered secure (e.g. based on where, whether the user of the second device is authorized to access the second data in the given location, whether the second data is related to the location of the second user device (e.g. the user of the second device may be permitted to access a second data related to a room of museum based on whether the second device is located in the relevant room in the museum), or some other location-related determination. - For example, a user device could pick up a high frequency sound broadcast by a speaker device, identify the frequency of the sound, and report the frequency to a remote file server in an effort to gain access to files on that server. The server would then process the reported data and determine whether to grant access to the mobile device.
- In some embodiments, the heartbeat message may be sent as a high frequency sound embedded in television or radio media. A
mobile device 102A, B and/or C may be enabled to receive such media and use the high frequency sound to request content from aserver 122 that may be relevant advertising content. - By way of example, in embodiments, controlling access to first data stored on a first device may include sending a heartbeat message from a second device to a third device (having memory, a processing unit and a microphone), prompting the third device to send second data to a fourth device (which may also be the first device) said data including, but not limited to, information signifying receipt or failure to receive heartbeat messages, so that the fourth device may process the second data in whole or in part to determine whether access to the first data should be granted to the third device. Such access may include the ability to read, copy, modify, delete and/or transmit said data. In embodiments, such firs, second, third, fourth, etc, device may comprise a plurality of devices such that messages are send to and from one or more devices at the steps described. In embodiments, a mobile device may pick up a high frequency sound broadcast by a speaker device, identify the frequency, and report the frequency to a remote file server in an effort to gain access to files on that server. The server may then process the reported data and determine whether to grant access to the mobile device.
- An additional application for location-based security is to secure access to an application based on a user's location.
- Referring again to
FIG. 1 , methods and systems of controlling access to anapplication 138 on adevice 102A, B and/or C may comprise providing atransmitter 130A, B and/or C enabled to emit a high frequency sound; providing auser device 102A, B and/or C enabled to receive a high frequency sound; and blocking access by a user of theuser device 102A, B and/or C to an application on the user device, while theuser device 102A, B and/or C receives the high frequency sound from thetransmitter 130A, B and/or C. - For example, the
transmitter 130A, B and/or C may be located in a car, truck, other automobile, or other piece of machinery around which certain kinds of phone usage might be dangerous. In this example, thetransmitter 130A, B and/or C may broadcast a signal whenever the automobile is not in park, so that the driver's mobile device disables theSMS messaging application 138 during the operation of the automobile. - Methods and systems of controlling access to data on a device may be used to track users and either grant or block access to files, based on where the user is located. Such methods and systems may be associated with granting and/or blocking user access to one or more applications, based on where the user is located. Per an example above, a user located in a car may not be permitted to use the SMS application on the user's device while the car is running Additionally, the user may be permitted to access certain media files while in the car (e.g. MP3s) and prohibited from accessing certain other media files while in the car (e.g. video files). Tracking a player of game based on the location of the player's device is a species of the foregoing. So, for example, a function or data in multiplayer game may be associated with detecting or locating another player. Such function or data may be enabled or disabled, based on the proximity of a first player to a second player of the game.
- The process of entering user credentials before being granted access to a computing system is a necessary yet tedious process. In many systems, it is imperative that a user is authenticated before being shown sensitive data in order to ensure, for example, privacy, confidentiality, or security. If only performed once, this process is trivial, but in environments where users must log in and log out of systems 20, 30, 40 or more times per day, this trivial amount of time becomes significant. It therefore becomes advantageous to streamline this process and provide a different authentication medium.
- Mobile devices, such as smartphones, tablets and other mobile computing devices are becoming ubiquitous and, when tied to an individual, possess the capability to authenticate a user in a different system. A secured computing system may be maintained without requiring a nearby user to repeat the step of logging in by tracking the previously authenticated user's location.
- Referring to
FIG. 3 , systems and methods of logging in a current user to a computing device based on the user location may comprise providing a computing system enabled to communicate with a user's device 302; storing, by the computing system, the user's credentials capable of authenticating the user 304; authenticating on the computing system by the user with the user's device 308; determining by the computing system the location of the user based on the location of the user's device 310 (such location determination mechanism could be a system such as GPS or could be a proprietary system implemented using a technology such as ultrasonic sound, RF signals, Bluetooth signals, Wi-Fi signals, NFC tags, and/or the like); confirming the user's credentials by the user's device 312; transmitting by the user's device the user's credentials to the computing system 314; authenticating the user by the computing system if the determination is made that the user's device is in proximity to the computing system 320; and providing the user access to the computing system 322. In embodiments, confirming the users credentials with the user device 312 may comprise requiring the user to re-authenticate if the user's credentials are not confirmed. In embodiments, if the user device is not within proximity to the computing system, the computing system may prohibit access by the user 318 and may require the user re-authenticate. In embodiments, the user may be required to confirm transmission of credentials before transmission. In embodiments, a user may be authenticated without user intervention. In embodiments, authenticating the user may include authenticating the user based on one or more of a token, a password, a PIN, biometrics (e.g. retina scan, thumbprint, voice recognition, etc.). - Referring again to
FIG. 1 , thecomputing system 162 may be a server, such as a web server, a file server, an application server, a mail server, an SaaS, an IaaS, a PaaS, a media server, a FTP server or some other server. In other embodiments, thecomputing system 162 may be a laptop, a terminal, a desktop, a workstation, a game console or some other computing system. The user'sdevice 102 A, B and/or C may be a smartphone, tablet or other mobile device. - The
user device 102A, B and/or C may determine its location by way of a location determination mechanism. This location determination mechanism could be a system such as GPS or could be a proprietary system implemented using a technology such as ultrasonic sound, RF signals, Bluetooth signals, Wi-Fi signals, NFC tags, and/or the like, such that the location of theuser device 102A, B and/or C can be determined to be close to the location of thecomputing system 162. Upon determining, that theuser device 102A, B and/or C is in proximity to thecomputing system 162, authentication credentials are automatically transmitted to thecomputing system 162 either directly or indirectly. In embodiments, transmitting the authentication credentials may include transmitting them via anetwork 114, which may be a wireless LAN. Thecomputing system 162 may then authenticate the user and may grant access to the secured content without user intervention at thecomputing system 162. In some embodiments, theuser device 102A, B and/or C may require the user to confirm the transmission of credentials before transmission of credentials from theuser device 102A, B and/or C to thecomputing system 162. In some embodiments, upon determining that theuser device 102 A, B and/or C is no longer present at the location corresponding to thecomputing system 162, thecomputing system 162 may automatically de-authenticate the user. A person of skill in the art would understand that arbitrary levels of security may be added to this system without significant deviation from the aforementioned embodiments, such as encryption, device authentication, and the like. - While only a few embodiments of the present invention have been shown and described, it will be obvious to those skilled in the art that many changes and modifications may be made thereunto without departing from the spirit and scope of the present invention as described in the following claims. All patent applications and patents, both foreign and domestic, and all other publications referenced herein are incorporated herein in their entireties to the full extent permitted by law.
- The methods and systems described herein may be deployed in part or in whole through a machine that executes computer software, program codes, and/or instructions on a processor. The present invention may be implemented as a method on the machine, as a system or apparatus as part of or in relation to the machine, or as a computer program product embodied in a computer readable medium executing on one or more of the machines. In embodiments, the processor may be part of a server, cloud server, client, network infrastructure, mobile computing platform, stationary computing platform, or other computing platform. A processor may be any kind of computational or processing device capable of executing program instructions, codes, binary instructions and the like. The processor may be or may include a signal processor, digital processor, embedded processor, microprocessor or any variant such as a co-processor (math co-processor, graphic co-processor, communication co-processor and the like) and the like that may directly or indirectly facilitate execution of program code or program instructions stored thereon. In addition, the processor may enable execution of multiple programs, threads, and codes. The threads may be executed simultaneously to enhance the performance of the processor and to facilitate simultaneous operations of the application. By way of implementation, methods, program codes, program instructions and the like described herein may be implemented in one or more thread. The thread may spawn other threads that may have assigned priorities associated with them; the processor may execute these threads based on priority or any other order based on instructions provided in the program code. The processor, or any machine utilizing one, may include memory that stores methods, codes, instructions and programs as described herein and elsewhere. The processor may access a storage medium through an interface that may store methods, codes, and instructions as described herein and elsewhere. The storage medium associated with the processor for storing methods, programs, codes, program instructions or other type of instructions capable of being executed by the computing or processing device may include but may not be limited to one or more of a CD-ROM, DVD, memory, hard disk, flash drive, RAM, ROM, cache and the like.
- A processor may include one or more cores that may enhance speed and performance of a multiprocessor. In embodiments, the process may be a dual core processor, quad core processors, other chip-level multiprocessor and the like that combine two or more independent cores (called a die).
- The methods and systems described herein may be deployed in part or in whole through a machine that executes computer software on a server, client, firewall, gateway, hub, router, or other such computer and/or networking hardware. The software program may be associated with a server that may include a file server, print server, domain server, internet server, intranet server, cloud server and other variants such as secondary server, host server, distributed server and the like. The server may include one or more of memories, processors, computer readable media, storage media, ports (physical and virtual), communication devices, and interfaces capable of accessing other servers, clients, machines, and devices through a wired or a wireless medium, and the like. The methods, programs or codes as described herein and elsewhere may be executed by the server. In addition, other devices required for execution of methods as described in this application may be considered as a part of the infrastructure associated with the server.
- The server may provide an interface to other devices including, without limitation, clients, other servers, printers, database servers, print servers, file servers, communication servers, distributed servers, social networks and the like. Additionally, this coupling and/or connection may facilitate remote execution of program across the network. The networking of some or all of these devices may facilitate parallel processing of a program or method at one or more location without deviating from the scope of the disclosure. In addition, any of the devices attached to the server through an interface may include at least one storage medium capable of storing methods, programs, code and/or instructions. A central repository may provide program instructions to be executed on different devices. In this implementation, the remote repository may act as a storage medium for program code, instructions, and programs.
- The software program may be associated with a client that may include a file client, print client, domain client, internet client, intranet client and other variants such as secondary client, host client, distributed client and the like. The client may include one or more of memories, processors, computer readable media, storage media, ports (physical and virtual), communication devices, and interfaces capable of accessing other clients, servers, machines, and devices through a wired or a wireless medium, and the like. The methods, programs or codes as described herein and elsewhere may be executed by the client. In addition, other devices required for execution of methods as described in this application may be considered as a part of the infrastructure associated with the client.
- The client may provide an interface to other devices including, without limitation, servers, other clients, printers, database servers, print servers, file servers, communication servers, distributed servers and the like. Additionally, this coupling and/or connection may facilitate remote execution of program across the network. The networking of some or all of these devices may facilitate parallel processing of a program or method at one or more location without deviating from the scope of the disclosure. In addition, any of the devices attached to the client through an interface may include at least one storage medium capable of storing methods, programs, applications, code and/or instructions. A central repository may provide program instructions to be executed on different devices. In this implementation, the remote repository may act as a storage medium for program code, instructions, and programs.
- The methods and systems described herein may be deployed in part or in whole through network infrastructures. The network infrastructure may include elements such as computing devices, servers, routers, hubs, firewalls, clients, personal computers, communication devices, routing devices and other active and passive devices, modules and/or components as known in the art. The computing and/or non-computing device(s) associated with the network infrastructure may include, apart from other components, a storage medium such as flash memory, buffer, stack, RAM, ROM and the like. The processes, methods, program codes, instructions described herein and elsewhere may be executed by one or more of the network infrastructural elements. The methods and systems described herein may be adapted for use with any kind of private, community, or hybrid cloud computing network or cloud computing environment, including those which involve features of software as a service (SaaS), platform as a service (PaaS), and/or infrastructure as a service (IaaS).
- The methods, program codes, and instructions described herein and elsewhere may be implemented on a cellular network having multiple cells. The cellular network may either be frequency division multiple access (FDMA) network or code division multiple access (CDMA) network. The cellular network may include mobile devices, cell sites, base stations, repeaters, antennas, towers, and the like. The cell network may be a GSM, GPRS, 3G, EVDO, mesh, or other networks types.
- The methods, programs codes, and instructions described herein and elsewhere may be implemented on or through mobile devices. The mobile devices may include navigation devices, cell phones, mobile phones, mobile personal digital assistants, laptops, palmtops, netbooks, pagers, electronic books readers, music players and the like. These devices may include, apart from other components, a storage medium such as a flash memory, buffer, RAM, ROM and one or more computing devices. The computing devices associated with mobile devices may be enabled to execute program codes, methods, and instructions stored thereon. Alternatively, the mobile devices may be configured to execute instructions in collaboration with other devices. The mobile devices may communicate with base stations interfaced with servers and configured to execute program codes. The mobile devices may communicate on a peer to peer network, mesh network, or other communications network. The program code may be stored on the storage medium associated with the server and executed by a computing device embedded within the server. The base station may include a computing device and a storage medium. The storage device may store program codes and instructions executed by the computing devices associated with the base station.
- The computer software, program codes, and/or instructions may be stored and/or accessed on machine readable media that may include: computer components, devices, and recording media that retain digital data used for computing for some interval of time; semiconductor storage known as random access memory (RAM); mass storage typically for more permanent storage, such as optical discs, forms of magnetic storage like hard disks, tapes, drums, cards and other types; processor registers, cache memory, volatile memory, non-volatile memory; optical storage such as CD, DVD; removable media such as flash memory (e.g. USB sticks or keys), floppy disks, magnetic tape, paper tape, punch cards, standalone RAM disks, Zip drives, removable mass storage, off-line, and the like; other computer memory such as dynamic memory, static memory, read/write storage, mutable storage, read only, random access, sequential access, location addressable, file addressable, content addressable, network attached storage, storage area network, bar codes, magnetic ink, and the like.
- The methods and systems described herein may transform physical and/or or intangible items from one state to another. The methods and systems described herein may also transform data representing physical and/or intangible items from one state to another.
- The elements described and depicted herein, including in flow charts and block diagrams throughout the figures, imply logical boundaries between the elements. However, according to software or hardware engineering practices, the depicted elements and the functions thereof may be implemented on machines through computer executable media having a processor capable of executing program instructions stored thereon as a monolithic software structure, as standalone software modules, or as modules that employ external routines, code, services, and so forth, or any combination of these, and all such implementations may be within the scope of the present disclosure. Examples of such machines may include, but may not be limited to, personal digital assistants, laptops, personal computers, mobile phones, other handheld computing devices, medical equipment, wired or wireless communication devices, transducers, chips, calculators, satellites, tablet PCs, electronic books, gadgets, electronic devices, devices having artificial intelligence, computing devices, networking equipment, servers, routers and the like. Furthermore, the elements depicted in the flow chart and block diagrams or any other logical component may be implemented on a machine capable of executing program instructions. Thus, while the foregoing drawings and descriptions set forth functional aspects of the disclosed systems, no particular arrangement of software for implementing these functional aspects should be inferred from these descriptions unless explicitly stated or otherwise clear from the context. Similarly, it will be appreciated that the various steps identified and described above may be varied, and that the order of steps may be adapted to particular applications of the techniques disclosed herein. All such variations and modifications are intended to fall within the scope of this disclosure. As such, the depiction and/or description of an order for various steps should not be understood to require a particular order of execution for those steps, unless required by a particular application, or explicitly stated or otherwise clear from the context.
- The methods and/or processes described above, and steps associated therewith, may be realized in hardware, software or any combination of hardware and software suitable for a particular application. The hardware may include a general purpose computer and/or dedicated computing device or specific computing device or particular aspect or component of a specific computing device. The processes may be realized in one or more microprocessors, microcontrollers, embedded microcontrollers, programmable digital signal processors or other programmable device, along with internal and/or external memory. The processes may also, or instead, be embodied in an application specific integrated circuit, a programmable gate array, programmable array logic, or any other device or combination of devices that may be configured to process electronic signals. It will further be appreciated that one or more of the processes may be realized as a computer executable code capable of being executed on a machine readable medium.
- The computer executable code may be created using a structured programming language such as C, an object oriented programming language such as C++, or any other high-level or low-level programming language (including assembly languages, hardware description languages, and database programming languages and technologies) that may be stored, compiled or interpreted to run on one of the above devices, as well as heterogeneous combinations of processors, processor architectures, or combinations of different hardware and software, or any other machine capable of executing program instructions.
- Thus, in one aspect, methods described above and combinations thereof may be embodied in computer executable code that, when executing on one or more computing devices, performs the steps thereof. In another aspect, the methods may be embodied in systems that perform the steps thereof, and may be distributed across devices in a number of ways, or all of the functionality may be integrated into a dedicated, standalone device or other hardware. In another aspect, the means for performing the steps associated with the processes described above may include any of the hardware and/or software described above. All such permutations and combinations are intended to fall within the scope of the present disclosure.
- While the disclosure has been disclosed in connection with the preferred embodiments shown and described in detail, various modifications and improvements thereon will become readily apparent to those skilled in the art. Accordingly, the spirit and scope of the present disclosure is not to be limited by the foregoing examples, but is to be understood in the broadest sense allowable by law.
- The use of the terms “a” and “an” and “the” and similar referents in the context of describing the disclosure (especially in the context of the following claims) is to be construed to cover both the singular and the plural, unless otherwise indicated herein or clearly contradicted by context. The terms “comprising,” “having,” “including,” and “containing” are to be construed as open-ended terms (i.e., meaning “including, but not limited to,”) unless otherwise noted. Recitation of ranges of values herein are merely intended to serve as a shorthand method of referring individually to each separate value falling within the range, unless otherwise indicated herein, and each separate value is incorporated into the specification as if it were individually recited herein. All methods described herein can be performed in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context. The use of any and all examples, or exemplary language (e.g., “such as”) provided herein, is intended merely to better illuminate the disclosure and does not pose a limitation on the scope of the disclosure unless otherwise claimed. No language in the specification should be construed as indicating any non-claimed element as essential to the practice of the disclosure.
- While the foregoing written description enables one of ordinary skill to make and use what is considered presently to be the best mode thereof, those of ordinary skill will understand and appreciate the existence of variations, combinations, and equivalents of the specific embodiment, method, and examples herein. The disclosure should therefore not be limited by the above described embodiment, method, and examples, but by all embodiments and methods within the scope and spirit of the disclosure.
- All documents referenced herein are hereby incorporated by reference.
Claims (20)
1. A method of adjusting a user interaction with an environment based on a user location, comprising:
providing a plurality of beacons in the environment, wherein each beacon emits a localization signal;
receiving data derived from the localization signal emitted by at least one of the beacons from a user device;
determining an initial location of a user device within the environment based on the localization signal;
providing a first user interaction via a first device of a plurality of devices in the environment, wherein the first device is selected from the plurality of devices based on the initial location of the user device;
determining an updated location of the user device within the environment;
providing a second user interaction via a second device of the plurality of devices in the environment, wherein the second device is selected from the plurality of devices based on the updated location of the user device.
2. The method of claim 1 , wherein the beacons emit localization signals via one or more of Wi-Fi, Bluetooth, Bluetooth LE, ultrasonic sound, or Zigbee.
3. The method of claim 1 , wherein providing a first user interaction comprises streaming a media stream to the first device.
4. The method of claim 1 , wherein providing a second user interaction comprises streaming a media stream to the second device.
5. The method of claim 4 , further comprising terminating the first user interaction upon providing the second user interaction.
6. The method of claim 1 , further comprising providing a control interface on a user device for one or more transmitters, and wherein providing a first user interaction comprises configuring the control interface to control the first device.
7. The method of claim 6 , wherein providing a second user interaction comprises modifying the control interface to control the second device.
8. The method of claim 1 , further comprising providing a configurable display on a user device, wherein providing a first user interaction comprises configuring the configurable display to display a coupon associated with the first device and wherein providing a second user interaction comprises reconfiguring the configurable display to display a coupon associated with the second device.
9. A system for adjusting user device behavior based on user device location in a multiple device environment, comprising:
a first user device comprising:
a first display;
a first receiver for receiving localization signals; and
a first emitter for emitting a first localization signal; and
a second user device comprising:
a second display;
a second receiver for receiving localization signals;
a second emitter for emitting a second localization signal; and
a modification system configured to modify the second display based on a received first localization signal.
10. The system of claim 9 , wherein the receiver comprises a microphone, the emitter comprises a speaker, and the localization signal is a high-frequency acoustic signal.
11. The system of claim 9 , wherein the first user device and second user device interact with a software application.
12. The system of claim 9 , wherein the first user device and second user device are connected to a third user device which executes the software application.
13. The system of claim 9 , wherein the first localization signal is uniquely assigned to the first user device.
14. The system of claim 13 , wherein the second localization signal is uniquely assigned to the second user device.
15. The system of claim 14 , further comprising a third user device, wherein the third user device is configured to grant the first user device access to the third user device upon simultaneous detection of the first localization signal and the second localization signal.
16. The system of claim 9 , wherein the first and second user devices execute a multiplayer game application.
17. A system comprising:
a plurality of beacons, wherein each of the plurality of beacons emits a localization signal;
a user device comprising:
a receiver for receiving localization signals; and
a transmitter for transmitting data related to at least one localization signal received by the receiver;
a plurality of user interaction devices; and
a control module comprising:
a receiver for receiving data related to at least one localization signal from the user device;
a location monitor facility configured to determine a location of the user device based on the received data related to at least one localization signal; and
a location update facility configured to select a user interaction device of the plurality of user interaction devices, wherein the user interaction device is selected based on the determined location of the user device.
18. The system of claim 17 , wherein the selected user interaction device is reconfigured based on the determined location of the user device.
19. The system of claim 17 , wherein the localization signals are emitted via one or more of Wi-Fi, Bluetooth, Bluetooth LE, ultrasonic sound, or Zigbee.
20. The system of claim 17 , wherein the plurality of user interaction devices comprise a plurality of game controllers and wherein the control module executes a multiplayer game software application.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/210,397 US20140283136A1 (en) | 2013-03-13 | 2014-03-13 | Systems and methods for securing and locating computing devices |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361780408P | 2013-03-13 | 2013-03-13 | |
US201361779931P | 2013-03-13 | 2013-03-13 | |
US201361781252P | 2013-03-14 | 2013-03-14 | |
US201361785109P | 2013-03-14 | 2013-03-14 | |
US201361790728P | 2013-03-15 | 2013-03-15 | |
US14/210,397 US20140283136A1 (en) | 2013-03-13 | 2014-03-13 | Systems and methods for securing and locating computing devices |
Publications (1)
Publication Number | Publication Date |
---|---|
US20140283136A1 true US20140283136A1 (en) | 2014-09-18 |
Family
ID=51529248
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/209,950 Abandoned US20140282992A1 (en) | 2013-03-13 | 2014-03-13 | Systems and methods for securing the boot process of a device using credentials stored on an authentication token |
US14/210,397 Abandoned US20140283136A1 (en) | 2013-03-13 | 2014-03-13 | Systems and methods for securing and locating computing devices |
US14/210,240 Abandoned US20140273857A1 (en) | 2013-03-13 | 2014-03-13 | Systems and methods to secure short-range proximity signals |
US14/210,376 Expired - Fee Related US9578445B2 (en) | 2013-03-13 | 2014-03-13 | Systems and methods to synchronize data to a mobile device based on a device usage context |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/209,950 Abandoned US20140282992A1 (en) | 2013-03-13 | 2014-03-13 | Systems and methods for securing the boot process of a device using credentials stored on an authentication token |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/210,240 Abandoned US20140273857A1 (en) | 2013-03-13 | 2014-03-13 | Systems and methods to secure short-range proximity signals |
US14/210,376 Expired - Fee Related US9578445B2 (en) | 2013-03-13 | 2014-03-13 | Systems and methods to synchronize data to a mobile device based on a device usage context |
Country Status (1)
Country | Link |
---|---|
US (4) | US20140282992A1 (en) |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120072595A1 (en) * | 2010-09-17 | 2012-03-22 | Printeron Inc. | System and method for updating printer location information field |
US20150271278A1 (en) * | 2014-03-20 | 2015-09-24 | Casio Computer Co., Ltd. | Display device connected to network, display system and storage medium |
US20150363122A1 (en) * | 2013-01-17 | 2015-12-17 | Denso Corporation | Vehicle device |
US9246913B2 (en) * | 2014-06-19 | 2016-01-26 | Verizon Patent And Licensing Inc. | Sharing content using a dongle device |
US9363670B2 (en) | 2012-08-27 | 2016-06-07 | Optio Labs, Inc. | Systems and methods for restricting access to network resources via in-location access point protocol |
US20160366562A1 (en) * | 2015-06-11 | 2016-12-15 | Honeywell International Inc. | System and method for locating devices in predetermined premises |
US20170012964A1 (en) * | 2014-09-29 | 2017-01-12 | Identity Over Ip | Providing authentication of control instructions from a control device to a remotely-controllable physical interaction device using a remote control authentication token |
US9578445B2 (en) | 2013-03-13 | 2017-02-21 | Optio Labs, Inc. | Systems and methods to synchronize data to a mobile device based on a device usage context |
US9609020B2 (en) | 2012-01-06 | 2017-03-28 | Optio Labs, Inc. | Systems and methods to enforce security policies on the loading, linking, and execution of native code by mobile applications running inside of virtual machines |
US9712530B2 (en) | 2012-01-06 | 2017-07-18 | Optio Labs, Inc. | Systems and methods for enforcing security in mobile computing |
US9773107B2 (en) | 2013-01-07 | 2017-09-26 | Optio Labs, Inc. | Systems and methods for enforcing security in mobile computing |
US9774998B1 (en) * | 2013-04-22 | 2017-09-26 | Amazon Technologies, Inc. | Automatic content transfer |
US9787681B2 (en) | 2012-01-06 | 2017-10-10 | Optio Labs, Inc. | Systems and methods for enforcing access control policies on privileged accesses for mobile devices |
US9999091B2 (en) | 2015-05-12 | 2018-06-12 | D&M Holdings, Inc. | System and method for negotiating group membership for audio controllers |
US10198586B1 (en) * | 2014-09-17 | 2019-02-05 | Securus Technologies, Inc. | Provisioning of digital media files to resident media devices in controlled-environment facilities |
US10262331B1 (en) | 2016-01-29 | 2019-04-16 | Videomining Corporation | Cross-channel in-store shopper behavior analysis |
US10325294B2 (en) * | 2014-12-10 | 2019-06-18 | Meijer, Inc. | System and method for notifying customers of checkout queue activity |
US10354262B1 (en) | 2016-06-02 | 2019-07-16 | Videomining Corporation | Brand-switching analysis using longitudinal tracking of at-shelf shopper behavior |
US10387896B1 (en) | 2016-04-27 | 2019-08-20 | Videomining Corporation | At-shelf brand strength tracking and decision analytics |
US10963893B1 (en) | 2016-02-23 | 2021-03-30 | Videomining Corporation | Personalized decision tree based on in-store behavior analysis |
US11080733B2 (en) * | 2019-12-18 | 2021-08-03 | Visa International Service Association | Methods and systems for harnessing location based data for making market recommendations |
US11113022B2 (en) | 2015-05-12 | 2021-09-07 | D&M Holdings, Inc. | Method, system and interface for controlling a subwoofer in a networked audio system |
US11209972B2 (en) | 2015-09-02 | 2021-12-28 | D&M Holdings, Inc. | Combined tablet screen drag-and-drop interface |
US11237530B2 (en) * | 2015-03-05 | 2022-02-01 | Google Llc | Smart-home automation system that suggests or automatically implements selected household policies based on sensed observations |
US11264039B2 (en) * | 2019-11-18 | 2022-03-01 | Beijing Xiaomi Intelligent Technology Co., Ltd. | Space division method and apparatus, and storage medium |
US11284256B2 (en) * | 2019-03-25 | 2022-03-22 | Nanning Fugui Precision Industrial Co., Ltd. | Method and system for automatic access to WI-FI network |
US11343292B2 (en) * | 2019-11-29 | 2022-05-24 | Ricoh Company, Ltd. | Information processing apparatus, information processing system, and remote sharing method |
US20220166757A1 (en) * | 2019-04-09 | 2022-05-26 | Visa International Service Association | Proximity interaction system including secure encryption scheme |
US11354683B1 (en) | 2015-12-30 | 2022-06-07 | Videomining Corporation | Method and system for creating anonymous shopper panel using multi-modal sensor fusion |
US20220179936A1 (en) * | 2020-12-03 | 2022-06-09 | Lenovo (Singapore) Pte. Ltd. | Vehicle device authorization |
US20220247824A1 (en) * | 2021-01-30 | 2022-08-04 | Zoom Video Communications, Inc. | Intelligent configuration of personal endpoint devices |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8837728B2 (en) * | 2012-10-16 | 2014-09-16 | The Boeing Company | Server algorithms to improve space based authentication |
JP6314595B2 (en) * | 2014-03-28 | 2018-04-25 | 日本電気株式会社 | POSITIONING DEVICE, POSITIONING SYSTEM, POSITIONING METHOD, AND POSITIONING PROGRAM |
US20150326617A1 (en) * | 2014-05-06 | 2015-11-12 | DoNotGeoTrack, Inc. | Privacy Control Processes for Mobile Devices, Wearable Devices, other Networked Devices, and the Internet of Things |
US9922294B2 (en) | 2014-08-25 | 2018-03-20 | Accenture Global Services Limited | Secure short-distance-based communication and enforcement system |
US9514589B2 (en) | 2014-08-25 | 2016-12-06 | Accenture Global Services Limited | Secure short-distance-based communication and access control system |
US9633493B2 (en) | 2014-08-25 | 2017-04-25 | Accenture Global Services Limited | Secure short-distance-based communication and validation system for zone-based validation |
US10009745B2 (en) | 2014-08-25 | 2018-06-26 | Accenture Global Services Limited | Validation in secure short-distance-based communication and enforcement system according to visual objects |
US9589402B2 (en) | 2014-08-25 | 2017-03-07 | Accenture Global Services Limited | Restricted area access control system |
KR101539292B1 (en) * | 2014-10-28 | 2015-07-27 | 주식회사 퍼플즈 | Method of transmitting and receiving data in a wireless communication system using bluetooth low energy beacon and apparatus thereof |
CN104320265B (en) * | 2014-11-21 | 2017-10-24 | 北京奇虎科技有限公司 | Authentication method and authentication device for software platform |
US9608999B2 (en) | 2014-12-02 | 2017-03-28 | Accenture Global Services Limited | Smart beacon data security |
US20160337353A1 (en) * | 2015-05-11 | 2016-11-17 | Interactive Intelligence Group, Inc. | System and method for multi-factor authentication |
KR102300583B1 (en) * | 2015-06-26 | 2021-09-09 | 삼성전자주식회사 | A service providing method using a beacon and electronic apparatus thereof |
US10074225B2 (en) | 2016-04-18 | 2018-09-11 | Accenture Global Solutions Limited | Validation in secure short-distance-based communication and enforcement system according to visual object flow |
US11206223B2 (en) | 2016-06-30 | 2021-12-21 | Microsoft Technology Licensing, Llc | Signal upload optimization |
US10713355B2 (en) * | 2016-10-21 | 2020-07-14 | Qatar University | Method and system for adaptive security in cloud-based services |
KR101763904B1 (en) * | 2016-12-30 | 2017-08-14 | (주)엠더블유스토리 | System and method for synchronizing and centralizing of the file |
US11546443B2 (en) * | 2020-09-11 | 2023-01-03 | Microsoft Technology Licensing, Llc | Connected focus time experience that spans multiple devices |
US20220353084A1 (en) * | 2021-05-03 | 2022-11-03 | Brex Inc. | Multifactor authentication through cryptography-enabled smart cards |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030149874A1 (en) * | 2002-02-06 | 2003-08-07 | Xerox Corporation | Systems and methods for authenticating communications in a network medium |
US20050136845A1 (en) * | 2003-09-22 | 2005-06-23 | Fujitsu Limited | Method and apparatus for location determination using mini-beacons |
US20060092037A1 (en) * | 2004-10-29 | 2006-05-04 | Raja Neogi | Operation and control of wireless appliance networks |
US20080235587A1 (en) * | 2007-03-23 | 2008-09-25 | Nextwave Broadband Inc. | System and method for content distribution |
US20080278408A1 (en) * | 1999-05-04 | 2008-11-13 | Intellimat, Inc. | Floor display systems and additional display systems, and methods and computer program products for using floor display systems and additional display system |
US20100121567A1 (en) * | 2005-05-09 | 2010-05-13 | Ehud Mendelson | System and method for providing indoor navigation and special local base sevice application for malls stores shopping centers and buildings utilize Bluetooth |
US20110151955A1 (en) * | 2009-12-23 | 2011-06-23 | Exent Technologies, Ltd. | Multi-player augmented reality combat |
US20120215637A1 (en) * | 2010-09-13 | 2012-08-23 | Hermann Mark E | System and method for performing social networking and loyalty program functions at a venue |
US20120258730A1 (en) * | 2010-11-29 | 2012-10-11 | Qualcomm Incorporated | Estimating access terminal location based on beacon signals from femto cells |
US20130111039A1 (en) * | 2011-10-26 | 2013-05-02 | Conrad Savio Jude Gomes | Apparatus systems and methods for proximity-based service discovery and session sharing |
US20130291056A1 (en) * | 2012-04-10 | 2013-10-31 | Edward J. Gaudet | Quorum-based secure authentication |
Family Cites Families (95)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6317868B1 (en) | 1997-10-24 | 2001-11-13 | University Of Washington | Process for transparently enforcing protection domains and access control as well as auditing operations in software components |
US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
US6467086B1 (en) | 1999-07-20 | 2002-10-15 | Xerox Corporation | Aspect-oriented programming |
US6901429B2 (en) | 2000-10-27 | 2005-05-31 | Eric Morgan Dowling | Negotiated wireless peripheral security systems |
US7461144B1 (en) | 2001-02-16 | 2008-12-02 | Swsoft Holdings, Ltd. | Virtual private server with enhanced security |
US7207041B2 (en) | 2001-06-28 | 2007-04-17 | Tranzeo Wireless Technologies, Inc. | Open platform architecture for shared resource access management |
US8726294B2 (en) | 2010-10-01 | 2014-05-13 | Z124 | Cross-environment communication using application space API |
GB0123403D0 (en) | 2001-09-28 | 2001-11-21 | Tamesis Ltd | Publish subscribe system |
US20030140088A1 (en) * | 2002-01-24 | 2003-07-24 | Robinson Scott H. | Context-based information processing |
US20050060365A1 (en) * | 2002-01-24 | 2005-03-17 | Robinson Scott L. | Context-based information processing |
US8136155B2 (en) | 2003-04-01 | 2012-03-13 | Check Point Software Technologies, Inc. | Security system with methodology for interprocess communication control |
US20040255145A1 (en) * | 2003-05-06 | 2004-12-16 | Jerry Chow | Memory protection systems and methods for writable memory |
US7135635B2 (en) | 2003-05-28 | 2006-11-14 | Accentus, Llc | System and method for musical sonification of data parameters in a data stream |
US8880893B2 (en) | 2003-09-26 | 2014-11-04 | Ibm International Group B.V. | Enterprise information asset protection through insider attack specification, monitoring and mitigation |
US20050138416A1 (en) | 2003-12-19 | 2005-06-23 | Microsoft Corporation | Object model for managing firewall services |
US7574709B2 (en) | 2004-04-30 | 2009-08-11 | Microsoft Corporation | VEX-virtual extension framework |
US7530093B2 (en) | 2004-04-30 | 2009-05-05 | Microsoft Corporation | Securing applications and operating systems |
US20050246453A1 (en) | 2004-04-30 | 2005-11-03 | Microsoft Corporation | Providing direct access to hardware from a virtual environment |
US7584502B2 (en) | 2004-05-03 | 2009-09-01 | Microsoft Corporation | Policy engine and methods and systems for protecting data |
US7490245B2 (en) * | 2004-07-24 | 2009-02-10 | Lenovo (Singapore) Pte. Ltd. | System and method for data processing system planar authentication |
US20060048226A1 (en) | 2004-08-31 | 2006-03-02 | Rits Maarten E | Dynamic security policy enforcement |
US7681226B2 (en) | 2005-01-28 | 2010-03-16 | Cisco Technology, Inc. | Methods and apparatus providing security for multiple operational states of a computerized device |
WO2006093917A2 (en) * | 2005-02-28 | 2006-09-08 | Trust Digital | Mobile data security system and methods |
US8266232B2 (en) | 2005-10-15 | 2012-09-11 | International Business Machines Corporation | Hardware processing of commands within virtual client computing environment |
US9864752B2 (en) | 2005-12-29 | 2018-01-09 | Nextlabs, Inc. | Multilayer policy language structure |
US20070186274A1 (en) | 2006-02-07 | 2007-08-09 | Matsushita Electric Industrial Co., Ltd. | Zone based security model |
US8151323B2 (en) | 2006-04-12 | 2012-04-03 | Citrix Systems, Inc. | Systems and methods for providing levels of access and action control via an SSL VPN appliance |
US8387048B1 (en) | 2006-04-25 | 2013-02-26 | Parallels IP Holdings GmbH | Seamless integration, migration and installation of non-native application into native operating system |
US7865934B2 (en) | 2006-05-18 | 2011-01-04 | Microsoft Corporation | Access-control permissions with inter-process message-based communications |
CN101473333B (en) | 2006-06-21 | 2011-09-07 | 威步系统股份公司 | Method and system for intrusion detection |
KR100792287B1 (en) * | 2006-07-27 | 2008-01-07 | 삼성전자주식회사 | Method for security and the security apparatus thereof |
US7917963B2 (en) | 2006-08-09 | 2011-03-29 | Antenna Vaultus, Inc. | System for providing mobile data security |
US7966599B1 (en) | 2006-08-29 | 2011-06-21 | Adobe Systems Incorporated | Runtime library including a virtual file system |
US7774599B2 (en) | 2006-09-15 | 2010-08-10 | Panasonic Corporation | Methodologies to secure inter-process communication based on trust |
US8533530B2 (en) | 2006-11-15 | 2013-09-10 | Qualcomm Incorporated | Method and system for trusted/untrusted digital signal processor debugging operations |
GB0623101D0 (en) * | 2006-11-20 | 2006-12-27 | British Telecomm | Secure network architecture |
US8996864B2 (en) | 2006-12-22 | 2015-03-31 | Virtuallogix Sa | System for enabling multiple execution environments to share a device |
US9185123B2 (en) | 2008-02-12 | 2015-11-10 | Finsphere Corporation | System and method for mobile identity protection for online user authentication |
DE102007018096A1 (en) | 2007-04-17 | 2008-10-23 | Rohde & Schwarz Gmbh & Co. Kg | Method for determining time differences between signals measured by at least two coupled measuring devices and measuring system and corresponding switching device |
US20090025011A1 (en) | 2007-07-17 | 2009-01-22 | Tim Neil | Inter-process communication at a mobile device |
EP2034775B1 (en) * | 2007-07-27 | 2010-05-26 | Research In Motion Limited | Apparatus and methods for operation of a wireless server |
US8965992B2 (en) * | 2007-07-27 | 2015-02-24 | Blackberry Limited | Apparatus and methods for coordination of wireless systems |
US8225329B1 (en) | 2007-09-13 | 2012-07-17 | Juniper Networks, Inc. | Tail synchronized FIFO for fast user space packet access |
US8505029B1 (en) | 2007-11-26 | 2013-08-06 | Adobe Systems Incorporated | Virtual machine communication |
US8584229B2 (en) | 2007-12-21 | 2013-11-12 | Intel Corporation | Methods and apparatus supporting access to physical and virtual trusted platform modules |
US9058483B2 (en) | 2008-05-08 | 2015-06-16 | Google Inc. | Method for validating an untrusted native code module |
US8516095B2 (en) * | 2008-05-23 | 2013-08-20 | Research In Motion Limited | Remote administration of mobile wireless devices |
US8335931B2 (en) | 2008-06-20 | 2012-12-18 | Imation Corp. | Interconnectable personal computer architectures that provide secure, portable, and persistent computing environments |
US8151349B1 (en) | 2008-07-21 | 2012-04-03 | Google Inc. | Masking mechanism that facilitates safely executing untrusted native code |
US20100031252A1 (en) | 2008-07-29 | 2010-02-04 | Compuware Corporation | Method And System For Monitoring The Performance Of An Application And At Least One Storage Device For Storing Code Which Performs The Method |
US8001581B2 (en) * | 2008-12-17 | 2011-08-16 | Dell Products L.P. | Methods and systems for embedded user authentication and/or providing computing services using an information handling system configured as a flexible computing node |
US8607224B2 (en) | 2009-05-28 | 2013-12-10 | Yahoo! Inc. | System for packaging native program extensions together with virtual machine applications |
US20110055890A1 (en) | 2009-08-25 | 2011-03-03 | Gaulin Pascal | Method and system to configure security rights based on contextual information |
US8413241B2 (en) | 2009-09-17 | 2013-04-02 | Oracle America, Inc. | Integrated intrusion deflection, detection and introspection |
KR101640767B1 (en) | 2010-02-09 | 2016-07-29 | 삼성전자주식회사 | Real-time virtual reality input/output system and method based on network for heterogeneous environment |
US8938782B2 (en) | 2010-03-15 | 2015-01-20 | Symantec Corporation | Systems and methods for providing network access control in virtual environments |
US8533860B1 (en) | 2010-03-21 | 2013-09-10 | William Grecia | Personalized digital media access system—PDMAS part II |
US8887308B2 (en) | 2010-03-21 | 2014-11-11 | William Grecia | Digital cloud access (PDMAS part III) |
US8589667B2 (en) * | 2010-04-19 | 2013-11-19 | Apple Inc. | Booting and configuring a subsystem securely from non-local storage |
WO2011145119A1 (en) | 2010-05-19 | 2011-11-24 | Hughes Systique India Private Limited | Method and system for efficient inter- process communication in a high availability system |
US8874891B2 (en) * | 2010-05-20 | 2014-10-28 | Hewlett-Packard Development Company, L.P. | Systems and methods for activation of applications using client-specific data |
EP3860280A1 (en) | 2010-06-04 | 2021-08-04 | Board of Regents, The University of Texas System | Wireless communication method and appartus |
US8582423B2 (en) | 2010-08-04 | 2013-11-12 | Alcatel Lucent | Multi-chassis inter-process communication |
WO2012037479A1 (en) | 2010-09-17 | 2012-03-22 | Universal Secure Registry, Llc | Apparatus, system and method employing a wireless user-device |
US8849941B2 (en) | 2010-09-30 | 2014-09-30 | Microsoft Corporation | Virtual desktop configuration and operation techniques |
US9961550B2 (en) | 2010-11-04 | 2018-05-01 | Itron Networked Solutions, Inc. | Physically secured authorization for utility applications |
US8359016B2 (en) | 2010-11-19 | 2013-01-22 | Mobile Iron, Inc. | Management of mobile applications |
US9350809B2 (en) * | 2011-01-31 | 2016-05-24 | Nokia Technologies Oy | Method and apparatus for automatically determining communities of interest, for use over an ad-hoc mesh network, based on context information |
US8612744B2 (en) | 2011-02-10 | 2013-12-17 | Varmour Networks, Inc. | Distributed firewall architecture using virtual machines |
US9202059B2 (en) * | 2011-03-01 | 2015-12-01 | Apurva M. Bhansali | Methods, systems, and apparatuses for managing a hard drive security system |
US8769305B2 (en) | 2011-03-21 | 2014-07-01 | Moncana Corporation | Secure execution of unsecured apps on a device |
US20120255014A1 (en) | 2011-03-29 | 2012-10-04 | Mcafee, Inc. | System and method for below-operating system repair of related malware-infected threads and resources |
US8099596B1 (en) | 2011-06-30 | 2012-01-17 | Kaspersky Lab Zao | System and method for malware protection using virtualization |
US8763112B2 (en) | 2011-07-02 | 2014-06-24 | Intel Corporation | Systems and methods for power-on user authentication |
WO2013028438A1 (en) | 2011-08-22 | 2013-02-28 | Decoteau Don | System and method for dynamically assembling an application on a client device |
US8521181B2 (en) * | 2011-09-19 | 2013-08-27 | Qualcomm Incorporated | Time of arrival based positioning system |
US8966004B2 (en) | 2011-09-29 | 2015-02-24 | Comcast Cable Communications, LLC. | Multiple virtual machines in a mobile virtualization platform |
US8695060B2 (en) | 2011-10-10 | 2014-04-08 | Openpeak Inc. | System and method for creating secure applications |
US8775784B2 (en) * | 2011-11-11 | 2014-07-08 | International Business Machines Corporation | Secure boot up of a computer based on a hardware based root of trust |
US9317702B2 (en) | 2011-11-29 | 2016-04-19 | Sony Corporation | System and method for providing secure inter-process communications |
US8863129B2 (en) | 2011-12-06 | 2014-10-14 | International Business Machines Corporation | Automated caching and mirroring of immutable data in distributed virtual machines via native interface components |
US9787681B2 (en) | 2012-01-06 | 2017-10-10 | Optio Labs, Inc. | Systems and methods for enforcing access control policies on privileged accesses for mobile devices |
US9712530B2 (en) | 2012-01-06 | 2017-07-18 | Optio Labs, Inc. | Systems and methods for enforcing security in mobile computing |
US9609020B2 (en) | 2012-01-06 | 2017-03-28 | Optio Labs, Inc. | Systems and methods to enforce security policies on the loading, linking, and execution of native code by mobile applications running inside of virtual machines |
US20130312058A1 (en) | 2012-01-06 | 2013-11-21 | Optio Labs, Inc. | Systems and methods for enhancing mobile security via aspect oriented programming |
US8844036B2 (en) | 2012-03-02 | 2014-09-23 | Sri International | Method and system for application-based policy monitoring and enforcement on a mobile device |
US9191382B1 (en) | 2012-06-14 | 2015-11-17 | Google Inc. | User authentication using swappable user authentication services |
US9398519B2 (en) * | 2012-06-22 | 2016-07-19 | Apple Inc. | Beacon frame monitoring |
US8898481B1 (en) * | 2012-07-18 | 2014-11-25 | Dj Inventions, Llc | Auditable cryptographic protected cloud computing communications system |
US9584528B2 (en) * | 2012-09-06 | 2017-02-28 | Qualcomm Incorporated | Securing databases against piracy attacks |
US9507653B2 (en) | 2012-09-12 | 2016-11-29 | Microsoft Technology Licensing, Llc | Inter-process communication channel |
US8655307B1 (en) * | 2012-10-26 | 2014-02-18 | Lookout, Inc. | System and method for developing, updating, and using user device behavioral context models to modify user, device, and application state, settings and behavior for enhanced user security |
US9773107B2 (en) | 2013-01-07 | 2017-09-26 | Optio Labs, Inc. | Systems and methods for enforcing security in mobile computing |
US10152706B2 (en) | 2013-03-11 | 2018-12-11 | Cellco Partnership | Secure NFC data authentication |
US20140282992A1 (en) | 2013-03-13 | 2014-09-18 | Optio Labs, Inc. | Systems and methods for securing the boot process of a device using credentials stored on an authentication token |
-
2014
- 2014-03-13 US US14/209,950 patent/US20140282992A1/en not_active Abandoned
- 2014-03-13 US US14/210,397 patent/US20140283136A1/en not_active Abandoned
- 2014-03-13 US US14/210,240 patent/US20140273857A1/en not_active Abandoned
- 2014-03-13 US US14/210,376 patent/US9578445B2/en not_active Expired - Fee Related
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080278408A1 (en) * | 1999-05-04 | 2008-11-13 | Intellimat, Inc. | Floor display systems and additional display systems, and methods and computer program products for using floor display systems and additional display system |
US20030149874A1 (en) * | 2002-02-06 | 2003-08-07 | Xerox Corporation | Systems and methods for authenticating communications in a network medium |
US20050136845A1 (en) * | 2003-09-22 | 2005-06-23 | Fujitsu Limited | Method and apparatus for location determination using mini-beacons |
US20060092037A1 (en) * | 2004-10-29 | 2006-05-04 | Raja Neogi | Operation and control of wireless appliance networks |
US20100121567A1 (en) * | 2005-05-09 | 2010-05-13 | Ehud Mendelson | System and method for providing indoor navigation and special local base sevice application for malls stores shopping centers and buildings utilize Bluetooth |
US20080235587A1 (en) * | 2007-03-23 | 2008-09-25 | Nextwave Broadband Inc. | System and method for content distribution |
US20110151955A1 (en) * | 2009-12-23 | 2011-06-23 | Exent Technologies, Ltd. | Multi-player augmented reality combat |
US20120215637A1 (en) * | 2010-09-13 | 2012-08-23 | Hermann Mark E | System and method for performing social networking and loyalty program functions at a venue |
US20120258730A1 (en) * | 2010-11-29 | 2012-10-11 | Qualcomm Incorporated | Estimating access terminal location based on beacon signals from femto cells |
US20130111039A1 (en) * | 2011-10-26 | 2013-05-02 | Conrad Savio Jude Gomes | Apparatus systems and methods for proximity-based service discovery and session sharing |
US20130291056A1 (en) * | 2012-04-10 | 2013-10-31 | Edward J. Gaudet | Quorum-based secure authentication |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120072595A1 (en) * | 2010-09-17 | 2012-03-22 | Printeron Inc. | System and method for updating printer location information field |
US9853864B2 (en) * | 2010-09-17 | 2017-12-26 | Printeron Inc. | System and method for updating printer location information field |
US9609020B2 (en) | 2012-01-06 | 2017-03-28 | Optio Labs, Inc. | Systems and methods to enforce security policies on the loading, linking, and execution of native code by mobile applications running inside of virtual machines |
US9712530B2 (en) | 2012-01-06 | 2017-07-18 | Optio Labs, Inc. | Systems and methods for enforcing security in mobile computing |
US9787681B2 (en) | 2012-01-06 | 2017-10-10 | Optio Labs, Inc. | Systems and methods for enforcing access control policies on privileged accesses for mobile devices |
US9363670B2 (en) | 2012-08-27 | 2016-06-07 | Optio Labs, Inc. | Systems and methods for restricting access to network resources via in-location access point protocol |
US9773107B2 (en) | 2013-01-07 | 2017-09-26 | Optio Labs, Inc. | Systems and methods for enforcing security in mobile computing |
US20150363122A1 (en) * | 2013-01-17 | 2015-12-17 | Denso Corporation | Vehicle device |
US9594517B2 (en) * | 2013-01-17 | 2017-03-14 | Denso Corporation | Vehicle device |
US9578445B2 (en) | 2013-03-13 | 2017-02-21 | Optio Labs, Inc. | Systems and methods to synchronize data to a mobile device based on a device usage context |
US9774998B1 (en) * | 2013-04-22 | 2017-09-26 | Amazon Technologies, Inc. | Automatic content transfer |
US20150271278A1 (en) * | 2014-03-20 | 2015-09-24 | Casio Computer Co., Ltd. | Display device connected to network, display system and storage medium |
US9246913B2 (en) * | 2014-06-19 | 2016-01-26 | Verizon Patent And Licensing Inc. | Sharing content using a dongle device |
US9720856B2 (en) | 2014-06-19 | 2017-08-01 | Verizon Patent And Licensing Inc. | Sharing content using a dongle device |
US10198586B1 (en) * | 2014-09-17 | 2019-02-05 | Securus Technologies, Inc. | Provisioning of digital media files to resident media devices in controlled-environment facilities |
US20170012964A1 (en) * | 2014-09-29 | 2017-01-12 | Identity Over Ip | Providing authentication of control instructions from a control device to a remotely-controllable physical interaction device using a remote control authentication token |
US10325294B2 (en) * | 2014-12-10 | 2019-06-18 | Meijer, Inc. | System and method for notifying customers of checkout queue activity |
US11921477B2 (en) | 2015-03-05 | 2024-03-05 | Google Llc | Smart-home automation system that suggests or automatically implements selected household policies based on sensed observations |
US11237530B2 (en) * | 2015-03-05 | 2022-02-01 | Google Llc | Smart-home automation system that suggests or automatically implements selected household policies based on sensed observations |
US11113022B2 (en) | 2015-05-12 | 2021-09-07 | D&M Holdings, Inc. | Method, system and interface for controlling a subwoofer in a networked audio system |
US9999091B2 (en) | 2015-05-12 | 2018-06-12 | D&M Holdings, Inc. | System and method for negotiating group membership for audio controllers |
US9743252B2 (en) * | 2015-06-11 | 2017-08-22 | Honeywell International Inc. | System and method for locating devices in predetermined premises |
US20160366562A1 (en) * | 2015-06-11 | 2016-12-15 | Honeywell International Inc. | System and method for locating devices in predetermined premises |
US11209972B2 (en) | 2015-09-02 | 2021-12-28 | D&M Holdings, Inc. | Combined tablet screen drag-and-drop interface |
US11354683B1 (en) | 2015-12-30 | 2022-06-07 | Videomining Corporation | Method and system for creating anonymous shopper panel using multi-modal sensor fusion |
US10262331B1 (en) | 2016-01-29 | 2019-04-16 | Videomining Corporation | Cross-channel in-store shopper behavior analysis |
US10963893B1 (en) | 2016-02-23 | 2021-03-30 | Videomining Corporation | Personalized decision tree based on in-store behavior analysis |
US10387896B1 (en) | 2016-04-27 | 2019-08-20 | Videomining Corporation | At-shelf brand strength tracking and decision analytics |
US10354262B1 (en) | 2016-06-02 | 2019-07-16 | Videomining Corporation | Brand-switching analysis using longitudinal tracking of at-shelf shopper behavior |
US11284256B2 (en) * | 2019-03-25 | 2022-03-22 | Nanning Fugui Precision Industrial Co., Ltd. | Method and system for automatic access to WI-FI network |
US11784986B2 (en) * | 2019-04-09 | 2023-10-10 | Visa International Service Association | Proximity interaction system including secure encryption scheme |
US20220166757A1 (en) * | 2019-04-09 | 2022-05-26 | Visa International Service Association | Proximity interaction system including secure encryption scheme |
US11264039B2 (en) * | 2019-11-18 | 2022-03-01 | Beijing Xiaomi Intelligent Technology Co., Ltd. | Space division method and apparatus, and storage medium |
US11343292B2 (en) * | 2019-11-29 | 2022-05-24 | Ricoh Company, Ltd. | Information processing apparatus, information processing system, and remote sharing method |
US11080733B2 (en) * | 2019-12-18 | 2021-08-03 | Visa International Service Association | Methods and systems for harnessing location based data for making market recommendations |
US20220179936A1 (en) * | 2020-12-03 | 2022-06-09 | Lenovo (Singapore) Pte. Ltd. | Vehicle device authorization |
US20220247824A1 (en) * | 2021-01-30 | 2022-08-04 | Zoom Video Communications, Inc. | Intelligent configuration of personal endpoint devices |
US11470162B2 (en) * | 2021-01-30 | 2022-10-11 | Zoom Video Communications, Inc. | Intelligent configuration of personal endpoint devices |
Also Published As
Publication number | Publication date |
---|---|
US20140282857A1 (en) | 2014-09-18 |
US9578445B2 (en) | 2017-02-21 |
US20140282992A1 (en) | 2014-09-18 |
US20140273857A1 (en) | 2014-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140283136A1 (en) | Systems and methods for securing and locating computing devices | |
US11082504B2 (en) | Networked device authentication, pairing and resource sharing | |
US10943208B2 (en) | Methods and apparatus to emulate a toy | |
KR102139997B1 (en) | Method for reinforcing security of beacon device, system and apparatus thereof | |
US10028146B2 (en) | Management server and method for controlling device, user terminal apparatus and method for controlling device, and user terminal apparatus and control method thereof | |
US10198717B2 (en) | Parental controls | |
US10530768B2 (en) | Two-factor authentication | |
Shabtai et al. | Mobile malware detection through analysis of deviations in application network behavior | |
US20120192252A1 (en) | Method and apparatus for authorizing a user or a user device based on location information | |
EP3528153A1 (en) | Systems and methods for detecting and twarting attacks on an it environment | |
US20160119320A1 (en) | Method and system for secure deployment and use of bluetooth low energy beacons and other network devices | |
KR102103242B1 (en) | Method for tighten security of beacon device, system and apparatus thereof | |
US10582359B2 (en) | System, apparatus, and method for forming a secured network using tag devices having a random identification number associated therewith | |
CN106415572B (en) | For authorizing the secure crypto processor of the device request of connection | |
US9503965B2 (en) | Set-top box setup via near field communication | |
JP6420256B2 (en) | Restricted use authorization code | |
CN106255102B (en) | Terminal equipment identification method and related equipment | |
KR102292007B1 (en) | Network node security using short range communication | |
CN107040883B (en) | Location-based ticket redemption | |
KR102048750B1 (en) | Method and system for providing secure message | |
US9769602B2 (en) | Multi-user content distribution | |
US11474801B1 (en) | Automatic application installation based on proximity detection | |
US9936046B2 (en) | Sampling for content selection | |
KR102625632B1 (en) | Dynamic data package access for mobile device | |
US9619630B2 (en) | Mobile token driven software licensing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: OPTIO LABS, INC., MASSACHUSETTS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DOUGHERTY, BRIAN;WHITE, CHRISTOPHER JULES;CLANCY, THOMAS CHARLES, III;AND OTHERS;SIGNING DATES FROM 20140530 TO 20140703;REEL/FRAME:034887/0551 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |