US20160112202A1 - Mobile system and method for improving safety of impromptu meetings - Google Patents
Mobile system and method for improving safety of impromptu meetings Download PDFInfo
- Publication number
- US20160112202A1 US20160112202A1 US14/516,716 US201414516716A US2016112202A1 US 20160112202 A1 US20160112202 A1 US 20160112202A1 US 201414516716 A US201414516716 A US 201414516716A US 2016112202 A1 US2016112202 A1 US 2016112202A1
- Authority
- US
- United States
- Prior art keywords
- electronic devices
- participant
- server
- ticket
- public key
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000004891 communication Methods 0.000 claims abstract description 43
- 238000012546 transfer Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 19
- 238000013459 approach Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000010200 validation analysis Methods 0.000 description 5
- 101000868422 Homo sapiens Sushi, nidogen and EGF-like domain-containing protein 1 Proteins 0.000 description 4
- 102100032853 Sushi, nidogen and EGF-like domain-containing protein 1 Human genes 0.000 description 4
- 230000009471 action Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000010437 gem Substances 0.000 description 1
- 229910001751 gemstone Inorganic materials 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000002269 spontaneous effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/20—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
- H04W4/21—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/72—Signcrypting, i.e. digital signing and encrypting simultaneously
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Telephonic Communication Services (AREA)
- Telephone Function (AREA)
Abstract
Description
- Embodiments are related to techniques and devices for ensuring the safety of participants at meetings. Embodiments also relate to cryptographic applications and, for example, cryptographic key pairs of public and private keys.
- Social meeting websites use various methods to ensure the safety of participants including background checks, recent photo verification, generated codes for permitting profile viewing, ratings of a member by another after a sufficient number of interactions, quantification of connectivity, proximity and trust level in a social network, and so forth. For example, a dating site may guarantee that an individual's profile is accurate, their photo is up-to-date, and their ratings are legitimate so that both parties feel secure when meeting in person for the first time. For less structured situations such as, for example, a website for finding jogging partners or spur of the moment car-ride sharing, a system is desired, which does not depend on detailed background checks and recent photo verification, but relies on member recommendations and trust networks. For these types of meeting sites, there is still a need for an additional level of trust when two individuals are meeting for the first time.
- The following summary is provided to facilitate an understanding of some of the innovative features unique to the disclosed embodiments and is not intended to be a full description. A full appreciation of the various aspects of the embodiments disclosed herein can be gained by taking the entire specification, claims, drawings, and abstract as a whole.
- It is, therefore, one aspect of the disclosed embodiments to provide a system and method for improving safety of impromptu meetings and spur of the moment activities involving two or more participants.
- It is another aspect of the disclosed embodiments to provide for a mobile application or “app” that utilizes event tickets and cryptographic key pairs stored on portable electronic devices along with public keys stored on the a server.
- The aforementioned aspects and other objectives and advantages can now be achieved as described herein. A system and method is disclosed, which supports safe, first-time, in-person meetings for an activity such as jogging or car-ride sharing. The disclosed embodiments augment existing approaches used by social meeting websites such as profile verification and social network trust levels through the addition of a smart phone app that confirms the identity of the individual parties at the meeting location.
- In a preferred embodiment, a mobile “app” can be configured, which utilizes event tickets issued by the site, cryptographic key pairs stored on a portable electronic device (e.g., a smartphone), and public keys stored on the site. Prior to an actual meeting arranged on the site, two members each download the same generated event ticket and also the public key of the other member. At the meeting location each individual's phone app: (1) initiates close-proximity communication with the other phone app using technologies such as wireless/cellular networking, Bluetooth, accelerometers, and NFC: (2) signs the ticket with Its stored private key; (3) exchanges signed tickets; (4) verifies the received signed ticket using the downloaded public key; and (5) compares the verified signed ticket with the downloaded ticket to authenticate the other individual.
- One or more embodiments can be implemented in the context of a system that includes a server that maintains a publicly searchable database of public keys of all participants, including itself. Such a system also can include an “app” running on each meeting participants' electronic device (e.g., smartphone, tablet computing device, etc.). Each user's app, running on their smart phone or similar device, generates a key pair. The app keeps the private key secure, but makes the public key available to anyone who asks for it (or anyone related to the system). This can include the application server.
- When a meeting is to happen, the following steps can occur. First, the server generates a ticket. The server then signs the ticket with its own private key. The server can add the public keys of the users (participants) to the ticket before or after signing the ticket or can send the ticket and public keys of the users separately. In any case, each user in the meeting must have the other users public key to complete the meeting.
- The server sends the signed ticket to the participants. Then, when the participants meet, the app on each phone downloads the server public key if it has not already done so, uses the server public key to verify that the signature is valid, signs the ticket again with its own private key, and sends the newly signed ticket to the other user. And, when each of the participants' respective electronic devices receives the doubly signed ticket (signed once by the server and again by the user) from the other user, the app uses the public key of the other user to verify the signature.
- The accompanying figures, in which like reference numerals refer to identical or functionally-similar elements throughout the separate views and which are incorporated in and form a part of the specification, further illustrate the present invention and, together with the detailed description of the invention, serve to explain the principles of the present invention.
-
FIG. 1 illustrates a schematic diagram of a system that enables two individuals to verify their identities at a meeting location via portable electronic devices, in accordance with a preferred embodiment; -
FIG. 2 illustrates a schematic diagram of a process for verifying identities at a meeting location via portable electronic devices, in accordance with a preferred embodiment; -
FIG. 3 illustrates a sample meeting exchange message before translation to binary form, in accordance with an alternative embodiment; -
FIG. 4 illustrates a sample event browser screen, in accordance with an alternative embodiment; -
FIG. 5 illustrates a sample meeting initiation screen, in accordance with an alternative embodiment; -
FIG. 6 illustrates a sample pseudo-code for performing particular actions for validating a meeting via a portable electronic device, in accordance with an alternative embodiment; -
FIG. 7 illustrates sample screens for successful and failed validation in accordance with an alternative embodiment; -
FIG. 8 illustrates a block diagram of an example of a mobile data processing system suitable for use with one or more of the described embodiments; and -
FIG. 9 illustrates a schematic view of a software system including a module, an operating system, and a user interface, in accordance with one or more of the described embodiments. - The particular values and configurations discussed in these non-limiting examples can be varied and are cited merely to illustrate at least one embodiment and are not intended to limit the scope thereof.
-
FIG. 1 illustrates a schematic diagram of asystem 10 that enables two individuals to verify their identities at a meeting location via portableelectronic devices System 10 shown inFIG. 1 implements a capability provided by a social meeting site that enables two individuals via respectiveelectronic devices meeting control server 14 can communicate electronically with adatabase 12 andelectronic devices arrows 5, 7 between theserver 14 and theelectronic devices -
System 10 preferably employs, for example, an “app” (e.g., a smartphone app) that uses cryptographic key pairs where such keys can be issued by a third party or generated on the smartphone by an application. The key pair can include (1) a private key that remains securely on the smartphone and which Is used to digitally sign a string, and (2) a public key that can be utilized to verify the signature. - Note that as utilized herein, the term “app” generally refers to a mobile application (e.g., a computer program and/or software module(s)) that is designed to run on, for example, electronic devices such as smartphones, tablet computers, and other mobile devices. Such apps are usually available through application distribution platforms and are downloaded from the platform to a target device, such as a smartphone, tablet computers, etc. The term “app” is a shortening of the term “application software”.
-
System 10 can also employ a backend function for a social meeting site that (1) stores the public keys of site members in a database, and (2) uses a meeting control server to generate a one-time-use ticket when two individuals arrange a meeting. When a ticket is issued, each individual downloads to their smartphone app both the generated ticket and the public key of the other individual as shown inFIG. 1 . Note that the meeting ticket can be signed by the site in the same way that each individual phone signs it, so that the authenticity of the ticket can be verified by both participants. - Note that in public key cryptography, each individual user generates 2 keys—a public key and a private key. As the name implies, the private key is never revealed to anyone else (or to any other system if the “individual” involved is software). Loss of control of the private key is a compromise that invalidates the security. The public and private key together make a key pair. Public keys, however, can be and are freely transferred with others. This is because the public key—and only the public key—can verify anything signed by the private key and vice versa.
- Thus,
system 10 and the disclosed approach have a number of unique properties. For example, theserver 14 can maintaindatabase 12 as a publicly searchable database of public keys of all participants, including itself. (Note that public keys are meant to be easily found. An example of a search repository can be found at this URL: https://pqp.mit.edu/). Each user's “app” running on their respectiveelectronic devices 16, 18 (e.g., smartphone, tablet computing device, etc.) generates a key pair and keeps the private key secure. The app can make the public key available to anyone who asks for it (or anyone related to the system). This includes the application server, which may be, for example,server 14. - When a meeting is to happen, the following steps can occur in the following sequence. The
server 14 generates a ticket and then theserver 14 signs the ticket with its own private key. Note that theserver 14 can add the public keys of the user(s) to the ticket before or after signing the ticket or can transmit the key(s) separately. In any case, each user in the meeting must have the other user's public key to complete the meeting. Theserver 14 then sends the signed tickets to the participants (e.g., users ofelectronic devices 16, 18). Then, when the participants do meet, the app on eachdevice -
FIG. 2 illustrates a schematic diagram of aprocess 20 for verifying identities at a meeting location via portable electronic devices, in accordance with a preferred embodiment. When two members of the site meet in person for the first time, they can touch theirelectronic devices device -
Arrow 22 shown inFIG. 2 indicates an exchange of activation messages. Arrow 24 indicates sending of a ticket signed with a first user private key andarrow 26 indicates sending of a ticket signed with the second user private key. That is, theelectronic device 18 is associated with the second user or participant, and theelectronic device 16 is associated with the first user or participant. - Various technologies can be utilized to enable close proximity communication between the users' smart devices. Although the exemplary implementation approach described herein uses Near Field Communication (NFC) for enabling device communication, the disclosed embodiments are not restricted to NFC.
- NFC is a short-range wireless technology that enables devices such as Android phones to share small amounts of data. NFC devices communicate in a binary format that is unreadable to humans. To mitigate this problem, there are numerous programming libraries that provide wrappers for developing messages in more human friendly ways and translating them into the necessary protocols for transmission. One example is the ruby nfc gem. Another common library is PhoneGap, which allows apps to be written in JavaScript and HTML5.
-
FIG. 3 illustrates a samplemeeting exchange message 30 before translation to binary form, in accordance with an alternative embodiment.FIG. 3 shows a sample SNEP message in JSON data-interchange format. A SNEP message, like any NFC message, is made up of header information and a series of records. Each record contains key value pairs. The value associated with the “kind” key describes the type of data in the record ‘payload’ (shown inFIG. 3 as “data”). The “kind” must be one of a small set of known types, including standard MIME types. - There are four records (
Record 1,Record 2,Record 3, Record 4) indicated in theFIG. 3 example.Record 1 is a general header containing application information.Record 2 gives information about the user whose device is sending the message. In the example, it points to the user's profile on the site, i.e., the user information includes a general profile URL where information such as community reputation and public key are available. Identifying the user is required in order to verify the signature and ticket later. -
Record 3 contains details of the event ticket, including the identities of both users, and the time and place and type of activity. Importantly, the ticket is signed by the hosting site with its own private key. This allows the app to validate the signature with the site's public key thereby protecting against spoofed-ticket attacks.Record 4 contains the data necessary for the receiving device to validate the identity of the sender by checking the included signature against the sender's public key. - The sequence of actions from event choice to completion will always be similar to the following example. A user, called Kathy for this example, signs up for the event site. This can be a website or an extension of the app. The site maintains the central database (e.g.,
database 12 shown inFIG. 1 ) and has a public/private key pair associated with it. - After successful sign up, Kathy downloads the mobile event scheduling app and links it to her account on the site. A public/private key pair can be generated either by the app or the site or even an external program or service, however, only the app stores the private key and the site must have a copy of the public key that can be searched for by others.
- Kathy starts the app on her device when she wishes to pair with someone for a spontaneous event. In this example, she wants a partner to go jogging with her in the park. She enters this event into the app, including the time and location. She then waits for responses.
- Other users open their own instances of the app to browse for events. One of them, Mary, for example, has scheduled an alert for fitness related events in her geographic area. When her smartphone buzzes, she looks at it and sees a notification of Kathy's request for a jogging partner. She thinks this is smart because jogging alone is not always safe. Other available events are also displayed, but Mary selects jogging and sends a notice of interest.
-
FIG. 4 illustrates a sampleevent browser screen 40, in accordance with an alternative embodiment.FIG. 4 shows a sample of thescreen 40 that Kathy might use to browse open events and choose jogging with Mary. Kathy, checking her phone a little later (possibly in response to an alert) sees that several people have responded to her event. The first one has received poor ratings from other people who have joined him in events, so she rejects him right away. Mary, on the other hand, has a good reputation. Kathy clicks the “accept” button next to Mary's name. - The site generates an event ticket as described above and sends a copy of the ticket to Mary's and Kathy's devices. The site may include each person's public key in the ticket or the app may download them as required. When the time comes to go jogging, Mary and Kathy meet at the designated entrance to the park. They may be aided in finding each other by a profile picture or other mechanism such as the phone's GPS or a location-based event.
-
FIG. 5 illustrates a samplemeeting initiation screen 50, in accordance with an alternative embodiment. That is, Kathy, seeing Mary first, starts the app on her electronic device (e.g., smartphone, tablet computer, etc.) and approaches Mary. After greeting each other, Mary holds out her phone and they touch phones. Kathy touches the meeting button on her phone (e.g., labeled “Meet Mary Now” in thescreen 50 shown inFIG. 5 ). - In current Android implementations, for example, NFC enabled devices continuously search for other NFC enabled devices. When Kathy's app is open and the meeting button of
screen 50 is selected, the default behavior of the devices is overridden and a message such as that shown inFIG. 3 is sent to the other device. - The operating system of the receiving device looks for information about the correct app to handle the message in the SNEP header (not shown in
FIG. 3 ). If the correct app is not already open, it is started. If it is not found on the device, the operating system will attempt to open a source from which it can be installed. Once the app is running on the receiving device, the message is passed to it and a success result message is sent to the sender. In this example, Mary's phone opens the meeting app for her. The app can then perform actions according to, for example, particular instructions. Such instructions are illustrated via, for example, pseudo-code. That is,FIG. 6 illustratessample pseudo-code 60 for performing particular actions for validating a meeting via a portable electronic device, in accordance with an alternative embodiment. -
FIG. 7 illustrates sample screens 72, 74 for successful and failed validation in accordance with an alternative embodiment.FIG. 7 shows screens 72, 74 displaying messages for both a successful and failed validation of the meeting information. This feedback protects people from being fooled by potentially harmful actors. Additional security measures on a bad meet (not necessarily required but certainly desirable) may involve sending a message to the police or might record all available information about the other person's phone. It might even automatically take a picture of the person who was not who they claimed to be and send it to the event site. - In the example, the message and ticket signatures are validated. After Mary's instance of the app validates the signatures, it sends a message similar to
FIG. 3 back to Kathy's phone so her instance of the meeting app can perform the same validation steps. Thus, before they jog, both users can be certain they have met the intended person. In this example case, both signatures are accepted. Mary and Kathy then jog through the park together. - After they jog, they both are prompted by the app to rate the experience. This rating goes into calculations of reputation for each of them, so other people seeking partners for activities in the future can have real world feedback to help them decide who to partner with. Ratings submitted through the app can be signed by the user's private key and directly reference the meeting ticket so the site can verify that the rating is authentic.
- Note that this example uses two jogging partners. In the case that three or more people meet for an event, each member could touch their phones with the owner of the event thereby enabling multiple pairwise meetings. If the event ticket supported multiple users, then any two accepted to the event could initiate validation.
- There are many meeting applications with various types of verification methods for the safety of participants. However, our preferred embodiment makes use of cutting edge technology to maximize both convenience and safety. NFC communication is well established, but its peer-to-peer uses are relatively new. Even many smartphones (e.g., notably Apple's iPhone's previous to iPhone 6) do not yet have NFC capability or do not support the SNEP protocol. Over time, these capabilities are likely to become standard in mobile devices.
- The disclosed approach can be developed as part of a suite of services that can allow individuals to engage with one another and their local environment in a smarter, safer, and more sustainable manner. As cities strive to reduce crime, for example, the disclosed embodiments can assist citizens in avoiding being victimized
- Several of the disclosed features, such as the integration of public key cryptography with the phone app and a central site that manages public keys and the gathering of reputation data at the time of use, are generalizable across an entire suite of applications. That is, someone who has a good reputation as a jogging partner might also be considered a good risk to buy merchandise from, or to go to church with in a dangerous area at night, or to participate in a neighborhood watch, or any of a huge array of other community-oriented activities.
- The strong identification mechanism implemented via the disclosed embodiments can buttress the quality of any reputation mechanism by rendering it exceedingly difficult to “game the system” or, for example, forge ratings. The use of NFC communication, for example, can also strengthen the system by making authentication, verification, and (in some implementations) feedback real-time, event-driven systems. This approach creates a new and important safety measure and a system on which future innovations can be constructed.
- The embodiments are described at least in part herein with reference to flowchart illustrations, and/or schematic/block diagrams of methods, systems, and computer program products and data structures according to embodiments of the invention. It will be understood that each block of the illustrations, and combinations of blocks, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general-purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the block or blocks.
- These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function/act specified in the block or blocks.
- The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts specified in the block or blocks.
-
FIG. 8 illustrates a block diagram of an example mobiledata processing system 100 on which applications implementing the disclosed method/system for facilitating safety for impromptu meetings may execute. Thedata processing system 100 includes aprocessing system 105 with one or more microprocessors. Thesystem 100 also includesmemory 110 for storing data and programs for execution by the processing system. Thesystem 100 additionally includes an audio input/output subsystem 120 which may include a microphone and a speaker for playing back music or providing telephone functionality through the speaker and microphone. Data-processing system 100 is an example of, for example,devices - A display controller and
display device 130 can be used to provide a graphical user interface for the user, such as the graphics user interface provided by mobile devices such as, for example, an Android-based mobile device, the iPhone, iPad, etc. Additionally, the display and audio functionality can be coupled to provide video playback or video communication services. Awireless transceiver 170 can transmit and receive data via one or more wireless technologies such as Near Field Communication (NFC), Wi-Fi, infrared, Bluetooth, or one or more variants of wireless cellular technology. - One embodiment of
system 100 can contain one ormore camera devices 140 configured in both a front and rear facing configuration, though similarly configured systems each with a front facing camera, or no camera, can be one of many optimal configurations. Thedata processing system 100 can also include one ormore input devices 150 that allow a user to provide input to the system. Input devices can include a keypad or keyboard, alone or in conjunction with a voice recognition system, or a touch or multi touch panel that is overlaid on thedisplay device 130. Additionally, embodiments of thedata processing system 100 can also include a device for providing location awareness services, such as a Global Positioning System (GPS)device 160 or its equivalent. - It is to be noted that the
data processing system 100 as represented inFIG. 8 is by way of example. One or more buses or interfaces, which are not shown, can be used to interconnect the various components, as is well known in the art. As well, additional components, not shown, may also be part of thesystem 100 in certain embodiments, and in certain embodiments, fewer components than shown inFIG. 8 may also be used. -
FIG. 9 illustrates acomputer software system 250 for directing the operation of the data-processing system 100 depicted inFIG. 8 .Software application 254, stored inmain memory 110 and/or on a server such as, for example,server 14 shown inFIG. 1 , generally includes a kernel oroperating system 251 and a shell orinterface 253. One or more application programs, such assoftware application 254, may be “loaded” (i.e., transferred from thememory 110 and/or, for example,server 14 for execution by the data-processing system 100). The data-processing system 100 can receive user commands and data through, for example, theuser interface 253; these inputs may then be acted upon by the data-processing system 100 in accordance with instructions fromoperating system 251 and/orsoftware application 254 typically embodied in a module such asmodule 252. - The following discussion is intended to provide a brief, general description of suitable computing environments in which the system and method may be implemented. Although not required, the disclosed embodiments will be described in the general context of computer-executable instructions, such as program modules, being executed by a single computer. In most instances, a “module” constitutes a software application. An example of a “module” is
module 252 shown inFIG. 9 , which may be in some embodiments an “app”as discussed earlier herein. In other embodiments, themodule 252 may comprise an app that runs on a mobile electronic device and/or associated software running on a server such as, for example,server 14 shown inFIG. 1 . - Generally, program modules include, but are not limited to, routines, subroutines, software applications, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types and instructions. Moreover, those skilled in the art will appreciate that the disclosed method and system may be practiced with other computer system configurations, such as, for example, hand-held devices, multi-processor systems, data networks, microprocessor-based or programmable consumer electronics, networked PCs, minicomputers, mainframe computers, servers, and the like.
- Note that the term module as utilized herein may refer to a collection of routines and data structures that perform a particular task or implements a particular abstract data type. Modules may be composed of two parts: an interface, which lists the constants, data types, variable, and routines that can be accessed by other modules or routines, and an implementation, which is typically private (accessible only to that module) and which includes source code that actually implements the routines In the module. The term module may also simply refer to an application, such as a computer program designed to assist in the performance of a specific task, such as word processing, accounting, inventory management, etc.
- The
interface 253, which is preferably a graphical user interface (GUI), also serves to display results, whereupon the user may supply additional inputs or terminate the session. In some embodiment,operating system 251 andinterface 253 can be implemented in the context of a single OS or with multiple different OS types (e.g., Android, Apple, Windows, Mac, Linux, etc.).Software application 254 can include instructions for carrying out, for example, operations such as that shown inFIG. 1 such as the various operations described herein with respect to the various aspects shown and described herein with respect toFIGS. 1-7 . -
FIGS. 8-9 are thus intended as examples and not as architectural limitations of disclosed embodiments. Additionally, such embodiments are not limited to any particular application or computing or data-processing environment. Instead, those skilled in the art will appreciate that the disclosed approach may be advantageously applied to a variety of systems and application software. - Based on the foregoing, it can be appreciated that a number of embodiments, preferred and alternative, are disclosed. For example, in one embodiment, a system can be implemented for enabling safety in and for initial impromptu meetings facilitated by electronic devices. Such a system can include, for example, a database of public keys of participants including a first participant and a second participant, with each public key associated with a private key that is in the possession of the associated participant. Such a system can further include a server that maintains the database and which generates and signs a ticket with a private key associated with the server, the private key being associated with a public key, and which sends a signed ticket to the first and second participants, wherein when the first and the second participants meet each other with respective first and second electronic devices for a meeting. Note that verification of the signed ticket can take place prior to a meeting and not necessarily at the time of the meeting.
- In such a system, the public key associated with the server can be downloaded to each of the first and second electronic devices if not already done and the public key associated with the first participant and the public key associated with the second participant are obtained by the second and the first electronic devices respectively if not already done and the public key associated with the server is employed by each of the first and second electronic devices to verify that the signature associated with the signed ticket is valid if not already done. Additionally in such a system, the first and second electronic devices can electronically sign the signed ticket again with the first participant's private key and the second participant's private key respectively to generate a newly signed ticket which is then sent from each of the first and second electronic devices to the other, whereupon when each of the first and second electronic devices receive the newly signed ticket from the other, the public keys associated with the first and second participants are used to verify that the signed tickets sent by the first and second participants respectively are valid to ensure that the meeting is safe. Note that the database is preferably a publicly searchable database.
- In some embodiments, the first and second electronic devices can communicate with and transfer data to and from each other via close-proximity communications. In an alternative embodiment, the close-proximity communications can constitute Bluetooth wireless communications. In other embodiments, the close-proximity communications can include WiFi wireless communications. In yet another embodiment, the close-proximity communications can involve the use of sound waves. In still another embodiment, the close-proximity communications comprise NFC.
- In another embodiment, the each of the first and second electronic devices can send a multipart message to one another, wherein a first part of the multipart message activates an associated app on the other device. In yet another embodiment, each of the first and second electronic devices can send a multipart message to one another, wherein a first part of the multipart message activates an associated app on the other device.
- In yet another embodiment, a method for enabling safety in and for initial impromptu meetings facilitated by electronic devices can be implemented. Such a method can include the steps or logical operations of, for example, providing a database of public keys of participants including a first participant and a second participant, with each public key associated with a private key that is in the possession of the associated participant, and instructing a server to maintain the database and to generate and sign a ticket with a private key associated with the server, the private key being associated with a public key, and to further send a signed ticket to the first and second participants, wherein when the first and the second participants meet each other with respective first and second electronic devices for a meeting.
- In such a method, the public key associated with the server can be downloaded to each of the first and second electronic devices if not already done and the public key associated with the first participant and the public key associated with the second participant are obtained by the second and the first electronic devices respectively if not already done and the public key associated with the server is employed by each of the first and second electronic devices to verify that the signature associated with the signed ticket is valid if not already done
- Additionally, in such a method, the first and second electronic devices electronically can sign the signed ticket again with the first participant's private key and the second participant's private key respectively to generate a newly signed ticket which is then sent from each of the first and second electronic devices to the other, whereupon when each of the first and second electronic devices receive the newly signed ticket from the other, the public keys associated with the first and second participants are used to verify that the signed tickets sent by the first and second participants respectively are valid to ensure that the meeting is safe.
- It will be appreciated that variations of the above-disclosed and other features and functions, or alternatives thereof, may be desirably combined into many other different systems or applications. Also, that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/516,716 US9306753B1 (en) | 2014-10-17 | 2014-10-17 | Mobile system and method for improving safety of impromptu meetings |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/516,716 US9306753B1 (en) | 2014-10-17 | 2014-10-17 | Mobile system and method for improving safety of impromptu meetings |
Publications (2)
Publication Number | Publication Date |
---|---|
US9306753B1 US9306753B1 (en) | 2016-04-05 |
US20160112202A1 true US20160112202A1 (en) | 2016-04-21 |
Family
ID=55589143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/516,716 Expired - Fee Related US9306753B1 (en) | 2014-10-17 | 2014-10-17 | Mobile system and method for improving safety of impromptu meetings |
Country Status (1)
Country | Link |
---|---|
US (1) | US9306753B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160294967A1 (en) * | 2015-03-31 | 2016-10-06 | Toshiba Global Commerce Solutions Holdings Corporation | Discoverable and shareable device brokers in pos system |
US20170099597A1 (en) * | 2015-10-02 | 2017-04-06 | Lg Electronics Inc. | Method and device for controlling device using bluetooth in wireless communication system |
US20180278422A1 (en) * | 2017-03-23 | 2018-09-27 | Moovel North America, Llc | Systems and methods of providing and validating digital tickets |
US20190058591A1 (en) * | 2017-03-23 | 2019-02-21 | Moovel North America, Llc | Systems and methods of providing and electronically validating tickets and tokens |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10880741B2 (en) * | 2013-07-23 | 2020-12-29 | Capital One Services, Llc | Automated bluetooth pairing |
CA2982766C (en) * | 2015-04-14 | 2023-07-04 | Capital One Services, Llc | Automated bluetooth pairing |
US9866383B2 (en) * | 2015-10-28 | 2018-01-09 | Cisco Technology, Inc. | Key management for privacy-ensured conferencing |
CN115987529A (en) * | 2023-01-31 | 2023-04-18 | 深圳市新国都支付技术有限公司 | APP signature method based on Hongmon system, electronic device and storage medium |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7184551B2 (en) | 2002-09-30 | 2007-02-27 | Micron Technology, Inc. | Public key cryptography using matrices |
US7246067B2 (en) * | 2002-12-26 | 2007-07-17 | Better Dating Bureau, Inc. | Secure online dating support system and method |
US20040141605A1 (en) | 2003-01-16 | 2004-07-22 | International Business Machines Corporation | Method and system for automatic real-time meeting attendance tracking and reporting in a multi-user telephone conferencing environment |
US7761386B2 (en) | 2003-06-15 | 2010-07-20 | Mordechai Teicher | Method and apparatus for arranging social meetings |
US7617134B2 (en) | 2005-06-17 | 2009-11-10 | Match.Com, L.L.C. | System and method for providing a certified photograph in a network environment |
US8270933B2 (en) | 2005-09-26 | 2012-09-18 | Zoomsafer, Inc. | Safety features for portable electronic device |
US20080172485A1 (en) | 2007-01-12 | 2008-07-17 | Jason Du | Method and system for rating users of a dating service |
US8165303B1 (en) | 2007-05-03 | 2012-04-24 | Adobe Systems Incorporated | Method and apparatus for public key cryptography |
US8107402B1 (en) | 2007-07-06 | 2012-01-31 | Sprint Spectrum L.P. | Method and system for secure automated conference setup |
US8364605B2 (en) * | 2008-07-13 | 2013-01-29 | Tros Interactive Ltd. | Calculating connectivity, social proximity and trust level between web user |
US20100114614A1 (en) * | 2008-11-06 | 2010-05-06 | Sheldon Sharpe | Controlling Registration for a Social Event |
US8615520B2 (en) | 2010-01-07 | 2013-12-24 | Idelan, Inc. | Computer based methods and systems for establishing trust between two or more parties |
US8577292B2 (en) | 2010-02-03 | 2013-11-05 | Google Inc. | Bump validation |
US8621005B2 (en) | 2010-04-28 | 2013-12-31 | Ttb Technologies, Llc | Computer-based methods and systems for arranging meetings between users and methods and systems for verifying background information of users |
EP2697932A2 (en) | 2011-04-09 | 2014-02-19 | Universität Zürich | Method and apparatus for public-key cryptography based on error correcting codes |
US20130054461A1 (en) * | 2011-08-23 | 2013-02-28 | Infosys Limited | Methods, systems, and computer-readable media for electronic financial transfers |
US20130054375A1 (en) | 2011-08-24 | 2013-02-28 | Accenture Global Services Limited | Personalized travel experience with social media integration |
US8918855B2 (en) * | 2011-12-09 | 2014-12-23 | Blackberry Limited | Transaction provisioning for mobile wireless communications devices and related methods |
WO2014043278A1 (en) * | 2012-09-11 | 2014-03-20 | Visa International Service Association | Cloud-based virtual wallet nfc apparatuses, methods and systems |
US9515836B2 (en) * | 2013-03-28 | 2016-12-06 | Xerox Corporation | System and method for location assurance using passive computational tags |
US9191213B2 (en) * | 2013-12-18 | 2015-11-17 | Xerox Corporation | Methods and systems for messaging with physical presence and temporal verifications |
-
2014
- 2014-10-17 US US14/516,716 patent/US9306753B1/en not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160294967A1 (en) * | 2015-03-31 | 2016-10-06 | Toshiba Global Commerce Solutions Holdings Corporation | Discoverable and shareable device brokers in pos system |
US20170099597A1 (en) * | 2015-10-02 | 2017-04-06 | Lg Electronics Inc. | Method and device for controlling device using bluetooth in wireless communication system |
US9961531B2 (en) * | 2015-10-02 | 2018-05-01 | Lg Electronics Inc. | Method and device for controlling device using bluetooth in wireless communication system |
US20180278422A1 (en) * | 2017-03-23 | 2018-09-27 | Moovel North America, Llc | Systems and methods of providing and validating digital tickets |
US20190058591A1 (en) * | 2017-03-23 | 2019-02-21 | Moovel North America, Llc | Systems and methods of providing and electronically validating tickets and tokens |
WO2019090168A1 (en) * | 2017-03-23 | 2019-05-09 | Brian Young | Systems and methods of providing and validating digital tickets |
US11212105B2 (en) * | 2017-03-23 | 2021-12-28 | Moovel North America, Llc | Systems and methods of providing and validating digital tickets |
US11212100B2 (en) * | 2017-03-23 | 2021-12-28 | Moovel North America, Llc | Systems and methods of providing and electronically validating tickets and tokens |
Also Published As
Publication number | Publication date |
---|---|
US9306753B1 (en) | 2016-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9306753B1 (en) | Mobile system and method for improving safety of impromptu meetings | |
US10223520B2 (en) | System and method for integrating two-factor authentication in a device | |
KR102511811B1 (en) | Techniques for securely authenticating bot users | |
US9413758B2 (en) | Communication session transfer between devices | |
CN103155513B (en) | Accelerate the method and apparatus of certification | |
TWI635409B (en) | Query system, method and non-transitory machine-readable medium to determine authentication capabilities | |
US8745401B1 (en) | Authorizing actions performed by an online service provider | |
EP2887615A1 (en) | Cloud-based scalable authentication for electronic devices | |
EP2859702B1 (en) | Method and system for managing user accounts across multiple electronic devices | |
US11658963B2 (en) | Cooperative communication validation | |
US20150121482A1 (en) | Mobile based login via wireless credential transfer | |
CN107431619A (en) | The security certification system and its method that member for online website logs in | |
JP2013535860A (en) | Indirect device communication | |
CN105656850B (en) | Data processing method, related device and system | |
CN103188229B (en) | The method and apparatus accessed for secure content | |
US11108773B1 (en) | Mobile user authentication over WIFI using IPX networks | |
CN110601858B (en) | Certificate management method and device | |
CN109525989A (en) | Data processing, identity identifying method and system, terminal | |
CN111628871B (en) | Block chain transaction processing method and device, electronic equipment and storage medium | |
CN109768977A (en) | Streaming medium data processing method, device and relevant device and medium | |
KR101633965B1 (en) | User security authentication system in internet and method thereof | |
CN111917728A (en) | Password verification method and device | |
US10893235B2 (en) | Conferencing apparatus and method for switching access terminal thereof | |
US20210011710A1 (en) | Electronic device management | |
TWM583082U (en) | User identity verification system for safety transaction environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: XEROX CORPORATION, CONNECTICUT Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:VANDERVORT, DAVID R.;GAUCAS, DALE ELLEN;REEL/FRAME:034013/0853 Effective date: 20141014 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
AS | Assignment |
Owner name: CITIBANK, N.A., AS AGENT, DELAWARE Free format text: SECURITY INTEREST;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:062740/0214 Effective date: 20221107 |
|
AS | Assignment |
Owner name: XEROX CORPORATION, CONNECTICUT Free format text: RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 062740/0214;ASSIGNOR:CITIBANK, N.A., AS AGENT;REEL/FRAME:063694/0122 Effective date: 20230517 |
|
AS | Assignment |
Owner name: CITIBANK, N.A., AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY INTEREST;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:064760/0389 Effective date: 20230621 |
|
AS | Assignment |
Owner name: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY INTEREST;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:065628/0019 Effective date: 20231117 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: CITIBANK, N.A., AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY INTEREST;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:066741/0001 Effective date: 20240206 |