System and method for proving physical presence

Methods and systems receive location identification tokens from transmitters using a portable computerized device. A first location identification token is received from a first location transmitting device, while the portable computerized device is within a predetermined distance from a designated location. A second location identification token is received from a second location transmitting device. A current location signature is calculated using the first and second location identification tokens. A previously stored location signature associated with the first and second location identification tokens is obtained from a computer readable storage medium. The current location signature is compared with the previously stored location signature to determine a similarity measure. The location identification tokens and the current location signature are stored in a memory and transmitted to a server. The presence of the portable computerized device at the designated location is verified based on the location identification tokens and the current location signature.

BACKGROUND

Systems and methods herein generally relate to security devices and, more particularly, to mobile devices for automatically detecting and recording the physical presence of the mobile device at a designated location.

Many applications exist where it is valuable to be able to detect and prove physical presence of users. Examples include the healthcare industry, plant maintenance, and physical security providers. Current solutions use systems requiring an overt act by the user such as punching a code into a station, swiping a card at a reader, or making an entry in a log.

Tags or identification codes can be maintained in wireless devices that can be read by equipment such as near field communication systems (NFC), radio frequency identification systems (RFID), short-wave radio systems; optical systems (barcodes, quick reference codes (QR), etc.), or similar systems. Such identification codes are commonly used to identify equipment and features or provide other information that is location-sensitive. Devices, such as smartphones, can read machine-readable tags.

SUMMARY

Many applications exist where it is valuable to be able to detect and prove physical presence of users who are carrying mobile devices, without requiring actual physical contact with features of that location, such as tags. An application on the mobile device records the tokens transmitted to it by several wireless tags that are within range. Later, the user/mobile presents those tokens as proof of physical presence at the designated location.

According to a portable computerized device, the portable computerized device comprises a memory, a wireless receiver, a processor, and a communications device. The wireless receiver simultaneously receives a first location identification token from a first location transmitting device and a second location identification token from a second location transmitting device while the portable computerized device is within a predetermined distance from a designated location. The processor is operatively connected to the wireless receiver and automatically obtains a previously stored location signature associated with the first location identification token and the second location identification token from a non-transitory computer readable storage medium, using the wireless receiver. The processor automatically calculates a current location signature based on the first location identification token and the second location identification token. The processor automatically compares the current location signature with the previously stored location signature to determine a similarity measure of the current location signature and the previously stored location signature. The processor stores the first location identification token, the second location identification token, and the current location signature in the memory. The communications device is operatively connected to the processor. The communications device transmits the current location signature to a server as proof of presence of the portable computerized device at the designated location, using the processor.

According to a system herein, the system comprises a server, a first wireless location transmitting device transmitting a first location identification token, a second wireless location transmitting device transmitting a second location identification token, and a portable computerized device having computer-executable instructions. The portable computerized device comprises a memory, a wireless receiver simultaneously receiving the first location identification token from the first location transmitting device and the second location identification token from the second location transmitting device while the portable computerized device is within a predetermined distance from a designated location. A processor is operatively connected to the wireless receiver. The processor stores the first location identification token and the second location identification token in the memory. A communications device is operatively connected to the processor. The computer-executable instructions cause the processor to automatically obtain a previously stored location signature associated with the first location identification token and the second location identification token from a non-transitory computer readable storage medium, using the communications device. The processor automatically calculates a current location signature based on the first location identification token and the second location identification token. The processor automatically compares the current location signature with the previously stored location signature to determine a similarity measure of the current location signature and the previously stored location signature. The processor transmits the first location identification token, the second location identification token, and the current location signature to the server, using the communications device, as proof of presence of the portable computerized device at the designated location.

According to a method herein, a first location identification token is received from a first location transmitting device, using a wireless receiver of a portable computerized device, while the portable computerized device is within a predetermined distance from a designated location. A second location identification token is simultaneously received from a second location transmitting device, using the wireless receiver of the portable computerized device. A current location signature is automatically calculated based on the first location identification token and the second location identification token. A previously stored location signature associated with the first location identification token and the second location identification token is automatically obtained from a non-transitory computer readable storage medium, using a communications device of the portable computerized device. The current location signature is automatically compared with the previously stored location signature to determine a similarity measure of the current location signature and the previously stored location signature. The first location identification token, the second location identification token, and the current location signature is automatically stored in a memory of the portable computerized device. The first location identification token, the second location identification token, and the current location signature are transmitted to a server, using the portable computerized device. The presence of the portable computerized device at the designated location is verified based on the first location identification token, the second location identification token, and the current location signature.

DETAILED DESCRIPTION

For a general understanding of the features of the disclosure, reference is made to the drawings. It will be readily understood that the systems and methods of the present disclosure, as generally described and illustrated in the drawings herein, may be arranged and designed in a wide variety of configurations in addition to the systems and methods described herein. In the drawings, like reference numerals have been used to identify identical elements. While the disclosure will be described hereinafter in connection with specific systems and methods thereof, it will be understood that limiting the disclosure to such specific systems and methods is not intended. Thus, the following detailed description of the systems and methods, as represented in the drawings, is not intended to limit the scope defined by the appended claims. On the contrary, it is intended to cover all alternatives, modifications, and equivalents as may be included within the spirit and scope of the disclosure as defined by the appended claims.

The systems and methods herein use a mobile device's receiver to receive and record tokens transmitted to it by a plurality of wireless tags that are within its range. Later the systems and methods herein use the mobile device's transmitter to present those tokens as proof of physical presence within the range of the wireless tags. For purposes herein, a “tag” or “tag identifier” refers to any machine-readable item containing data or codes, such as near field communication systems (NFC), radio frequency identification systems (RFID), Bluetooth® systems, optical systems (barcodes, quick reference codes (QR), etc.), or similar systems.

When the tag is initially placed into service, a mobile device reads the tag identifier, e.g. using NFC or optical systems, and simultaneously obtains a number of other tags detected by the mobile device. The systems and methods herein use such tag identifiers to calculate a location signature that is then associated with specific groups of tag. Recording both the tag identifiers and the location signature, locally on the mobile or in a server, allows later verification that a subsequent portable device is in the correct location by matching the current location signature against the previously stored location signature associated with the tag identifiers.

Tags that can be read by mobile devices have many applications. The tags take multiple forms, such as NFC/RFID tags, or Bluetooth® tags, or printed tags like QR codes or other visually encoded forms. The tags may be read-only, or both readable and writeable. Such tags have unique identifiers that can be read. Typically, such tags are used for identification purposes when affixed to a position or object, and if additional assumptions are made about the fixity of their location, to infer that the user is in a definite spot when reading them.

One prominent kind of tag is the rewritable passive NFC tag. The reader and writer of such tags has to be physically close to the tag (say, less than 1 meter or similar distance limit) and the tag is passive in that the reader/writer supplies the power source, so that the tag can be affixed externally or internally without any other integration to a broad range of objects or places. According to systems and methods herein, NFC tags are disfavored since their location is inherently known.

Multiple tags may be placed into service in a location where proof of physical presence may be required, such as a hospital, warehouse, or secured facility. The mobile device reads the tag identifier, e.g., using short-wavelength UHF radio waves and simultaneously obtains a token from a number of tags detected by the mobile device. Such short-wavelength UHF radio may be in the ISM band from 2.4 to 2.485 GHz. The systems and methods herein use such tokens to determine a time of receipt and identification of additional chained tags associated with that specific tag. Recording both the tag identifier and the token, locally on the mobile device, allows later verification that the token was received at the location where the proof of physical presence was required.

The systems and methods herein provide assurance that a tag has not been moved or switched with some other tag from a different location. This prevents attempts to fool the user or the surrounding system using such a tag, say by misleadingly referring to a location that was not intended.

In an oversimplified example, with systems and methods herein, multiple tags are affixed in locations that are hard to locate physically. These may be devices or objects, or anything else to which a tag can be affixed, such as doors, lights, walls, and so on. Typically, the tags have a power supply, such as a battery, for example, for a transmitter. Variation of the transmission power makes locating the tags more difficult. The mobile device should be capable of reading identifiers from two or more tags at a time. Data received from the tags/transmitters is used to create a composite location signature, as described in further detail below. The mobile device can record the tokens received from the tags as the location signature (either locally using its own storage, or remotely on a server) and, at the same time, indicate the physical location where the tokens were received.

After the tag is initially affixed (or activated) and the location signature is established, each time a user approaches a location containing a tag, the tag allows the user to verify whether the tag is in the appropriate location while also verifying the physical presence of the user. To do so, the user can employ an application (app), which is a set of computer instructions causing the processor of the user's mobile device to execute some or all of the instructions. In this example, the app would cause the processor of the mobile device to obtain the token from two or more tags, record data from the tags, and calculate a current location signature. The app may also identify all the other tokens that are visible to each tag.

The app then causes the processor of the portable computerized device to compare the current location signature with the previously stored location signature and determines a similarity measure of the current location signature and the previously stored location signature. The app then causes the processor to store the first location identification token, the second location identification token, and the current location signature in the memory.

Storing the associated location signatures on a server (or other common-access storage location) has the advantage of allowing portable computerized devices to collaborate in establishing and refining the security for the location signatures. For example, every time a mobile device utilizes the tag, the time/date stamp will change and other sequence numbers and cryptographic schemes may be changed, as well.

The app allows the processor of the portable computerized device to present the tokens immediately to a central service, such as a cloud-based service, or later to a local server. The app allows the communications device of the portable computerized device to transmit the current location signature to a server as proof of presence of the portable computerized device at the designated location, using the processor.

The token and location information may also be presented to the user through the user interface of the mobile device to allow the user to act on the information given. The systems and methods herein thus provide the user accurate information about the probability that the tag was moved.

The information regarding whether a tag is in the correct location calculated by the systems and methods herein is only relative, and can be based solely upon the tokens obtained from the associated tags, and does not need to be based on any specific geographic location information. This is contrasted to positioning systems such as GPS, which establish a geographic location that is comparable to other geographic locations on the longitude and latitude scales. Unobstructed access to satellite signals, which is problematic inside covered areas, makes it difficult to obtain accurate GPS-based geographic locations within buildings. The systems and methods herein use a much broader and more flexible determination of “location” which does not need to be comparable except in the sense that each token is separate.

As noted above, various methods herein obtain two or more coded location identification tokens from location transmitting tags, using a wireless reader of a portable computerized device, while the portable computerized device is within a predetermined distance from a designated location. Such methods automatically store the location identification tokens in a memory of the portable computerized device. The location identification tokens are interpreted and presented to a server. The presence of the portable computerized device at the designated location is verified based on the location identification tokens.

Also, such methods automatically obtain a previously stored location signature associated with the tags from a non-transitory computer readable storage medium, using a communications device of the portable computerized device. Further, such methods automatically compare the current location signature with the previously stored location signature to determine a similarity measure of the current location signature and the previously stored location signature, using the processor. These methods automatically verify whether the portable computerized device is in the correct location based on the similarity measure being above a predetermined threshold, using the processor. Such methods can also display a location validity message on a user interface of the portable computerized device based on the process of verifying whether the portable computerized device is in the correct location.

FIG. 1is flowchart illustrating exemplary methods herein. In item150, these methods install or activate two or more location transmitting devices in a designated location where physical presence is required. The location transmitting devices can comprise short-wavelength UHF radio transmitters, for example, a Bluetooth® device, particularly, a Bluetooth Low Energy (BLE) device.

These methods read a location identification token (sometimes referred to herein as a “tag”) from the location transmitting devices using a first wireless reader of a first portable computerized device. For example, the arbitrarily named “first” portable computerized device can be a smart phone or PDA of an administrator or service engineer who is performing the initial setup of the location transmitting devices. The location identification token will be read while the first portable computerized device is positioned at a location that is within a predetermined distance (e.g., 5 meters, 10 meters, etc.) from the location transmitting devices item153. Some protocols, such as Near Field Communication (NFC) require that the portable device be very close (less than 1 meter), while other protocols such as Bluetooth® or Wi-Fi allow greater distances. Accordingly, NFC is not preferred.

In item156, these methods automatically calculate a location signature based on the location identification tokens obtained using the first wireless reader of the first portable computerized device. The location signature is calculated using a first processor of the first portable computerized device.

Then, in item159, such methods can automatically save the location signature (referred to herein as the “previously stored” location signature, for convenience) in a non-transitory computer readable storage medium (computer storage) using a first communications device of the first portable computerized device. The process of storing the location signature in item159also includes a process of associating the previously stored location signature with the location identification tokens (tags) (thereby allowing identification of the previously stored location signature to retrieve the location identification tokens, and vice versa). This completes the initial setup process for the location identification devices.

Once the initial setup process is complete, users will want to use the location identification devices to prove their physical presence in a designated location. Therefore, these methods then read a possibly matching location identification tokens from two or more location identification transmitting devices in item162, using a second wireless reader of a second portable computerized device, while the second portable computerized device is positioned at a second location that is also within the predetermined distance from the designated location.

In item165, these methods use the second portable computerized device and automatically calculate a current location signature based on the location identification tokens, using a second processor of the second portable computerized device.

Such methods also automatically obtain the previously stored location signature associated with the possibly location identification tokens from the non-transitory computer readable storage medium in item168, using a second communications device of the second portable computerized device.

Thus, these methods can automatically compare the current location signature with the previously stored location signature to determine a similarity measure of the location signatures (of the current location signature and the previously stored location signature) in item171, using the second processor.

Then, in item174, such methods can automatically save the location identification tokens in a non-transitory computer readable storage medium (computer storage) using a communications device of the portable computerized device. Such methods allow the location identification tokens and/or current location signature to be presented immediately to a central service, such as a cloud-based service, or later to a local server, in item178.

Further, such methods can display a location validity message on a user interface of the portable computerized device based on the process of verifying the location identification tokens and determining that the portable computerized device is in the correct location in item175.

As shown inFIG. 2, a location transmitting device202is installed in a location where physical presence in the location must be verified. Typically, a plurality of location transmitting devices202may be used. A portable computerized device205within a predetermined distance of a location transmitting device202receives a token208transmitted by the location transmitting device202.FIG. 2also illustrates a server211(having storage) connected to the portable computerized device205by way of a wired or wireless network214.

Further, the portable computerized device205includes a wireless receiver217that can receive the token208from the location transmitting device202, as discussed above, a memory220to store the token208, a processor223operatively connected to the wireless receiver217, and a communications device226is operatively connected to the processor223.

An application on the mobile device records the token208transmitted to it by several wireless tags that are within range. Later, the user with a portable computerized device205presents those tokens208as proof of physical presence.

The tokens can utilize a cryptographic scheme to prevent replay, so that the user must be at the physical location where such tokens are visible in order to prove physical presence there at the given time. Recording and repeating previously seen tokens is not possible. Each tag signs its token using a private key (PK) embedded securely in the tag using known techniques such as tamper resistant hardware. An example signed token scheme is shown below:

The token contains the current timestamp, a random cryptographic salt, and a sequence number (chained tokens are explained below). The signed token can then be verified by using the corresponding public key (PK). Thus each signed token is unique and attempts to proffer duplicates are easily detected. Note that other encryption schemes may be used instead.

Referring toFIG. 3, a mobile device303receives a location identification token from each location transmitting device (indicated as tags306,309) within range of the mobile device303. As shown inFIG. 3, two tags306,309are directly visible to the mobile device303. A wireless protocol such as Bluetooth Low Energy (BLE) may be used to transmit the tokens. The mobile device303must only be within an approximate physical location, such as a building floor or within an entire building, and physical contact is not required, nor does the user know precisely where the tags actually are located. According to systems and methods herein, tag306is visible to tag309, and vice-versa. In addition, tag312may be visible to tags306,309, but out of range of the mobile device303.

The systems and methods herein address an important security concern by making it difficult for a malfeasor to locate the tags/transmitters. If a scheme such as BLE is used, the signal strength of the tags306,309may be used to attempt to physically locate it, and then move it, transporting it to some other location. Such a change would effectively defeat the physical location guarantees given, since the user/mobile may still receive tokens from the tags306,309, without actually being where the tag was supposed to be. Because the tags are hard to locate physically, they have advantages over NFC tags, which are inherently physically accessible to the user.

The system and methods herein disclose the use of several techniques to raise the cost, in time and energy, in locating and moving tags:1. Randomly varying transmission power of the tags306,309when the wireless signals are emitted, to frustrate use of the signal strength to attempt to determine the location of the tag.2. Allows requiring visibility of more than one token so that moving one tag would not be sufficient, the malefactor would have to move as many as are required for that location by the particular installation. Since these tags are used within a mesh the movement of one or more tags306,309,312may affect the signature required for more than one location.3. Tag chaining, so that each tag306,309includes in its broadcast token all the other tokens that are visible to it, recursively, establishing a chain of reference over an entire facility, which can stretch far beyond the immediate physical environment of the user, such as tags315. . .333, etc. A subset of visible tags may be used to reduce bandwidth costs of transmitting this information, using a statistical sampling technique. The combined tags form a mesh of tags.

Use of these techniques also raises the probability of detection if any user attempts to compromise the system, since significant physical intervention by the user would be required to gain access to all the tag locations. Systems and methods herein comprehend that simpler deployments need not utilize all these elements and may settle for a subset that is good enough for the purposes at hand.

Many different types of token transmitters/tags may be used. According to systems and methods herein, the token transmitters/tags may employ different kinds of power sources and form factors. In addition, various alternative two-way communication systems may be used to transmit tokens issued and signed by a central service (such as by a cloud-based service) to the tags for counter-signature.

FIG. 4shows an exemplary floor plan of room or building having several location transmitting devices404A-J. Each of location transmitting devices404A-J may comprise short-wavelength UHF radio transmitters having different power levels, as indicated. In some cases, the transmitting power may variable. During initial setup, the arbitrarily named first portable computerized device can establish a location signature at specific designated locations, such as indicated at407,408, and409. For example, location407may be visible to location transmitting devices404A,404C, and404F; location408may be visible to location transmitting devices4041and404J; and location409may be visible to location transmitting devices404E,404G,404H, and404J. Note-location transmitting device404B may not have enough power to be visible at location707.

According to systems and methods herein, the location signature uses at least two location transmitting devices. The tokens from each location transmitting device may include other location transmitting device in its tag chain. For example, the token from location transmitting device404A may indicate that it is visible to location transmitting devices404B and404C and the token from location transmitting device404F may indicate that it is visible to location transmitting device404D; although neither location transmitting device404D or404B may be visible at location407.

Thus, as explained above, exemplary portable computerized devices herein comprise a wireless reader and memory that receives a token from a location identification device while the portable computerized device is positioned at a location that is within a predetermined distance from the machine. The portable computerized device stores the tokens in the memory. The portable computerized devices include a processor operatively connected to the memory. The processor automatically interprets each location identification token and identifies additional location transmittal devices based on the received information.

As shown inFIG. 5, systems and methods herein provide a physical presence verification app505that can be downloaded (e.g., from an app store) to the user's portable computing device508. As shown inFIG. 5, the physical presence verification app505can be displayed on the user interface511of the user's portable computing device508along with other apps515.

When the physical presence verification app505inFIG. 5is selected by the user, the app505causes the user interface511of the user portable computing device to display a screen having menu options to begin physical presence verification, display a location validity message, transmit the current location signature to a server, etc.

Also, the portable computerized devices include a communications device operatively connected to the processor. The communications device transmits the tokens to a server as proof of presence of the portable computerized device at the designated location.

The portable computerized devices further include a user interface operatively connected to the processor. The user interface displays a location validity message based on the processor determining that the location transmittal device is in the correct location.

Thus, exemplary systems herein comprise a server211, a first wireless location transmitting device306transmitting a first location identification token208A, a second wireless location transmitting device309transmitting a second location identification token208B, and a portable computerized device205/303having computer-executable instructions. The portable computerized device205/303comprises a memory220and a wireless receiver217simultaneously receiving the first location identification token208A from the first location transmitting device306and the second location identification token208B from the second location transmitting device309while the portable computerized device205/303is within a predetermined distance from a designated location. A processor223is operatively connected to the wireless receiver217. The processor223stores the first location identification token208A and the second location identification token208B in the memory220. A communications device226is operatively connected to the processor223. The computer-executable instructions cause the processor223to automatically interpret each location identification token208and identify additional location transmittal devices (312,315, . . . ,333) based on information from one of the first location identification token208A and the second location identification token208B. The processor223transmits the first location identification token208A and the second location identification token208B to the server211as proof of presence of the portable computerized device205/303at the designated location.

In this manner, multiple tags are read to obtain proof of physical presence, while acquisition is passive, requiring no action by the user. An encryption scheme using a private key renders the distributed system tamper resistant. Furthermore, tag chaining fixes the location of multiple tags within a mesh of tags further rendering the system tamper resistant.