US20130194301A1 - System and method for securely transmiting sensitive information - Google Patents
System and method for securely transmiting sensitive information Download PDFInfo
- Publication number
- US20130194301A1 US20130194301A1 US13/753,513 US201313753513A US2013194301A1 US 20130194301 A1 US20130194301 A1 US 20130194301A1 US 201313753513 A US201313753513 A US 201313753513A US 2013194301 A1 US2013194301 A1 US 2013194301A1
- Authority
- US
- United States
- Prior art keywords
- message
- recipient
- client device
- server
- sender
- 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
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000004891 communication Methods 0.000 claims abstract description 39
- 238000009877 rendering Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 238000010079 rubber tapping Methods 0.000 claims description 2
- 230000006378 damage Effects 0.000 description 24
- 239000000203 mixture Substances 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000012790 confirmation Methods 0.000 description 8
- 239000002131 composite material Substances 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004224 protection Effects 0.000 description 3
- 230000004888 barrier function Effects 0.000 description 2
- 235000014510 cooky Nutrition 0.000 description 2
- 230000006735 deficit Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004026 adhesive bonding Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000994 depressogenic effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036316 preload Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- 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
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/02—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
-
- 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/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/032—Protect output to user by software means
-
- 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/2137—Time limited access, e.g. to a computer or data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/234—Monitoring or handling of messages for tracking messages
Definitions
- the invention relates to transmitting sensitive messages, more particularly to preventing the contents of sensitive messages from being digitally recorded during viewing or being viewed by people besides the intended recipient.
- the current state of the art involves technology which attempts to limit the recipient's use of certain device features to make copies of a document's contents, for example, by disabling the built-in print, copy and paste, or screenshot functions of the device.
- the current state of the art also involves technology which limits the time in which a recipient may view the message contents based on time since sending, time since first view, number of views or other factors. These methods do not block taking a photo of the contents of the message, or another person viewing the message over the recipient's shoulder. They also do not block taking a screenshot of a message on devices which do not facilitate disabling the screenshot feature.
- our invention adds additional protection against ways in which message contents are transmitted beyond the direct recipient.
- the claimed invention proceeds upon the desirability of providing method and system for securely transmitting information over the communications network that prevents or minimizes recording or capture of sender's messages.
- An object of the present invention is to provide a system and method for preventing the contents of a message from being digitally recorded by the recipient.
- Another object of the present invention is to provide a system and method for preventing the contents of a message from being read by other people besides the recipient who are physically proximate to the recipient at the time the message is received.
- the system comprises an on-line messaging system where the recipient must actively hold down the mouse button or their finger to view the message contents and can only view a limited part of the message contents at any one time.
- a method for securely transmitting information over a communications network comprises receiving a message notification that a recipient has a message on a recipient's client device from a processor based server upon receipt of the message from a sender's client device over the communications network.
- the message from the sender's client device is stored in a storage device by the server.
- the recipient accesses the server to view the message using the recipient's client device.
- the message is rendered and displayed on the screen by the recipient's client device in accordance with a display method selected by the sender of the message to present only a portion of the message at any given time to the recipient. The prevents the message from being recorded or captured.
- the aforesaid method further comprises retrieving from the server, the message with a message cover to entirely obscure the message when displayed by the recipient client device.
- the message cover is displayed on the screen of the recipient's client device which entirely obscures the message.
- a hole having a predetermined shape and size in the message cover is displayed, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole. This prevents others in proximity of the recipient from viewing the message displayed on the recipient's client device.
- the aforesaid method further comprises moving the hole to reveal a different portion of the message by clicking or tapping a different area of the screen by the recipient.
- the aforesaid method further comprises closing the hole to entirely obscure the message when the area of the screen tapped or clicked is released by the recipient.
- the aforesaid method further comprises closing the hole to entirely obscure the message after predetermined period of time.
- the aforesaid method further comprises converting the message into a set of partial images by the server when the recipient's device access the server to view the message.
- Each partial image contains a portion of the message.
- a movie representative of the message is generated by the server using the partial images as an individual movie frames.
- the partial images and the movie is stored by the server in the storage device.
- the movie representative of the message is transmitted to the recipient's client device by the server.
- Each individual frame of the movie represents a portion of the message. Accordingly only a portion of the message at any given time is displayed on the recipient's client device to the recipient. This prevent the message from being recorded or captured.
- the aforesaid method further comprises converting the message into an image of the message and generating the set of partial image by removing a series of horizontal or vertical strips from the image.
- the aforesaid method further comprises receiving a code to view the message on the server by the recipient using the recipient's client device.
- the aforesaid method further comprises transmitting a delete notification to delete the message to the server when the message is displayed by the recipient's client device.
- the message is also deleted from the recipient's client device after a predetermined period of time.
- the aforesaid method further comprises deleting the message from the server after a predetermined time.
- the delete notification is transmitted to all client devices with a copy of the message by the server.
- the system for securely transmitting information over a communications network comprises a processor based server and a plurality of processor based client devices for sending and receiving messages over the communications network.
- Each client device is network enabled, associated with a user and comprises a screen to compose and display messages.
- the processor based server receives and stores messages from the plurality of client devices in a storage device.
- the server transmits a message notification to a client device associated with a recipient of each message.
- the recipient's client device accesses the server to view the message.
- the recipient's client device renders and displays the message in accordance with a display method selected by a sender of the message so as to present only a portion of the message at any given time on its display the recipient. This prevents the message from being recorded or captured.
- the aforesaid recipient's client device retrieves the message with a message cover and displays the message with the message cover on its screen.
- the message cover entirely obscures the message from being viewed by the recipient.
- the recipient's client device displays a hole having a predetermined shape and size in the message cover, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole. This prevents others in proximity of the recipient from viewing the message displayed on the screen.
- the aforesaid the recipient's client device moves the hole to reveal a different portion of the message in response to a different area of the screen tapped or clicked by the recipient.
- the aforesaid recipient's client device closes the hole to entirely obscure the message when the area of the screen tapped or clicked is released by the recipient.
- the aforesaid recipient's client device closes the hole to entirely obscure the message after predetermined period of time.
- the aforesaid server converts the message into a set of partial images when the recipient's client device access the server to view the message.
- Each partial image contains a portion of the message.
- the server generates a movie representative of the message by using the partial images as an individual movie frames.
- the partial images and the movie are stored in the storage device.
- the server transmits the movie representative of the message to the recipient's client device.
- Each individual frame representing a portion of the message.
- the recipient's client device displays each individual frame of the movie on the screen so that only a portion of the message is presented at any given time to the recipient to prevent recording or capture of the message.
- a non-transitory computer readable medium comprising computer executable code for securely transmitting information over a communications network.
- the computer executable code comprises instructions receiving a message notification that a recipient has a message on a recipient's client device from a processor based server upon receipt of the message from a sender's client device over the communications network.
- the sender's message is stored in a storage device by the server.
- the recipient using the recipient's client device accesses the server to view the message over the communications network.
- the message is rendered and displayed on the recipient's client device in accordance with a display method selected by a sender of the message to present only a portion of the message at any given time to the recipient, thereby preventing recording or capture of the message.
- the computer executable code further comprises instructions for retrieving, from the server, the message with a message cover to entirely obscure the message when displayed by the recipient client device.
- the message cover is displayed on a screen of the recipient's client device which entirely obscures the message.
- a hole having a predetermined shape and size in the message cover is displayed, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole. The prevents others in proximity of the recipient from viewing the message displayed on the recipient's client device.
- the executable code further comprises instructions for converting the message into a set of partial images by the server when the recipient's client device access the server to view the message.
- Each partial image contains a portion of the message.
- a movie representative of the message is generated by the server using the partial images as an individual movie frames.
- the partial images and the movie is stored in the storage device by the server.
- the movie representative of the message is transmitted to the recipient's client device by the server.
- Each individual frame of the movie represents a portion of the message. Accordingly only a portion of the message at any given time is displayed on the recipient's client device to the recipient. This prevent the message from being recorded or captured.
- the computer executable code further comprises instructions converting the message into an image of the message and generating the set of partial image by removing a series of horizontal or vertical strips from the image.
- FIG. 1 is a block diagram of the system in accordance with an exemplary embodiment of the claimed invention
- FIG. 2A is a block diagram of a client device in accordance with an exemplary embodiment of the claimed invention.
- FIG. 2B is a block diagram of a server in accordance with an exemplary embodiment of the claimed invention.
- FIG. 3A is a block diagram of the message composition screen with option section closed in accordance with an exemplary embodiment of the claimed invention
- FIG. 3B is a block diagram of the message composition screen with option section open in accordance with an exemplary embodiment of the claimed invention
- FIGS. 4A-4B are block diagrams of the message delivery screen with and without the confirmation dialog in accordance with an exemplary embodiment of the claimed invention
- FIG. 5A is a block diagram of the message received cover page in accordance with an exemplary embodiment of the claimed invention.
- FIG. 5B is a block diagram of the message received cover page with a password option in accordance with an exemplary embodiment of the claimed invention
- FIG. 5C is a block diagram of the message received cover page for deleted message in accordance with an exemplary embodiment of the claimed invention.
- FIGS. 6A-D are illustrations showing the components of the spotlight method for viewing message contents in accordance with an exemplary embodiment of the claimed invention.
- FIGS. 7A-D are illustrations showing exemplary frames of the video method for viewing message contents in accordance with an exemplary embodiment of the claimed invention.
- the claimed invention comprises one or more web-enabled processor based client devices 200 , one or more processor based servers 100 , and a communications network 300 (e.g., Internet).
- a communications network 300 e.g., Internet
- each client device 200 comprises a processor or client processor 210 , a display or screen 220 , an input device 230 (which can be the same as the display 220 in the case of touch screens), a memory 240 , a storage device 250 (preferably, a persistent storage, e.g., hard drive), an Internet connection facility 260 to connect to the communications network 300 , which can be wired and/or wireless connection device, and an optional message countdown/destruction timer 270 .
- a processor or client processor 210 a display or screen 220 , an input device 230 (which can be the same as the display 220 in the case of touch screens), a memory 240 , a storage device 250 (preferably, a persistent storage, e.g., hard drive), an Internet connection facility 260 to connect to the communications network 300 , which can be wired and/or wireless connection device, and an optional message countdown/destruction timer 270 .
- the server 100 comprise a processor or server processor 110 , a memory 120 , a storage device 130 (preferably a persistent storage, e.g., hard disk, database, etc.), an Internet connection facility 140 to connect to the communications network 300 , and optional timer 150 .
- a processor or server processor 110 a memory 120
- a storage device 130 preferably a persistent storage, e.g., hard disk, database, etc.
- an Internet connection facility 140 to connect to the communications network 300
- optional timer 150 optional timer
- the network enabled client device 200 includes but is not limited to a computer system, a personal computer, a laptop, a notebook, a netbook, a tablet or tablet like device, an IPad® (IPAD is a registered trademark of Apple Inc.) or IPad like device, a cell phone, a smart phone, a personal digital assistant (PDA), a mobile device, or a television, or any such device having a screen connected to the communications network 300 and the like.
- IPad® is a registered trademark of Apple Inc.
- IPad like device a cell phone, a smart phone, a personal digital assistant (PDA), a mobile device, or a television, or any such device having a screen connected to the communications network 300 and the like.
- the communications network 300 can be any type of electronic transmission medium, for example, including but not limited to the following networks: a telecommunications network, a wireless network, a virtual private network, a public internet, a private internet, a secure internet, a private network, a public network, a value-added network, an intranet, a wireless gateway, or the like.
- the connectivity to the communications network 300 may be via, for example, by cellular transmission, Ethernet, Token Ring, Fiber Distributed Datalink Interface, Asynchronous Transfer Mode, Wireless Application Protocol, or any other form of network connectivity.
- the computer-based methods for implementing the claimed invention are implemented using processor-executable instructions for directing operation of a device or devices under processor control
- the processor-executable instructions can be stored on a tangible computer-readable medium, such as but not limited to a disk, CD, DVD, flash memory, portable storage or the like.
- the processor-executable instructions can be accessed from a service provider's website or stored as a set of downloadable processor-executable instructions, for example or downloading and installation from an Internet location, e.g. the server 100 or another web server (not shown).
- the inventive method for securely transmitting sensitive information is now described herein from the perspective of two users: a message sender (i.e., sender) and a message recipient (i.e., receiver).
- the sender generates a message using her client device 200 (hereinafter the “sender's client device 200 ).
- the recipient's client device 200 After the message has been created a notification is sent to the recipient's client device 200 over the communications network.
- the notification can be sent by the sender's client device 200 or the server 100 .
- the message contents are stored on the server 100 , such as the storage 130 , until the recipient's client device 200 requests or retrieves them from the server 100 .
- the sender's client device 200 can sent the message contents directly to the recipient's client device 200 , thereby bypassing the server 100 .
- the server 100 is only utilized to route the message and/or the notification from the sender's client device 200 to the recipient's client device 200 .
- the recipient's client device 200 displays the message contents to the recipient user utilizing various novel methods to minimize or prevent dissemination of the message contents.
- two methods for securely transmitting information to protect against the dissemination of the message contents are described herein, specifically the “spotlight display method” and the “video display method”.
- all the devices delete the message contents after the recipient user has viewed the message. This is done in order to prevent the message contents from being accessed at a later time by someone besides the recipient.
- the system operator may choose to archive, maintain unencrypted or encrypted copies of the messages consistent with the message retention policies of the user (which can be an individual or a company) or the expected usage of the system.
- each client device 200 (or each sender's client device 200 ) comprises a set of graphical user interfaces (GUIs) screens which are shown on the display 220 for composing, editing and sending messages.
- GUIs graphical user interfaces
- An arrangement of the various screens displayed on the display 220 of the client device 200 can include user interface elements to enable the user to perform various tasks, e.g., composing, editing and sending messages.
- the message sending process can involve a message composition and display options screen 500 (or simply referred to as the message composition screen 500 ) on the display 220 , as exemplary shown in FIGS.
- the default screen arrangement of the client device 200 can include a button labeled “new” which activates the message composition and display options screen 500 , as exemplary shown in FIG. 3A .
- the “new” button can be placed anywhere, the “new” button is preferably located on the upper right corner or section of the default screen.
- the claimed invention preferably places the recipient information screen 510 after the message composition screen 500 .
- the system operator can alternatively implement the claimed invention where the recipient specification comes before the message composition similar to a typical e-mail device.
- the client device 200 combines the message composition and message display options onto a single screen 500 , as exemplary shown in FIGS. 3A-B , but it is appreciated that they can be placed on two separate screens.
- the single screen 500 can consist of a text input area which is configured to be roughly the size of a typical message, and an “options” button underneath the text input area.
- the single screen 500 can include a “next” button to proceed to the recipient information screen.
- the server 100 and/or the sender's client device 200 performs various tasks to package the message for use in the claimed system.
- the server 100 or the sender's client device 200 encrypts the message contents; sender selects the details as to how the message is to be displayed on the recipient's client device 200 and the sender's selection is stored in the message; metadata about the size of the message is stored in order to allow the recipient device 200 to display a representation of the message that is the correct size on the display 220 of the recipient device 300 ; and the recipient information must be specified by the sender and stored in the message.
- the processor 110 of the server 100 (or the processor 210 of the sender's client device 200 in certain exemplary embodiment) encrypts the contents of each message before transmitting the message to the recipient's client device 200 . It is appreciated that the claimed system can operate without an encryption component, but this will significantly lower the security of the system. Therefore, only system operators who have low security concerns should operate the claimed system without the encryption component. It is appreciated that any existing encryption system can be used with the claimed invention.
- the server 100 utilizes the symmetric key encryption.
- the server 100 generates a random 12 character key when the client device 200 initiates a new conversation.
- the random key can be generated using a cryptographically secure random number generator which is part of a widely distributed cryptographic library.
- the sender clicks the OK button on the delivery confirmation modal dialog displayed on the display 220 the sender's client device 200 sends a request to the server 100 using the Internet connection facility 260 , which can be a wired or wireless connection device, to create a new conversation over the communications network 300 .
- the server 100 receives the request via the Internet connection facility 140 , which is generally a wired connection device to provide a secure and reliable connection to the communications network 300 , and responds with information about the conversation including the conversation key to use for encrypting and decrypting conversation messages.
- the sender's client device 200 receives the information including the conversation key from the server 100 via the Internet connection facility 260 .
- the sender's client device stores the received conversation key in the storage 250 .
- the processor 210 of the sender's client device 200 encrypts the message contents using the stored conversation key and sends only the encrypted message contents to the server 100 over the communications network 300 .
- the server 100 stores the encrypted message contents in the storage 250 until the messages contents are accessed or retrieved by the client device 200 associated with the recipient.
- the server 100 transmits a notification to the recipient device 200 associated with the recipient that they have a message.
- the server 100 transmits or sends the conversation key and the encrypted message contents to the recipient device 200 upon verification that the user is the authorized recipient of the message.
- the processor 210 of the recipient's client device 200 decrypts the message contents using the conversation key.
- the claimed system can utilize a public key encryption system (such as GNU Privacy Guard or GPG) between registered or authorized users of the claimed system.
- GPG GNU Privacy Guard
- Each client device 200 of a registered user generates its own public/private key pair and sends only the public key to the server 100 over the communications network 300 .
- the server 100 stores the received public key in the storage 130 .
- the server 100 associates the public key received from a particular client device 200 with the user account of the user that is associated with that particular client device 200 .
- the server 100 sends the public key of the recipient to the sender's client device 100 over the communications network 300 and the processor 210 of the sender's client device 200 use the public key of the recipient client device 200 to encrypt the message contents of the message to be transmitted to the recipient client device 200 .
- One advantage of using the public key encryption system is that only registered user having access to the server 100 can access the decrypted contents of a message. It is appreciated that the claimed system can employ the symmetric key encryption method when the sender is communicating with a recipient who does not yet have a registered account on the system or the server 100 can send notification to the recipient's client device to become a registered user of the claimed system to securely send and receive messages.
- the sender can control certain settings which effect how the recipient will interact with their message.
- the composition screen displayed on the screen 220 of the sender's client device 200 includes an “options” button below the message text input area, as exemplary shown in FIG. 3A .
- the sender's client device 200 presents a display options section for controlling and setting various message options on the screen 220 .
- the sender clicks OK on the pre-delivery confirmation dialog in the display option section the sender's client device 200 reads the state of the controls in this display options section, serializes their values, and sends them to the server 100 .
- the server 200 stores the values along with the message received from the sender's client device 200 in the storage 130 . These stored values are used when the recipient accesses the message and they are sent to the recipient's client device 200 when the recipient views the message.
- the sender can choose which method the system will used in displaying their message contents to the recipient on the display 220 of the recipient's client device 200 .
- the sender's client device 200 provides a drop down menu which lists one or more display methods that can be selected by the sender.
- the sender's client device 200 displays short descriptions of the display methods alongside each display method or when the sender places a selector (e.g., a cursor) over each display method.
- the sender can set the time in seconds of the message countdown/destruction timer 270 for the message in the display options section/area.
- the sender can set the message countdown/destruction timer 270 to 10 seconds so that the message will self-destruct (i.e., deleted from the server 100 and/or the recipient's client device 200 ) in 10 seconds after the recipient first views the message.
- the text input area of the message composition and message display options screen of the sender's client device 200 displays the default value of the message countdown/destruction timer 270 in seconds which can be changed by the sender. It is appreciated that other types of user interface elements can be utilized to enable the sender control and change the message countdown/destruction timer 270 .
- the client processor 210 of the sender client device 200 automatically sets the message countdown/destruction timer 270 for each message based on the length of the message content.
- the client processor 210 sets the message countdown/destruction timer 270 for a given message based on greater of the message length in number of characters or a fixed value 15 , and divides the resulting value by 3.
- the fixed value 15 insures that no message has a message countdown/destruction timer 270 set to less than 5 seconds, thereby ensuring that the recipient has sufficient time to read the message before the message self-destructs. It is appreciated that any other fixed value or any other method of calculating the length of the message countdown/destruction timer 270 can be used, all of which are within the scope of the claimed invention.
- the sender can disable the message countdown/destruction timer 270 so that it does not activate when the recipient first views the message. For example, the sender can unclick (or uncheck) the checked delete timer box user interface element within the message display options area, which is enabled by default, to disable the message countdown/destruction timer 270 .
- the sender can add a password to the conversation (or the message). If the sender has selected the password option, then the recipient must enter the password before they can access the message.
- the password option provides an additional level of security.
- certain metadata about the message contents is recorded/stored and transmitted by the server 100 and/or the sender's client device 200 when the message is created by the sender.
- the sender's client device 200 records a piece of metadata relating to the time that the message was created in the storage 250 .
- the client processor 210 of the sender's client device 200 records a Unix timestamp as the message creation time in the storage 250 . It is appreciated that any other known timer/timestamp can be used.
- another piece of metadata may describe how much space it takes to display the message contents on the recipient's client device 200 .
- This message display size metadata is transmitted to the recipient's client device 200 so it can display the message cover when the recipient accesses the message on the display 220 of recipient's client device 200 .
- the message cover should be the same size as the display size of the message when presented/viewed on the display 220 of the recipient's client device 200 .
- the client processor 210 of the sender's client device 200 and/or the server processor 110 of the server 100 records the total number of characters in the message rounded up to the nearest multiple of 10 and the total number of lines in the message in the storage 250 and storage 130 , respectively.
- the server 100 and/or the sender's client device 200 should not record the exact number of characters in the message. Instead, the server 100 and/or the sender's client device should record a representative number, such as the number of characters in the message rounded up to the nearest multiple of 10. This way, for example, the messages whose contents are “yes” and “no,” respectively, have the same metadata.
- the client processor 210 of the sender's client device 200 records the number of lines in a message in the storage 250 by counting the number of newline character sequences in the message.
- the client processor 210 of the sender's client device 200 records the message display size metadata by generating an array of integers where each element in the array represents the length of one line in the message rounded up to the nearest multiple of 10.
- the client processor 210 of the sender's client device serializes the array using any known serialization method and included along with the encrypted message contents when the message is delivered.
- the sender's client device 200 may omit the recording and transmitting the message display size metadata which is used to determine the size of the message representation on the display 220 of the recipient's client device 200 .
- the only disadvantage of omitting the message display size metadata is that the recipient will find the user interface less intuitive on its client device because the recipient's client device 200 utilizes this metadata to properly size the message representations on its display 220 .
- the sender uses the user input device 230 or touch screen 220 , the sender enters her message contents in the text input area and optionally specifies display options by clicking the options toggle and adjusting the default values for the various display options on the sender's client device 200 . The sender then clicks the “next” button to proceed to the recipient information page/screen or message delivery screen 510 .
- the recipient information page/screen comprises a text input area where the sender can enter the e-mail address or system username of the recipient, as exemplary shown in FIG. 4A .
- the client processor 210 displays auto-complete options below the input area consisting of addresses/usernames of the previous recipients.
- the recipient information page/screen further comprises a button which lets the user skip the process of transmitting the message to the recipient's client device 200 .
- the sender's client device 200 obtains a link to sender's message from the server 100 and displays the link on the sender's client device 200 .
- the sender can then copy this link from their client device 200 and deliver it to the recipient outside of the system, such as via a text message, social-media website posting and other comparable means.
- the link enables the recipient to access the sender's message.
- This button can be located below the recipient information text input element or anywhere within the recipient information page/screen.
- the sender's client device 200 transmits a code, instead of a link, to the recipient's client device 200 over the communications network.
- the recipient's client device 200 can access the message stored on the server 100 by providing/entering the code received from the sender's client device 200 .
- the sender's client device 200 displays a modal confirmation dialog on the display 220 , as exemplary shown in FIG. 4B .
- the modal confirmation dialog displays the recipient information for the sender to confirm or change to a different recipient before the message is transmitted to the recipient's client device 200 .
- this feature is not necessary for the functioning of the system, it is highly desirable to add such a safety mechanism to prevent an accidental delivery of the message to the wrong recipient.
- the delivery confirmation can have the following modal dialog: “send message to john@example.com? OK/Cancel”.
- the sender's client device 200 initiates the delivery process or message transmission. If the sender clicks “Cancel,” the display 220 hides the modal dialog and presents the recipient information screen to the sender.
- the claimed system permits a programmatic access for a third party source to create messages for transmission within the system. That is, the sender's client device 200 actions are performed by another source, such as a server that is part of another system. This can be useful to allow companies to send messages which have all the security properties of the claimed system to recipients who are part of the claimed system.
- the message contents are not initially delivered to the recipient's client device 200 to maintain secure control over the content of the messages delivered within the claimed system.
- the server 100 delivers a notification to the recipient's client device 200 that they have received a message.
- the notification includes the account user-name of the sender, but this can be omitted to increase the privacy of the claimed system.
- the server 100 can include the message in the initial notification to the recipient's client device 200 as long as the message are not initially displayed on the display 220 of the recipient's client device 200 .
- the recipient information consists of an e-mail address or username of the recipient on the system. Alternatively, there may be no recipient information if the sender elects to use a link or code to deliver the message to the recipient's client device 200 . If the recipient information consists of an e-mail, the server 100 cross references the e-mail against registered e-mail accounts on the system. If the specified e-mail address is that of a registered user, the server 100 returns the user-name of the registered user/recipient to the sender's client device 200 .
- the display 220 of the sender's client device 200 displays the recipient user-name in the final confirmation dialog to the sender before the message is sent along with a message explaining that the specified email address of the recipient belongs to a registered user of the claimed system.
- the server 100 sends an e-mail to the recipient's e-mail address.
- the email includes a link to access the message along with text explaining that they have received a message and providing the user-name of the sender.
- the server 100 sends a notification message to the recipient user in accordance with the recipient user's preference, i.e., a preferred method specified by the recipient user.
- the recipient user's preference i.e., a preferred method specified by the recipient user.
- These preferences can be one of the following: an e-mail to the recipient user's registered e-mail address, a notification sent directly to the recipient user's client device 200 , a text message to the recipient user's phone or no notification.
- the server 100 can delegate the transmission of the notification message to the sender's client device 200 .
- the delivery options page/screen can include a button which activates a local contacts feature of the sender's client device 200 , similar to features currently existing on touch screen cell phones.
- the server 100 when the recipient has a new message, the server 100 sends a notification to the recipient's client device 200 over the communications network 300 .
- the notification directs the recipient to access the claimed system, specifically the server 100 , to view the message.
- the notification has a link which takes the recipient's client device 200 to a particular webpage of the server 100 or an unique identifier for the recipient to view/read the message.
- the recipient is directed to login into her account using her client device 200 to check and view her messages.
- the server 100 When the recipient uses her client device 200 to initiate an access to her messages, the server 100 (i.e., the email system) presents a cover page for the message on the display 220 of the recipient's client device 200 .
- the message received cover page displays the time at which the message was created, the name of the sender, and a button or other user interface element to initiate the viewing of the message.
- the displayed version of the date is translated from the Unix timestamp (or other comparable timestamp) in which it is stored, into a textual representation of the date and time adjusted to the local time zone of the recipient's client device 200 . If the message has already been deleted, as exemplary shown in FIG.
- the message received cover page displays a short message indicating that there is no longer a message present.
- the message received cover page also has an area for the recipient to enter a password to view the message if the sender has protected the message with the password.
- the server authenticates the recipient to her account, either by requesting the recipient to login into her account or automatically logging in the recipient to her account using a cookie stored on the recipient's client device 200 if the recipient opted to stay logged in with the cookies.
- the client application running on the recipient's client device 200 instructs the processor 210 to send a request (with the user-supplied password, if applicable) to the server application running on the server 100 over the communications network via their respective Internet connection facilities 260 , 140 .
- a password is supplied by the recipient and the processor 110 of the server 100 determines that the password is incorrect, then the processor 110 of the server 100 notifies the client application of the error.
- the processor 210 displays that password is incorrect on the display 220 of the recipient's client device 200 . If the password is not required or the recipient supplies the correct password, then the processor 110 of the server 100 grants the client application on the recipient's client device 200 access to the message and updates server's internal record to indicate that the recipient's client device 200 has been granted access to the message.
- the client processor 210 of the recipient's client device 200 displays the message on the display 220 based on the method and format selected by the sender, such as one of the following methods described herein: the Plain Text method, the Spotlight method and the Video method. It is appreciated that any other comparable methods can be utilized by the claimed invention to display the message on the recipient's client device 200 .
- the client processor 210 of the recipient's client device 200 renders the text contents of a message using a font color with low contrast against the background on the display 220 .
- a font color with low contrast against the background on the display 220 For example a light grey font on a dark grey background on the display 220 of the recipient's client device 200 .
- the text contents of the message should be rendered using a high contrast color against the background on the display 220 for older users or those with vision impairment. Otherwise the recipient may be unable to read the message contents even though they are displayed in front of them.
- different font color with higher or lower contrast can be utilized to achieve different level of protection against unwanted accessibility.
- the sender can select to have their messages displayed in plain text on the recipient's client device 200 .
- the plain text method does not provide protections against digital recording of the messages or other people viewing the message, the claimed system still provides automatic deletion of the messages from the sender's client device 200 , the recipient's device 200 and the server 100 .
- the plain text method can be utilized by the sender to permit the recipient to digitally copy the message but the sender can enhance the security of the plain text method by encrypting the message or using password protected message.
- the system and method provides a spotlight display of the message contents to prevent recipients from capturing message contents or others in physical proximity to the recipient from seeing the message contents.
- the claimed spotlight method is applicable to text, photo, other rich media message contents or any screen-displayable message contents to protect against capture via copy and paste functionality, a screenshot or other image-taking device or functionality, or viewing of the message by another person in the close vicinity to the recipient.
- the recipient's client device 200 displays on the screen 220 a note or message contents behind a cover which entirely obscures the message/note.
- the cover 410 has some explanation to indicate to the recipient that it is a message.
- the explanation may include a label such as “Click to view” or “Tap to view”.
- the cover 410 can also include graphic styling which makes it look like a text bubble as found in chat and SMS applications.
- the cover 410 provides a representation of the message while preventing the message contents from being visible to the recipient.
- the explanation label of the cover utilizes a large font in a color which has high contrast against the cover back ground to make the cover suitable for older users and those with vision impairment. Of course, the explanation label can be utilized a smaller font in color with less contrast.
- the processor 210 of the recipient's client device 200 presents a small hole 450 in the cover 410 wherever the mouse 220 is.
- This hole 450 is called the “spotlight” and the spotlight or hole 450 reveals a section of the message content where the mouse or cursor is located.
- a touch screen device 200 e.g., a tablet
- the user can touch the cover 410 on the touch screen 220 with their finger and hold their finger down on the cover 410 to start the spotlight mechanism.
- the processor 210 of the user's client device 200 displays the spotlight area 450 above and to the left of the place where the user touch the cover on the touch screen 220 so that the user's finger(s) does not obscure the spotlight area 450 .
- the processor 210 of the user's client device 200 i.e., the desktop or laptop computer
- the user can see a small portion of the document through the spotlight 450 while it is open but the user can never see the entire document.
- the spotlight exposes a space big enough to read a few words or see a recognizable portion of a photo.
- the user can move the mouse 230 while holding the mouse button or can move their finger(s) while holding it on the touch screen 220 to move the spotlight 450 to view another portion/section of the document.
- the processor 210 of the user's client device 200 enables the user to view an entire text document or photo but does not reveal the entire document or message content at any given point in time.
- the processor 210 close the spotlight on the display 220 and the cover 410 returns to its initial state where none of the message contents are visible.
- the processor 210 of the user's client device 200 keeps the spotlight 450 open for a predetermined period of time, preferably a short period of time, if the user clicks or taps quickly on the cover. For example, the processor 210 keeps the spotlight open for 330 milliseconds after the user clicks or taps the cover if the duration of their click or tap is under 330 milliseconds. This delay in closing the spotlight by the processor 210 after a short click is to provide a working demonstration of the spotlight mechanism to the recipient.
- the processor 210 can eliminate this small delay period in removing the transparent section if the recipient has kept the spotlight open for a long period of time indicating their comprehension of the spotlight mechanism. For example, the processor 210 of the recipient's client device 200 closes the spotlight immediately after the user clicks or taps the cover if the duration of their click or tap is over 330 milliseconds.
- the claimed spotlight method of presenting the message content on the display 220 to the recipient prevents other people who are physically near the recipient from easily viewing the message contents while it is viewed/read by the recipient.
- the recipient is actively viewing the message contents, only the section that the recipient is looking at is visible on the display 220 which makes it difficult for another person to view the whole message as they must exactly synchronize their viewing pattern with the recipient's.
- the claimed spotlight method of presenting the message content on the display 200 to the recipient prevents other people who are physically near the recipient from viewing the message contents when the recipient is not actively clicking or touching the message cover. This increases the privacy of the message in many situations, for example, if a recipient puts their smart phone down on a table after reading the message and there are other people at the table, none of the other people can see the message contents because the message content is not visible on the display 220 when the spotlight is not active.
- the message is stored on the server 100 until the message contents are requested by the recipient's client device 200 as part of a “message open” request by the recipient's client device 200 .
- the server 100 delivers or transmits the message contents to the recipient's client device 200 over the communications network 300 and the server processor 110 of the server 100 deletes the message contents from the storage 250 after a predetermined time period.
- the server processor 110 can start a countdown timer 150 and delete the message contents from the storage 250 when the countdown timer 150 expires.
- the client application running on the recipient's client device 200 instructs the client processor 210 to retrieve the message contents from the server 100 over the communications network 300 .
- the client processor 210 executing the client application renders three layers 410 , 420 , 430 on top of each other on the display 220 of the recipient's client device 200 .
- the top layer 410 is an image which is used as a cover page 410 and is completely opaque.
- the top layer 410 has the same size and shape as the message displayed on the screen 220 of the recipient's client device 200 .
- the bottom layer 430 is the message.
- the middle layer 420 is an image that is completely opaque except for a small transparent hole 450 in the middle or a “spotlight” 450 .
- the middle layer 420 is preferably as tall as twice the height of the message plus the height of the transparent spotlight area/region 450 .
- the image of the middle layer 420 is preferably wide as twice the width of the message plus the width of the spotlight 450 .
- the recipient's client device 200 moves the middle layer 420 by adjusting the X and Y offset values in pixels of the middle layer image relative to the top and left of the screen 220 of the recipient's client device 200 .
- the client processor 210 of the recipient's client device 200 calculates the values equivalent to half the width of the middle layer image and half the height of the middle layer image.
- the client processor 210 takes X and Y coordinates of the new destination point, subtracts the half width X and Y values from the X and Y coordinates of the new destination point, respectively, and then sets the X and Y values for the upper left corner of the middle layer image to the resulting values. This positions the portion of the middle image which makes up the spotlight area to be directly located at the desired point.
- the client processor 210 adjusts the target point to be 10 px higher than the actual location of the user's click.
- the client processor 210 subtracts 10 px from the input click's Y value before performing the position adjustment process on the middle layer image.
- the processor adjusts the target point to be 10 px higher and 20 px to the left of the actual location of the user's touch.
- the client processor 210 subtracts 10 px from the input point's Y value and 20 px from the input point's X value before performing the position adjustment process on the middle layer image.
- 10 px vertical and 20 px horizontal offset values were used in this example, different offset values can be also used to achieve the desired result.
- the client processor 210 of the client device 200 moves the middle layer 420 so that the spotlight 450 is located right above their click location on the screen 220 and then removes the top layer 410 . This results in the effect of the spotlight opening right above where the user generated input, as shown in FIG. 6D .
- the processor 210 removes the top layer by setting its “display” property to “none” in the CSS style sheet (Cascading Style Sheet) which is part of the client application.
- the client application running on the client device 200 instructs the client processor 210 to move the middle layer 420 so that the spotlight 450 is repositioned above where mouse 230 (i.e., the mouse cursor) moved to.
- the client application instructs the client processor 210 to display the top layer 410 on the screen 220 again to completely block out the message contents or the bottom layer 430 .
- the client processor 210 hides the mouse cursor from display 220 while the mouse button is depressed, thereby giving the impression to the user that they are moving the spotlight 450 instead of the mouse 230 .
- the claimed system provides a video display of the message contents to prevent recipients from capturing message contents.
- the video display method is applicable to text, photo, other rich media message contents or any screen-displayable message contents to protect against capture via copy and paste functionality, or screenshot or other image-taking device or functionality.
- the server processor 110 converts the text into an image.
- the processor 110 then converts the image into a set of partial images, each of which has a portion of the original message but is incomplete on its own.
- the server processor 110 generates a movie by using the partial images as the individual movie frames and repeats them in a loop.
- the processor 110 stores the message content in the various formats (e.g., text, image, partial images, and movie) in the storage 130 .
- the client processor 210 of the client device 200 presents the movie in a flickering but still viewable version of the message contents on the screen 220 to the recipient.
- a screenshot or other image capture taken of the movie will result in a partial image which is incomplete and unreadable.
- the server processor 110 generates the partial images (as exemplary shown in FIGS. 7B-D ) from the original image of the message contents (as exemplary shown in FIG. 7A ) by removing a series of vertical or horizontal strips from the original image and leaving vertical or horizontal strips which show no more than a word or two before there is a removed section. This is similar to taking the strips output by a paper shredder and keeping only every 2 nd strip or every 3 rd strip and then gluing those kept strips, in the same order and position as they were in the original, onto a blank piece of paper that is the same size as the original.
- the size and shape of the sections taken from the original message can be any geometric shape, a collection of geometric shapes, a collection of arbitrary shapes, or a collection of random shapes as long as none of the sections are large enough to contain a significant portion of the message contents.
- the server processor 110 executes the server application stored in the memory 120 of server 100 to generate the video image of the message content when a request to view the message is received by the server 100 from the client application running on the recipient's client device 200 over the communications network 300 via the respective Internet connection facilities 140 , 260 .
- the server 100 stores the message in its original format (i.e., in its text format as exemplary shown in FIG. 7A ) in the storage device 250 until it is requested by the recipient's client application running on the recipient client device 200 .
- the server application instructs the server processor 110 to transform the message contents into another object which can act as the source of the movie.
- the server processor 110 transmits the movie source object to the recipient's client device 200 over the communications network 300 and deletes the message from the storage device 130 .
- the server application running on the server processor 110 accesses a graphics utility to generate arbitrary sized images and copy image sections between images at arbitrary positions.
- the server application is enabled to access the GD (GIF draw or graphics draw) library included with the PHP (hypertext preprocessor) programming language.
- the server processor 110 renders the message contents into an image using the GD library.
- the server application running on the server processor 110 renders the message content with the font file and the graphics utility which can create arbitrary sized images and insert text into them at arbitrary positions using the font file. It is appreciated that the server application needs to be configured with certain information about the font file, e.g., how many letters of the font fit across a certain pixel width.
- the processor 110 utilizes the “em” width of the font and transforms the em width into a pixel measurement.
- the em width is the width of a capital letter “M” in the font file.
- the M is the widest letter of any font.
- the processor 110 can utilize a fraction of the M width.
- Another piece of information that the server application needs to be configured with is the height of the font in pixels, which is a fixed value and generally accompanies the font file.
- the server processor 110 When rendering a given message, in accordance with an exemplary embodiment of the claimed invention, the server processor 110 , running the server application, determines the width in pixels of the display 220 of the recipient's client device 200 . It is appreciated that this information can be included in the request to view the message from the recipient's client device 200 .
- the server processor 110 divides the display pixel width by the pixel width of the average letter of the font. This determines how many letters can be rendered across the image.
- the server processor 110 generates an array of lines out of the message by breaking the message on line breaks or on spaces between words so that the lines and the words in the lines appear in the same order as in the original message.
- the server processor 110 also ensures that none of the lines are longer than the amount of letters which can be rendered across the image.
- the server processor 110 running the server application, generates a blank image to render the text on.
- the exemplary blank image can be wide as the display width of the recipient's client device 200 and the height of the exemplary blank image can be equivalent to the number of lines in the array multiplied by the height of the font. It is appreciated that the image dimensions can include padding.
- the server processor 100 iterates through the lines and renders each line onto the image. For each line, the server processor 110 increases the offset from the top of the image by the height of the font. This results in an image of the message contents that the client processor 210 of the recipient's client device 200 can display on its screen 220 .
- the server processor 110 running the server application, generates a blank image for each partial image which is the same size as the original image.
- the server processor 110 iterates through the each of the partial images and determines the portions of the original image which should appear in that particular partial image.
- the processor 110 copies those portions of the original image into the corresponding partial image, thereby resulting in a desired set of partial images.
- the server processor 100 running the server application, generates a movie from the set of partial images.
- the server processor 110 generates a new image which is as wide as the original image and as tall as the height of the original image multiplied by the number of partial images.
- the server processor 110 iterates through the partial images and copies each one, in its entirety, onto a new image at an offset increasing by the height of the original image. This results in a composite image which contains all the partial images arranged vertically above one another.
- the server 100 sends the composite image to the recipient's client device 200 in a secure manner, as described herein, over the communications network 300 .
- the client processor 210 stores the received composite image in its storage device 250 .
- the client processor 210 When the recipient initiates the viewing of the message on the recipient's client device 200 , the client processor 210 , running the client application, displays the composite image as the background image to a viewable object, having the same dimensions as the original image, with nothing in it on the display 220 .
- the client processor 210 shifts the vertical offset of the background image by an amount equivalent to the height of the original image repeatedly so that only a portion of the composite image containing one of the partial images is displayed on the screen 220 at any one time.
- the client processor 210 loops rapidly through the portions of the composite image, shifting the offset back to zero after the last portion is displayed.
- the client processor 210 displays each portion as long as a typical movie frame, which is generally display at 30 frames per second. Higher frame rates are possible to provide a better viewing experience for the recipient, as long such higher frame rates are supported by the recipient's client device 200 .
- the server processor 110 running the server application, generates a movie from the set of partial images using a utility for creating movies in contemporary formats such as the H264 encoding.
- the server application would need access to the ffmpeg library.
- the server processor 110 can use the utility of the ffmpeg library to generate a movie file out of a series of individual frames.
- the server application passes the partial images to the library which uses the partial images as frames for the resulting movie.
- the server processor 110 can utilized the library to generate a longer movie by repeating a series of frames or repeating the series of frames in the arguments passed to the library.
- the server 100 then transmits the resulting movie file to the recipient's client device 200 in a secure manner, as described herein, over the communications network 300 .
- the client processor running the client application, stores the received movie file in its storage device 250 .
- the server 100 deletes the movie file from the storage device 130 , as described herein, after it is viewed by the recipient.
- the client processor 210 displays the movie on the screen 220 .
- the client processor 210 When the recipient first engages with the cover 410 to view the message contents, the client processor 210 , running the client application, sends a notification to the server 100 that the message is being viewed by the recipient. The server 100 then relays this notification to the sender's client device 200 and any other client devices 200 associated with users who can view the message. In accordance with an exemplary embodiment of the claimed invention, the client processor 210 , running the client application, does not retrieve the message contents from the server 100 until the recipient first engages with the cover 410 of the message. Alternatively, the server 100 preloads or transmits the message contents to the recipient's client device 200 .
- each device preferably, at least one of the following device: the server 100 , the sender's client device 200 or the sender's client device 200 ) starts its respective message countdown/destruction timer 150 , 270 , which can implemented either in hardware or software.
- the notification that the recipient has engaged the message cover 410 serves as a trigger to start the respective message countdown/destruction timer 150 , 270 in the recipient's client device 200 , the server and any other client devices 200 (such as the sender's client device 200 ) which can view the message. All of the devices (e.g., the server 100 and client devices 200 ) with a copy of the message delete the message contents when the countdown/destruction timer 150 expires.
- the message countdown/destruction timer resets each time the recipient re-engages the message cover 410 . That is, each time the recipient re-engages the message cover 410 before the message countdown/destruction timer expires, the client processor 210 of the recipient's client device 200 transmits a reset notification to the server 100 over the communications network 300 .
- This timer reset functionality is an optional feature that may be useful for novice, disabled or elderly users who may need additional time to view/read the message.
- use of the message countdown/destruction timer within the claimed system is optional. That is, the sender can elect to use the message countdown/destruction timer to ensure that all copies of her messages are timely deleted after it is viewed/read by the recipient.
- the client processor 210 of the recipient's client device 200 deletes the message contents from its storage device 250 and sends the notification to the server 100 when the recipient closes or minimizes the client application from the screen 220 , thereby indicating that the recipient has viewed/read the message.
- This navigation act by the recipient triggers, the client processor 210 of the recipient's client device to delete the message from its storage 250 and sends a notification to server 100 .
- the server 100 Upon receipt of the notification, the server 100 deletes its copy of the message from its storage 130 and transmits the notification to the sender's client device 200 to delete sender's copy of the message.
- the client processor 210 displays the progression of the message countdown/destruction timer 270 on the screen 220 of the user's client device 200 to the user.
- the client device 200 utilizes a graphical element with two sections (i.e., a virtual hourglass), where the client processor 210 decreases the size of one section until it completely disappears similar to a physical hourglass.
- the client processor 210 displays a number which represents the number of seconds left on the message countdown/destruction timer 270 on the screen 220 . This number counts down from the initial value to zero. It is appreciated any other timer displays can be utilized with the claimed invention that best integrates with the look and feel of the client application design.
- the client processor 210 deletes the message from its storage 250 and removes the timer from its display 220 .
- the server 100 and the client application on the client device 200 overwrites the message before deleting in order to ensure that no partial section of the message is left on its respective storage device 130 , 250 .
- This is done in the claimed system because certain storage devices deletes by updating the metadata for performance reasons, but do not actually erase the contents from the underlying storage. Accordingly, the claimed system takes precautions to ensure that the storage devices do not maintain caches of contents when creating or reading them. If caches are utilized by the storage devices, then the respective server and client applications empties the caches after a very short period of time in the course of normal operation to prevent or minimize recovery of any contents from the storage devices.
Abstract
A system and method for securely transmitting information over a communications network comprises receiving a message notification that a recipient has a message on a recipient's client device from a processor based server upon receipt of the message from a sender's client device. The message from the sender's client device is stored in a storage device by the server. The recipient accesses the server to view the message using the recipient's client device. The message is rendered and displayed on the screen by the recipient's client device in accordance with a display method selected by the sender of the message to present only a portion of the message at any given time to the recipient. The prevents the message from being recorded or captured.
Description
- This application claims the benefit of U.S. Provisional Application No. 61/592,584 filed Jan. 30, 2012, which is incorporated herein by reference in its entirety.
- The invention relates to transmitting sensitive messages, more particularly to preventing the contents of sensitive messages from being digitally recorded during viewing or being viewed by people besides the intended recipient.
- When sending messages with sensitive information it is the sender's goal that each message goes only to the intended recipient and is not spread to a wider audience. Digital technologies make this difficult by allowing for very easy copying. The sender must worry both about the recipient intentionally redistributing the information (e.g. by taking steps to make a copy or retransmitting the original message) and also about the recipient unintentionally redistributing the information by allowing access to it (e.g. by another person looking over the recipient's shoulder while they are viewing it or gaining access to the system where it is stored at a later time). The ability of the sender to control their messages is limited by the fact that they are usually not physically present with the recipient when the message is viewed.
- The current state of the art involves technology which attempts to limit the recipient's use of certain device features to make copies of a document's contents, for example, by disabling the built-in print, copy and paste, or screenshot functions of the device. The current state of the art also involves technology which limits the time in which a recipient may view the message contents based on time since sending, time since first view, number of views or other factors. These methods do not block taking a photo of the contents of the message, or another person viewing the message over the recipient's shoulder. They also do not block taking a screenshot of a message on devices which do not facilitate disabling the screenshot feature. Compared to the current state of the art, our invention adds additional protection against ways in which message contents are transmitted beyond the direct recipient.
- Accordingly, the claimed invention proceeds upon the desirability of providing method and system for securely transmitting information over the communications network that prevents or minimizes recording or capture of sender's messages.
- An object of the present invention is to provide a system and method for preventing the contents of a message from being digitally recorded by the recipient.
- Another object of the present invention is to provide a system and method for preventing the contents of a message from being read by other people besides the recipient who are physically proximate to the recipient at the time the message is received.
- In accordance with an exemplary embodiment of the claimed invention, the system comprises an on-line messaging system where the recipient must actively hold down the mouse button or their finger to view the message contents and can only view a limited part of the message contents at any one time.
- In accordance with an exemplary embodiment of the claimed invention, a method for securely transmitting information over a communications network comprises receiving a message notification that a recipient has a message on a recipient's client device from a processor based server upon receipt of the message from a sender's client device over the communications network. The message from the sender's client device is stored in a storage device by the server. The recipient accesses the server to view the message using the recipient's client device. The message is rendered and displayed on the screen by the recipient's client device in accordance with a display method selected by the sender of the message to present only a portion of the message at any given time to the recipient. The prevents the message from being recorded or captured.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises retrieving from the server, the message with a message cover to entirely obscure the message when displayed by the recipient client device. The message cover is displayed on the screen of the recipient's client device which entirely obscures the message. A hole having a predetermined shape and size in the message cover is displayed, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole. This prevents others in proximity of the recipient from viewing the message displayed on the recipient's client device.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises moving the hole to reveal a different portion of the message by clicking or tapping a different area of the screen by the recipient.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises closing the hole to entirely obscure the message when the area of the screen tapped or clicked is released by the recipient.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises closing the hole to entirely obscure the message after predetermined period of time.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises converting the message into a set of partial images by the server when the recipient's device access the server to view the message. Each partial image contains a portion of the message. A movie representative of the message is generated by the server using the partial images as an individual movie frames. The partial images and the movie is stored by the server in the storage device. The movie representative of the message is transmitted to the recipient's client device by the server. Each individual frame of the movie represents a portion of the message. Accordingly only a portion of the message at any given time is displayed on the recipient's client device to the recipient. This prevent the message from being recorded or captured.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises converting the message into an image of the message and generating the set of partial image by removing a series of horizontal or vertical strips from the image.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises receiving a code to view the message on the server by the recipient using the recipient's client device.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises transmitting a delete notification to delete the message to the server when the message is displayed by the recipient's client device. The message is also deleted from the recipient's client device after a predetermined period of time.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid method further comprises deleting the message from the server after a predetermined time. The delete notification is transmitted to all client devices with a copy of the message by the server.
- In accordance with an exemplary embodiment of the claimed invention, the system for securely transmitting information over a communications network comprises a processor based server and a plurality of processor based client devices for sending and receiving messages over the communications network. Each client device is network enabled, associated with a user and comprises a screen to compose and display messages. The processor based server receives and stores messages from the plurality of client devices in a storage device. The server transmits a message notification to a client device associated with a recipient of each message. The recipient's client device accesses the server to view the message. The recipient's client device renders and displays the message in accordance with a display method selected by a sender of the message so as to present only a portion of the message at any given time on its display the recipient. This prevents the message from being recorded or captured.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid recipient's client device retrieves the message with a message cover and displays the message with the message cover on its screen. The message cover entirely obscures the message from being viewed by the recipient. The recipient's client device displays a hole having a predetermined shape and size in the message cover, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole. This prevents others in proximity of the recipient from viewing the message displayed on the screen.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid the recipient's client device moves the hole to reveal a different portion of the message in response to a different area of the screen tapped or clicked by the recipient.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid recipient's client device closes the hole to entirely obscure the message when the area of the screen tapped or clicked is released by the recipient.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid recipient's client device closes the hole to entirely obscure the message after predetermined period of time.
- In accordance with an exemplary embodiment of the claimed invention, the aforesaid server converts the message into a set of partial images when the recipient's client device access the server to view the message. Each partial image contains a portion of the message. The server generates a movie representative of the message by using the partial images as an individual movie frames. The partial images and the movie are stored in the storage device. The server transmits the movie representative of the message to the recipient's client device. Each individual frame representing a portion of the message. The recipient's client device displays each individual frame of the movie on the screen so that only a portion of the message is presented at any given time to the recipient to prevent recording or capture of the message.
- In accordance with an exemplary embodiment of the claimed invention, a non-transitory computer readable medium comprising computer executable code for securely transmitting information over a communications network. The computer executable code comprises instructions receiving a message notification that a recipient has a message on a recipient's client device from a processor based server upon receipt of the message from a sender's client device over the communications network. The sender's message is stored in a storage device by the server. The recipient using the recipient's client device accesses the server to view the message over the communications network. The message is rendered and displayed on the recipient's client device in accordance with a display method selected by a sender of the message to present only a portion of the message at any given time to the recipient, thereby preventing recording or capture of the message.
- In accordance with an exemplary embodiment of the claimed invention, the computer executable code further comprises instructions for retrieving, from the server, the message with a message cover to entirely obscure the message when displayed by the recipient client device. The message cover is displayed on a screen of the recipient's client device which entirely obscures the message. A hole having a predetermined shape and size in the message cover is displayed, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole. The prevents others in proximity of the recipient from viewing the message displayed on the recipient's client device.
- In accordance with an exemplary embodiment of the claimed invention, the executable code further comprises instructions for converting the message into a set of partial images by the server when the recipient's client device access the server to view the message. Each partial image contains a portion of the message. A movie representative of the message is generated by the server using the partial images as an individual movie frames. The partial images and the movie is stored in the storage device by the server. The movie representative of the message is transmitted to the recipient's client device by the server. Each individual frame of the movie represents a portion of the message. Accordingly only a portion of the message at any given time is displayed on the recipient's client device to the recipient. This prevent the message from being recorded or captured.
- In accordance with exemplary embodiment of the claimed invention, the computer executable code further comprises instructions converting the message into an image of the message and generating the set of partial image by removing a series of horizontal or vertical strips from the image.
- Various other objects, advantages and features of the present invention will become readily apparent from the ensuing detailed description, and the novel features will be particularly pointed out in the appended claims.
- The following detailed description, given by way of example, and not intended to limit the present invention solely thereto, will best be understood in conjunction with the accompanying drawings in which:
-
FIG. 1 is a block diagram of the system in accordance with an exemplary embodiment of the claimed invention; -
FIG. 2A is a block diagram of a client device in accordance with an exemplary embodiment of the claimed invention; -
FIG. 2B is a block diagram of a server in accordance with an exemplary embodiment of the claimed invention; -
FIG. 3A is a block diagram of the message composition screen with option section closed in accordance with an exemplary embodiment of the claimed invention; -
FIG. 3B is a block diagram of the message composition screen with option section open in accordance with an exemplary embodiment of the claimed invention; -
FIGS. 4A-4B are block diagrams of the message delivery screen with and without the confirmation dialog in accordance with an exemplary embodiment of the claimed invention; -
FIG. 5A is a block diagram of the message received cover page in accordance with an exemplary embodiment of the claimed invention; -
FIG. 5B is a block diagram of the message received cover page with a password option in accordance with an exemplary embodiment of the claimed invention; -
FIG. 5C is a block diagram of the message received cover page for deleted message in accordance with an exemplary embodiment of the claimed invention; -
FIGS. 6A-D are illustrations showing the components of the spotlight method for viewing message contents in accordance with an exemplary embodiment of the claimed invention; and -
FIGS. 7A-D are illustrations showing exemplary frames of the video method for viewing message contents in accordance with an exemplary embodiment of the claimed invention. - As shown in
FIG. 1 , at the system level, the claimed invention comprises one or more web-enabled processor basedclient devices 200, one or more processor basedservers 100, and a communications network 300 (e.g., Internet). In accordance with an exemplary embodiment of the claimed invention, as shown inFIG. 2A , eachclient device 200 comprises a processor orclient processor 210, a display or screen 220, an input device 230 (which can be the same as the display 220 in the case of touch screens), amemory 240, a storage device 250 (preferably, a persistent storage, e.g., hard drive), anInternet connection facility 260 to connect to thecommunications network 300, which can be wired and/or wireless connection device, and an optional message countdown/destruction timer 270. - In accordance with an exemplary embodiment of the claimed invention, the
server 100 comprise a processor orserver processor 110, amemory 120, a storage device 130 (preferably a persistent storage, e.g., hard disk, database, etc.), anInternet connection facility 140 to connect to thecommunications network 300, andoptional timer 150. - The network enabled
client device 200 includes but is not limited to a computer system, a personal computer, a laptop, a notebook, a netbook, a tablet or tablet like device, an IPad® (IPAD is a registered trademark of Apple Inc.) or IPad like device, a cell phone, a smart phone, a personal digital assistant (PDA), a mobile device, or a television, or any such device having a screen connected to thecommunications network 300 and the like. - The
communications network 300 can be any type of electronic transmission medium, for example, including but not limited to the following networks: a telecommunications network, a wireless network, a virtual private network, a public internet, a private internet, a secure internet, a private network, a public network, a value-added network, an intranet, a wireless gateway, or the like. In addition, the connectivity to thecommunications network 300 may be via, for example, by cellular transmission, Ethernet, Token Ring, Fiber Distributed Datalink Interface, Asynchronous Transfer Mode, Wireless Application Protocol, or any other form of network connectivity. - Moreover, in accordance with an embodiment of the claimed invention, the computer-based methods for implementing the claimed invention are implemented using processor-executable instructions for directing operation of a device or devices under processor control, the processor-executable instructions can be stored on a tangible computer-readable medium, such as but not limited to a disk, CD, DVD, flash memory, portable storage or the like. The processor-executable instructions can be accessed from a service provider's website or stored as a set of downloadable processor-executable instructions, for example or downloading and installation from an Internet location, e.g. the
server 100 or another web server (not shown). - In accordance with an exemplary embodiment of the claimed invention, the inventive method for securely transmitting sensitive information is now described herein from the perspective of two users: a message sender (i.e., sender) and a message recipient (i.e., receiver). The sender generates a message using her client device 200 (hereinafter the “sender's client device 200). After the message has been created a notification is sent to the recipient's
client device 200 over the communications network. Depending on the embodiment employed by the system, the notification can be sent by the sender'sclient device 200 or theserver 100. - In accordance with an exemplary embodiment of the claimed invention, the message contents are stored on the
server 100, such as the storage 130, until the recipient'sclient device 200 requests or retrieves them from theserver 100. Alternatively, the sender'sclient device 200 can sent the message contents directly to the recipient'sclient device 200, thereby bypassing theserver 100. In such embodiment, theserver 100 is only utilized to route the message and/or the notification from the sender'sclient device 200 to the recipient'sclient device 200. - The recipient's
client device 200 displays the message contents to the recipient user utilizing various novel methods to minimize or prevent dissemination of the message contents. In accordance with an exemplary embodiment of the claimed invention, two methods for securely transmitting information to protect against the dissemination of the message contents are described herein, specifically the “spotlight display method” and the “video display method”. - In accordance with an exemplary embodiment of the claimed invention, all the devices (the sender's
client device 200, the recipient'sclient device 200 and the server 100) delete the message contents after the recipient user has viewed the message. This is done in order to prevent the message contents from being accessed at a later time by someone besides the recipient. Alternately, the system operator may choose to archive, maintain unencrypted or encrypted copies of the messages consistent with the message retention policies of the user (which can be an individual or a company) or the expected usage of the system. - Sending a Message
- In accordance with an exemplary embodiment of the claimed invention, as shown in
FIGS. 3A-4B , each client device 200 (or each sender's client device 200) comprises a set of graphical user interfaces (GUIs) screens which are shown on the display 220 for composing, editing and sending messages. An arrangement of the various screens displayed on the display 220 of theclient device 200 can include user interface elements to enable the user to perform various tasks, e.g., composing, editing and sending messages. In accordance with an exemplary embodiment of the claimed invention, the message sending process can involve a message composition and display options screen 500 (or simply referred to as the message composition screen 500) on the display 220, as exemplary shown inFIGS. 3A-3B , followed by a message delivery screen 510 (or a recipient information screen 510) on the display 220, as exemplary shown inFIGS. 4A-4B . For example, the default screen arrangement of theclient device 200 can include a button labeled “new” which activates the message composition and display options screen 500, as exemplary shown inFIG. 3A . Although the “new” button can be placed anywhere, the “new” button is preferably located on the upper right corner or section of the default screen. - Unlike the compose procedure in a typical e-mail device, the claimed invention preferably places the
recipient information screen 510 after themessage composition screen 500. Although the users are comfortable specifying the recipient of the message after they have composed it, the system operator can alternatively implement the claimed invention where the recipient specification comes before the message composition similar to a typical e-mail device. - In accordance with an exemplary embodiment of the claimed invention, the
client device 200 combines the message composition and message display options onto asingle screen 500, as exemplary shown inFIGS. 3A-B , but it is appreciated that they can be placed on two separate screens. As exemplary shown inFIG. 3A , thesingle screen 500 can consist of a text input area which is configured to be roughly the size of a typical message, and an “options” button underneath the text input area. Also, as exemplary shown inFIG. 3A , thesingle screen 500 can include a “next” button to proceed to the recipient information screen. - When the sender creates a new message on the sender's
client device 200, theserver 100 and/or the sender'sclient device 200 performs various tasks to package the message for use in the claimed system. In accordance with an exemplary embodiment of the claimed invention, theserver 100 or the sender'sclient device 200 encrypts the message contents; sender selects the details as to how the message is to be displayed on the recipient'sclient device 200 and the sender's selection is stored in the message; metadata about the size of the message is stored in order to allow therecipient device 200 to display a representation of the message that is the correct size on the display 220 of therecipient device 300; and the recipient information must be specified by the sender and stored in the message. - Message Creation, Encryption
- In accordance with an exemplary embodiment of the claimed invention, the
processor 110 of the server 100 (or theprocessor 210 of the sender'sclient device 200 in certain exemplary embodiment) encrypts the contents of each message before transmitting the message to the recipient'sclient device 200. It is appreciated that the claimed system can operate without an encryption component, but this will significantly lower the security of the system. Therefore, only system operators who have low security concerns should operate the claimed system without the encryption component. It is appreciated that any existing encryption system can be used with the claimed invention. - In an exemplary embodiment of the claimed invention, the
server 100 utilizes the symmetric key encryption. Theserver 100 generates a random 12 character key when theclient device 200 initiates a new conversation. The random key can be generated using a cryptographically secure random number generator which is part of a widely distributed cryptographic library. When the sender clicks the OK button on the delivery confirmation modal dialog displayed on the display 220, the sender'sclient device 200 sends a request to theserver 100 using theInternet connection facility 260, which can be a wired or wireless connection device, to create a new conversation over thecommunications network 300. Theserver 100 receives the request via theInternet connection facility 140, which is generally a wired connection device to provide a secure and reliable connection to thecommunications network 300, and responds with information about the conversation including the conversation key to use for encrypting and decrypting conversation messages. The sender'sclient device 200 receives the information including the conversation key from theserver 100 via theInternet connection facility 260. The sender's client device stores the received conversation key in thestorage 250. Theprocessor 210 of the sender'sclient device 200 encrypts the message contents using the stored conversation key and sends only the encrypted message contents to theserver 100 over thecommunications network 300. Theserver 100 stores the encrypted message contents in thestorage 250 until the messages contents are accessed or retrieved by theclient device 200 associated with the recipient. Theserver 100 transmits a notification to therecipient device 200 associated with the recipient that they have a message. When the recipient using therecipient device 200 requests or attempts to access the message, theserver 100 transmits or sends the conversation key and the encrypted message contents to therecipient device 200 upon verification that the user is the authorized recipient of the message. Theprocessor 210 of the recipient'sclient device 200 decrypts the message contents using the conversation key. - In accordance with an exemplary embodiment of the claimed invention, the claimed system can utilize a public key encryption system (such as GNU Privacy Guard or GPG) between registered or authorized users of the claimed system. Each
client device 200 of a registered user generates its own public/private key pair and sends only the public key to theserver 100 over thecommunications network 300. Theserver 100 stores the received public key in the storage 130. Theserver 100 associates the public key received from aparticular client device 200 with the user account of the user that is associated with thatparticular client device 200. Theserver 100 sends the public key of the recipient to the sender'sclient device 100 over thecommunications network 300 and theprocessor 210 of the sender'sclient device 200 use the public key of therecipient client device 200 to encrypt the message contents of the message to be transmitted to therecipient client device 200. One advantage of using the public key encryption system is that only registered user having access to theserver 100 can access the decrypted contents of a message. It is appreciated that the claimed system can employ the symmetric key encryption method when the sender is communicating with a recipient who does not yet have a registered account on the system or theserver 100 can send notification to the recipient's client device to become a registered user of the claimed system to securely send and receive messages. - Message Creation, Display Options
- In accordance with an exemplary embodiment of the claimed invention, the sender can control certain settings which effect how the recipient will interact with their message. The composition screen displayed on the screen 220 of the sender's
client device 200 includes an “options” button below the message text input area, as exemplary shown inFIG. 3A . When the options button is clicked by the sender, as exemplary shown inFIG. 3B , the sender'sclient device 200 presents a display options section for controlling and setting various message options on the screen 220. For example, when the sender clicks OK on the pre-delivery confirmation dialog in the display option section, the sender'sclient device 200 reads the state of the controls in this display options section, serializes their values, and sends them to theserver 100. Theserver 200 stores the values along with the message received from the sender'sclient device 200 in the storage 130. These stored values are used when the recipient accesses the message and they are sent to the recipient'sclient device 200 when the recipient views the message. - It is appreciated that default display options values are used and sent with the message when sender does not change these display options or control settings. Generally, the senders do not bother to change these display control/options settings, so the system operator should select default values that best represent the expected use of their system.
- In accordance with an exemplary embodiment of the claimed invention, the sender can choose which method the system will used in displaying their message contents to the recipient on the display 220 of the recipient's
client device 200. The sender'sclient device 200 provides a drop down menu which lists one or more display methods that can be selected by the sender. Preferably, the sender'sclient device 200 displays short descriptions of the display methods alongside each display method or when the sender places a selector (e.g., a cursor) over each display method. - In accordance with an exemplary embodiment of the claimed invention, as exemplar shown in
FIG. 3B , the sender can set the time in seconds of the message countdown/destruction timer 270 for the message in the display options section/area. For example, the sender can set the message countdown/destruction timer 270 to 10 seconds so that the message will self-destruct (i.e., deleted from theserver 100 and/or the recipient's client device 200) in 10 seconds after the recipient first views the message. In accordance with an exemplary embodiment of the claimed invention, the text input area of the message composition and message display options screen of the sender'sclient device 200 displays the default value of the message countdown/destruction timer 270 in seconds which can be changed by the sender. It is appreciated that other types of user interface elements can be utilized to enable the sender control and change the message countdown/destruction timer 270. - Typically, the users do not bother to change the default value of the message countdown/
destruction timer 270. In accordance with an exemplary embodiment of the claimed invention, theclient processor 210 of thesender client device 200 automatically sets the message countdown/destruction timer 270 for each message based on the length of the message content. In accordance with an exemplary embodiment of the claimed invention, theclient processor 210 sets the message countdown/destruction timer 270 for a given message based on greater of the message length in number of characters or a fixed value 15, and divides the resulting value by 3. The fixed value 15 insures that no message has a message countdown/destruction timer 270 set to less than 5 seconds, thereby ensuring that the recipient has sufficient time to read the message before the message self-destructs. It is appreciated that any other fixed value or any other method of calculating the length of the message countdown/destruction timer 270 can be used, all of which are within the scope of the claimed invention. - In accordance with an exemplary embodiment of the claimed invention, as exemplary shown in
FIG. 3B , the sender can disable the message countdown/destruction timer 270 so that it does not activate when the recipient first views the message. For example, the sender can unclick (or uncheck) the checked delete timer box user interface element within the message display options area, which is enabled by default, to disable the message countdown/destruction timer 270. - In accordance with an exemplary embodiment of the claimed invention, as exemplary shown in
FIG. 3B , the sender can add a password to the conversation (or the message). If the sender has selected the password option, then the recipient must enter the password before they can access the message. The password option provides an additional level of security. - Message Creation, Message Contents Metadata
- In accordance with an exemplary embodiment of the claimed invention, certain metadata about the message contents is recorded/stored and transmitted by the
server 100 and/or the sender'sclient device 200 when the message is created by the sender. For example, the sender'sclient device 200 records a piece of metadata relating to the time that the message was created in thestorage 250. For example, theclient processor 210 of the sender'sclient device 200 records a Unix timestamp as the message creation time in thestorage 250. It is appreciated that any other known timer/timestamp can be used. For example, another piece of metadata may describe how much space it takes to display the message contents on the recipient'sclient device 200. This message display size metadata is transmitted to the recipient'sclient device 200 so it can display the message cover when the recipient accesses the message on the display 220 of recipient'sclient device 200. The message cover should be the same size as the display size of the message when presented/viewed on the display 220 of the recipient'sclient device 200. In order to create the correct cover size, in accordance with an exemplary embodiment of the claimed invention, theclient processor 210 of the sender'sclient device 200 and/or theserver processor 110 of theserver 100 records the total number of characters in the message rounded up to the nearest multiple of 10 and the total number of lines in the message in thestorage 250 and storage 130, respectively. In order to securely transmit the message from the sender'sclient device 200 to the recipient'sclient device 200, care must be taken to ensure that the metadata does not reveal any significant information about the message content. For example, theserver 100 and/or the sender'sclient device 200 should not record the exact number of characters in the message. Instead, theserver 100 and/or the sender's client device should record a representative number, such as the number of characters in the message rounded up to the nearest multiple of 10. This way, for example, the messages whose contents are “yes” and “no,” respectively, have the same metadata. - In accordance with an exemplary embodiment of the claimed invention, the
client processor 210 of the sender'sclient device 200 records the number of lines in a message in thestorage 250 by counting the number of newline character sequences in the message. - In accordance with an embodiment of the claimed invention, the
client processor 210 of the sender'sclient device 200 records the message display size metadata by generating an array of integers where each element in the array represents the length of one line in the message rounded up to the nearest multiple of 10. Theclient processor 210 of the sender's client device serializes the array using any known serialization method and included along with the encrypted message contents when the message is delivered. - It is appreciated that the sender's
client device 200 may omit the recording and transmitting the message display size metadata which is used to determine the size of the message representation on the display 220 of the recipient'sclient device 200. The only disadvantage of omitting the message display size metadata is that the recipient will find the user interface less intuitive on its client device because the recipient'sclient device 200 utilizes this metadata to properly size the message representations on its display 220. - Message Creation, Recipient Information
- In accordance with an exemplary embodiment of the claimed invention, using the user input device 230 or touch screen 220, the sender enters her message contents in the text input area and optionally specifies display options by clicking the options toggle and adjusting the default values for the various display options on the sender's
client device 200. The sender then clicks the “next” button to proceed to the recipient information page/screen ormessage delivery screen 510. - In accordance with an exemplary embodiment of the claimed invention, the recipient information page/screen comprises a text input area where the sender can enter the e-mail address or system username of the recipient, as exemplary shown in
FIG. 4A . Preferably, as the user types the address or username in the text input area, theclient processor 210 displays auto-complete options below the input area consisting of addresses/usernames of the previous recipients. In accordance with an exemplary embodiment of the claimed invention, the recipient information page/screen further comprises a button which lets the user skip the process of transmitting the message to the recipient'sclient device 200. The sender'sclient device 200 obtains a link to sender's message from theserver 100 and displays the link on the sender'sclient device 200. The sender can then copy this link from theirclient device 200 and deliver it to the recipient outside of the system, such as via a text message, social-media website posting and other comparable means. The link enables the recipient to access the sender's message. This button can be located below the recipient information text input element or anywhere within the recipient information page/screen. In accordance with an exemplary embodiment of the claimed invention, the sender'sclient device 200 transmits a code, instead of a link, to the recipient'sclient device 200 over the communications network. The recipient'sclient device 200 can access the message stored on theserver 100 by providing/entering the code received from the sender'sclient device 200. - Message Creation, Delivery Confirmation
- After the sender specifies the recipient information, the sender's
client device 200 displays a modal confirmation dialog on the display 220, as exemplary shown inFIG. 4B . The modal confirmation dialog displays the recipient information for the sender to confirm or change to a different recipient before the message is transmitted to the recipient'sclient device 200. Although this feature is not necessary for the functioning of the system, it is highly desirable to add such a safety mechanism to prevent an accidental delivery of the message to the wrong recipient. In accordance with an exemplary embodiment of the claimed invention, as exemplary shown inFIG. 4B , the delivery confirmation can have the following modal dialog: “send message to john@example.com? OK/Cancel”. If the sender clicks “OK” in the modal dialog, the sender'sclient device 200 initiates the delivery process or message transmission. If the sender clicks “Cancel,” the display 220 hides the modal dialog and presents the recipient information screen to the sender. - Message Creation Alternative: 3RD Party Source
- In accordance with an exemplary embodiment of the claimed invention, the claimed system permits a programmatic access for a third party source to create messages for transmission within the system. That is, the sender's
client device 200 actions are performed by another source, such as a server that is part of another system. This can be useful to allow companies to send messages which have all the security properties of the claimed system to recipients who are part of the claimed system. - Message Delivery
- In accordance with an exemplary embodiment of the claimed invention, the message contents are not initially delivered to the recipient's
client device 200 to maintain secure control over the content of the messages delivered within the claimed system. Instead theserver 100 delivers a notification to the recipient'sclient device 200 that they have received a message. Preferably, the notification includes the account user-name of the sender, but this can be omitted to increase the privacy of the claimed system. In accordance with an aspect of the claimed invention, although less secure, theserver 100 can include the message in the initial notification to the recipient'sclient device 200 as long as the message are not initially displayed on the display 220 of the recipient'sclient device 200. - In accordance with an exemplary embodiment of the claimed invention, the recipient information consists of an e-mail address or username of the recipient on the system. Alternatively, there may be no recipient information if the sender elects to use a link or code to deliver the message to the recipient's
client device 200. If the recipient information consists of an e-mail, theserver 100 cross references the e-mail against registered e-mail accounts on the system. If the specified e-mail address is that of a registered user, theserver 100 returns the user-name of the registered user/recipient to the sender'sclient device 200. The display 220 of the sender'sclient device 200 displays the recipient user-name in the final confirmation dialog to the sender before the message is sent along with a message explaining that the specified email address of the recipient belongs to a registered user of the claimed system. However, if the recipient information consists of an e-mail that does not match any registered user, then theserver 100 sends an e-mail to the recipient's e-mail address. The email includes a link to access the message along with text explaining that they have received a message and providing the user-name of the sender. - If the recipient information consists of a user-name (e.g., an e-mail address was translated into a user-name), then the
server 100 sends a notification message to the recipient user in accordance with the recipient user's preference, i.e., a preferred method specified by the recipient user. These preferences can be one of the following: an e-mail to the recipient user's registered e-mail address, a notification sent directly to the recipient user'sclient device 200, a text message to the recipient user's phone or no notification. Alternatively, theserver 100 can delegate the transmission of the notification message to the sender'sclient device 200. For example, the delivery options page/screen can include a button which activates a local contacts feature of the sender'sclient device 200, similar to features currently existing on touch screen cell phones. - Recipient Authentication
- In accordance with an exemplary embodiment of the claimed invention, when the recipient has a new message, the
server 100 sends a notification to the recipient'sclient device 200 over thecommunications network 300. The notification directs the recipient to access the claimed system, specifically theserver 100, to view the message. In certain embodiments, the notification has a link which takes the recipient'sclient device 200 to a particular webpage of theserver 100 or an unique identifier for the recipient to view/read the message. In certain other embodiments, the recipient is directed to login into her account using herclient device 200 to check and view her messages. - When the recipient uses her
client device 200 to initiate an access to her messages, the server 100 (i.e., the email system) presents a cover page for the message on the display 220 of the recipient'sclient device 200. In accordance with an exemplary embodiment of the claimed invention, as exemplary shown inFIG. 5A , the message received cover page displays the time at which the message was created, the name of the sender, and a button or other user interface element to initiate the viewing of the message. The displayed version of the date is translated from the Unix timestamp (or other comparable timestamp) in which it is stored, into a textual representation of the date and time adjusted to the local time zone of the recipient'sclient device 200. If the message has already been deleted, as exemplary shown inFIG. 5C , the message received cover page displays a short message indicating that there is no longer a message present. In certain embodiments, as exemplary shown inFIG. 5B , the message received cover page also has an area for the recipient to enter a password to view the message if the sender has protected the message with the password. Additionally, if the recipient of the message is a registered user of the system, then the server authenticates the recipient to her account, either by requesting the recipient to login into her account or automatically logging in the recipient to her account using a cookie stored on the recipient'sclient device 200 if the recipient opted to stay logged in with the cookies. - When the recipient clicks the part of the message received cover page to view the message, the client application running on the recipient's
client device 200 instructs theprocessor 210 to send a request (with the user-supplied password, if applicable) to the server application running on theserver 100 over the communications network via their respectiveInternet connection facilities processor 110 of theserver 100 determines that the password is incorrect, then theprocessor 110 of theserver 100 notifies the client application of the error. Theprocessor 210 then displays that password is incorrect on the display 220 of the recipient'sclient device 200. If the password is not required or the recipient supplies the correct password, then theprocessor 110 of theserver 100 grants the client application on the recipient'sclient device 200 access to the message and updates server's internal record to indicate that the recipient'sclient device 200 has been granted access to the message. - Viewing a Message
- When the user/recipient views a message on the
server 100 using the client application running on the recipient'sclient device 200, theclient processor 210 of the recipient'sclient device 200 displays the message on the display 220 based on the method and format selected by the sender, such as one of the following methods described herein: the Plain Text method, the Spotlight method and the Video method. It is appreciated that any other comparable methods can be utilized by the claimed invention to display the message on the recipient'sclient device 200. - In accordance with an exemplary embodiment of the claimed invention, the
client processor 210 of the recipient'sclient device 200 renders the text contents of a message using a font color with low contrast against the background on the display 220. For example a light grey font on a dark grey background on the display 220 of the recipient'sclient device 200. This has the advantage of making the message contents harder for someone else in the vicinity of the recipient to read. However, the text contents of the message should be rendered using a high contrast color against the background on the display 220 for older users or those with vision impairment. Otherwise the recipient may be unable to read the message contents even though they are displayed in front of them. It is appreciated that different font color with higher or lower contrast can be utilized to achieve different level of protection against unwanted accessibility. - Viewing a Message in the Plain Text Method
- In accordance with an exemplary embodiment of the claimed invention, the sender can select to have their messages displayed in plain text on the recipient's
client device 200. Although the plain text method does not provide protections against digital recording of the messages or other people viewing the message, the claimed system still provides automatic deletion of the messages from the sender'sclient device 200, the recipient'sdevice 200 and theserver 100. The plain text method can be utilized by the sender to permit the recipient to digitally copy the message but the sender can enhance the security of the plain text method by encrypting the message or using password protected message. - Viewing a Message in the Spotlight Method
- In accordance with an exemplary embodiment of the claimed invention, as shown in
FIGS. 6A-D , the system and method provides a spotlight display of the message contents to prevent recipients from capturing message contents or others in physical proximity to the recipient from seeing the message contents. The claimed spotlight method is applicable to text, photo, other rich media message contents or any screen-displayable message contents to protect against capture via copy and paste functionality, a screenshot or other image-taking device or functionality, or viewing of the message by another person in the close vicinity to the recipient. - In accordance with an exemplary embodiment of the claimed invention, the recipient's
client device 200 displays on the screen 220 a note or message contents behind a cover which entirely obscures the message/note. Preferably, as shown inFIG. 6A , thecover 410 has some explanation to indicate to the recipient that it is a message. For example, the explanation may include a label such as “Click to view” or “Tap to view”. In accordance with an exemplary embodiment of the claimed invention, thecover 410 can also include graphic styling which makes it look like a text bubble as found in chat and SMS applications. Thecover 410 provides a representation of the message while preventing the message contents from being visible to the recipient. Preferably, the explanation label of the cover utilizes a large font in a color which has high contrast against the cover back ground to make the cover suitable for older users and those with vision impairment. Of course, the explanation label can be utilized a smaller font in color with less contrast. - In accordance with an exemplary embodiment of the claimed invention, when the user clicks and holds down the mouse button on the
cover 410, as shown inFIG. 6D , theprocessor 210 of the recipient'sclient device 200 presents asmall hole 450 in thecover 410 wherever the mouse 220 is. Thishole 450 is called the “spotlight” and the spotlight orhole 450 reveals a section of the message content where the mouse or cursor is located. On a touch screen device 200 (e.g., a tablet), in accordance with an exemplary embodiment of the claimed invention, the user can touch thecover 410 on the touch screen 220 with their finger and hold their finger down on thecover 410 to start the spotlight mechanism. Theprocessor 210 of the user'sclient device 200 displays thespotlight area 450 above and to the left of the place where the user touch the cover on the touch screen 220 so that the user's finger(s) does not obscure thespotlight area 450. On a desktop orlaptop computer 200 using a mouse 230, in accordance with an exemplary embodiment of the claimed invention, theprocessor 210 of the user's client device 200 (i.e., the desktop or laptop computer) displays thespotlight area 450 directly above the location of the mouse 230 and hides the mouse cursor while the spotlight is open. As shown inFIG. 6D , the user can see a small portion of the document through thespotlight 450 while it is open but the user can never see the entire document. That is, the spotlight exposes a space big enough to read a few words or see a recognizable portion of a photo. The user can move the mouse 230 while holding the mouse button or can move their finger(s) while holding it on the touch screen 220 to move thespotlight 450 to view another portion/section of the document. Theprocessor 210 of the user'sclient device 200 enables the user to view an entire text document or photo but does not reveal the entire document or message content at any given point in time. When the user releases the mouse button or their finger, theprocessor 210 close the spotlight on the display 220 and thecover 410 returns to its initial state where none of the message contents are visible. - In accordance with an exemplary embodiment of the claimed invention, the
processor 210 of the user'sclient device 200 keeps thespotlight 450 open for a predetermined period of time, preferably a short period of time, if the user clicks or taps quickly on the cover. For example, theprocessor 210 keeps the spotlight open for 330 milliseconds after the user clicks or taps the cover if the duration of their click or tap is under 330 milliseconds. This delay in closing the spotlight by theprocessor 210 after a short click is to provide a working demonstration of the spotlight mechanism to the recipient. In accordance with an exemplary embodiment of the claimed invention, theprocessor 210 can eliminate this small delay period in removing the transparent section if the recipient has kept the spotlight open for a long period of time indicating their comprehension of the spotlight mechanism. For example, theprocessor 210 of the recipient'sclient device 200 closes the spotlight immediately after the user clicks or taps the cover if the duration of their click or tap is over 330 milliseconds. - Since the mouse button or the user's finger must be held down to keep the spotlight open, taking screenshots or photos requires more finger coordination which effectively blocks many users from capturing the contents of messages presented on the display 220 using the claimed spotlight method. Capturing the entire message contents via screenshots or other image-taking device or functionality would require taking many, carefully coordinated images which effectively blocks many users from capturing the contents of messages presented on the display 220 using the claimed spotlight method. Re-assembling a collection of images where each image holds a different piece of the contents of a message displayed with the claimed spotlight method requires advanced tools and skills which effectively blocks many users from capturing messages presented on the display 220 using the claimed spotlight method. Furthermore, authenticity of such composite image created from a collection of images generated through such effort may be questionable and not useful in many legal and other contexts.
- Additionally, the claimed spotlight method of presenting the message content on the display 220 to the recipient prevents other people who are physically near the recipient from easily viewing the message contents while it is viewed/read by the recipient. When the recipient is actively viewing the message contents, only the section that the recipient is looking at is visible on the display 220 which makes it difficult for another person to view the whole message as they must exactly synchronize their viewing pattern with the recipient's.
- Further, the claimed spotlight method of presenting the message content on the
display 200 to the recipient prevents other people who are physically near the recipient from viewing the message contents when the recipient is not actively clicking or touching the message cover. This increases the privacy of the message in many situations, for example, if a recipient puts their smart phone down on a table after reading the message and there are other people at the table, none of the other people can see the message contents because the message content is not visible on the display 220 when the spotlight is not active. There are significant social barriers which prevent people from touching the screen of aclient device 200 which does not belong to them or clicking on the mouse of a computer that is used by another person. These social barriers effectively prevent people near the recipient'sclient device 200 who could easily see the contents of a regular message left open from viewing the contents of a message displayed with the claimed spotlight mechanism on the recipient'sclient device 200 left open but not actively being clicked or touched by the recipient. - In accordance with the exemplary embodiment of the claimed invention, the message is stored on the
server 100 until the message contents are requested by the recipient'sclient device 200 as part of a “message open” request by the recipient'sclient device 200. In response to the message open request, theserver 100 delivers or transmits the message contents to the recipient'sclient device 200 over thecommunications network 300 and theserver processor 110 of theserver 100 deletes the message contents from thestorage 250 after a predetermined time period. For example, theserver processor 110 can start acountdown timer 150 and delete the message contents from thestorage 250 when thecountdown timer 150 expires. - Once the recipient initiates the view of the message on the
recipient client device 200, the client application running on the recipient'sclient device 200 instructs theclient processor 210 to retrieve the message contents from theserver 100 over thecommunications network 300. To display the message contents on the screen 220 to the recipient/user, in accordance with an exemplary embodiment of the claimed invention, as exemplary shown inFIGS. 6A-6D , theclient processor 210 executing the client application renders threelayers client device 200. As shown inFIG. 6A , thetop layer 410 is an image which is used as acover page 410 and is completely opaque. Thetop layer 410 has the same size and shape as the message displayed on the screen 220 of the recipient'sclient device 200. As shown inFIG. 6C , thebottom layer 430 is the message. As shown inFIG. 6B , themiddle layer 420 is an image that is completely opaque except for a smalltransparent hole 450 in the middle or a “spotlight” 450. Themiddle layer 420 is preferably as tall as twice the height of the message plus the height of the transparent spotlight area/region 450. The image of themiddle layer 420 is preferably wide as twice the width of the message plus the width of thespotlight 450. These preferable dimensions allow themiddle layer 420 to be moved around by the user to locate thespotlight 450 over any part of the underlying message without exposing any part of the message that is outside of thespotlight 450. - In accordance with an exemplary embodiment of the claimed invention, the recipient's
client device 200 moves themiddle layer 420 by adjusting the X and Y offset values in pixels of the middle layer image relative to the top and left of the screen 220 of the recipient'sclient device 200. Theclient processor 210 of the recipient'sclient device 200 calculates the values equivalent to half the width of the middle layer image and half the height of the middle layer image. When the spotlight is to be moved to a new destination point on the screen 220, theclient processor 210 takes X and Y coordinates of the new destination point, subtracts the half width X and Y values from the X and Y coordinates of the new destination point, respectively, and then sets the X and Y values for the upper left corner of the middle layer image to the resulting values. This positions the portion of the middle image which makes up the spotlight area to be directly located at the desired point. For a mouse click, theclient processor 210 adjusts the target point to be 10 px higher than the actual location of the user's click. Preferably, theclient processor 210 subtracts 10 px from the input click's Y value before performing the position adjustment process on the middle layer image. For a touch screen touch, the processor adjusts the target point to be 10 px higher and 20 px to the left of the actual location of the user's touch. Preferably, theclient processor 210 subtracts 10 px from the input point's Y value and 20 px from the input point's X value before performing the position adjustment process on the middle layer image. Although, 10 px vertical and 20 px horizontal offset values were used in this example, different offset values can be also used to achieve the desired result. - When the user presses their mouse button down on a location inside the message/note contents, or if they do an equivalent action like pressing and holding on a touch-
screen device 200, in accordance with an exemplary embodiment of the claimed invention, theclient processor 210 of theclient device 200 moves themiddle layer 420 so that thespotlight 450 is located right above their click location on the screen 220 and then removes thetop layer 410. This results in the effect of the spotlight opening right above where the user generated input, as shown inFIG. 6D . In accordance with an exemplary embodiment of the claimed invention, theprocessor 210 removes the top layer by setting its “display” property to “none” in the CSS style sheet (Cascading Style Sheet) which is part of the client application. When the user moves her mouse 230, or performs an equivalent move like moving their finger on a touch-screen device 200, the client application running on theclient device 200 instructs theclient processor 210 to move themiddle layer 420 so that thespotlight 450 is repositioned above where mouse 230 (i.e., the mouse cursor) moved to. If the user releases the mouse button, or performs an equivalent action like releasing their finger on a touch-screen device 200, the client application instructs theclient processor 210 to display thetop layer 410 on the screen 220 again to completely block out the message contents or thebottom layer 430. Preferably, theclient processor 210 hides the mouse cursor from display 220 while the mouse button is depressed, thereby giving the impression to the user that they are moving thespotlight 450 instead of the mouse 230. - Viewing a Message in the Video Method
- In accordance with an exemplary embodiment of the claimed invention, as shown in
FIGS. 7A-D , the claimed system provides a video display of the message contents to prevent recipients from capturing message contents. The video display method is applicable to text, photo, other rich media message contents or any screen-displayable message contents to protect against capture via copy and paste functionality, or screenshot or other image-taking device or functionality. - If the message contents consist of text, as exemplary shown in
FIG. 7A , theserver processor 110 converts the text into an image. Theprocessor 110 then converts the image into a set of partial images, each of which has a portion of the original message but is incomplete on its own. Theserver processor 110 generates a movie by using the partial images as the individual movie frames and repeats them in a loop. Theprocessor 110 stores the message content in the various formats (e.g., text, image, partial images, and movie) in the storage 130. When the message is displayed to the recipient on the screen 220 of the recipient'sclient device 200, as shown inFIGS. 7B-D , theclient processor 210 of theclient device 200 presents the movie in a flickering but still viewable version of the message contents on the screen 220 to the recipient. However, a screenshot or other image capture taken of the movie will result in a partial image which is incomplete and unreadable. - In accordance with the claimed invention, the
server processor 110 generates the partial images (as exemplary shown inFIGS. 7B-D ) from the original image of the message contents (as exemplary shown inFIG. 7A ) by removing a series of vertical or horizontal strips from the original image and leaving vertical or horizontal strips which show no more than a word or two before there is a removed section. This is similar to taking the strips output by a paper shredder and keeping only every 2nd strip or every 3rd strip and then gluing those kept strips, in the same order and position as they were in the original, onto a blank piece of paper that is the same size as the original. It is appreciated that the size and shape of the sections taken from the original message can be any geometric shape, a collection of geometric shapes, a collection of arbitrary shapes, or a collection of random shapes as long as none of the sections are large enough to contain a significant portion of the message contents. - In accordance with an exemplary embodiment of the claimed invention, the
server processor 110 executes the server application stored in thememory 120 ofserver 100 to generate the video image of the message content when a request to view the message is received by theserver 100 from the client application running on the recipient'sclient device 200 over thecommunications network 300 via the respectiveInternet connection facilities server 100 stores the message in its original format (i.e., in its text format as exemplary shown inFIG. 7A ) in thestorage device 250 until it is requested by the recipient's client application running on therecipient client device 200. Upon receipt of the request to view the message from the recipient'sclient device 200, the server application instructs theserver processor 110 to transform the message contents into another object which can act as the source of the movie. Theserver processor 110 transmits the movie source object to the recipient'sclient device 200 over thecommunications network 300 and deletes the message from the storage device 130. - In accordance with an exemplary embodiment of the claimed invention, the server application running on the
server processor 110 accesses a graphics utility to generate arbitrary sized images and copy image sections between images at arbitrary positions. For example, the server application is enabled to access the GD (GIF draw or graphics draw) library included with the PHP (hypertext preprocessor) programming language. Theserver processor 110 renders the message contents into an image using the GD library. - In accordance with an exemplary embodiment of the claimed invention, the server application running on the
server processor 110 renders the message content with the font file and the graphics utility which can create arbitrary sized images and insert text into them at arbitrary positions using the font file. It is appreciated that the server application needs to be configured with certain information about the font file, e.g., how many letters of the font fit across a certain pixel width. In accordance with an exemplary embodiment of the claimed invention, theprocessor 110 utilizes the “em” width of the font and transforms the em width into a pixel measurement. The em width is the width of a capital letter “M” in the font file. The M is the widest letter of any font. It is appreciated that using the em width will result in extra space because most letters are smaller than the letter M. Alternatively, theprocessor 110 can utilize a fraction of the M width. Another piece of information that the server application needs to be configured with is the height of the font in pixels, which is a fixed value and generally accompanies the font file. - When rendering a given message, in accordance with an exemplary embodiment of the claimed invention, the
server processor 110, running the server application, determines the width in pixels of the display 220 of the recipient'sclient device 200. It is appreciated that this information can be included in the request to view the message from the recipient'sclient device 200. Theserver processor 110 divides the display pixel width by the pixel width of the average letter of the font. This determines how many letters can be rendered across the image. In accordance with an exemplary embodiment of the claimed invention, theserver processor 110 generates an array of lines out of the message by breaking the message on line breaks or on spaces between words so that the lines and the words in the lines appear in the same order as in the original message. Theserver processor 110 also ensures that none of the lines are longer than the amount of letters which can be rendered across the image. - In accordance exemplary embodiment of the claimed invention, the
server processor 110, running the server application, generates a blank image to render the text on. The exemplary blank image can be wide as the display width of the recipient'sclient device 200 and the height of the exemplary blank image can be equivalent to the number of lines in the array multiplied by the height of the font. It is appreciated that the image dimensions can include padding. Theserver processor 100 iterates through the lines and renders each line onto the image. For each line, theserver processor 110 increases the offset from the top of the image by the height of the font. This results in an image of the message contents that theclient processor 210 of the recipient'sclient device 200 can display on its screen 220. - To create the partial images, in accordance with an exemplary embodiment of the claimed invention, the
server processor 110, running the server application, generates a blank image for each partial image which is the same size as the original image. Theserver processor 110 iterates through the each of the partial images and determines the portions of the original image which should appear in that particular partial image. Theprocessor 110 copies those portions of the original image into the corresponding partial image, thereby resulting in a desired set of partial images. - The
server processor 100, running the server application, generates a movie from the set of partial images. In accordance with an exemplary embodiment of the claimed invention, theserver processor 110 generates a new image which is as wide as the original image and as tall as the height of the original image multiplied by the number of partial images. Theserver processor 110 iterates through the partial images and copies each one, in its entirety, onto a new image at an offset increasing by the height of the original image. This results in a composite image which contains all the partial images arranged vertically above one another. Theserver 100 sends the composite image to the recipient'sclient device 200 in a secure manner, as described herein, over thecommunications network 300. Theclient processor 210 stores the received composite image in itsstorage device 250. When the recipient initiates the viewing of the message on the recipient'sclient device 200, theclient processor 210, running the client application, displays the composite image as the background image to a viewable object, having the same dimensions as the original image, with nothing in it on the display 220. Theclient processor 210 shifts the vertical offset of the background image by an amount equivalent to the height of the original image repeatedly so that only a portion of the composite image containing one of the partial images is displayed on the screen 220 at any one time. Theclient processor 210 loops rapidly through the portions of the composite image, shifting the offset back to zero after the last portion is displayed. Preferably, theclient processor 210 displays each portion as long as a typical movie frame, which is generally display at 30 frames per second. Higher frame rates are possible to provide a better viewing experience for the recipient, as long such higher frame rates are supported by the recipient'sclient device 200. - In accordance with an exemplary embodiment of the claimed invention, the
server processor 110, running the server application, generates a movie from the set of partial images using a utility for creating movies in contemporary formats such as the H264 encoding. For example, the server application would need access to the ffmpeg library. Theserver processor 110 can use the utility of the ffmpeg library to generate a movie file out of a series of individual frames. The server application passes the partial images to the library which uses the partial images as frames for the resulting movie. Theserver processor 110 can utilized the library to generate a longer movie by repeating a series of frames or repeating the series of frames in the arguments passed to the library. Theserver 100 then transmits the resulting movie file to the recipient'sclient device 200 in a secure manner, as described herein, over thecommunications network 300. The client processor, running the client application, stores the received movie file in itsstorage device 250. Also, theserver 100 deletes the movie file from the storage device 130, as described herein, after it is viewed by the recipient. When the recipient initiates the viewing of the message on the recipient'sclient device 200, theclient processor 210 displays the movie on the screen 220. - MESSAGE COUNTDOWN/DESTRUCTION TIMERS
- When the recipient first engages with the
cover 410 to view the message contents, theclient processor 210, running the client application, sends a notification to theserver 100 that the message is being viewed by the recipient. Theserver 100 then relays this notification to the sender'sclient device 200 and anyother client devices 200 associated with users who can view the message. In accordance with an exemplary embodiment of the claimed invention, theclient processor 210, running the client application, does not retrieve the message contents from theserver 100 until the recipient first engages with thecover 410 of the message. Alternatively, theserver 100 preloads or transmits the message contents to the recipient'sclient device 200. When the recipient first engages thecover 410, each device (preferably, at least one of the following device: theserver 100, the sender'sclient device 200 or the sender's client device 200) starts its respective message countdown/destruction timer message cover 410 serves as a trigger to start the respective message countdown/destruction timer client device 200, the server and any other client devices 200 (such as the sender's client device 200) which can view the message. All of the devices (e.g., theserver 100 and client devices 200) with a copy of the message delete the message contents when the countdown/destruction timer 150 expires. - In accordance with an exemplary embodiment of the claimed invention, the message countdown/destruction timer resets each time the recipient re-engages the
message cover 410. That is, each time the recipient re-engages themessage cover 410 before the message countdown/destruction timer expires, theclient processor 210 of the recipient'sclient device 200 transmits a reset notification to theserver 100 over thecommunications network 300. This timer reset functionality is an optional feature that may be useful for novice, disabled or elderly users who may need additional time to view/read the message. - In accordance with an exemplary embodiment of the claimed invention, use of the message countdown/destruction timer within the claimed system is optional. That is, the sender can elect to use the message countdown/destruction timer to ensure that all copies of her messages are timely deleted after it is viewed/read by the recipient. In accordance with an exemplary embodiment of the claimed invention, if the message is sent without the use of the message countdown/destruction timer, then the
client processor 210 of the recipient'sclient device 200 deletes the message contents from itsstorage device 250 and sends the notification to theserver 100 when the recipient closes or minimizes the client application from the screen 220, thereby indicating that the recipient has viewed/read the message. This navigation act by the recipient triggers, theclient processor 210 of the recipient's client device to delete the message from itsstorage 250 and sends a notification toserver 100. Upon receipt of the notification, theserver 100 deletes its copy of the message from its storage 130 and transmits the notification to the sender'sclient device 200 to delete sender's copy of the message. - In accordance with an exemplary embodiment of the claimed invention, the
client processor 210 displays the progression of the message countdown/destruction timer 270 on the screen 220 of the user'sclient device 200 to the user. For example, theclient device 200 utilizes a graphical element with two sections (i.e., a virtual hourglass), where theclient processor 210 decreases the size of one section until it completely disappears similar to a physical hourglass. Alternatively, theclient processor 210 displays a number which represents the number of seconds left on the message countdown/destruction timer 270 on the screen 220. This number counts down from the initial value to zero. It is appreciated any other timer displays can be utilized with the claimed invention that best integrates with the look and feel of the client application design. When the message countdown/destruction timer runs out, theclient processor 210 deletes the message from itsstorage 250 and removes the timer from its display 220. - OVERWRITING MESSAGES BEFORE DELETION:
- When deleting message contents, in accordance with an exemplary embodiment of the claimed invention, the
server 100 and the client application on theclient device 200 overwrites the message before deleting in order to ensure that no partial section of the message is left on itsrespective storage device 130, 250. This is done in the claimed system because certain storage devices deletes by updating the metadata for performance reasons, but do not actually erase the contents from the underlying storage. Accordingly, the claimed system takes precautions to ensure that the storage devices do not maintain caches of contents when creating or reading them. If caches are utilized by the storage devices, then the respective server and client applications empties the caches after a very short period of time in the course of normal operation to prevent or minimize recovery of any contents from the storage devices. - While the present invention has been particularly described with respect to the illustrated embodiment, it will be appreciated that various alterations, modifications and adaptations may be made based on the present disclosure, and are intended to be within the scope of the present invention. It is intended that the appended claims be interpreted as including the embodiment discussed above, those various alternatives which have been described and all equivalents thereto.
Claims (20)
1. A method for securely transmitting information over a communications network, comprising the steps of:
receiving a message notification that a recipient has a message on a recipient's client device from a processor based server upon receipt and storage of the message from a sender's client device in a storage device by the server over the communications network;
accessing the server to view the message by the recipient using the recipient's client device over the communications network; and
rendering and displaying the message on the recipient's client device in accordance with a display method selected by a sender of the message to present only a portion of the message at any given time to the recipient, thereby preventing recording or capture of the message.
2. The method of claim 1 , further comprising the steps of:
retrieving from the server, the message with a message cover to entirely obscure the message when displayed by the recipient client device;
displaying the message cover on a screen of the recipient's client device which entirely obscures the message; and
displaying a hole having a predetermined shape and size in the message cover, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole, thereby preventing others in proximity of the recipient from viewing the message displayed on the recipient's client device.
3. The method of claim 2 , further comprising the step of moving the hole to reveal a different portion of the message by clicking or tapping a different area of the screen by the recipient.
4. The method of claim 2 , further comprising the step of closing the hole to entirely obscure the message when the area of the screen tapped or clicked is released by the recipient.
5. The method of claim 2 , further comprising the step of closing the hole to entirely obscure the message after predetermined period of time.
6. The method of claim 1 , further comprising the steps of:
converting the message into a set of partial images by the server, each partial image containing a portion of the message, when the recipient's client device access the server to view the message;
generating a movie representative of the message by the server using the partial images as an individual movie frames;
storing the partial images and the movie in the storage device by the server; and
transmitting the movie representative of the message to the recipient's client device, each individual frame of the movie representing a portion of the message, thereby displaying only a portion of the message at any given time to the recipient by the recipient's client device to prevent recording or capture of the message.
7. The method of claim 6 , wherein the step of converting the message comprises the steps of converting the message into an image of the message; and generating the set of partial image by removing a series of horizontal or vertical strips from the image.
8. The method of claim 1 , wherein the step of receiving the message notification comprises the step of receiving a code to view the message on the server by the recipient using the recipient's client device.
9. The method of claim 1 , further comprising the steps of transmitting a delete notification to delete the message to the server when the message is displayed by the recipient's client device; and deleting the message from the recipient's client device after a predetermined period of time.
10. The method of claim 1 , further comprising the steps of deleting the message from the server after a predetermined time; and transmitting by the server the delete notification to all client devices with a copy of the message.
11. System for securely transmitting information over a communications network, comprising:
a plurality of processor based client devices for sending and receiving messages over the communications network, each client device is network enabled, associated with a user and comprises a screen to compose and display messages;
a processor based server for receiving and storing messages from the plurality of client devices in a storage device, and transmitting a message notification to a client device associated with a recipient of each message; and
wherein the client device associated with the recipient or the recipient's client device accesses the server to view the message, renders and displays the message in accordance with a display method selected by a sender of the message to present only a portion of the message at any given time on the screen to the recipient, thereby preventing recording or capture of the message.
12. System of claim 11 , wherein the recipient's client device retrieves the message with a message cover; displays the message with the message cover on the screen, the message cover entirely obscuring the message from being viewed by the recipient; displays a hole having a predetermined shape and size in the message cover, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole, thereby preventing others in proximity of the recipient from viewing the message displayed on the screen.
13. System of claim 12 , wherein the recipient's client device moves the hole to reveal a different portion of the message in response to a different area of the screen tapped or clicked by the recipient.
14. System of claim 12 , wherein the recipient's client device closes the hole to entirely obscure the message when the area of the screen tapped or clicked is released by the recipient.
15. System of claim 12 , wherein the recipient's client device closes the hole to entirely obscure the message after predetermined period of time.
16. System of claim 11 , wherein the server converts the message into a set of partial images when the recipient's client device access the server to view the message, each partial image containing a portion of the message, generates a movie representative of the message by using the partial images as an individual movie frames, stores the partial images and the movie in the storage device, and transmits the movie representative of the message to the recipient's client device, each individual frame representing a portion of the message; and
wherein the recipient's client device displays each individual frame of the movie on the screen so that only a portion of the message is presented at any given time to the recipient to prevent recording or capture of the message.
17. A non-transitory computer readable medium comprising computer executable code for securely transmitting information over a communications network, said computer executable code comprising instructions for:
receiving a message notification that a recipient has a message on a recipient's client device from a processor based server upon receipt and storage of the message from a sender's client device in a storage device by the server over the communications network;
accessing the server to view the message by the recipient using the recipient's client device over the communications network; and
rendering and displaying the message on the recipient's client device in accordance with a display method selected by a sender of the message to present only a portion of the message at any given time to the recipient, thereby preventing recording or capture of the message.
18. The computer readable medium of claim 17 , wherein said computer executable code further comprises instructions for:
retrieving from the server, the message with a message cover to entirely obscure the message when displayed by the recipient client device;
displaying the message cover on a screen of the recipient's client device which entirely obscures the message; and
displaying a hole having a predetermined shape and size in the message cover, within proximity of an area of the screen tapped or clicked by the recipient, to reveal the portion of the message underneath the hole, thereby preventing others in proximity of the recipient from viewing the message displayed on the recipient's client device.
19. The computer readable medium of claim 17 , wherein said computer executable code further comprises instructions for:
converting the message into a set of partial images by the server, each partial image containing a portion of the message, when the recipient's client device access the server to view the message;
generating a movie representative of the message by the server using the partial images as an individual movie frames;
storing the partial images and the movie in the storage device by the server; and
transmitting the movie representative of the message to the recipient's client device, each individual frame of the movie representing a portion of the message, thereby displaying only a portion of the message at any given time to the recipient by the recipient's client device to prevent recording or capture of the message.
20. The computer readable medium of claim 19 , wherein said computer executable code further comprises instructions for converting the message into an image of the message; and generating the set of partial image by removing a series of horizontal or vertical strips from the image.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/753,513 US20130194301A1 (en) | 2012-01-30 | 2013-01-29 | System and method for securely transmiting sensitive information |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261592584P | 2012-01-30 | 2012-01-30 | |
US13/753,513 US20130194301A1 (en) | 2012-01-30 | 2013-01-29 | System and method for securely transmiting sensitive information |
Publications (1)
Publication Number | Publication Date |
---|---|
US20130194301A1 true US20130194301A1 (en) | 2013-08-01 |
Family
ID=48869827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/753,513 Abandoned US20130194301A1 (en) | 2012-01-30 | 2013-01-29 | System and method for securely transmiting sensitive information |
Country Status (1)
Country | Link |
---|---|
US (1) | US20130194301A1 (en) |
Cited By (252)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130311922A1 (en) * | 2012-05-15 | 2013-11-21 | Samsung Electronics Co., Ltd. | Mobile device with memo function and method for controlling the device |
US20140201527A1 (en) * | 2013-01-17 | 2014-07-17 | Zohar KRIVOROT | Systems and methods for secure and private delivery of content |
US20140298197A1 (en) * | 2013-04-02 | 2014-10-02 | Samsung Electronics Co., Ltd. | Method for transmitting message and electronic device thereof |
US20140327634A1 (en) * | 2013-05-02 | 2014-11-06 | Samsung Electronics Co., Ltd. | Portable terminal and method for protecting a displayed object |
US8914752B1 (en) * | 2013-08-22 | 2014-12-16 | Snapchat, Inc. | Apparatus and method for accelerated display of ephemeral messages |
US20150046988A1 (en) * | 2013-08-06 | 2015-02-12 | Canon Kabushiki Kaisha | System, control method therefor, and non-transitory computer-readable medium |
US9083770B1 (en) | 2013-11-26 | 2015-07-14 | Snapchat, Inc. | Method and system for integrating real time communication features in applications |
US9094137B1 (en) | 2014-06-13 | 2015-07-28 | Snapchat, Inc. | Priority based placement of messages in a geo-location based event gallery |
WO2015134069A1 (en) * | 2014-03-04 | 2015-09-11 | Pop Pop Llc | An integrated message veiling system |
WO2015148085A1 (en) | 2014-03-26 | 2015-10-01 | Intel Corporation | System and method to control screen capture |
US20150371613A1 (en) * | 2014-06-19 | 2015-12-24 | Contentguard Holdings, Inc. | Obscurely rendering content using image splitting techniques |
US9225897B1 (en) | 2014-07-07 | 2015-12-29 | Snapchat, Inc. | Apparatus and method for supplying content aware photo filters |
US9237202B1 (en) | 2014-03-07 | 2016-01-12 | Snapchat, Inc. | Content delivery network for ephemeral objects |
US9235711B1 (en) | 2014-06-24 | 2016-01-12 | Voxience S.A.R.L. | Systems, methods and devices for providing visual privacy to messages |
US20160044016A1 (en) * | 2013-10-30 | 2016-02-11 | At&T Intellectual Property I, L.P. | Pre-Delivery Authentication |
US9276886B1 (en) | 2014-05-09 | 2016-03-01 | Snapchat, Inc. | Apparatus and method for dynamically configuring application component tiles |
US9285981B1 (en) | 2012-07-16 | 2016-03-15 | Wickr Inc. | Discouraging screen capture |
EP2996288A1 (en) * | 2014-09-15 | 2016-03-16 | John R. Thorpe | Non-retained message system |
US20160110906A1 (en) * | 2014-08-21 | 2016-04-21 | Glu Mobile, Inc. | Methods and systems for images with interactive filters |
WO2016069782A1 (en) * | 2014-10-29 | 2016-05-06 | Square, Inc. | Secure display element |
US20160191442A1 (en) * | 2014-12-31 | 2016-06-30 | Jason M. Penilla | Message Communication Systems and Applications with Message Lifetime Settings for Automatic message Deletion |
US9385983B1 (en) | 2014-12-19 | 2016-07-05 | Snapchat, Inc. | Gallery of messages from individuals with a shared interest |
US9396354B1 (en) | 2014-05-28 | 2016-07-19 | Snapchat, Inc. | Apparatus and method for automated privacy protection in distributed images |
US20160231834A1 (en) * | 2014-10-10 | 2016-08-11 | Muzik LLC | Devices for sharing user interactions |
US20160241530A1 (en) * | 2015-02-12 | 2016-08-18 | Vonage Network Llc | Systems and methods for managing access to message content |
US9430635B2 (en) | 2014-10-29 | 2016-08-30 | Square, Inc. | Secure display element |
US9483653B2 (en) | 2014-10-29 | 2016-11-01 | Square, Inc. | Secure display element |
US9537811B2 (en) | 2014-10-02 | 2017-01-03 | Snap Inc. | Ephemeral gallery of ephemeral messages |
US20170031591A1 (en) * | 2015-07-31 | 2017-02-02 | Samsung Electronics Co., Ltd. | Screen controlling method and electronic device for supporting the same |
US9584493B1 (en) | 2015-12-18 | 2017-02-28 | Wickr Inc. | Decentralized authoritative messaging |
US9584530B1 (en) | 2014-06-27 | 2017-02-28 | Wickr Inc. | In-band identity verification and man-in-the-middle defense |
US9591479B1 (en) | 2016-04-14 | 2017-03-07 | Wickr Inc. | Secure telecommunications |
US9590958B1 (en) | 2016-04-14 | 2017-03-07 | Wickr Inc. | Secure file transfer |
US20170075561A1 (en) * | 2015-09-15 | 2017-03-16 | Clipo, Inc. | Digital touch screen device and method of using the same |
US20170098103A1 (en) * | 2014-03-04 | 2017-04-06 | Pop Pop Llc | Integrated message veiling system |
US9654288B1 (en) | 2014-12-11 | 2017-05-16 | Wickr Inc. | Securing group communications |
US9698976B1 (en) | 2014-02-24 | 2017-07-04 | Wickr Inc. | Key management and dynamic perfect forward secrecy |
US20170195274A1 (en) * | 2015-12-31 | 2017-07-06 | Yahoo! Inc. | Computerized system and method for modifying a message to apply security features to the message's content |
US9705831B2 (en) | 2013-05-30 | 2017-07-11 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US9721394B2 (en) | 2012-08-22 | 2017-08-01 | Snaps Media, Inc. | Augmented reality virtual content platform apparatuses, methods and systems |
US9742713B2 (en) | 2013-05-30 | 2017-08-22 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US9801018B2 (en) | 2015-01-26 | 2017-10-24 | Snap Inc. | Content request by location |
US9830089B1 (en) | 2013-06-25 | 2017-11-28 | Wickr Inc. | Digital data sanitization |
US20170352172A1 (en) * | 2016-06-02 | 2017-12-07 | Nextlabs, Inc. | Manipulating Display Content of a Graphical User Interface |
US9843720B1 (en) | 2014-11-12 | 2017-12-12 | Snap Inc. | User interface for accessing media at a geographic location |
US9854219B2 (en) | 2014-12-19 | 2017-12-26 | Snap Inc. | Gallery of videos set to an audio time line |
US9866999B1 (en) | 2014-01-12 | 2018-01-09 | Investment Asset Holdings Llc | Location-based messaging |
US9866591B1 (en) | 2013-06-25 | 2018-01-09 | Wickr Inc. | Enterprise messaging platform |
US20180013725A1 (en) * | 2016-07-08 | 2018-01-11 | Xattic, Inc. | Secure Message Inoculation |
US9882907B1 (en) | 2012-11-08 | 2018-01-30 | Snap Inc. | Apparatus and method for single action control of social network profile access |
US9936030B2 (en) | 2014-01-03 | 2018-04-03 | Investel Capital Corporation | User content sharing system and method with location-based external content integration |
US9979684B2 (en) | 2016-07-13 | 2018-05-22 | At&T Intellectual Property I, L.P. | Apparatus and method for managing sharing of content |
US10055717B1 (en) | 2014-08-22 | 2018-08-21 | Snap Inc. | Message processor with application prompts |
US10082926B1 (en) | 2014-02-21 | 2018-09-25 | Snap Inc. | Apparatus and method for alternate channel communication initiated through a common message thread |
US10097497B1 (en) | 2015-02-06 | 2018-10-09 | Snap Inc. | Storage and processing of ephemeral messages |
US10129260B1 (en) * | 2013-06-25 | 2018-11-13 | Wickr Inc. | Mutual privacy management |
US10133705B1 (en) | 2015-01-19 | 2018-11-20 | Snap Inc. | Multichannel system |
US10135949B1 (en) | 2015-05-05 | 2018-11-20 | Snap Inc. | Systems and methods for story and sub-story navigation |
US10157449B1 (en) | 2015-01-09 | 2018-12-18 | Snap Inc. | Geo-location-based image filters |
CN109074465A (en) * | 2016-03-24 | 2018-12-21 | 大众汽车有限公司 | Method for managing the vehicle data collected |
US10165402B1 (en) | 2016-06-28 | 2018-12-25 | Snap Inc. | System to track engagement of media items |
US20190005253A1 (en) * | 2015-12-23 | 2019-01-03 | Orange | Method for sharing a digital image between a first user terminal and at least one second user terminal over a communications network |
US10182047B1 (en) | 2016-06-30 | 2019-01-15 | Snap Inc. | Pictograph password security system |
US10193850B2 (en) * | 2016-03-30 | 2019-01-29 | Notion Ai, Inc. | Discovering questions, directives, and requests from, and prioritizing replies to, a preferred message sender method and apparatus |
US10200327B1 (en) | 2015-06-16 | 2019-02-05 | Snap Inc. | Storage management for ephemeral messages |
US10203855B2 (en) | 2016-12-09 | 2019-02-12 | Snap Inc. | Customized user-controlled media overlays |
US10219111B1 (en) | 2018-04-18 | 2019-02-26 | Snap Inc. | Visitation tracking system |
US10217488B1 (en) | 2017-12-15 | 2019-02-26 | Snap Inc. | Spherical video editing |
US10223397B1 (en) | 2015-03-13 | 2019-03-05 | Snap Inc. | Social graph based co-location of network users |
US10244186B1 (en) | 2016-05-06 | 2019-03-26 | Snap, Inc. | Dynamic activity-based image generation for online social networks |
US10255593B1 (en) | 2013-12-26 | 2019-04-09 | Square, Inc. | Passcode entry through motion sensing |
US10263964B2 (en) | 2013-06-25 | 2019-04-16 | Wickr Inc. | Secure time-to-live |
US10264422B2 (en) | 2017-08-31 | 2019-04-16 | Snap Inc. | Device location based on machine learning classifications |
US10284508B1 (en) | 2014-10-02 | 2019-05-07 | Snap Inc. | Ephemeral gallery of ephemeral messages with opt-in permanence |
US10291607B1 (en) | 2016-02-02 | 2019-05-14 | Wickr Inc. | Providing real-time events to applications |
US10291566B2 (en) | 2014-12-31 | 2019-05-14 | Albert S. Penilla | Data transmission management for computer based inter-user communication |
US10311916B2 (en) | 2014-12-19 | 2019-06-04 | Snap Inc. | Gallery of videos set to an audio time line |
US10319149B1 (en) | 2017-02-17 | 2019-06-11 | Snap Inc. | Augmented reality anamorphosis system |
US10327096B1 (en) | 2018-03-06 | 2019-06-18 | Snap Inc. | Geo-fence selection system |
US10334307B2 (en) | 2011-07-12 | 2019-06-25 | Snap Inc. | Methods and systems of providing visual content editing functions |
US10348662B2 (en) | 2016-07-19 | 2019-07-09 | Snap Inc. | Generating customized electronic messaging graphics |
US10354425B2 (en) | 2015-12-18 | 2019-07-16 | Snap Inc. | Method and system for providing context relevant media augmentation |
US10366543B1 (en) | 2015-10-30 | 2019-07-30 | Snap Inc. | Image based tracking in augmented reality systems |
US10374993B2 (en) | 2017-02-20 | 2019-08-06 | Snap Inc. | Media item attachment system |
US10373149B1 (en) | 2012-11-12 | 2019-08-06 | Square, Inc. | Secure data entry using a card reader with minimal display and input capabilities having a display |
US10387663B2 (en) * | 2012-10-04 | 2019-08-20 | Digital Arts Inc. | System, a method and a computer readable medium for transmitting an electronic file |
US10387730B1 (en) | 2017-04-20 | 2019-08-20 | Snap Inc. | Augmented reality typography personalization system |
US10387514B1 (en) | 2016-06-30 | 2019-08-20 | Snap Inc. | Automated content curation and communication |
US10423983B2 (en) | 2014-09-16 | 2019-09-24 | Snap Inc. | Determining targeting information based on a predictive targeting model |
US10430838B1 (en) | 2016-06-28 | 2019-10-01 | Snap Inc. | Methods and systems for generation, curation, and presentation of media collections with automated advertising |
US10432874B2 (en) | 2016-11-01 | 2019-10-01 | Snap Inc. | Systems and methods for fast video capture and sensor adjustment |
US10439972B1 (en) | 2013-05-30 | 2019-10-08 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US10439805B1 (en) * | 2019-04-12 | 2019-10-08 | DeepView Solutions | Platform for automated recording and storage of messaging service conversations |
US10474345B2 (en) * | 2014-04-04 | 2019-11-12 | Shawn SHEY | User interfaces and methods for displaying content |
US10474321B2 (en) | 2015-11-30 | 2019-11-12 | Snap Inc. | Network resource location linking and visual content sharing |
US10474900B2 (en) | 2017-09-15 | 2019-11-12 | Snap Inc. | Real-time tracking-compensated image effects |
US10482565B1 (en) | 2018-02-12 | 2019-11-19 | Snap Inc. | Multistage neural network processing using a graphics processor |
US10499191B1 (en) | 2017-10-09 | 2019-12-03 | Snap Inc. | Context sensitive presentation of content |
US10523625B1 (en) | 2017-03-09 | 2019-12-31 | Snap Inc. | Restricted group content collection |
US10552968B1 (en) | 2016-09-23 | 2020-02-04 | Snap Inc. | Dense feature scale detection for image matching |
US10552644B2 (en) * | 2014-06-10 | 2020-02-04 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for displaying information content |
US10581782B2 (en) | 2017-03-27 | 2020-03-03 | Snap Inc. | Generating a stitched data stream |
US10582277B2 (en) | 2017-03-27 | 2020-03-03 | Snap Inc. | Generating a stitched data stream |
US10592574B2 (en) | 2015-05-05 | 2020-03-17 | Snap Inc. | Systems and methods for automated local story generation and curation |
US10599289B1 (en) | 2017-11-13 | 2020-03-24 | Snap Inc. | Interface to display animated icon |
US10609036B1 (en) | 2016-10-10 | 2020-03-31 | Snap Inc. | Social media post subscribe requests for buffer user accounts |
US10616239B2 (en) | 2015-03-18 | 2020-04-07 | Snap Inc. | Geo-fence authorization provisioning |
US10616162B1 (en) * | 2015-08-24 | 2020-04-07 | Snap Inc. | Systems devices and methods for automatically selecting an ephemeral message availability |
US10623666B2 (en) | 2016-11-07 | 2020-04-14 | Snap Inc. | Selective identification and order of image modifiers |
US10638256B1 (en) | 2016-06-20 | 2020-04-28 | Pipbin, Inc. | System for distribution and display of mobile targeted augmented reality content |
US10673622B2 (en) | 2014-11-14 | 2020-06-02 | Square, Inc. | Cryptographic shader in display hardware |
US10679389B2 (en) | 2016-02-26 | 2020-06-09 | Snap Inc. | Methods and systems for generation, curation, and presentation of media collections |
US10679393B2 (en) | 2018-07-24 | 2020-06-09 | Snap Inc. | Conditional modification of augmented reality object |
US10678818B2 (en) | 2018-01-03 | 2020-06-09 | Snap Inc. | Tag distribution visualization system |
US10686899B2 (en) | 2016-04-06 | 2020-06-16 | Snap Inc. | Messaging achievement pictograph display system |
US10719968B2 (en) | 2018-04-18 | 2020-07-21 | Snap Inc. | Augmented expression system |
US10726603B1 (en) | 2018-02-28 | 2020-07-28 | Snap Inc. | Animated expressive icon |
US10740974B1 (en) | 2017-09-15 | 2020-08-11 | Snap Inc. | Augmented reality system |
US10740939B1 (en) | 2016-12-09 | 2020-08-11 | Snap Inc. | Fast image style transfers |
CN111555961A (en) * | 2020-04-24 | 2020-08-18 | 北京达佳互联信息技术有限公司 | Message display method and device |
US20200274916A1 (en) * | 2019-02-22 | 2020-08-27 | Delta Pds Co., Ltd. | Apparatus for providing folder chat room and apparatus for receiving the same |
US10788900B1 (en) | 2017-06-29 | 2020-09-29 | Snap Inc. | Pictorial symbol prediction |
US10805696B1 (en) | 2016-06-20 | 2020-10-13 | Pipbin, Inc. | System for recording and targeting tagged content of user interest |
US10817898B2 (en) | 2015-08-13 | 2020-10-27 | Placed, Llc | Determining exposures to content presented by physical objects |
US10824654B2 (en) | 2014-09-18 | 2020-11-03 | Snap Inc. | Geolocation-based pictographs |
US10834525B2 (en) | 2016-02-26 | 2020-11-10 | Snap Inc. | Generation, curation, and presentation of media collections |
US10839219B1 (en) | 2016-06-20 | 2020-11-17 | Pipbin, Inc. | System for curation, distribution and display of location-dependent augmented reality content |
US20200374403A1 (en) * | 2014-10-27 | 2020-11-26 | Rideshark Corporation | Methods and systems for notifications in communications networks |
US10862951B1 (en) | 2007-01-05 | 2020-12-08 | Snap Inc. | Real-time display of multiple images |
US10885564B1 (en) | 2017-11-28 | 2021-01-05 | Snap Inc. | Methods, system, and non-transitory computer readable storage medium for dynamically configurable social media platform |
US10884616B2 (en) | 2016-05-31 | 2021-01-05 | Snap Inc. | Application control using a gesture based trigger |
US10885136B1 (en) | 2018-02-28 | 2021-01-05 | Snap Inc. | Audience filtering system |
US10915911B2 (en) | 2017-02-03 | 2021-02-09 | Snap Inc. | System to determine a price-schedule to distribute media content |
US10933311B2 (en) | 2018-03-14 | 2021-03-02 | Snap Inc. | Generating collectible items based on location information |
US10948717B1 (en) | 2015-03-23 | 2021-03-16 | Snap Inc. | Reducing boot time and power consumption in wearable display systems |
US10952013B1 (en) | 2017-04-27 | 2021-03-16 | Snap Inc. | Selective location-based identity communication |
US10956793B1 (en) | 2015-09-15 | 2021-03-23 | Snap Inc. | Content tagging |
US10963529B1 (en) | 2017-04-27 | 2021-03-30 | Snap Inc. | Location-based search mechanism in a graphical user interface |
US10979752B1 (en) | 2018-02-28 | 2021-04-13 | Snap Inc. | Generating media content items based on location information |
US10977385B2 (en) | 2018-03-07 | 2021-04-13 | International Business Machines Corporation | Configurable and non-invasive protection of private information for conversational agents |
US10993069B2 (en) | 2015-07-16 | 2021-04-27 | Snap Inc. | Dynamically adaptive media content delivery |
US10997783B2 (en) | 2015-11-30 | 2021-05-04 | Snap Inc. | Image and point cloud based tracking and in augmented reality systems |
US10997760B2 (en) | 2018-08-31 | 2021-05-04 | Snap Inc. | Augmented reality anthropomorphization system |
US11017173B1 (en) | 2017-12-22 | 2021-05-25 | Snap Inc. | Named entity recognition visual context and caption data |
US11019001B1 (en) | 2017-02-20 | 2021-05-25 | Snap Inc. | Selective presentation of group messages |
US20210158573A1 (en) * | 2018-08-06 | 2021-05-27 | Naver Webtoon Ltd. | Method, apparatus, and program for detecting mark by using image matching |
US11023514B2 (en) | 2016-02-26 | 2021-06-01 | Snap Inc. | Methods and systems for generation, curation, and presentation of media collections |
US11030787B2 (en) | 2017-10-30 | 2021-06-08 | Snap Inc. | Mobile-based cartographic control of display content |
US11037372B2 (en) | 2017-03-06 | 2021-06-15 | Snap Inc. | Virtual vision system |
US11044393B1 (en) | 2016-06-20 | 2021-06-22 | Pipbin, Inc. | System for curation and display of location-dependent augmented reality content in an augmented estate system |
US11063898B1 (en) | 2016-03-28 | 2021-07-13 | Snap Inc. | Systems and methods for chat with audio and video elements |
US20210224365A1 (en) * | 2019-01-29 | 2021-07-22 | Suanhua Intelligent Technology Co., Ltd. | Systems and methods for tracking events of a client device |
US11088987B2 (en) | 2015-05-06 | 2021-08-10 | Snap Inc. | Ephemeral group chat |
US11108715B1 (en) | 2017-04-27 | 2021-08-31 | Snap Inc. | Processing media content based on original context |
US11121997B1 (en) | 2015-08-24 | 2021-09-14 | Snap Inc. | Systems, devices, and methods for determining a non-ephemeral message status in a communication system |
US11119628B1 (en) | 2015-11-25 | 2021-09-14 | Snap Inc. | Dynamic graphical user interface modification and monitoring |
US11128715B1 (en) | 2019-12-30 | 2021-09-21 | Snap Inc. | Physical friend proximity in chat |
US11132066B1 (en) | 2015-06-16 | 2021-09-28 | Snap Inc. | Radial gesture navigation |
US11163941B1 (en) | 2018-03-30 | 2021-11-02 | Snap Inc. | Annotating a collection of media content items |
US11164376B1 (en) | 2017-08-30 | 2021-11-02 | Snap Inc. | Object modeling using light projection |
US11170393B1 (en) | 2017-04-11 | 2021-11-09 | Snap Inc. | System to calculate an engagement score of location based media content |
US11182383B1 (en) | 2012-02-24 | 2021-11-23 | Placed, Llc | System and method for data collection to validate location data |
US11189299B1 (en) | 2017-02-20 | 2021-11-30 | Snap Inc. | Augmented reality speech balloon system |
US11199957B1 (en) | 2018-11-30 | 2021-12-14 | Snap Inc. | Generating customized avatars based on location information |
US11201981B1 (en) | 2016-06-20 | 2021-12-14 | Pipbin, Inc. | System for notification of user accessibility of curated location-dependent content in an augmented estate |
US11206615B2 (en) | 2019-05-30 | 2021-12-21 | Snap Inc. | Wearable device location systems |
US11218838B2 (en) | 2019-10-31 | 2022-01-04 | Snap Inc. | Focused map-based context information surfacing |
US11216517B1 (en) | 2017-07-31 | 2022-01-04 | Snap Inc. | Methods and systems for selecting user generated content |
US11216869B2 (en) | 2014-09-23 | 2022-01-04 | Snap Inc. | User interface to augment an image using geolocation |
US11228551B1 (en) | 2020-02-12 | 2022-01-18 | Snap Inc. | Multiple gateway message exchange |
US11232040B1 (en) | 2017-04-28 | 2022-01-25 | Snap Inc. | Precaching unlockable data elements |
US11250075B1 (en) | 2017-02-17 | 2022-02-15 | Snap Inc. | Searching social media content |
US11249614B2 (en) | 2019-03-28 | 2022-02-15 | Snap Inc. | Generating personalized map interface with enhanced icons |
US11265281B1 (en) | 2020-01-28 | 2022-03-01 | Snap Inc. | Message deletion policy selection |
US11265273B1 (en) | 2017-12-01 | 2022-03-01 | Snap, Inc. | Dynamic media overlay with smart widget |
US11290851B2 (en) | 2020-06-15 | 2022-03-29 | Snap Inc. | Location sharing using offline and online objects |
US11288879B2 (en) | 2017-05-26 | 2022-03-29 | Snap Inc. | Neural network-based image stream modification |
US11297027B1 (en) | 2019-01-31 | 2022-04-05 | Snap Inc. | Automated image processing and insight presentation |
US11294936B1 (en) | 2019-01-30 | 2022-04-05 | Snap Inc. | Adaptive spatial density based clustering |
US11301117B2 (en) | 2019-03-08 | 2022-04-12 | Snap Inc. | Contextual information in chat |
US11310176B2 (en) | 2018-04-13 | 2022-04-19 | Snap Inc. | Content suggestion system |
US11314776B2 (en) | 2020-06-15 | 2022-04-26 | Snap Inc. | Location sharing using friend list versions |
US11316806B1 (en) | 2020-01-28 | 2022-04-26 | Snap Inc. | Bulk message deletion |
US11323398B1 (en) | 2017-07-31 | 2022-05-03 | Snap Inc. | Systems, devices, and methods for progressive attachments |
US11334768B1 (en) | 2016-07-05 | 2022-05-17 | Snap Inc. | Ephemeral content management |
US11343323B2 (en) | 2019-12-31 | 2022-05-24 | Snap Inc. | Augmented reality objects registry |
US11361493B2 (en) | 2019-04-01 | 2022-06-14 | Snap Inc. | Semantic texture mapping system |
US11388226B1 (en) | 2015-01-13 | 2022-07-12 | Snap Inc. | Guided personal identity based actions |
US11429618B2 (en) | 2019-12-30 | 2022-08-30 | Snap Inc. | Surfacing augmented reality objects |
US11430091B2 (en) | 2020-03-27 | 2022-08-30 | Snap Inc. | Location mapping for large scale augmented-reality |
US11455082B2 (en) | 2018-09-28 | 2022-09-27 | Snap Inc. | Collaborative achievement interface |
US11464319B2 (en) * | 2020-03-31 | 2022-10-11 | Snap Inc. | Augmented reality beauty product tutorials |
US11475254B1 (en) | 2017-09-08 | 2022-10-18 | Snap Inc. | Multimodal entity identification |
US11483267B2 (en) | 2020-06-15 | 2022-10-25 | Snap Inc. | Location sharing using different rate-limited links |
US11487501B2 (en) | 2018-05-16 | 2022-11-01 | Snap Inc. | Device control using audio data |
US11503432B2 (en) | 2020-06-15 | 2022-11-15 | Snap Inc. | Scalable real-time location sharing framework |
US11500525B2 (en) | 2019-02-25 | 2022-11-15 | Snap Inc. | Custom media overlay system |
US11507614B1 (en) | 2018-02-13 | 2022-11-22 | Snap Inc. | Icon based tagging |
US11507977B2 (en) | 2016-06-28 | 2022-11-22 | Snap Inc. | Methods and systems for presentation of media collections with automated advertising |
US11516167B2 (en) | 2020-03-05 | 2022-11-29 | Snap Inc. | Storing data based on device location |
US11545170B2 (en) | 2017-03-01 | 2023-01-03 | Snap Inc. | Acoustic neural network scene detection |
US11558709B2 (en) | 2018-11-30 | 2023-01-17 | Snap Inc. | Position service to determine relative position to map features |
US11574431B2 (en) | 2019-02-26 | 2023-02-07 | Snap Inc. | Avatar based on weather |
US11601783B2 (en) | 2019-06-07 | 2023-03-07 | Snap Inc. | Detection of a physical collision between two client devices in a location sharing system |
US11601888B2 (en) | 2021-03-29 | 2023-03-07 | Snap Inc. | Determining location using multi-source geolocation data |
US11606755B2 (en) | 2019-05-30 | 2023-03-14 | Snap Inc. | Wearable device location systems architecture |
US11616745B2 (en) | 2017-01-09 | 2023-03-28 | Snap Inc. | Contextual generation and selection of customized media content |
US11619501B2 (en) | 2020-03-11 | 2023-04-04 | Snap Inc. | Avatar based on trip |
US11625873B2 (en) | 2020-03-30 | 2023-04-11 | Snap Inc. | Personalized media overlay recommendation |
US11625443B2 (en) | 2014-06-05 | 2023-04-11 | Snap Inc. | Web document enhancement |
US11631276B2 (en) | 2016-03-31 | 2023-04-18 | Snap Inc. | Automated avatar generation |
US11645324B2 (en) | 2021-03-31 | 2023-05-09 | Snap Inc. | Location-based timeline media content system |
US11675831B2 (en) | 2017-05-31 | 2023-06-13 | Snap Inc. | Geolocation based playlists |
US11676378B2 (en) | 2020-06-29 | 2023-06-13 | Snap Inc. | Providing travel-based augmented reality content with a captured image |
US11683362B2 (en) | 2017-09-29 | 2023-06-20 | Snap Inc. | Realistic neural network based image style transfer |
US11700225B2 (en) | 2020-04-23 | 2023-07-11 | Snap Inc. | Event overlay invite messaging system |
US11716301B2 (en) | 2018-01-02 | 2023-08-01 | Snap Inc. | Generating interactive messages with asynchronous media content |
US11714535B2 (en) | 2019-07-11 | 2023-08-01 | Snap Inc. | Edge gesture interface with smart interactions |
US11722442B2 (en) | 2019-07-05 | 2023-08-08 | Snap Inc. | Event planning in a content sharing platform |
US11729343B2 (en) | 2019-12-30 | 2023-08-15 | Snap Inc. | Including video feed in message thread |
US11729252B2 (en) | 2016-03-29 | 2023-08-15 | Snap Inc. | Content collection navigation and autoforwarding |
US11734712B2 (en) | 2012-02-24 | 2023-08-22 | Foursquare Labs, Inc. | Attributing in-store visits to media consumption based on data collected from user devices |
US11751015B2 (en) | 2019-01-16 | 2023-09-05 | Snap Inc. | Location-based context information sharing in a messaging system |
US11763130B2 (en) | 2017-10-09 | 2023-09-19 | Snap Inc. | Compact neural networks using condensed filters |
US11776264B2 (en) | 2020-06-10 | 2023-10-03 | Snap Inc. | Adding beauty products to augmented reality tutorials |
US11776256B2 (en) | 2020-03-27 | 2023-10-03 | Snap Inc. | Shared augmented reality system |
US11785161B1 (en) | 2016-06-20 | 2023-10-10 | Pipbin, Inc. | System for user accessibility of tagged curated augmented reality content |
US11783369B2 (en) | 2017-04-28 | 2023-10-10 | Snap Inc. | Interactive advertising with media collections |
US11799811B2 (en) | 2018-10-31 | 2023-10-24 | Snap Inc. | Messaging and gaming applications communication platform |
US11809624B2 (en) | 2019-02-13 | 2023-11-07 | Snap Inc. | Sleep detection in a location sharing system |
US11812347B2 (en) | 2019-09-06 | 2023-11-07 | Snap Inc. | Non-textual communication and user states management |
US11816853B2 (en) | 2016-08-30 | 2023-11-14 | Snap Inc. | Systems and methods for simultaneous localization and mapping |
US11821742B2 (en) | 2019-09-26 | 2023-11-21 | Snap Inc. | Travel based notifications |
US11832015B2 (en) | 2020-08-13 | 2023-11-28 | Snap Inc. | User interface for pose driven virtual effects |
US11829834B2 (en) | 2021-10-29 | 2023-11-28 | Snap Inc. | Extended QR code |
US11843574B2 (en) | 2020-05-21 | 2023-12-12 | Snap Inc. | Featured content collection interface |
US11843456B2 (en) | 2016-10-24 | 2023-12-12 | Snap Inc. | Generating and displaying customized avatars in media overlays |
US11842411B2 (en) | 2017-04-27 | 2023-12-12 | Snap Inc. | Location-based virtual avatars |
US11847528B2 (en) | 2017-11-15 | 2023-12-19 | Snap Inc. | Modulated image segmentation |
US11852554B1 (en) | 2019-03-21 | 2023-12-26 | Snap Inc. | Barometer calibration in a location sharing system |
US11857879B2 (en) | 2020-06-10 | 2024-01-02 | Snap Inc. | Visual search to launch application |
US11860888B2 (en) | 2018-05-22 | 2024-01-02 | Snap Inc. | Event detection system |
US11868414B1 (en) | 2019-03-14 | 2024-01-09 | Snap Inc. | Graph-based prediction for contact suggestion in a location sharing system |
US11870743B1 (en) | 2017-01-23 | 2024-01-09 | Snap Inc. | Customized digital avatar accessories |
US11876941B1 (en) | 2016-06-20 | 2024-01-16 | Pipbin, Inc. | Clickable augmented reality content manager, system, and network |
US11877211B2 (en) | 2019-01-14 | 2024-01-16 | Snap Inc. | Destination sharing in location sharing system |
US11893208B2 (en) | 2019-12-31 | 2024-02-06 | Snap Inc. | Combined map icon with action indicator |
US11899905B2 (en) | 2020-06-30 | 2024-02-13 | Snap Inc. | Selectable items providing post-viewing context actions |
US11900418B2 (en) | 2016-04-04 | 2024-02-13 | Snap Inc. | Mutable geo-fencing system |
US11925869B2 (en) | 2012-05-08 | 2024-03-12 | Snap Inc. | System and method for generating and displaying avatars |
US11943192B2 (en) | 2020-08-31 | 2024-03-26 | Snap Inc. | Co-location connection service |
US11956533B2 (en) | 2021-11-29 | 2024-04-09 | Snap Inc. | Accessing media at a geographic location |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030131060A1 (en) * | 2002-01-09 | 2003-07-10 | Bellsouth Intellectual Property Corporation | Method, system, and apparatus for providing self-destructing electronic mail messages |
US20070067852A1 (en) * | 2005-08-30 | 2007-03-22 | Sap Ag | Information control in federated interaction |
US20070143435A1 (en) * | 2005-12-15 | 2007-06-21 | Bellsouth Intellectual Property Corporation | Presentation of Un-Viewed Messages |
US20080065891A1 (en) * | 2002-08-07 | 2008-03-13 | Kryptiq Corporation | Opaque message archives |
US20110202598A1 (en) * | 2010-02-16 | 2011-08-18 | Jeffrey Evans | Messaging System Apparatuses Circuits and Methods of Operation Thereof |
-
2013
- 2013-01-29 US US13/753,513 patent/US20130194301A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030131060A1 (en) * | 2002-01-09 | 2003-07-10 | Bellsouth Intellectual Property Corporation | Method, system, and apparatus for providing self-destructing electronic mail messages |
US20080065891A1 (en) * | 2002-08-07 | 2008-03-13 | Kryptiq Corporation | Opaque message archives |
US20070067852A1 (en) * | 2005-08-30 | 2007-03-22 | Sap Ag | Information control in federated interaction |
US20070143435A1 (en) * | 2005-12-15 | 2007-06-21 | Bellsouth Intellectual Property Corporation | Presentation of Un-Viewed Messages |
US20110202598A1 (en) * | 2010-02-16 | 2011-08-18 | Jeffrey Evans | Messaging System Apparatuses Circuits and Methods of Operation Thereof |
Cited By (555)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10862951B1 (en) | 2007-01-05 | 2020-12-08 | Snap Inc. | Real-time display of multiple images |
US11588770B2 (en) | 2007-01-05 | 2023-02-21 | Snap Inc. | Real-time display of multiple images |
US10334307B2 (en) | 2011-07-12 | 2019-06-25 | Snap Inc. | Methods and systems of providing visual content editing functions |
US10999623B2 (en) | 2011-07-12 | 2021-05-04 | Snap Inc. | Providing visual content editing functions |
US11451856B2 (en) | 2011-07-12 | 2022-09-20 | Snap Inc. | Providing visual content editing functions |
US11750875B2 (en) | 2011-07-12 | 2023-09-05 | Snap Inc. | Providing visual content editing functions |
US11182383B1 (en) | 2012-02-24 | 2021-11-23 | Placed, Llc | System and method for data collection to validate location data |
US11734712B2 (en) | 2012-02-24 | 2023-08-22 | Foursquare Labs, Inc. | Attributing in-store visits to media consumption based on data collected from user devices |
US11925869B2 (en) | 2012-05-08 | 2024-03-12 | Snap Inc. | System and method for generating and displaying avatars |
US9411484B2 (en) * | 2012-05-15 | 2016-08-09 | Samsung Electronics Co., Ltd. | Mobile device with memo function and method for controlling the device |
US20130311922A1 (en) * | 2012-05-15 | 2013-11-21 | Samsung Electronics Co., Ltd. | Mobile device with memo function and method for controlling the device |
US10659435B2 (en) | 2012-07-16 | 2020-05-19 | Wickr Inc. | Multi party messaging |
US9628449B1 (en) | 2012-07-16 | 2017-04-18 | Wickr Inc. | Multi party messaging |
US10581817B1 (en) | 2012-07-16 | 2020-03-03 | Wickr Inc. | Digital security bubble |
US9729315B2 (en) | 2012-07-16 | 2017-08-08 | Wickr Inc. | Initialization and registration of an application |
US10038677B1 (en) | 2012-07-16 | 2018-07-31 | Wickr Inc. | Digital security bubble |
US9584316B1 (en) | 2012-07-16 | 2017-02-28 | Wickr Inc. | Digital security bubble |
US9285981B1 (en) | 2012-07-16 | 2016-03-15 | Wickr Inc. | Discouraging screen capture |
US10635289B1 (en) | 2012-07-16 | 2020-04-28 | Wickr Inc. | Discouraging screen capture |
US9667417B1 (en) | 2012-07-16 | 2017-05-30 | Wickr Inc. | Digital security bubble |
US11159310B2 (en) | 2012-07-16 | 2021-10-26 | Amazon Technologies, Inc. | Digital security bubble |
US10432597B1 (en) | 2012-07-16 | 2019-10-01 | Wickr Inc. | Digital security bubble |
US10248799B1 (en) | 2012-07-16 | 2019-04-02 | Wickr Inc. | Discouraging screen capture |
US9876772B1 (en) | 2012-07-16 | 2018-01-23 | Wickr Inc. | Encrypting and transmitting data |
US9792733B2 (en) | 2012-08-22 | 2017-10-17 | Snaps Media, Inc. | Augmented reality virtual content platform apparatuses, methods and systems |
US9721394B2 (en) | 2012-08-22 | 2017-08-01 | Snaps Media, Inc. | Augmented reality virtual content platform apparatuses, methods and systems |
US10169924B2 (en) | 2012-08-22 | 2019-01-01 | Snaps Media Inc. | Augmented reality virtual content platform apparatuses, methods and systems |
US10387663B2 (en) * | 2012-10-04 | 2019-08-20 | Digital Arts Inc. | System, a method and a computer readable medium for transmitting an electronic file |
US11252158B2 (en) | 2012-11-08 | 2022-02-15 | Snap Inc. | Interactive user-interface to adjust access privileges |
US9882907B1 (en) | 2012-11-08 | 2018-01-30 | Snap Inc. | Apparatus and method for single action control of social network profile access |
US10887308B1 (en) | 2012-11-08 | 2021-01-05 | Snap Inc. | Interactive user-interface to adjust access privileges |
US10373149B1 (en) | 2012-11-12 | 2019-08-06 | Square, Inc. | Secure data entry using a card reader with minimal display and input capabilities having a display |
US20140201527A1 (en) * | 2013-01-17 | 2014-07-17 | Zohar KRIVOROT | Systems and methods for secure and private delivery of content |
US11316805B2 (en) | 2013-04-02 | 2022-04-26 | Samsung Electronics Co., Ltd. | Method for transmitting message and electronic device thereof |
US20140298197A1 (en) * | 2013-04-02 | 2014-10-02 | Samsung Electronics Co., Ltd. | Method for transmitting message and electronic device thereof |
US20220247698A1 (en) * | 2013-04-02 | 2022-08-04 | Samsung Electronics Co., Ltd. | Method for transmitting message and electronic device thereof |
US10319345B2 (en) * | 2013-05-02 | 2019-06-11 | Samsung Electronics Co., Ltd | Portable terminal and method for partially obfuscating an object displayed thereon |
US20140327634A1 (en) * | 2013-05-02 | 2014-11-06 | Samsung Electronics Co., Ltd. | Portable terminal and method for protecting a displayed object |
US11134046B2 (en) | 2013-05-30 | 2021-09-28 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US11509618B2 (en) | 2013-05-30 | 2022-11-22 | Snap Inc. | Maintaining a message thread with opt-in permanence for entries |
US9742713B2 (en) | 2013-05-30 | 2017-08-22 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US10587552B1 (en) | 2013-05-30 | 2020-03-10 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US9705831B2 (en) | 2013-05-30 | 2017-07-11 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US10439972B1 (en) | 2013-05-30 | 2019-10-08 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US11115361B2 (en) | 2013-05-30 | 2021-09-07 | Snap Inc. | Apparatus and method for maintaining a message thread with opt-in permanence for entries |
US10567349B2 (en) * | 2013-06-25 | 2020-02-18 | Wickr Inc. | Secure time-to-live |
US11924361B1 (en) | 2013-06-25 | 2024-03-05 | Amazon Technologies, Inc. | Secure time-to-live |
US10263964B2 (en) | 2013-06-25 | 2019-04-16 | Wickr Inc. | Secure time-to-live |
US11025440B2 (en) | 2013-06-25 | 2021-06-01 | Wickr Inc. | Secure time-to-live |
US9866591B1 (en) | 2013-06-25 | 2018-01-09 | Wickr Inc. | Enterprise messaging platform |
US10129260B1 (en) * | 2013-06-25 | 2018-11-13 | Wickr Inc. | Mutual privacy management |
US11509488B2 (en) | 2013-06-25 | 2022-11-22 | Amazon Technologies, Inc. | Secure time-to-live |
US9830089B1 (en) | 2013-06-25 | 2017-11-28 | Wickr Inc. | Digital data sanitization |
US20150046988A1 (en) * | 2013-08-06 | 2015-02-12 | Canon Kabushiki Kaisha | System, control method therefor, and non-transitory computer-readable medium |
US8914752B1 (en) * | 2013-08-22 | 2014-12-16 | Snapchat, Inc. | Apparatus and method for accelerated display of ephemeral messages |
US9860228B2 (en) | 2013-10-30 | 2018-01-02 | At&T Intellectual Property I, L.P. | Pre-delivery authentication |
US9503445B2 (en) * | 2013-10-30 | 2016-11-22 | At&T Intellectual Property I, L.P. | Pre-delivery authentication |
US20160044016A1 (en) * | 2013-10-30 | 2016-02-11 | At&T Intellectual Property I, L.P. | Pre-Delivery Authentication |
US11102253B2 (en) | 2013-11-26 | 2021-08-24 | Snap Inc. | Method and system for integrating real time communication features in applications |
US10681092B1 (en) | 2013-11-26 | 2020-06-09 | Snap Inc. | Method and system for integrating real time communication features in applications |
US9083770B1 (en) | 2013-11-26 | 2015-07-14 | Snapchat, Inc. | Method and system for integrating real time communication features in applications |
US9794303B1 (en) | 2013-11-26 | 2017-10-17 | Snap Inc. | Method and system for integrating real time communication features in applications |
US11546388B2 (en) | 2013-11-26 | 2023-01-03 | Snap Inc. | Method and system for integrating real time communication features in applications |
US10069876B1 (en) | 2013-11-26 | 2018-09-04 | Snap Inc. | Method and system for integrating real time communication features in applications |
US10255593B1 (en) | 2013-12-26 | 2019-04-09 | Square, Inc. | Passcode entry through motion sensing |
US9936030B2 (en) | 2014-01-03 | 2018-04-03 | Investel Capital Corporation | User content sharing system and method with location-based external content integration |
US10080102B1 (en) | 2014-01-12 | 2018-09-18 | Investment Asset Holdings Llc | Location-based messaging |
US9866999B1 (en) | 2014-01-12 | 2018-01-09 | Investment Asset Holdings Llc | Location-based messaging |
US10349209B1 (en) | 2014-01-12 | 2019-07-09 | Investment Asset Holdings Llc | Location-based messaging |
US11902235B2 (en) | 2014-02-21 | 2024-02-13 | Snap Inc. | Apparatus and method for alternate channel communication initiated through a common message thread |
US10084735B1 (en) | 2014-02-21 | 2018-09-25 | Snap Inc. | Apparatus and method for alternate channel communication initiated through a common message thread |
US10082926B1 (en) | 2014-02-21 | 2018-09-25 | Snap Inc. | Apparatus and method for alternate channel communication initiated through a common message thread |
US10958605B1 (en) | 2014-02-21 | 2021-03-23 | Snap Inc. | Apparatus and method for alternate channel communication initiated through a common message thread |
US11463394B2 (en) | 2014-02-21 | 2022-10-04 | Snap Inc. | Apparatus and method for alternate channel communication initiated through a common message thread |
US10949049B1 (en) | 2014-02-21 | 2021-03-16 | Snap Inc. | Apparatus and method for alternate channel communication initiated through a common message thread |
US11463393B2 (en) | 2014-02-21 | 2022-10-04 | Snap Inc. | Apparatus and method for alternate channel communication initiated through a common message thread |
US10382197B1 (en) | 2014-02-24 | 2019-08-13 | Wickr Inc. | Key management and dynamic perfect forward secrecy |
US10396982B1 (en) | 2014-02-24 | 2019-08-27 | Wickr Inc. | Key management and dynamic perfect forward secrecy |
US9698976B1 (en) | 2014-02-24 | 2017-07-04 | Wickr Inc. | Key management and dynamic perfect forward secrecy |
US20170098103A1 (en) * | 2014-03-04 | 2017-04-06 | Pop Pop Llc | Integrated message veiling system |
WO2015134069A1 (en) * | 2014-03-04 | 2015-09-11 | Pop Pop Llc | An integrated message veiling system |
US9237202B1 (en) | 2014-03-07 | 2016-01-12 | Snapchat, Inc. | Content delivery network for ephemeral objects |
US9407712B1 (en) | 2014-03-07 | 2016-08-02 | Snapchat, Inc. | Content delivery network for ephemeral objects |
CN106031159A (en) * | 2014-03-26 | 2016-10-12 | 英特尔公司 | System and method to control screen capture |
WO2015148085A1 (en) | 2014-03-26 | 2015-10-01 | Intel Corporation | System and method to control screen capture |
EP3123711A4 (en) * | 2014-03-26 | 2017-12-06 | Intel Corporation | System and method to control screen capture |
US10474345B2 (en) * | 2014-04-04 | 2019-11-12 | Shawn SHEY | User interfaces and methods for displaying content |
US10817156B1 (en) | 2014-05-09 | 2020-10-27 | Snap Inc. | Dynamic configuration of application component tiles |
US11310183B2 (en) | 2014-05-09 | 2022-04-19 | Snap Inc. | Dynamic configuration of application component tiles |
US9276886B1 (en) | 2014-05-09 | 2016-03-01 | Snapchat, Inc. | Apparatus and method for dynamically configuring application component tiles |
US11743219B2 (en) | 2014-05-09 | 2023-08-29 | Snap Inc. | Dynamic configuration of application component tiles |
US10990697B2 (en) | 2014-05-28 | 2021-04-27 | Snap Inc. | Apparatus and method for automated privacy protection in distributed images |
US9396354B1 (en) | 2014-05-28 | 2016-07-19 | Snapchat, Inc. | Apparatus and method for automated privacy protection in distributed images |
US10572681B1 (en) | 2014-05-28 | 2020-02-25 | Snap Inc. | Apparatus and method for automated privacy protection in distributed images |
US9785796B1 (en) | 2014-05-28 | 2017-10-10 | Snap Inc. | Apparatus and method for automated privacy protection in distributed images |
US11625443B2 (en) | 2014-06-05 | 2023-04-11 | Snap Inc. | Web document enhancement |
US11921805B2 (en) | 2014-06-05 | 2024-03-05 | Snap Inc. | Web document enhancement |
US10552644B2 (en) * | 2014-06-10 | 2020-02-04 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for displaying information content |
US11166121B2 (en) | 2014-06-13 | 2021-11-02 | Snap Inc. | Prioritization of messages within a message collection |
US9532171B2 (en) | 2014-06-13 | 2016-12-27 | Snap Inc. | Geo-location based event gallery |
US9113301B1 (en) | 2014-06-13 | 2015-08-18 | Snapchat, Inc. | Geo-location based event gallery |
US9430783B1 (en) | 2014-06-13 | 2016-08-30 | Snapchat, Inc. | Prioritization of messages within gallery |
US10779113B2 (en) | 2014-06-13 | 2020-09-15 | Snap Inc. | Prioritization of messages within a message collection |
US9825898B2 (en) | 2014-06-13 | 2017-11-21 | Snap Inc. | Prioritization of messages within a message collection |
US9693191B2 (en) | 2014-06-13 | 2017-06-27 | Snap Inc. | Prioritization of messages within gallery |
US10182311B2 (en) | 2014-06-13 | 2019-01-15 | Snap Inc. | Prioritization of messages within a message collection |
US9094137B1 (en) | 2014-06-13 | 2015-07-28 | Snapchat, Inc. | Priority based placement of messages in a geo-location based event gallery |
US10448201B1 (en) | 2014-06-13 | 2019-10-15 | Snap Inc. | Prioritization of messages within a message collection |
US10524087B1 (en) | 2014-06-13 | 2019-12-31 | Snap Inc. | Message destination list mechanism |
US10200813B1 (en) | 2014-06-13 | 2019-02-05 | Snap Inc. | Geo-location based event gallery |
US10659914B1 (en) | 2014-06-13 | 2020-05-19 | Snap Inc. | Geo-location based event gallery |
US11317240B2 (en) | 2014-06-13 | 2022-04-26 | Snap Inc. | Geo-location based event gallery |
US10623891B2 (en) | 2014-06-13 | 2020-04-14 | Snap Inc. | Prioritization of messages within a message collection |
US20150371613A1 (en) * | 2014-06-19 | 2015-12-24 | Contentguard Holdings, Inc. | Obscurely rendering content using image splitting techniques |
US9235711B1 (en) | 2014-06-24 | 2016-01-12 | Voxience S.A.R.L. | Systems, methods and devices for providing visual privacy to messages |
US9584530B1 (en) | 2014-06-27 | 2017-02-28 | Wickr Inc. | In-band identity verification and man-in-the-middle defense |
US11595569B2 (en) | 2014-07-07 | 2023-02-28 | Snap Inc. | Supplying content aware photo filters |
US11849214B2 (en) | 2014-07-07 | 2023-12-19 | Snap Inc. | Apparatus and method for supplying content aware photo filters |
US10154192B1 (en) | 2014-07-07 | 2018-12-11 | Snap Inc. | Apparatus and method for supplying content aware photo filters |
US10432850B1 (en) | 2014-07-07 | 2019-10-01 | Snap Inc. | Apparatus and method for supplying content aware photo filters |
US11122200B2 (en) | 2014-07-07 | 2021-09-14 | Snap Inc. | Supplying content aware photo filters |
US9407816B1 (en) | 2014-07-07 | 2016-08-02 | Snapchat, Inc. | Apparatus and method for supplying content aware photo filters |
US11496673B1 (en) | 2014-07-07 | 2022-11-08 | Snap Inc. | Apparatus and method for supplying content aware photo filters |
US9225897B1 (en) | 2014-07-07 | 2015-12-29 | Snapchat, Inc. | Apparatus and method for supplying content aware photo filters |
US10348960B1 (en) | 2014-07-07 | 2019-07-09 | Snap Inc. | Apparatus and method for supplying content aware photo filters |
US10701262B1 (en) | 2014-07-07 | 2020-06-30 | Snap Inc. | Apparatus and method for supplying content aware photo filters |
US10602057B1 (en) | 2014-07-07 | 2020-03-24 | Snap Inc. | Supplying content aware photo filters |
US9875566B2 (en) * | 2014-08-21 | 2018-01-23 | Glu Mobile, Inc. | Methods and systems for images with interactive filters |
US20160110906A1 (en) * | 2014-08-21 | 2016-04-21 | Glu Mobile, Inc. | Methods and systems for images with interactive filters |
US10636187B2 (en) * | 2014-08-21 | 2020-04-28 | Glu Mobile Inc. | Methods and systems for images with interactive filters |
US20180165858A1 (en) * | 2014-08-21 | 2018-06-14 | Glu Mobile, Inc. | Methods and systems for images with interactive filters |
US11017363B1 (en) | 2014-08-22 | 2021-05-25 | Snap Inc. | Message processor with application prompts |
US10055717B1 (en) | 2014-08-22 | 2018-08-21 | Snap Inc. | Message processor with application prompts |
EP2996288A1 (en) * | 2014-09-15 | 2016-03-16 | John R. Thorpe | Non-retained message system |
US10423983B2 (en) | 2014-09-16 | 2019-09-24 | Snap Inc. | Determining targeting information based on a predictive targeting model |
US11625755B1 (en) | 2014-09-16 | 2023-04-11 | Foursquare Labs, Inc. | Determining targeting information based on a predictive targeting model |
US10824654B2 (en) | 2014-09-18 | 2020-11-03 | Snap Inc. | Geolocation-based pictographs |
US11741136B2 (en) | 2014-09-18 | 2023-08-29 | Snap Inc. | Geolocation-based pictographs |
US11281701B2 (en) | 2014-09-18 | 2022-03-22 | Snap Inc. | Geolocation-based pictographs |
US11216869B2 (en) | 2014-09-23 | 2022-01-04 | Snap Inc. | User interface to augment an image using geolocation |
US11855947B1 (en) | 2014-10-02 | 2023-12-26 | Snap Inc. | Gallery of ephemeral messages |
US10284508B1 (en) | 2014-10-02 | 2019-05-07 | Snap Inc. | Ephemeral gallery of ephemeral messages with opt-in permanence |
US10958608B1 (en) | 2014-10-02 | 2021-03-23 | Snap Inc. | Ephemeral gallery of visual media messages |
US9537811B2 (en) | 2014-10-02 | 2017-01-03 | Snap Inc. | Ephemeral gallery of ephemeral messages |
US11522822B1 (en) | 2014-10-02 | 2022-12-06 | Snap Inc. | Ephemeral gallery elimination based on gallery and message timers |
US20170374003A1 (en) | 2014-10-02 | 2017-12-28 | Snapchat, Inc. | Ephemeral gallery of ephemeral messages |
US10708210B1 (en) | 2014-10-02 | 2020-07-07 | Snap Inc. | Multi-user ephemeral message gallery |
US11012398B1 (en) | 2014-10-02 | 2021-05-18 | Snap Inc. | Ephemeral message gallery user interface with screenshot messages |
US11411908B1 (en) | 2014-10-02 | 2022-08-09 | Snap Inc. | Ephemeral message gallery user interface with online viewing history indicia |
US10476830B2 (en) | 2014-10-02 | 2019-11-12 | Snap Inc. | Ephemeral gallery of ephemeral messages |
US10944710B1 (en) | 2014-10-02 | 2021-03-09 | Snap Inc. | Ephemeral gallery user interface with remaining gallery time indication |
US11038829B1 (en) | 2014-10-02 | 2021-06-15 | Snap Inc. | Ephemeral gallery of ephemeral messages with opt-in permanence |
US10088921B2 (en) * | 2014-10-10 | 2018-10-02 | Muzik Inc. | Devices for sharing user interactions |
US20160231834A1 (en) * | 2014-10-10 | 2016-08-11 | Muzik LLC | Devices for sharing user interactions |
US10824251B2 (en) | 2014-10-10 | 2020-11-03 | Muzik Inc. | Devices and methods for sharing user interaction |
US11677878B2 (en) * | 2014-10-27 | 2023-06-13 | Rideshark Corporation | Methods and systems for notifications in communications networks |
US20200374403A1 (en) * | 2014-10-27 | 2020-11-26 | Rideshark Corporation | Methods and systems for notifications in communications networks |
US9965654B2 (en) | 2014-10-29 | 2018-05-08 | Square, Inc. | Secure display element |
US20160371498A1 (en) * | 2014-10-29 | 2016-12-22 | Square, Inc. | Secure Display Element |
WO2016069782A1 (en) * | 2014-10-29 | 2016-05-06 | Square, Inc. | Secure display element |
US9858432B2 (en) * | 2014-10-29 | 2018-01-02 | Square, Inc. | Secure display element |
US9483653B2 (en) | 2014-10-29 | 2016-11-01 | Square, Inc. | Secure display element |
US9430635B2 (en) | 2014-10-29 | 2016-08-30 | Square, Inc. | Secure display element |
US9843720B1 (en) | 2014-11-12 | 2017-12-12 | Snap Inc. | User interface for accessing media at a geographic location |
US10616476B1 (en) | 2014-11-12 | 2020-04-07 | Snap Inc. | User interface for accessing media at a geographic location |
US11190679B2 (en) | 2014-11-12 | 2021-11-30 | Snap Inc. | Accessing media at a geographic location |
US10673622B2 (en) | 2014-11-14 | 2020-06-02 | Square, Inc. | Cryptographic shader in display hardware |
US9654288B1 (en) | 2014-12-11 | 2017-05-16 | Wickr Inc. | Securing group communications |
US10514876B2 (en) | 2014-12-19 | 2019-12-24 | Snap Inc. | Gallery of messages from individuals with a shared interest |
US9854219B2 (en) | 2014-12-19 | 2017-12-26 | Snap Inc. | Gallery of videos set to an audio time line |
US11372608B2 (en) | 2014-12-19 | 2022-06-28 | Snap Inc. | Gallery of messages from individuals with a shared interest |
US11783862B2 (en) | 2014-12-19 | 2023-10-10 | Snap Inc. | Routing messages by message parameter |
US11250887B2 (en) | 2014-12-19 | 2022-02-15 | Snap Inc. | Routing messages by message parameter |
US9385983B1 (en) | 2014-12-19 | 2016-07-05 | Snapchat, Inc. | Gallery of messages from individuals with a shared interest |
US10311916B2 (en) | 2014-12-19 | 2019-06-04 | Snap Inc. | Gallery of videos set to an audio time line |
US10811053B2 (en) | 2014-12-19 | 2020-10-20 | Snap Inc. | Routing messages by message parameter |
US11803345B2 (en) | 2014-12-19 | 2023-10-31 | Snap Inc. | Gallery of messages from individuals with a shared interest |
US10580458B2 (en) | 2014-12-19 | 2020-03-03 | Snap Inc. | Gallery of videos set to an audio time line |
US10142274B2 (en) * | 2014-12-31 | 2018-11-27 | Jason M. Penilla | Message communication systems and applications with message lifetime settings for automatic message deletion |
US10652191B2 (en) | 2014-12-31 | 2020-05-12 | C. Douglass Thomas | Data transmission management for computer based inter-user communication |
US10708211B2 (en) | 2014-12-31 | 2020-07-07 | Jason M. Penilla | Message communication systems and applications with message lifetime settings for automatic message deletion |
US11159468B2 (en) | 2014-12-31 | 2021-10-26 | Albert S. Penilla | Data transmission management for computer based inter-user communication |
US20160191442A1 (en) * | 2014-12-31 | 2016-06-30 | Jason M. Penilla | Message Communication Systems and Applications with Message Lifetime Settings for Automatic message Deletion |
US11303599B2 (en) | 2014-12-31 | 2022-04-12 | C. Douglass Thomas | Network-based messaging system with database management for computer based inter-user communication |
US10291566B2 (en) | 2014-12-31 | 2019-05-14 | Albert S. Penilla | Data transmission management for computer based inter-user communication |
US10157449B1 (en) | 2015-01-09 | 2018-12-18 | Snap Inc. | Geo-location-based image filters |
US10380720B1 (en) | 2015-01-09 | 2019-08-13 | Snap Inc. | Location-based image filters |
US11301960B2 (en) | 2015-01-09 | 2022-04-12 | Snap Inc. | Object recognition based image filters |
US11734342B2 (en) | 2015-01-09 | 2023-08-22 | Snap Inc. | Object recognition based image overlays |
US11388226B1 (en) | 2015-01-13 | 2022-07-12 | Snap Inc. | Guided personal identity based actions |
US10416845B1 (en) | 2015-01-19 | 2019-09-17 | Snap Inc. | Multichannel system |
US10133705B1 (en) | 2015-01-19 | 2018-11-20 | Snap Inc. | Multichannel system |
US11249617B1 (en) | 2015-01-19 | 2022-02-15 | Snap Inc. | Multichannel system |
US10123166B2 (en) | 2015-01-26 | 2018-11-06 | Snap Inc. | Content request by location |
US11910267B2 (en) | 2015-01-26 | 2024-02-20 | Snap Inc. | Content request by location |
US9801018B2 (en) | 2015-01-26 | 2017-10-24 | Snap Inc. | Content request by location |
US10123167B2 (en) | 2015-01-26 | 2018-11-06 | Snap Inc. | Content request by location |
US10932085B1 (en) | 2015-01-26 | 2021-02-23 | Snap Inc. | Content request by location |
US11528579B2 (en) | 2015-01-26 | 2022-12-13 | Snap Inc. | Content request by location |
US10536800B1 (en) | 2015-01-26 | 2020-01-14 | Snap Inc. | Content request by location |
US11451505B2 (en) | 2015-02-06 | 2022-09-20 | Snap Inc. | Storage and processing of ephemeral messages |
US10097497B1 (en) | 2015-02-06 | 2018-10-09 | Snap Inc. | Storage and processing of ephemeral messages |
US10715474B1 (en) | 2015-02-06 | 2020-07-14 | Snap Inc. | Storage and processing of ephemeral messages |
US20160241530A1 (en) * | 2015-02-12 | 2016-08-18 | Vonage Network Llc | Systems and methods for managing access to message content |
US10223397B1 (en) | 2015-03-13 | 2019-03-05 | Snap Inc. | Social graph based co-location of network users |
US10616239B2 (en) | 2015-03-18 | 2020-04-07 | Snap Inc. | Geo-fence authorization provisioning |
US11902287B2 (en) | 2015-03-18 | 2024-02-13 | Snap Inc. | Geo-fence authorization provisioning |
US10893055B2 (en) | 2015-03-18 | 2021-01-12 | Snap Inc. | Geo-fence authorization provisioning |
US10948717B1 (en) | 2015-03-23 | 2021-03-16 | Snap Inc. | Reducing boot time and power consumption in wearable display systems |
US11320651B2 (en) | 2015-03-23 | 2022-05-03 | Snap Inc. | Reducing boot time and power consumption in displaying data content |
US11662576B2 (en) | 2015-03-23 | 2023-05-30 | Snap Inc. | Reducing boot time and power consumption in displaying data content |
US10135949B1 (en) | 2015-05-05 | 2018-11-20 | Snap Inc. | Systems and methods for story and sub-story navigation |
US11496544B2 (en) | 2015-05-05 | 2022-11-08 | Snap Inc. | Story and sub-story navigation |
US10911575B1 (en) | 2015-05-05 | 2021-02-02 | Snap Inc. | Systems and methods for story and sub-story navigation |
US10592574B2 (en) | 2015-05-05 | 2020-03-17 | Snap Inc. | Systems and methods for automated local story generation and curation |
US11449539B2 (en) | 2015-05-05 | 2022-09-20 | Snap Inc. | Automated local story generation and curation |
US11392633B2 (en) | 2015-05-05 | 2022-07-19 | Snap Inc. | Systems and methods for automated local story generation and curation |
US11088987B2 (en) | 2015-05-06 | 2021-08-10 | Snap Inc. | Ephemeral group chat |
US11132066B1 (en) | 2015-06-16 | 2021-09-28 | Snap Inc. | Radial gesture navigation |
US10498681B1 (en) | 2015-06-16 | 2019-12-03 | Snap Inc. | Storage management for ephemeral messages |
US11861068B2 (en) | 2015-06-16 | 2024-01-02 | Snap Inc. | Radial gesture navigation |
US10200327B1 (en) | 2015-06-16 | 2019-02-05 | Snap Inc. | Storage management for ephemeral messages |
US10993069B2 (en) | 2015-07-16 | 2021-04-27 | Snap Inc. | Dynamically adaptive media content delivery |
US20170031591A1 (en) * | 2015-07-31 | 2017-02-02 | Samsung Electronics Co., Ltd. | Screen controlling method and electronic device for supporting the same |
US10817898B2 (en) | 2015-08-13 | 2020-10-27 | Placed, Llc | Determining exposures to content presented by physical objects |
US11677702B2 (en) | 2015-08-24 | 2023-06-13 | Snap Inc. | Automatically selecting an ephemeral message availability |
US11652768B2 (en) | 2015-08-24 | 2023-05-16 | Snap Inc. | Systems, devices, and methods for determining a non-ephemeral message status in a communication system |
US11233763B1 (en) | 2015-08-24 | 2022-01-25 | Snap Inc. | Automatically selecting an ephemeral message availability |
US10616162B1 (en) * | 2015-08-24 | 2020-04-07 | Snap Inc. | Systems devices and methods for automatically selecting an ephemeral message availability |
US11121997B1 (en) | 2015-08-24 | 2021-09-14 | Snap Inc. | Systems, devices, and methods for determining a non-ephemeral message status in a communication system |
US10956793B1 (en) | 2015-09-15 | 2021-03-23 | Snap Inc. | Content tagging |
US10216945B2 (en) * | 2015-09-15 | 2019-02-26 | Clipo, Inc. | Digital touch screen device and method of using the same |
US11822600B2 (en) | 2015-09-15 | 2023-11-21 | Snap Inc. | Content tagging |
US11630974B2 (en) | 2015-09-15 | 2023-04-18 | Snap Inc. | Prioritized device actions triggered by device scan data |
US20170075561A1 (en) * | 2015-09-15 | 2017-03-16 | Clipo, Inc. | Digital touch screen device and method of using the same |
US10733802B2 (en) | 2015-10-30 | 2020-08-04 | Snap Inc. | Image based tracking in augmented reality systems |
US11315331B2 (en) | 2015-10-30 | 2022-04-26 | Snap Inc. | Image based tracking in augmented reality systems |
US10366543B1 (en) | 2015-10-30 | 2019-07-30 | Snap Inc. | Image based tracking in augmented reality systems |
US11769307B2 (en) | 2015-10-30 | 2023-09-26 | Snap Inc. | Image based tracking in augmented reality systems |
US11119628B1 (en) | 2015-11-25 | 2021-09-14 | Snap Inc. | Dynamic graphical user interface modification and monitoring |
US11573684B2 (en) | 2015-11-25 | 2023-02-07 | Snap Inc. | Dynamic graphical user interface modification and monitoring |
US10474321B2 (en) | 2015-11-30 | 2019-11-12 | Snap Inc. | Network resource location linking and visual content sharing |
US10997783B2 (en) | 2015-11-30 | 2021-05-04 | Snap Inc. | Image and point cloud based tracking and in augmented reality systems |
US11380051B2 (en) | 2015-11-30 | 2022-07-05 | Snap Inc. | Image and point cloud based tracking and in augmented reality systems |
US11599241B2 (en) | 2015-11-30 | 2023-03-07 | Snap Inc. | Network resource location linking and visual content sharing |
US10997758B1 (en) | 2015-12-18 | 2021-05-04 | Snap Inc. | Media overlay publication system |
US11830117B2 (en) | 2015-12-18 | 2023-11-28 | Snap Inc | Media overlay publication system |
US9590956B1 (en) | 2015-12-18 | 2017-03-07 | Wickr Inc. | Decentralized authoritative messaging |
US9584493B1 (en) | 2015-12-18 | 2017-02-28 | Wickr Inc. | Decentralized authoritative messaging |
US11468615B2 (en) | 2015-12-18 | 2022-10-11 | Snap Inc. | Media overlay publication system |
US10142300B1 (en) | 2015-12-18 | 2018-11-27 | Wickr Inc. | Decentralized authoritative messaging |
US10354425B2 (en) | 2015-12-18 | 2019-07-16 | Snap Inc. | Method and system for providing context relevant media augmentation |
US9673973B1 (en) | 2015-12-18 | 2017-06-06 | Wickr Inc. | Decentralized authoritative messaging |
US10129187B1 (en) | 2015-12-18 | 2018-11-13 | Wickr Inc. | Decentralized authoritative messaging |
US20190005253A1 (en) * | 2015-12-23 | 2019-01-03 | Orange | Method for sharing a digital image between a first user terminal and at least one second user terminal over a communications network |
US11055422B2 (en) * | 2015-12-23 | 2021-07-06 | Orange | Method for sharing a digital image between a first user terminal and at least one second user terminal over a communications network |
US10862843B2 (en) * | 2015-12-31 | 2020-12-08 | Verizon Media Inc. | Computerized system and method for modifying a message to apply security features to the message's content |
US20190081919A1 (en) * | 2015-12-31 | 2019-03-14 | Oath Inc. | Computerized system and method for modifying a message to apply security features to the message's content |
US20170195274A1 (en) * | 2015-12-31 | 2017-07-06 | Yahoo! Inc. | Computerized system and method for modifying a message to apply security features to the message's content |
US10129197B2 (en) * | 2015-12-31 | 2018-11-13 | Oath Inc. | Computerized system and method for modifying a message to apply security features to the message's content |
US10291607B1 (en) | 2016-02-02 | 2019-05-14 | Wickr Inc. | Providing real-time events to applications |
US11023514B2 (en) | 2016-02-26 | 2021-06-01 | Snap Inc. | Methods and systems for generation, curation, and presentation of media collections |
US11611846B2 (en) | 2016-02-26 | 2023-03-21 | Snap Inc. | Generation, curation, and presentation of media collections |
US10834525B2 (en) | 2016-02-26 | 2020-11-10 | Snap Inc. | Generation, curation, and presentation of media collections |
US11889381B2 (en) | 2016-02-26 | 2024-01-30 | Snap Inc. | Generation, curation, and presentation of media collections |
US10679389B2 (en) | 2016-02-26 | 2020-06-09 | Snap Inc. | Methods and systems for generation, curation, and presentation of media collections |
US11197123B2 (en) | 2016-02-26 | 2021-12-07 | Snap Inc. | Generation, curation, and presentation of media collections |
CN109074465A (en) * | 2016-03-24 | 2018-12-21 | 大众汽车有限公司 | Method for managing the vehicle data collected |
US11222128B2 (en) | 2016-03-24 | 2022-01-11 | Volkswagen Aktiengesellschaft | Method for managing collected transportation vehicle data |
US11063898B1 (en) | 2016-03-28 | 2021-07-13 | Snap Inc. | Systems and methods for chat with audio and video elements |
US11729252B2 (en) | 2016-03-29 | 2023-08-15 | Snap Inc. | Content collection navigation and autoforwarding |
US10193850B2 (en) * | 2016-03-30 | 2019-01-29 | Notion Ai, Inc. | Discovering questions, directives, and requests from, and prioritizing replies to, a preferred message sender method and apparatus |
US11631276B2 (en) | 2016-03-31 | 2023-04-18 | Snap Inc. | Automated avatar generation |
US11900418B2 (en) | 2016-04-04 | 2024-02-13 | Snap Inc. | Mutable geo-fencing system |
US11627194B2 (en) | 2016-04-06 | 2023-04-11 | Snap Inc. | Messaging achievement pictograph display system |
US10686899B2 (en) | 2016-04-06 | 2020-06-16 | Snap Inc. | Messaging achievement pictograph display system |
US11362811B2 (en) | 2016-04-14 | 2022-06-14 | Amazon Technologies, Inc. | Secure telecommunications |
US9596079B1 (en) | 2016-04-14 | 2017-03-14 | Wickr Inc. | Secure telecommunications |
US9591479B1 (en) | 2016-04-14 | 2017-03-07 | Wickr Inc. | Secure telecommunications |
US9590958B1 (en) | 2016-04-14 | 2017-03-07 | Wickr Inc. | Secure file transfer |
US11405370B1 (en) | 2016-04-14 | 2022-08-02 | Amazon Technologies, Inc. | Secure file transfer |
US9602477B1 (en) | 2016-04-14 | 2017-03-21 | Wickr Inc. | Secure file transfer |
US10244186B1 (en) | 2016-05-06 | 2019-03-26 | Snap, Inc. | Dynamic activity-based image generation for online social networks |
US10547797B1 (en) | 2016-05-06 | 2020-01-28 | Snap Inc. | Dynamic activity-based image generation for online social networks |
US11924576B2 (en) | 2016-05-06 | 2024-03-05 | Snap Inc. | Dynamic activity-based image generation |
US11616917B1 (en) | 2016-05-06 | 2023-03-28 | Snap Inc. | Dynamic activity-based image generation for online social networks |
US11169699B2 (en) | 2016-05-31 | 2021-11-09 | Snap Inc. | Application control using a gesture based trigger |
US11662900B2 (en) | 2016-05-31 | 2023-05-30 | Snap Inc. | Application control using a gesture based trigger |
US10884616B2 (en) | 2016-05-31 | 2021-01-05 | Snap Inc. | Application control using a gesture based trigger |
US11042955B2 (en) * | 2016-06-02 | 2021-06-22 | Nextlabs, Inc. | Manipulating display content of a graphical user interface |
US20170352172A1 (en) * | 2016-06-02 | 2017-12-07 | Nextlabs, Inc. | Manipulating Display Content of a Graphical User Interface |
US11785161B1 (en) | 2016-06-20 | 2023-10-10 | Pipbin, Inc. | System for user accessibility of tagged curated augmented reality content |
US11876941B1 (en) | 2016-06-20 | 2024-01-16 | Pipbin, Inc. | Clickable augmented reality content manager, system, and network |
US11201981B1 (en) | 2016-06-20 | 2021-12-14 | Pipbin, Inc. | System for notification of user accessibility of curated location-dependent content in an augmented estate |
US10638256B1 (en) | 2016-06-20 | 2020-04-28 | Pipbin, Inc. | System for distribution and display of mobile targeted augmented reality content |
US10805696B1 (en) | 2016-06-20 | 2020-10-13 | Pipbin, Inc. | System for recording and targeting tagged content of user interest |
US11044393B1 (en) | 2016-06-20 | 2021-06-22 | Pipbin, Inc. | System for curation and display of location-dependent augmented reality content in an augmented estate system |
US10992836B2 (en) | 2016-06-20 | 2021-04-27 | Pipbin, Inc. | Augmented property system of curated augmented reality media elements |
US10839219B1 (en) | 2016-06-20 | 2020-11-17 | Pipbin, Inc. | System for curation, distribution and display of location-dependent augmented reality content |
US11445326B2 (en) | 2016-06-28 | 2022-09-13 | Snap Inc. | Track engagement of media items |
US10430838B1 (en) | 2016-06-28 | 2019-10-01 | Snap Inc. | Methods and systems for generation, curation, and presentation of media collections with automated advertising |
US10506371B2 (en) | 2016-06-28 | 2019-12-10 | Snap Inc. | System to track engagement of media items |
US10327100B1 (en) | 2016-06-28 | 2019-06-18 | Snap Inc. | System to track engagement of media items |
US11507977B2 (en) | 2016-06-28 | 2022-11-22 | Snap Inc. | Methods and systems for presentation of media collections with automated advertising |
US10785597B2 (en) | 2016-06-28 | 2020-09-22 | Snap Inc. | System to track engagement of media items |
US10885559B1 (en) | 2016-06-28 | 2021-01-05 | Snap Inc. | Generation, curation, and presentation of media collections with automated advertising |
US10219110B2 (en) | 2016-06-28 | 2019-02-26 | Snap Inc. | System to track engagement of media items |
US10735892B2 (en) | 2016-06-28 | 2020-08-04 | Snap Inc. | System to track engagement of media items |
US10165402B1 (en) | 2016-06-28 | 2018-12-25 | Snap Inc. | System to track engagement of media items |
US11640625B2 (en) | 2016-06-28 | 2023-05-02 | Snap Inc. | Generation, curation, and presentation of media collections with automated advertising |
US10182047B1 (en) | 2016-06-30 | 2019-01-15 | Snap Inc. | Pictograph password security system |
US10387514B1 (en) | 2016-06-30 | 2019-08-20 | Snap Inc. | Automated content curation and communication |
US11895068B2 (en) | 2016-06-30 | 2024-02-06 | Snap Inc. | Automated content curation and communication |
US11080351B1 (en) | 2016-06-30 | 2021-08-03 | Snap Inc. | Automated content curation and communication |
US11334768B1 (en) | 2016-07-05 | 2022-05-17 | Snap Inc. | Ephemeral content management |
US20190356636A1 (en) * | 2016-07-08 | 2019-11-21 | Xattic, Inc. | Secure Message Inoculation |
US10348690B2 (en) * | 2016-07-08 | 2019-07-09 | Xattic, Inc. | Secure message inoculation |
US20180013725A1 (en) * | 2016-07-08 | 2018-01-11 | Xattic, Inc. | Secure Message Inoculation |
US10587549B2 (en) | 2016-07-13 | 2020-03-10 | At&T Intellectual Property I, L.P. | Apparatus and method for managing sharing of content |
US11019013B2 (en) | 2016-07-13 | 2021-05-25 | At&T Intellectual Property I, L.P. | Apparatus and method for managing sharing of content |
US9979684B2 (en) | 2016-07-13 | 2018-05-22 | At&T Intellectual Property I, L.P. | Apparatus and method for managing sharing of content |
US10348662B2 (en) | 2016-07-19 | 2019-07-09 | Snap Inc. | Generating customized electronic messaging graphics |
US11509615B2 (en) | 2016-07-19 | 2022-11-22 | Snap Inc. | Generating customized electronic messaging graphics |
US11816853B2 (en) | 2016-08-30 | 2023-11-14 | Snap Inc. | Systems and methods for simultaneous localization and mapping |
US10552968B1 (en) | 2016-09-23 | 2020-02-04 | Snap Inc. | Dense feature scale detection for image matching |
US11861854B2 (en) | 2016-09-23 | 2024-01-02 | Snap Inc. | Dense feature scale detection for image matching |
US11367205B1 (en) | 2016-09-23 | 2022-06-21 | Snap Inc. | Dense feature scale detection for image matching |
US10609036B1 (en) | 2016-10-10 | 2020-03-31 | Snap Inc. | Social media post subscribe requests for buffer user accounts |
US11438341B1 (en) | 2016-10-10 | 2022-09-06 | Snap Inc. | Social media post subscribe requests for buffer user accounts |
US11843456B2 (en) | 2016-10-24 | 2023-12-12 | Snap Inc. | Generating and displaying customized avatars in media overlays |
US11876762B1 (en) | 2016-10-24 | 2024-01-16 | Snap Inc. | Generating and displaying customized avatars in media overlays |
US11140336B2 (en) | 2016-11-01 | 2021-10-05 | Snap Inc. | Fast video capture and sensor adjustment |
US11812160B2 (en) | 2016-11-01 | 2023-11-07 | Snap Inc. | Fast video capture and sensor adjustment |
US10432874B2 (en) | 2016-11-01 | 2019-10-01 | Snap Inc. | Systems and methods for fast video capture and sensor adjustment |
US10469764B2 (en) | 2016-11-01 | 2019-11-05 | Snap Inc. | Systems and methods for determining settings for fast video capture and sensor adjustment |
US11233952B2 (en) | 2016-11-07 | 2022-01-25 | Snap Inc. | Selective identification and order of image modifiers |
US10623666B2 (en) | 2016-11-07 | 2020-04-14 | Snap Inc. | Selective identification and order of image modifiers |
US11750767B2 (en) | 2016-11-07 | 2023-09-05 | Snap Inc. | Selective identification and order of image modifiers |
US10754525B1 (en) | 2016-12-09 | 2020-08-25 | Snap Inc. | Customized media overlays |
US10203855B2 (en) | 2016-12-09 | 2019-02-12 | Snap Inc. | Customized user-controlled media overlays |
US11532110B2 (en) | 2016-12-09 | 2022-12-20 | Snap, Inc. | Fast image style transfers |
US11397517B2 (en) | 2016-12-09 | 2022-07-26 | Snap Inc. | Customized media overlays |
US10740939B1 (en) | 2016-12-09 | 2020-08-11 | Snap Inc. | Fast image style transfers |
US11616745B2 (en) | 2017-01-09 | 2023-03-28 | Snap Inc. | Contextual generation and selection of customized media content |
US11870743B1 (en) | 2017-01-23 | 2024-01-09 | Snap Inc. | Customized digital avatar accessories |
US10915911B2 (en) | 2017-02-03 | 2021-02-09 | Snap Inc. | System to determine a price-schedule to distribute media content |
US11861795B1 (en) | 2017-02-17 | 2024-01-02 | Snap Inc. | Augmented reality anamorphosis system |
US11720640B2 (en) | 2017-02-17 | 2023-08-08 | Snap Inc. | Searching social media content |
US11250075B1 (en) | 2017-02-17 | 2022-02-15 | Snap Inc. | Searching social media content |
US10319149B1 (en) | 2017-02-17 | 2019-06-11 | Snap Inc. | Augmented reality anamorphosis system |
US10374993B2 (en) | 2017-02-20 | 2019-08-06 | Snap Inc. | Media item attachment system |
US11632344B2 (en) | 2017-02-20 | 2023-04-18 | Snap Inc. | Media item attachment system |
US11019001B1 (en) | 2017-02-20 | 2021-05-25 | Snap Inc. | Selective presentation of group messages |
US11748579B2 (en) | 2017-02-20 | 2023-09-05 | Snap Inc. | Augmented reality speech balloon system |
US11178086B2 (en) | 2017-02-20 | 2021-11-16 | Snap Inc. | Media item attachment system |
US10862835B2 (en) | 2017-02-20 | 2020-12-08 | Snap Inc. | Media item attachment system |
US11189299B1 (en) | 2017-02-20 | 2021-11-30 | Snap Inc. | Augmented reality speech balloon system |
US11545170B2 (en) | 2017-03-01 | 2023-01-03 | Snap Inc. | Acoustic neural network scene detection |
US11037372B2 (en) | 2017-03-06 | 2021-06-15 | Snap Inc. | Virtual vision system |
US11670057B2 (en) | 2017-03-06 | 2023-06-06 | Snap Inc. | Virtual vision system |
US11258749B2 (en) | 2017-03-09 | 2022-02-22 | Snap Inc. | Restricted group content collection |
US10887269B1 (en) | 2017-03-09 | 2021-01-05 | Snap Inc. | Restricted group content collection |
US10523625B1 (en) | 2017-03-09 | 2019-12-31 | Snap Inc. | Restricted group content collection |
US11349796B2 (en) | 2017-03-27 | 2022-05-31 | Snap Inc. | Generating a stitched data stream |
US11558678B2 (en) | 2017-03-27 | 2023-01-17 | Snap Inc. | Generating a stitched data stream |
US10582277B2 (en) | 2017-03-27 | 2020-03-03 | Snap Inc. | Generating a stitched data stream |
US10581782B2 (en) | 2017-03-27 | 2020-03-03 | Snap Inc. | Generating a stitched data stream |
US11297399B1 (en) | 2017-03-27 | 2022-04-05 | Snap Inc. | Generating a stitched data stream |
US11170393B1 (en) | 2017-04-11 | 2021-11-09 | Snap Inc. | System to calculate an engagement score of location based media content |
US11195018B1 (en) | 2017-04-20 | 2021-12-07 | Snap Inc. | Augmented reality typography personalization system |
US10387730B1 (en) | 2017-04-20 | 2019-08-20 | Snap Inc. | Augmented reality typography personalization system |
US10963529B1 (en) | 2017-04-27 | 2021-03-30 | Snap Inc. | Location-based search mechanism in a graphical user interface |
US11392264B1 (en) | 2017-04-27 | 2022-07-19 | Snap Inc. | Map-based graphical user interface for multi-type social media galleries |
US11893647B2 (en) | 2017-04-27 | 2024-02-06 | Snap Inc. | Location-based virtual avatars |
US11108715B1 (en) | 2017-04-27 | 2021-08-31 | Snap Inc. | Processing media content based on original context |
US11418906B2 (en) | 2017-04-27 | 2022-08-16 | Snap Inc. | Selective location-based identity communication |
US11451956B1 (en) | 2017-04-27 | 2022-09-20 | Snap Inc. | Location privacy management on map-based social media platforms |
US11409407B2 (en) | 2017-04-27 | 2022-08-09 | Snap Inc. | Map-based graphical user interface indicating geospatial activity metrics |
US11782574B2 (en) | 2017-04-27 | 2023-10-10 | Snap Inc. | Map-based graphical user interface indicating geospatial activity metrics |
US11474663B2 (en) | 2017-04-27 | 2022-10-18 | Snap Inc. | Location-based search mechanism in a graphical user interface |
US11385763B2 (en) | 2017-04-27 | 2022-07-12 | Snap Inc. | Map-based graphical user interface indicating geospatial activity metrics |
US10952013B1 (en) | 2017-04-27 | 2021-03-16 | Snap Inc. | Selective location-based identity communication |
US11556221B2 (en) | 2017-04-27 | 2023-01-17 | Snap Inc. | Friend location sharing mechanism for social media platforms |
US11842411B2 (en) | 2017-04-27 | 2023-12-12 | Snap Inc. | Location-based virtual avatars |
US11232040B1 (en) | 2017-04-28 | 2022-01-25 | Snap Inc. | Precaching unlockable data elements |
US11783369B2 (en) | 2017-04-28 | 2023-10-10 | Snap Inc. | Interactive advertising with media collections |
US11288879B2 (en) | 2017-05-26 | 2022-03-29 | Snap Inc. | Neural network-based image stream modification |
US11830209B2 (en) | 2017-05-26 | 2023-11-28 | Snap Inc. | Neural network-based image stream modification |
US11675831B2 (en) | 2017-05-31 | 2023-06-13 | Snap Inc. | Geolocation based playlists |
US10788900B1 (en) | 2017-06-29 | 2020-09-29 | Snap Inc. | Pictorial symbol prediction |
US11620001B2 (en) | 2017-06-29 | 2023-04-04 | Snap Inc. | Pictorial symbol prediction |
US11863508B2 (en) | 2017-07-31 | 2024-01-02 | Snap Inc. | Progressive attachments system |
US11836200B2 (en) | 2017-07-31 | 2023-12-05 | Snap Inc. | Methods and systems for selecting user generated content |
US11216517B1 (en) | 2017-07-31 | 2022-01-04 | Snap Inc. | Methods and systems for selecting user generated content |
US11323398B1 (en) | 2017-07-31 | 2022-05-03 | Snap Inc. | Systems, devices, and methods for progressive attachments |
US11710275B2 (en) | 2017-08-30 | 2023-07-25 | Snap Inc. | Object modeling using light projection |
US11164376B1 (en) | 2017-08-30 | 2021-11-02 | Snap Inc. | Object modeling using light projection |
US11803992B2 (en) | 2017-08-31 | 2023-10-31 | Snap Inc. | Device location based on machine learning classifications |
US11051129B2 (en) | 2017-08-31 | 2021-06-29 | Snap Inc. | Device location based on machine learning classifications |
US10264422B2 (en) | 2017-08-31 | 2019-04-16 | Snap Inc. | Device location based on machine learning classifications |
US11475254B1 (en) | 2017-09-08 | 2022-10-18 | Snap Inc. | Multimodal entity identification |
US11335067B2 (en) | 2017-09-15 | 2022-05-17 | Snap Inc. | Augmented reality system |
US10929673B2 (en) | 2017-09-15 | 2021-02-23 | Snap Inc. | Real-time tracking-compensated image effects |
US10474900B2 (en) | 2017-09-15 | 2019-11-12 | Snap Inc. | Real-time tracking-compensated image effects |
US10740974B1 (en) | 2017-09-15 | 2020-08-11 | Snap Inc. | Augmented reality system |
US11676381B2 (en) | 2017-09-15 | 2023-06-13 | Snap Inc. | Real-time tracking-compensated image effects |
US11721080B2 (en) | 2017-09-15 | 2023-08-08 | Snap Inc. | Augmented reality system |
US11683362B2 (en) | 2017-09-29 | 2023-06-20 | Snap Inc. | Realistic neural network based image style transfer |
US10499191B1 (en) | 2017-10-09 | 2019-12-03 | Snap Inc. | Context sensitive presentation of content |
US11617056B2 (en) | 2017-10-09 | 2023-03-28 | Snap Inc. | Context sensitive presentation of content |
US11006242B1 (en) | 2017-10-09 | 2021-05-11 | Snap Inc. | Context sensitive presentation of content |
US11763130B2 (en) | 2017-10-09 | 2023-09-19 | Snap Inc. | Compact neural networks using condensed filters |
US11670025B2 (en) | 2017-10-30 | 2023-06-06 | Snap Inc. | Mobile-based cartographic control of display content |
US11030787B2 (en) | 2017-10-30 | 2021-06-08 | Snap Inc. | Mobile-based cartographic control of display content |
US11775134B2 (en) | 2017-11-13 | 2023-10-03 | Snap Inc. | Interface to display animated icon |
US10599289B1 (en) | 2017-11-13 | 2020-03-24 | Snap Inc. | Interface to display animated icon |
US10942624B1 (en) | 2017-11-13 | 2021-03-09 | Snap Inc. | Interface to display animated icon |
US11847528B2 (en) | 2017-11-15 | 2023-12-19 | Snap Inc. | Modulated image segmentation |
US10885564B1 (en) | 2017-11-28 | 2021-01-05 | Snap Inc. | Methods, system, and non-transitory computer readable storage medium for dynamically configurable social media platform |
US11265273B1 (en) | 2017-12-01 | 2022-03-01 | Snap, Inc. | Dynamic media overlay with smart widget |
US11558327B2 (en) | 2017-12-01 | 2023-01-17 | Snap Inc. | Dynamic media overlay with smart widget |
US11943185B2 (en) | 2017-12-01 | 2024-03-26 | Snap Inc. | Dynamic media overlay with smart widget |
US10614855B2 (en) | 2017-12-15 | 2020-04-07 | Snap Inc. | Spherical video editing |
US10217488B1 (en) | 2017-12-15 | 2019-02-26 | Snap Inc. | Spherical video editing |
US11037601B2 (en) | 2017-12-15 | 2021-06-15 | Snap Inc. | Spherical video editing |
US11380362B2 (en) | 2017-12-15 | 2022-07-05 | Snap Inc. | Spherical video editing |
US11687720B2 (en) | 2017-12-22 | 2023-06-27 | Snap Inc. | Named entity recognition visual context and caption data |
US11017173B1 (en) | 2017-12-22 | 2021-05-25 | Snap Inc. | Named entity recognition visual context and caption data |
US11716301B2 (en) | 2018-01-02 | 2023-08-01 | Snap Inc. | Generating interactive messages with asynchronous media content |
US10678818B2 (en) | 2018-01-03 | 2020-06-09 | Snap Inc. | Tag distribution visualization system |
US11487794B2 (en) | 2018-01-03 | 2022-11-01 | Snap Inc. | Tag distribution visualization system |
US11087432B2 (en) | 2018-02-12 | 2021-08-10 | Snap Inc. | Multistage neural network processing using a graphics processor |
US10482565B1 (en) | 2018-02-12 | 2019-11-19 | Snap Inc. | Multistage neural network processing using a graphics processor |
US11841896B2 (en) | 2018-02-13 | 2023-12-12 | Snap Inc. | Icon based tagging |
US11507614B1 (en) | 2018-02-13 | 2022-11-22 | Snap Inc. | Icon based tagging |
US11120601B2 (en) | 2018-02-28 | 2021-09-14 | Snap Inc. | Animated expressive icon |
US10726603B1 (en) | 2018-02-28 | 2020-07-28 | Snap Inc. | Animated expressive icon |
US10885136B1 (en) | 2018-02-28 | 2021-01-05 | Snap Inc. | Audience filtering system |
US10979752B1 (en) | 2018-02-28 | 2021-04-13 | Snap Inc. | Generating media content items based on location information |
US11523159B2 (en) | 2018-02-28 | 2022-12-06 | Snap Inc. | Generating media content items based on location information |
US11688119B2 (en) | 2018-02-28 | 2023-06-27 | Snap Inc. | Animated expressive icon |
US11880923B2 (en) | 2018-02-28 | 2024-01-23 | Snap Inc. | Animated expressive icon |
US11468618B2 (en) | 2018-02-28 | 2022-10-11 | Snap Inc. | Animated expressive icon |
US10327096B1 (en) | 2018-03-06 | 2019-06-18 | Snap Inc. | Geo-fence selection system |
US11722837B2 (en) | 2018-03-06 | 2023-08-08 | Snap Inc. | Geo-fence selection system |
US11044574B2 (en) | 2018-03-06 | 2021-06-22 | Snap Inc. | Geo-fence selection system |
US10524088B2 (en) | 2018-03-06 | 2019-12-31 | Snap Inc. | Geo-fence selection system |
US11570572B2 (en) | 2018-03-06 | 2023-01-31 | Snap Inc. | Geo-fence selection system |
US10977385B2 (en) | 2018-03-07 | 2021-04-13 | International Business Machines Corporation | Configurable and non-invasive protection of private information for conversational agents |
US10933311B2 (en) | 2018-03-14 | 2021-03-02 | Snap Inc. | Generating collectible items based on location information |
US11491393B2 (en) | 2018-03-14 | 2022-11-08 | Snap Inc. | Generating collectible items based on location information |
US11163941B1 (en) | 2018-03-30 | 2021-11-02 | Snap Inc. | Annotating a collection of media content items |
US11310176B2 (en) | 2018-04-13 | 2022-04-19 | Snap Inc. | Content suggestion system |
US11683657B2 (en) | 2018-04-18 | 2023-06-20 | Snap Inc. | Visitation tracking system |
US11875439B2 (en) | 2018-04-18 | 2024-01-16 | Snap Inc. | Augmented expression system |
US10681491B1 (en) | 2018-04-18 | 2020-06-09 | Snap Inc. | Visitation tracking system |
US11297463B2 (en) | 2018-04-18 | 2022-04-05 | Snap Inc. | Visitation tracking system |
US10219111B1 (en) | 2018-04-18 | 2019-02-26 | Snap Inc. | Visitation tracking system |
US10924886B2 (en) | 2018-04-18 | 2021-02-16 | Snap Inc. | Visitation tracking system |
US10779114B2 (en) | 2018-04-18 | 2020-09-15 | Snap Inc. | Visitation tracking system |
US10448199B1 (en) | 2018-04-18 | 2019-10-15 | Snap Inc. | Visitation tracking system |
US10719968B2 (en) | 2018-04-18 | 2020-07-21 | Snap Inc. | Augmented expression system |
US11487501B2 (en) | 2018-05-16 | 2022-11-01 | Snap Inc. | Device control using audio data |
US11860888B2 (en) | 2018-05-22 | 2024-01-02 | Snap Inc. | Event detection system |
US11367234B2 (en) | 2018-07-24 | 2022-06-21 | Snap Inc. | Conditional modification of augmented reality object |
US11670026B2 (en) | 2018-07-24 | 2023-06-06 | Snap Inc. | Conditional modification of augmented reality object |
US10943381B2 (en) | 2018-07-24 | 2021-03-09 | Snap Inc. | Conditional modification of augmented reality object |
US10789749B2 (en) | 2018-07-24 | 2020-09-29 | Snap Inc. | Conditional modification of augmented reality object |
US10679393B2 (en) | 2018-07-24 | 2020-06-09 | Snap Inc. | Conditional modification of augmented reality object |
US20210158573A1 (en) * | 2018-08-06 | 2021-05-27 | Naver Webtoon Ltd. | Method, apparatus, and program for detecting mark by using image matching |
US11450050B2 (en) | 2018-08-31 | 2022-09-20 | Snap Inc. | Augmented reality anthropomorphization system |
US10997760B2 (en) | 2018-08-31 | 2021-05-04 | Snap Inc. | Augmented reality anthropomorphization system |
US11676319B2 (en) | 2018-08-31 | 2023-06-13 | Snap Inc. | Augmented reality anthropomorphtzation system |
US11704005B2 (en) | 2018-09-28 | 2023-07-18 | Snap Inc. | Collaborative achievement interface |
US11455082B2 (en) | 2018-09-28 | 2022-09-27 | Snap Inc. | Collaborative achievement interface |
US11799811B2 (en) | 2018-10-31 | 2023-10-24 | Snap Inc. | Messaging and gaming applications communication platform |
US11558709B2 (en) | 2018-11-30 | 2023-01-17 | Snap Inc. | Position service to determine relative position to map features |
US11698722B2 (en) | 2018-11-30 | 2023-07-11 | Snap Inc. | Generating customized avatars based on location information |
US11812335B2 (en) | 2018-11-30 | 2023-11-07 | Snap Inc. | Position service to determine relative position to map features |
US11199957B1 (en) | 2018-11-30 | 2021-12-14 | Snap Inc. | Generating customized avatars based on location information |
US11877211B2 (en) | 2019-01-14 | 2024-01-16 | Snap Inc. | Destination sharing in location sharing system |
US11751015B2 (en) | 2019-01-16 | 2023-09-05 | Snap Inc. | Location-based context information sharing in a messaging system |
US20210224365A1 (en) * | 2019-01-29 | 2021-07-22 | Suanhua Intelligent Technology Co., Ltd. | Systems and methods for tracking events of a client device |
US11294936B1 (en) | 2019-01-30 | 2022-04-05 | Snap Inc. | Adaptive spatial density based clustering |
US11693887B2 (en) | 2019-01-30 | 2023-07-04 | Snap Inc. | Adaptive spatial density based clustering |
US11601391B2 (en) | 2019-01-31 | 2023-03-07 | Snap Inc. | Automated image processing and insight presentation |
US11297027B1 (en) | 2019-01-31 | 2022-04-05 | Snap Inc. | Automated image processing and insight presentation |
US11809624B2 (en) | 2019-02-13 | 2023-11-07 | Snap Inc. | Sleep detection in a location sharing system |
US11616829B2 (en) * | 2019-02-22 | 2023-03-28 | Delta Pds Co., Ltd. | Apparatus for providing folder chat room and apparatus for receiving the same |
US20200274916A1 (en) * | 2019-02-22 | 2020-08-27 | Delta Pds Co., Ltd. | Apparatus for providing folder chat room and apparatus for receiving the same |
US11500525B2 (en) | 2019-02-25 | 2022-11-15 | Snap Inc. | Custom media overlay system |
US11574431B2 (en) | 2019-02-26 | 2023-02-07 | Snap Inc. | Avatar based on weather |
US11301117B2 (en) | 2019-03-08 | 2022-04-12 | Snap Inc. | Contextual information in chat |
US11868414B1 (en) | 2019-03-14 | 2024-01-09 | Snap Inc. | Graph-based prediction for contact suggestion in a location sharing system |
US11852554B1 (en) | 2019-03-21 | 2023-12-26 | Snap Inc. | Barometer calibration in a location sharing system |
US11740760B2 (en) | 2019-03-28 | 2023-08-29 | Snap Inc. | Generating personalized map interface with enhanced icons |
US11249614B2 (en) | 2019-03-28 | 2022-02-15 | Snap Inc. | Generating personalized map interface with enhanced icons |
US11361493B2 (en) | 2019-04-01 | 2022-06-14 | Snap Inc. | Semantic texture mapping system |
US10439805B1 (en) * | 2019-04-12 | 2019-10-08 | DeepView Solutions | Platform for automated recording and storage of messaging service conversations |
US11606755B2 (en) | 2019-05-30 | 2023-03-14 | Snap Inc. | Wearable device location systems architecture |
US11785549B2 (en) | 2019-05-30 | 2023-10-10 | Snap Inc. | Wearable device location systems |
US11206615B2 (en) | 2019-05-30 | 2021-12-21 | Snap Inc. | Wearable device location systems |
US11601783B2 (en) | 2019-06-07 | 2023-03-07 | Snap Inc. | Detection of a physical collision between two client devices in a location sharing system |
US11917495B2 (en) | 2019-06-07 | 2024-02-27 | Snap Inc. | Detection of a physical collision between two client devices in a location sharing system |
US11722442B2 (en) | 2019-07-05 | 2023-08-08 | Snap Inc. | Event planning in a content sharing platform |
US11714535B2 (en) | 2019-07-11 | 2023-08-01 | Snap Inc. | Edge gesture interface with smart interactions |
US11812347B2 (en) | 2019-09-06 | 2023-11-07 | Snap Inc. | Non-textual communication and user states management |
US11821742B2 (en) | 2019-09-26 | 2023-11-21 | Snap Inc. | Travel based notifications |
US11218838B2 (en) | 2019-10-31 | 2022-01-04 | Snap Inc. | Focused map-based context information surfacing |
US11729343B2 (en) | 2019-12-30 | 2023-08-15 | Snap Inc. | Including video feed in message thread |
US11429618B2 (en) | 2019-12-30 | 2022-08-30 | Snap Inc. | Surfacing augmented reality objects |
US11128715B1 (en) | 2019-12-30 | 2021-09-21 | Snap Inc. | Physical friend proximity in chat |
US11943303B2 (en) | 2019-12-31 | 2024-03-26 | Snap Inc. | Augmented reality objects registry |
US11343323B2 (en) | 2019-12-31 | 2022-05-24 | Snap Inc. | Augmented reality objects registry |
US11893208B2 (en) | 2019-12-31 | 2024-02-06 | Snap Inc. | Combined map icon with action indicator |
US11316806B1 (en) | 2020-01-28 | 2022-04-26 | Snap Inc. | Bulk message deletion |
US11265281B1 (en) | 2020-01-28 | 2022-03-01 | Snap Inc. | Message deletion policy selection |
US11902224B2 (en) | 2020-01-28 | 2024-02-13 | Snap Inc. | Bulk message deletion |
US11621938B2 (en) | 2020-01-28 | 2023-04-04 | Snap Inc. | Message deletion policy selection |
US11895077B2 (en) | 2020-01-28 | 2024-02-06 | Snap Inc. | Message deletion policy selection |
US11228551B1 (en) | 2020-02-12 | 2022-01-18 | Snap Inc. | Multiple gateway message exchange |
US11888803B2 (en) | 2020-02-12 | 2024-01-30 | Snap Inc. | Multiple gateway message exchange |
US11516167B2 (en) | 2020-03-05 | 2022-11-29 | Snap Inc. | Storing data based on device location |
US11765117B2 (en) | 2020-03-05 | 2023-09-19 | Snap Inc. | Storing data based on device location |
US11619501B2 (en) | 2020-03-11 | 2023-04-04 | Snap Inc. | Avatar based on trip |
US11430091B2 (en) | 2020-03-27 | 2022-08-30 | Snap Inc. | Location mapping for large scale augmented-reality |
US11915400B2 (en) | 2020-03-27 | 2024-02-27 | Snap Inc. | Location mapping for large scale augmented-reality |
US11776256B2 (en) | 2020-03-27 | 2023-10-03 | Snap Inc. | Shared augmented reality system |
US11625873B2 (en) | 2020-03-30 | 2023-04-11 | Snap Inc. | Personalized media overlay recommendation |
US11464319B2 (en) * | 2020-03-31 | 2022-10-11 | Snap Inc. | Augmented reality beauty product tutorials |
US11700225B2 (en) | 2020-04-23 | 2023-07-11 | Snap Inc. | Event overlay invite messaging system |
CN111555961A (en) * | 2020-04-24 | 2020-08-18 | 北京达佳互联信息技术有限公司 | Message display method and device |
US11843574B2 (en) | 2020-05-21 | 2023-12-12 | Snap Inc. | Featured content collection interface |
US11857879B2 (en) | 2020-06-10 | 2024-01-02 | Snap Inc. | Visual search to launch application |
US11776264B2 (en) | 2020-06-10 | 2023-10-03 | Snap Inc. | Adding beauty products to augmented reality tutorials |
US11503432B2 (en) | 2020-06-15 | 2022-11-15 | Snap Inc. | Scalable real-time location sharing framework |
US11483267B2 (en) | 2020-06-15 | 2022-10-25 | Snap Inc. | Location sharing using different rate-limited links |
US11290851B2 (en) | 2020-06-15 | 2022-03-29 | Snap Inc. | Location sharing using offline and online objects |
US11314776B2 (en) | 2020-06-15 | 2022-04-26 | Snap Inc. | Location sharing using friend list versions |
US11676378B2 (en) | 2020-06-29 | 2023-06-13 | Snap Inc. | Providing travel-based augmented reality content with a captured image |
US11899905B2 (en) | 2020-06-30 | 2024-02-13 | Snap Inc. | Selectable items providing post-viewing context actions |
US11832015B2 (en) | 2020-08-13 | 2023-11-28 | Snap Inc. | User interface for pose driven virtual effects |
US11943192B2 (en) | 2020-08-31 | 2024-03-26 | Snap Inc. | Co-location connection service |
US11961116B2 (en) | 2020-10-26 | 2024-04-16 | Foursquare Labs, Inc. | Determining exposures to content presented by physical objects |
US11902902B2 (en) | 2021-03-29 | 2024-02-13 | Snap Inc. | Scheduling requests for location data |
US11601888B2 (en) | 2021-03-29 | 2023-03-07 | Snap Inc. | Determining location using multi-source geolocation data |
US11606756B2 (en) | 2021-03-29 | 2023-03-14 | Snap Inc. | Scheduling requests for location data |
US11645324B2 (en) | 2021-03-31 | 2023-05-09 | Snap Inc. | Location-based timeline media content system |
US11829834B2 (en) | 2021-10-29 | 2023-11-28 | Snap Inc. | Extended QR code |
US11956533B2 (en) | 2021-11-29 | 2024-04-09 | Snap Inc. | Accessing media at a geographic location |
US11962645B2 (en) | 2022-06-02 | 2024-04-16 | Snap Inc. | Guided personal identity based actions |
US11962598B2 (en) | 2022-08-10 | 2024-04-16 | Snap Inc. | Social media post subscribe requests for buffer user accounts |
US11954314B2 (en) | 2022-09-09 | 2024-04-09 | Snap Inc. | Custom media overlay system |
US11963105B2 (en) | 2023-02-10 | 2024-04-16 | Snap Inc. | Wearable device location systems architecture |
US11961196B2 (en) | 2023-03-17 | 2024-04-16 | Snap Inc. | Virtual vision system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20130194301A1 (en) | System and method for securely transmiting sensitive information | |
US20150007351A1 (en) | Mobile Messaging Enhanced with Concealable and Selectively Revealable Text, Image, and Video Messages | |
US10694074B2 (en) | Information processing method, first terminal, second terminal, and server | |
EP3314825B1 (en) | Method and system for sender-controlled messaging and content sharing | |
US9177174B1 (en) | Systems and methods for protecting sensitive data in communications | |
US20160063223A1 (en) | Distributing protected content | |
US8954605B1 (en) | System and method for providing controlled communications | |
US10587585B2 (en) | System and method of presenting dynamically-rendered content in structured documents | |
US9985933B2 (en) | System and method of sending and receiving secret message content over a network | |
US9635027B1 (en) | Data transmission using dynamically rendered message content prestidigitation | |
US10387674B2 (en) | Systems and methods of transforming electronic content | |
US11461489B2 (en) | Method and system for securing data | |
US20160246999A1 (en) | Method and system for image capturing prevention of information displayed on a screen and computer program thereof | |
KR101489446B1 (en) | System for encoding information using optical character recognition and method thereof | |
US20160034718A1 (en) | Method and apparatus for communicating private messages with partially obscured content to limit or prevent unauthorized use of data to impede privacy violations | |
CN102891749A (en) | Method and communication terminal for data encryption | |
US9740835B2 (en) | Systems and methods for creating and sharing protected content | |
US20160080155A1 (en) | Systems and Methods for Controlling the Distribution, Processing, and Revealing of Hidden Portions of Images | |
US11444897B2 (en) | System and method for providing privacy control to message based communications | |
CN104036162B (en) | A kind of scanning means | |
US9372965B2 (en) | Methods and apparatus for displaying simulated digital content | |
JP2005190135A (en) | Information processor, control method for the same, and program | |
US20150347365A1 (en) | System and method for distributing censored and encrypted versions of a document | |
CN112149177B (en) | Bidirectional protection method and system for network information security | |
US10949504B2 (en) | Systems and methods of transforming electronic content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: BURN NOTE , INC., NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ROBBINS, JACOB;ROBBINS, MOSES S.;SIGNING DATES FROM 20130128 TO 20130129;REEL/FRAME:029719/0579 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |