WO2020016654A1 - Computer systems designed for instant message communications with computer-generate imagery communicated over decentralised distributed networks and methods of use thereof - Google Patents

Computer systems designed for instant message communications with computer-generate imagery communicated over decentralised distributed networks and methods of use thereof Download PDF

Info

Publication number
WO2020016654A1
WO2020016654A1 PCT/IB2019/000842 IB2019000842W WO2020016654A1 WO 2020016654 A1 WO2020016654 A1 WO 2020016654A1 IB 2019000842 W IB2019000842 W IB 2019000842W WO 2020016654 A1 WO2020016654 A1 WO 2020016654A1
Authority
WO
WIPO (PCT)
Prior art keywords
session
key
interactive
message
client
Prior art date
Application number
PCT/IB2019/000842
Other languages
French (fr)
Inventor
Viktor PROKOPENYA
Yury HUSHCHYN
Nikolay VORONETSKIY
Kanstantsin ZAKHARCHANKA
Original Assignee
Prokopenya Viktor
Hushchyn Yury
Voronetskiy Nikolay
Zakharchanka Kanstantsin
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Prokopenya Viktor, Hushchyn Yury, Voronetskiy Nikolay, Zakharchanka Kanstantsin filed Critical Prokopenya Viktor
Publication of WO2020016654A1 publication Critical patent/WO2020016654A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0457Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The exemplary inventive instant messaging system may include a sending client (Source User) that accesses encryption data associated with a receiving client (Target User) on a distributed mesh network (100) where the encryption data is signed by a receiver public key (Target User Public Key) of the receiving client (Target User), forms a non-interactive message exchange session (Non-Interactive Session) on the distributed mesh network (100), generates a first session key (Non-Interactive Session Key) based on the encryption data and a sender secret key (Secret Key), encrypts a message using the first session key (Non- Interactive Session Key), encrypts session information using the receiver public key (Target User Public Key), produces a session state (Session State) including the encrypted message and the encrypted session information and stores the session state (Session State) in the non¬ interactive message exchange session (Non-Interactive Session). The receiving client (Target User) accesses the session state (Session State), decrypts the encrypted session information with a receiver secret key, generates a second session key (Non-Interactive Session Key) using the session information and a sender public key, and decrypts the message using the second session key (Non-Interactive Session Key).

Description

COMPUTER SYSTEMS DESIGNED FOR INSTANT MESSAGE
COMMUNICATIONS WITH COMPUTER-GENERATE IMAGERY
COMMUNICATED OVER DECENTRAUISED DISTRIBUTED NETWORKS AND
METHODS OF USE THEREOF
CROSS-REFERENCE TO REUATED APPUICATIONS
[0001] This application claims benefit of U.S. provisional patent application Ser. No. 62/698,713 filed July 16, 2018, and U.S. provisional patent application Ser. No. 62/783,066 filed on December 28, 2018, each of which is herein incorporated by reference for all purposes.
COPYRIGHT NOTICE
[0002] A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in drawings that form a part of this document: Copyright, Banuba Limited, All Rights Reserved.
FIELD OF TECHNOLOGY
[0003] The present disclosure generally relates to improved computer-based platforms/systems, improved computing devices/components and/or improved computing objects configured for one or more novel technological applications of distributed networking utilizing a plurality of computing devices networked to form a mesh network for communicating and storing information.
BACKGROUND OF TECHNOLOGY
[0004] A computer network system may include a group of computers (e.g., clients, servers, smart routers (e.g., trading smart routers)) and other computing hardware devices that are linked together through one or more communication channels to facilitate communication and/or resource-sharing, via one or more specifically programmed graphical user interfaces (GUIs) of the present disclosure, among a wide range of users.
SUMMARY OF DESCRIBED SUBJECT MATTER
[0005] In some embodiments, the present disclosure provides an exemplary computer-based method that includes at least the following steps of accessing, with a sending client, encryption data associated with a receiving client on a distributed mesh network, where the distributed mesh network includes a plurality of nodes coordinated to route message and where the encryption data is signed by a receiver public key associated with the receiving client. Forming, by a processor of the sending client, a non-interactive message exchange session on the distributed mesh network. Generating, by the processor, a first session key based on at least the encryption data and a sender secret key associated with the sending client. Encrypting, by the processor, a message using the first session key to produce an encrypted message. Encrypting, by the processor, session information using the receiver public key to produce encrypted session information. Producing, by the processor, a session state including, the encrypted message, and the encrypted session information. Storing the session state in the non-interactive message exchange session on the distributed mesh network. The receiving client is configured to access the session state in the non-interactive message exchange session on the distributed mesh network, decrypt the encrypted session information with a paired receiver secret key paired with the receiver public key to reproduce the session information, generate a second session key using the session information and a sender public key paired with the sender secret key, and decrypt the message using the second session key.
[0006] In some embodiments, the present disclosure provides an exemplary computer-based method that includes at least the following steps of storing, with a receiving client, on a distributed mesh network a receiver public key and encryption data associated with the receiving client, where the distributed mesh network includes a plurality of nodes coordinated to route message, where the encryption data is signed by a receiver public key associated with the receiving client, and where a sending client is configured to access the distributed mesh network to extract the receiver public key and the encryption data; form a non interactive message exchange session on the distributed mesh network; generate a first session key based on at least the encryption data and a sender secret key associated with the sending client; encrypt a message using the first session key to produce an encrypted message; encrypt session information using the receiver public key to produce encrypted session information; produce a session state comprising the encrypted message and the encrypted session information; and store the session state in the non-interactive message exchange session on the distributed mesh network. Decrypting, by a processor of the receiving client, the encrypted session information with a paired receiver secret key paired with the receiver public key to reproduce the session information. Generating, by the processor, a second session key using the session information and a sender public key paired with the sender secret key, and decrypting, by the processor, the message using the second session key.
[0007] In some embodiments, the present disclosure provides an exemplary computer-based system that includes at least the following components of a distributed mesh network comprising a plurality of clients, where the distributed mesh network includes a plurality of nodes coordinated to route message; a first client of the plurality of clients, including at least a first processing device; and a second client of the plurality of clients, including at least a second processing device. The first client is configured to: access encryption data associated with a second client of the plurality of clients; wherein the encryption data is signed by a second public key associated with the second client; form a non-interactive message exchange session on the distributed mesh network; generate a first session key based on at least the encryption data and a first secret key associated with the first client; encrypt a message using the first session key to produce an encrypted message; encrypt session information using the second public key to produce encrypted session information; produce a session state including the encrypted message, and the encrypted session information; and store the session state in the non-interactive message exchange session on the distributed mesh network. The first client is configured to decrypt the encrypted session information with a paired second secret key paired with the first public key to reproduce the session information; generate a second session key using the session information and a first public key paired with the first secret key; and decrypt the message using the second session key.
BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Various embodiments of the present disclosure can be further explained with reference to the attached drawings, wherein like structures are referred to by like numerals throughout the several views. The drawings shown are not necessarily to scale, with emphasis instead generally being placed upon illustrating the principles of the present disclosure. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ one or more illustrative embodiments.
[0009] FIGS. 1-2 show one or more schematic flow diagrams, certain computer-based architectures, and/or screenshots of various specialized graphical user interfaces which are illustrative of some exemplary aspects of at least some embodiments of the present disclosure.
DESCRIPTION OF ILLUSTRATIVE EXAMPLES
[0010] Embodiments of the present invention, briefly summarized above and discussed in greater detail below, can be understood by reference to the illustrative embodiments of the invention depicted in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
[0011] To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures. The figures are not drawn to scale and may be simplified for clarity. It is contemplated that elements and features of one embodiment may be beneficially incorporated in other embodiments without further recitation.
[0012] Among those benefits and improvements that have been disclosed, other objects and advantages of this invention can become apparent from the following description taken in conjunction with the accompanying figures. Detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely illustrative of the invention that may be embodied in various forms. In addition, each of the examples given in connection with the various embodiments of the present invention is intended to be illustrative, and not restrictive.
[0013] Throughout the specification, the following terms take the meanings explicitly associated herein, unless the context clearly dictates otherwise. The phrases “in one embodiment” and“in some embodiments” as used herein do not necessarily refer to the same embodiment(s), though it may. Furthermore, the phrases“in another embodiment” and“in some other embodiments” as used herein do not necessarily refer to a different embodiment, although it may. Thus, as described below, various embodiments of the invention may be readily combined, without departing from the scope or spirit of the invention. Further, when a particular feature, structure, or characteristic is described in connection with an implementation, it is submitted that it is within the knowledge of one skilled in the art to affect such feature, structure, or characteristic in connection with other implementations whether or not explicitly described herein.
[0014] The term "based on" is not exclusive and allows for being based on additional factors not described, unless the context clearly dictates otherwise. In addition, throughout the specification, the meaning of "a," "an," and "the" include plural references. The meaning of "in" includes "in" and "on."
[0015] It is understood that at least one aspect/functionality of various embodiments described herein can be performed in real-time and/or dynamically. As used herein, the term “real-time” is directed to an event/action that can occur instantaneously or almost instantaneously in time when another event/action has occurred. For example, the“real-time processing,” “real-time computation,” and “real-time execution” all pertain to the performance of a computation during the actual time that the related physical process (e.g., a user interacting with an application on a mobile device) occurs, in order that results of the computation can be used in guiding the physical process.
[0016] As used herein, the term“dynamically” means that events and/or actions can be triggered and/or occur without any human intervention. In some embodiments, events and/or actions in accordance with the present invention can be in real-time and/or based on a predetermined periodicity of at least one of: nanosecond, several nanoseconds, millisecond, several milliseconds, second, several seconds, minute, several minutes, hourly, several hours, daily, several days, weekly, monthly, etc.
[0017] As used herein, the term“runtime” corresponds to any behavior that is dynamically determined during an execution of a software application or at least a portion of software application.
[0018] In some embodiments, the inventive specially programmed computing systems with associated devices are configured to operate in the distributed network environment, communicating over a suitable data communication network (e.g., the Internet, etc.) and utilizing at least one suitable data communication protocol (e.g., IPX/SPX, X.25, AX.25, AppleTalk(TM), TCP/IP (e.g., HTTP), etc.). Of note, the embodiments described herein may, of course, be implemented using any appropriate hardware and/or computing software languages. In this regard, those of ordinary skill in the art are well versed in the type of computer hardware that may be used, the type of computer programming techniques that may be used (e.g., object oriented programming), and the type of computer programming languages that may be used (e.g., C++, Objective-C, Swift, Java, Javascript). The aforementioned examples are, of course, illustrative and not restrictive.
[0019] As used herein, the terms“image(s)” and“image data” are used interchangeably to identify data representative of visual content which includes, but not limited to, images encoded in various computer formats (e.g.,“.jpg”,“.bmp,” etc.), streaming video based on various protocols (e.g., Real-time Streaming Protocol (RTSP), Real-time Transport Protocol (RTP), Real-time Transport Control Protocol (RTCP), etc.), recorded/generated non streaming video of various formats (e.g.,“mov,”“mpg,”“wmv,”“avi,”“flv,” ect), and real-time visual imagery acquired through a camera application on a mobile device.
[0020] The material disclosed herein may be implemented in software or firmware or a combination of them or as instructions stored on a machine-readable medium, which may be read and executed by one or more processors. A machine-readable medium may include any medium and/or mechanism for storing or transmitting information in a form readable by a machine (e.g., a computing device). For example, a machine-readable medium may include read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; electrical, optical, acoustical or other forms of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.), and others. [0021] In another form, a non-transitory article, such as a non-transitory computer readable medium, may be used with any of the examples mentioned above or other examples except that it does not include a transitory signal per se. It does include those elements other than a signal per se that may hold data temporarily in a“transitory” fashion such as RAM and so forth.
[0022] As used herein, the terms “computer engine” and“engine” identify at least one software component and/or a combination of at least one software component and at least one hardware component which are designed/programmed/configured to manage/control other software and/or hardware components (such as the libraries, software development kits (SDKs), objects, etc.).
[0023] Examples of hardware elements may include processors, microprocessors, circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, and so forth), integrated circuits, application specific integrated circuits (ASIC), programmable logic devices (PLD), digital signal processors (DSP), field programmable gate array (FPGA), logic gates, registers, semiconductor device, chips, microchips, chip sets, and so forth. In some embodiments, the one or more processors may be implemented as a Complex Instruction Set Computer (CISC) or Reduced Instruction Set Computer (RISC) processors; x86 instruction set compatible processors, multi-core, or any other microprocessor or central processing unit (CPU). In various implementations, the one or more processors may be dual-core processor(s), dual core mobile processor(s), and so forth.
[0024] Examples of software may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application program interfaces (API), instruction sets, computing code, computer code, code segments, computer code segments, words, values, symbols, or any combination thereof. Determining whether an embodiment is implemented using hardware elements and/or software elements may vary in accordance with any number of factors, such as desired computational rate, power levels, heat tolerances, processing cycle budget, input data rates, output data rates, memory resources, data bus speeds and other design or performance constraints.
[0025] One or more aspects of at least one embodiment may be implemented by representative instructions stored on a machine-readable medium which represents various logic within the processor, which when read by a machine causes the machine to fabricate logic to perform the techniques described herein. Such representations, known as“IP cores” may be stored on a tangible, machine readable medium and supplied to various customers or manufacturing facilities to load into the fabrication machines that make the logic or processor.
[0026] As used herein, the term“user” shall have a meaning of at least one user.
[0027] In some embodiments, the present invention provides an exemplary inventive instant messaging (IM) computer system that is based on a decentralised distributed network capable to send and receive both real-time and delayed messages encrypted with one or more end-to- end encryption methodologies without the use of a central server. For example, as detailed herein, the present invention allows sending real-time messages when the sender(s) and/or the recipient(s) are online, delayed messages when the sender(s) and/or recipient(s) are offline, and transferring any type of content, including but not limited to, media content (e.g., video, audio, livestream, images, etc.).
[0028] In some embodiments, the present invention provides the exemplary inventive IM computer system that is configured to offer real-time or quasi real time quick transmission of written and/or media-based messages from sender to receiver over a network (such as the Internet) (Instant Messaging). In some embodiments, in push mode between two or more people using personal computers (PCs), mobile phones, smart phones or other devices, the exemplary inventive IM computer system may be configured to offer the IM in forms of point-to-point communications (peer-to-peer), multicast communications from one sender to many receivers, and other suitable communications that may include, but not limited to, live voice and/or video calling, video chat, inclusion of hyperlinks to media, images, video messages, audio media messages, Voice over Internet Protocol (VoIP) calls, as well as share diverse contents and information from photos, videos, voice messages, URL links to various information, and etc. In some embodiments, the present invention provides the exemplary inventive IM computer system that is configured to have no limits to the number of users to join in IM group chat. In some embodiments, the present invention provides the exemplary inventive IM computer system that is configured to be cross-platform by being configured to interact with and/or executed on various operating systems and hardware solutions such as, but not limited to, iOS, Microsoft Windows, Android, Blackberry, Bada OS, and/or Google Chrome OS (operating system).
[0029] In some embodiments, the present invention provides the exemplary inventive IM computer system that is configured to allow users to exchange passwords and/or cryptographic keys with peers to form the inventive decentralised IM network. In some embodiments, the present invention provides the exemplary inventive IM computer system that is configured to support both friend-to-friend and group-based communication interactions. In some embodiments, the present invention provides the exemplary inventive IM computer system that is configured to support automatic anonymous forwarding. In some embodiments, the present invention provides the exemplary inventive IM computer system that is configured, for group-based interactions, to allow any user to connect to any other without compromising users' privacy. [0030] In some embodiments, the present invention provides an exemplary IM messenger application (client) that is configured as detailed herein to allow its users to interact utilizing the exemplary inventive IM computer system. In some embodiments, the exemplary IM messenger application (client) that is configured to allow its users to interact utilizing the exemplary inventive IM computer system when there would be no ability to save the generated temporary key on the user’s device and/or avoiding the delaying communications between user(s) who are offline (allowing for delayed sessions).
[0031] In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to allow its users to send and/or receive messages encrypted by the end-to-end encryption when an interactive communication protocol cannot be used.
[0032] In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to have at least one or more of the following features:
1) maintaining a decentralized network;
2) preserving offline messages over an extended period of time (long lasted) (e.g., minutes, hours, days, etc.);
3) establishing/maintaining shared state without the use of super-node(s);
4) maintaining end-to-end (E2E) encryption;
5) maintaining account info without a need for offline memory storage; and
6) maintaining non-interactive E2E encryption.
[0033] In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to encrypt interactions by utilizing deniable encryption methodologies. For example, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured so that, for example, without limitation, the receiver can share a set of ephemeral keys in addition to the public key with the sender, and, in turn, the sender randomly combines the set of ephemeral keys to get the session key. See e.g., Canetti R., Dwork C., Naor M., Ostrovsky R. (1997) Deniable Encryption. In: Kaliski B.S. (eds) Advances in Cryptology— CRYPTO '97. CRYPTO 1997. Lecture Notes in Computer Science, vol 1294. Springer, Berlin, Heidelberg.
[0034] In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to encrypt interactions by utilizing the forward secrecy end-to-end encryption for delayed sessions (e.g., due to sender and/or receiver being offline). For example, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to, for example, without limitation, generate one random secret key per session to complete a key agreement. This means that the compromise of one session cannot compromise others as well, and there is no one secret value whose acquisition would compromise multiple sessions. For example, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system may be configured to implement forward secrecy end-to-end encryption for delayed sessions based, at least in part, on Diffie-Hellman key exchange (DHE-RSA, DHE-DSA) and/or elliptic curve Diffie-Hellman key exchange (ECDHE-RSA, ECDHE-ECDSA). See e.g., Cremers, C. & Feltz, Beyond eCK: perfect forward secrecy under actor compromise and ephemeral-key reveal. In M. Des. Codes Cryptogr. (2015) 74: 183.
[0035] For example, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system may be configured to implement forward secrecy end-to-end encryption for delayed sessions based, at least in part, on Double Ratchet Algorithm. See. e.g., Unger, Nik; Dechand, Sergej; Bonneau, Joseph; Fahl, Sascha; Perl, Henning; Goldberg, Ian; Smith, Matthew (17-21 May 2015). SoK: Secure Messaging. In 2015 IEEE Symposium on Security and Privacy. San Jose, CA: Institute of Electrical and Electronics Engineers: 241.
[0036] As detailed herein, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to operate as a decentralised distributed network for instant message communication. For example, the exemplary IM messenger application (client) with the exemplary inventive IM computer system do not require a so-called“central” server for user authorisation procedures. In contrast, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to generate keys (e.g., a pair of the public key and the private key) directly from, for example without limitation, the user’s password. For example, the exemplary IM messenger application (client) with the exemplary inventive IM computer system can be configured to require having a new user’s profile for each new password.
[0037] In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to utilize an exemplary inventive protocol of key agreement that is based on the asymmetric cryptography. For example, when both sender(s) and recipient(s) are online, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to transfer messages between sender(s) and recipient(s) directly. This is done in order not to overload the network. In contrast, when, for example, the recipient(s) are offline, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to allow sender(s) to create a message exchange session in a non-interactive way, which can be serialised as a compact session state and stored on an exemplary inventive mesh network. In turn, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to allow recipient(s) to restore the session from the serialised state and, if authorised, view and/or create session messages. In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured so that the inventive session state can act as encrypted storage with access from one or more users.
[0038] In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to transfer IM messages may be transferred as a formatted text. In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to implement file sharing as, for example without limitation, a torrent file exchange that has no limitations on the file size nor the file content.
[0039] Typically, the end-to-end encryption requires an interactive communication protocol between both parties of the communication. In contrast, in some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to support the end-to-end encryption without the interactive protocol (i.e., at least one party to the communication is offline).
[0040] Illustrative Examples Of Exemplary Inventive Communication Protocol That The Exemplary IM Messenger Application (Client) With The Exemplary Inventive IM Computer System Are Configured To Utilized In Accordance With At Least Some Embodiments
[0041] FIG. 1 illustrates an exemplary architecture of the exemplary inventive decentralised distributed mesh network of the exemplary inventive IM computer system (100). For example, in some embodiments, each node (lOla... 101h) in FIG. 1 illustrates user’s computing device which executes the exemplary IM messenger application (client) and which can be, without limitation at least one selected from the group of desktop, laptop, mobile device (e.g., tablet, smartphone, etc.), Intemet-of-Things device (e.g., smart thermostat), and etc..
[0042] Table 1 provides an illustrative example of the inventive interaction protocol that the exemplary IM messenger applications (clients) with the exemplary inventive IM computer system are configured to utilized in accordance with at least some embodiments. In Table 1, terms “receiver” and“sender” respectively correspond to the exemplary IM messenger application (client) being executed on each respective communication side.
Table 1:
Figure imgf000017_0001
Figure imgf000018_0001
[0043] Similarly, to Table 1, FIG. 2 also illustrates an exemplary inventive interaction protocol that, in some embodiments, the exemplary IM messenger applications (clients) are configured to utilize to exchange IM communication over the exemplary inventive decentralised distributed mesh network of the exemplary inventive IM computer system (100). For example, referring to FIG. 2, item Source User (sender/senders) is a user or a group of users who send information over the inventive network. Item Target User (recipient/recipients) is a user or a group of users who receive the information sent by the Source User. The label Non-Interactive Session identifies an exemplary inventive IM message exchange protocol between the Source User and the Target User, during which the message exchange data is serialised and de-serialised as the Session State. For example, item Message contains information which the Source User exchanges with the Target User. In some embodiments, the exemplary inventive decentralised distributed mesh network of the exemplary inventive IM computer system (100) is a Slow Mesh Network that is a network topology in which the infrastructure nodes connect directly, dynamically and non- hierarchically to as many other nodes as possible and cooperate with one another to route data from/to clients. Items Public Key and Secret Key identify a pair of keys used by the exemplary inventive asymmetric cryptographic technique of the exemplary inventive IM computer system (100). For example, the Public Key may be disseminated widely, and the Secret Key is only known to the owner. In accordance with exemplary inventive interaction protocol of FIG. 2, the present invention accomplishes, for example (without limitation), (1) the authentication, where the Public Key verifies that a holder of the paired Secret Key sent the message, and (2) encryption, where only the paired Secret Key holder can decrypt the message encrypted with the Public Key. Item Non-Interactive Session Key is a single-use symmetric key used for encrypting all IM messages in one inventive communication session.
[0044] In some embodiments, by utilizing the deniability encryption technique(s), the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured such that the session information depends only on the receiver’s public data and hence may be forged by any other user. The opportunity of forging guarantees the difficulty in proving that the information is generated by the sender. At the same time, this information is used to decrypt messages which can be only done by the receiver.
[0045] In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to support uses such as, but not limited to, mobile-device and computer games, mobile-device and computer messengers and mobile-device and computer applications of more general scope, and similar others.
[0046] In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system are configured to offer an opportunity to its users to incorporate computer-generated imagery into messages, where the computer-generated imagery has been generated by utilizing one or more techniques detailed in U.S. Pat. Nos. 10,049,260, 10,129,476, 10,204,438 and 10,289,899; U.S. Pat. Appl. No. 16/034, 267.
[0047] In some embodiments, the incorporated computer-generated imagery may be in the form of a still imagery (e.g., picture, snapshot) or moving imagery (e.g., video). In some embodiments, the incorporated computer-generated imagery may be in the form of a visual mask being layered over a user’s face. In some embodiments, the incorporated computer generated imagery may be in the form of a visual mask being layered over a user’s face and/or one or more suitable virtual reality effects (e.g., avatar, etc.) and/or one or more augmented reality effects (e.g., avatar within a real-life imagery, etc.). In some embodiments, users of the exemplary IM messenger application (client) with the exemplary inventive IM computer system may be given an opportunity to add the incorporated computer-generated imagery via emoji-like choice menus programmed as part of the exemplary IM messenger application (client). In some embodiments, users of the exemplary IM messenger application (client) with the exemplary inventive IM computer system may be given an opportunity to launch one or more additional applications (e.g., camera application, image editing tool, etc.) to add/edit the computer-generated imagery before incorporating such imagery in to one or more messages. In some embodiments, the exemplary IM messenger application (client) with the exemplary inventive IM computer system may be configured to incorporate the computer-generated imagery on continuous dynamic basis and automatically send messages having such incorporated computer-generated imagery as they become available (e.g., computer-generated imagery generated based at least in part on live recording).
[0048] In some embodiments, the computer-generated imagery may be stored in the non interactive message exchange session for later download by a recipient. For example, where a sender captures an image, for example of the sender’s face, the sender may produce a modified image at the sender’s device. For example, the sender can add one or more effects, such as, but not limited to, masks over the sender’s face, stickers, emoji, drawings, animations, blurring, cropping, color filters, sharpening modifications, blurring, among other computer-generated effects. The sender may then send the resulting computer-generated imagery by saving the computer-generated imagery in a file format, such as, e.g., Joint Photographic Experts Group formats (JPEG), Tagged Image File Format (TIFF), Portable Network Graphics (PNG), Exchangeable Image File format (EXIF), Windows Bitmap (BMP), Graphics Interchange Format (GIF), Portable Pixmap Format (PPM), Portable Graymap format (PGM), Portable Bitmap format (PBM), High Efficiency Image File format (HEIF), Better Portable Graphics format (BPG), Drawn file (DRW), Free Lossless Image Format (FLIF), or any other suitable image format. The computer-generated imagery may then be sent to the recipient according to the methodology described in, e.g., FIG. 2 and/or Table 1 above.
[0049] Similarly, in embodiments, the sender may send a video with computer-generated imagery including, e.g., one or more effects, such as, but not limited to, masks over the sender’s face, stickers, emoji, drawings, animations, blurring, cropping, color filters, sharpening modifications, blurring, among other computer-generated effects. The sender may save the video in a suitable video file format, such as, e.g., Audio Video Interleave (AVI), Windows Media Video (WMV), Quicktime (QT), Matroska (MKV), Advanced Video Coding (AVC) and Advanced Video Coding High Definition (AVCHD), Flash Video (FLV), Moving Picture Expert Group formats (MPEG), third Generation Partnership Project formats (3GPP), WebM, among other suitable video formats. The video file may then be sent according to the methodology described in, e.g., FIG. 2 and/or Table 1 above. In addition, in some embodiments, the exemplary inventive IM computer system is adapted to send the video file in a streaming format, such as, e.g., using i ! 2(4. FIEVC, VPS or VP9 or other suitable video streaming format. In such embodiments, the video file continually uploaded via, e.g., a buffer, into the non-interactive message exchange session, and streamed by the recipient from the non-interactive message exchange session into, e.g., a buffer. Accordingly, the non-interactive message exchange session may be maintained during and for a period after the streaming upload of the video file by the sender. As a result, the video file can be streamed continuously or non-continuously by the recipient, allowing for interruptions in the recipient’s stream without losing progress in the video file stream.
[0050] In embodiments, the sender may send audio with or without computer-generated audio including, e.g., one or more effects, such as, but not limited to, modulation effects such chorus, tremolo, Hanger and phaser, time-based effects including reverb, delay and echo, spectral effects including equalization and panning, dynamic effects including compression and distortion, filters, among other computer-generated effects. The sender may save the audio in a suitable audio file format, such as, e.g., Advanced Audio Coding (AAC), Free Lossless Audio Codec (FLAC), Audio-only MPEG-4 (M4A), MPEG Layer III audio (MP3), Ogg-Vorbis (OGG), Vorbis, Opus, RealAudio (RA), Windows Media Audio format (WMA), WebM, among other suitable audio formats. The audio file may then be sent according to the methodology described in, e.g., FIG. 2 and/or Table 1 above. In addition, in some embodiments, the exemplary inventive IM computer system is adapted to send the audio file in a streaming format, such as, e.g., using MP3, AAC, Vorbis, Opus or other suitable audio streaming format. In such embodiments, the audio file is continually uploaded via, e.g., a buffer, into the non-interactive message exchange session, and streamed by the recipient from the non-interactive message exchange session into, e.g., a buffer. Accordingly, the non interactive message exchange session may be maintained during and for a period after the streaming upload of the audio file by the sender. As a result, the audio file can be streamed continuously or non-continuously by the recipient, allowing for interruptions in the recipient’s stream without losing progress in the video file stream. [0051] The exemplary inventive IM computer system may additionally provide for transferring and streaming of virtual reality (VR) and augmented reality (AR) files. Examples of VR and/or AR file formats may include, but are not limited to, Universal Scene Description Z (USDZ), gl Transmission Format (glTF), Universal 3D (U3D), Product Representation Compact (PRC), Virtual Reality Modelling Language (VRML), X3D, WebGL, 3D Markup Language for Web (3DMLW), COLLADA, 03D, 3D Manufacturing Format (3MF), among others. For example, in embodiments, the sender may generate a VR or AR file with computer-generated imagery and/or modifications, as described above. The file may then be uploaded, e.g., in real-time or monolithically as one file, and received by a recipient using the exemplary inventive IM computer system described above with reference to, e.g., FIG. 1, FIG. 2 and/or Table 1.
[0052] In an embodiment, one or more of the above described files, including, e.g., audio files, images files, video files, and VR/AR files, can be shared between devices at each node lOla-lOln. The files may be shared between nodes via a peer-to-peer (P2P) connections. Thus, one device may seed a file to one or more other devices for transfer. Seeding may occur using a file ID associated with the file being seeded and nodes lOla-lOln having such file. In an embodiment, the file has a unique ID consisting of a file hash and a file size. The hash is a root of, e.g., the Merkle tree calculated on the file, however, other hashes are contemplated. This unique ID is short enough (e.g., about 38 bytes, or between about 10 and about 100 bytes) so that it can be sent in a message. Having such a file ID, a receiving node lOla (recipient) can connect to the distributed network and initiate a search for links to this file ID. Links store information about seed users with that file ID. The recipient can start sending requests to the network to download some fragments of the file. Seeding nodes lOlb- 101h (seeders) respond to requests with a file fragment and a set of hashes from, e.g., the Merkle tree. With such hashes, the recipient can be sure that the fragment really belongs to the target file. In an embodiment, each fragment is sent to the recipient via a non-interactive exchange session using asymmetric cryptography, such as with the exemplary inventive IM computing system described above. A distinct non-interactive exchange session can be used for each fragment, a single non-interactive exchange session can be used for the recipient for all fragments, or a subset of the fragments can be sent via one or more non-interactive exchange session.
[0053] At least some aspects of the present disclosure will now be described with reference to the following numbered clauses.
[0054] Clause 1. A method, comprising:
accessing, with a sending client, encryption data associated with a receiving client on a distributed mesh network;
wherein the distributed mesh network includes a plurality of nodes coordinated to route message;
wherein the encryption data is signed by a receiver public key associated with the receiving client;
forming, by a processor of the sending client, a non-interactive message exchange session on the distributed mesh network;
generating, by the processor, a first session key based on at least the encryption data and a sender secret key associated with the sending client;
encrypting, by the processor, a message using the first session key to produce an encrypted message;
encrypting, by the processor, session information using the receiver public key to produce encrypted session information;
producing, by the processor, a session state comprising:
the encrypted message; and the encrypted session information; and
storing the session state in the non-interactive message exchange session on the distributed mesh network;
wherein the receiving client is configured to
access the session state in the non-interactive message exchange session on the distributed mesh network;
decrypt the encrypted session information with a paired receiver secret key paired with the receiver public key to reproduce the session information;
generate a second session key using the session information and a sender public key paired with the sender secret key; and
decrypt the message using the second session key.
[0055] Clause 2. A method comprising:
storing, with a receiving client, on a distributed mesh network a receiver public key and encryption data associated with the receiving client;
wherein the distributed mesh network includes a plurality of nodes coordinated to route message;
wherein the encryption data is signed by a receiver public key associated with the receiving client;
wherein a sending client is configured to:
access the distributed mesh network to extract the receiver public key and the encryption data;
form a non-interactive message exchange session on the distributed mesh network;
generate a first session key based on at least the encryption data and a sender secret key associated with the sending client; encrypt a message using the first session key to produce an encrypted message;
encrypt session information using the receiver public key to produce encrypted session information;
produce a session state comprising:
the encrypted message; and
the encrypted session information; and
store the session state in the non-interactive message exchange session on the distributed mesh network;
decrypting, by a processor of the receiving client, the encrypted session information with a paired receiver secret key paired with the receiver public key to reproduce the session information;
generating, by the processor, a second session key using the session information and a sender public key paired with the sender secret key; and
decrypting, by the processor, the message using the second session key.
[0056] Clause 3. The method of clause 1 or 2, wherein the encryption information comprises a set of ephemeral public keys.
[0057] Clause 4. The method of clause 3, further comprising authenticating the set of ephemeral public keys using the receiver public key.
[0058] Clause 5. The method of clause 3, further comprising randomly selecting a subset of ephemeral public keys from the set of ephemeral public keys.
[0059] Clause 6. The method of clause 3, wherein the session information comprises:
a sender identification associated with the sender client;
a random seed; and subset information that restores a subset of ephemeral public keys randomly selected from the set of ephemeral public keys.
[0060] Clause 7. The method of clause 1 or 2, wherein the message comprises an entirety of a text-based message.
[0061] Clause 8. The method of clause 1 or 2, wherein the message comprises a portion of a file in a torrent file exchange.
[0062] Clause 9. The method of clause 1 or 2, wherein the distributed mesh network comprises a Slow Mesh Network.
[0063] While a number of embodiments of the present invention have been described, it is understood that these embodiments are illustrative only, and not restrictive, and that many modifications may become apparent to those of ordinary skill in the art, including that various embodiments of the inventive methodologies, the inventive systems, and the inventive devices described herein can be utilized in any combination with each other. Further still, the various steps may be carried out in any desired order (and any desired steps may be added and/or any desired steps may be eliminated).

Claims

CLAIMS:
1. A method comprising:
accessing, with a sending client (Source User), encryption data associated with a receiving client (Target User) on a distributed mesh network;
wherein the distributed mesh network (100) includes a plurality of nodes (lOla-lOln) coordinated to route message;
wherein the encryption data is signed by a receiver public key (Target User Public Key) associated with the receiving client (Target User);
forming, by a processor of the sending client (Source User), a non-interactive message exchange session (Non-Interactive Session) on the distributed mesh network (100); generating, by the processor, a first session key (Non-Interactive Session Key) based on at least the encryption data and a sender secret key (Secret Key) associated with the sending client (Source User);
encrypting, by the processor, a message using the first session key (Non-Interactive Session Key) to produce an encrypted message;
encrypting, by the processor, session information using the receiver public key (Target User Public Key) to produce encrypted session information;
producing, by the processor, a session state (Session State) comprising:
the encrypted message; and
the encrypted session information; and
storing the session state (Session State) in the non-interactive message exchange session (Non-Interactive Session) on the distributed mesh network (100);
wherein the receiving client is configured to access the session state (Session State) in the non-interactive message exchange session (Non-Interactive Session) on the distributed mesh network (100);
decrypt the encrypted session information with a paired receiver secret key (Secret Key) paired with the receiver public key (Target User Public Key) to reproduce the session information;
generate a second session key (Non-Interactive Session Key) using the session information and a sender public key paired with the sender secret key; and
decrypt the message using the second session key.
2. The method of claim 1, wherein the encryption information comprises a set of ephemeral public keys.
3. The method of claim 2, further comprising authenticating the set of ephemeral public keys using the receiver public key (Target User Public Key).
4. The method of claim 2, further comprising randomly selecting a subset of ephemeral public keys (Target User Public Key) from the set of ephemeral public keys.
5. The method of claim 2, wherein the session information comprises:
a sender identification associated with the sender client;
a random seed; and
subset information that restores a subset of ephemeral public keys randomly selected from the set of ephemeral public keys.
6. The method of claim 1, wherein the message comprises an entirety of a text-based message.
7. The method of claim 1, wherein the message comprises a portion of a file in a torrent file exchange.
8. The method of claim 1, wherein the distributed mesh network (100) comprises a Slow Mesh Network.
9. A method comprising:
storing, with a receiving client (Target User), on a distributed mesh network (100) a receiver public key (Target User Public Key) and encryption data associated with the receiving client;
wherein the distributed mesh network (100) includes a plurality of nodes (lOla-lOln) coordinated to route message;
wherein the encryption data is signed by the receiver public key (Target User Public Key) associated with the receiving client (Target User);
wherein a sending client (Source User) is configured to:
access the distributed mesh network (100) to extract the receiver public key (Target User Public Key) and the encryption data;
form a non-interactive message exchange session on the distributed mesh network (100); generate a first session key (Non-Interactive Session Key) based on at least the encryption data and a sender secret key (Secret Key) associated with the sending client (Source User);
encrypt a message using the first session key (Non-Interactive Session Key) to produce an encrypted message;
encrypt session information using the receiver public key (Target User Public Key) to produce encrypted session information;
produce a session state (Session State) comprising:
the encrypted message; and
the encrypted session information; and
store the session state (Session State) in the non-interactive message exchange session (Non-Interactive Session) on the distributed mesh network (100);
decrypting, by a processor of the receiving client (Target User), the encrypted session information with a paired receiver secret key (Secret Key) paired with the receiver public key (Target User Public Key) to reproduce the session information;
generating, by the processor, a second session key (Non-Interactive Session Key) using the session information and a sender public key paired with the sender secret key (Secret Key); and
decrypting, by the processor, the message using the second session key (Non- Interactive Session Key).
10. The method of claim 9, wherein the encryption information comprises a set of ephemeral public keys.
11. The method of claim 10, further comprising signing the set of ephemeral public keys using the paired receiver private key (Secret Key).
12. The method of claim 10, wherein the sending client is further configured to randomly select a subset of ephemeral public keys from the set of ephemeral public keys.
13. The method of claim 10, further comprising restoring a subset of ephemeral public keys randomly selected from the set of ephemeral public keys using the session information, the session information comprising:
a sender identification associated with the sender client;
a random seed; and
subset information for restoring the subset of ephemeral public keys.
14. The method of claim 9, wherein the message comprises an entirety of a text-based message.
15. The method of claim 9, wherein the message comprises a portion of a file in a torrent file exchange.
16. The method of claim 9, wherein the distributed mesh network (100) comprises a Slow Mesh Network.
17. A system comprising:
a distributed mesh network (100) comprising a plurality of clients (lOla-lOln); wherein the distributed mesh network (100) includes a plurality of nodes (lOla-lOln) coordinated to route message;
a first client (Source User) of the plurality of clients (lOla-lOln), comprising at least a first processing device; and
a second client (Target User) of the plurality of clients (lOla-lOln), comprising at least a second processing device;
wherein the first client (Source User) is configured to:
access encryption data associated with a second client (Target User) of the plurality of clients;
wherein the encryption data is signed by a second public key (Target User Public Key) associated with the second client (Target User);
form a non-interactive message exchange session (Non-Interactive Session) on the distributed mesh network (100);
generate a first session key (Non-Interactive Session Key) based on at least the encryption data and a first secret key (Secret Key) associated with the first client (Source User);
encrypt a message using the first session key (Non-Interactive Session Key) to produce an encrypted message;
encrypt session information using the second public key to produce encrypted session information;
produce a session state (Session State) comprising:
the encrypted message; and
the encrypted session information; and store the session state (Session State) in the non-interactive message exchange session (Non-Interactive Session) on the distributed mesh network (100); and
wherein the first client (Source Client) is configured to:
decrypt the encrypted session information with a paired second secret key (Secret Key) paired with the first public key (Target User Public Key) to reproduce the session information;
generate a second session key (Session Key) using the session information and a first public key (Public Key) paired with the first secret key (Secret Key); and
decrypt the message using the second session key (Non-Interactive Session Key).
18. The system of claim 17, wherein the non-interactive message exchange session (Non- Interactive Session) is distributed across storage of one or more of the plurality of clients (lOla-lOln).
19. The system of claim 17, wherein each of the plurality of clients (lOla-lOln) comprises a node of the distributed mesh network (100).
20. The system of claim 17, wherein the distributed mesh network (100) comprises a Slow
Mesh Network.
PCT/IB2019/000842 2018-07-16 2019-07-16 Computer systems designed for instant message communications with computer-generate imagery communicated over decentralised distributed networks and methods of use thereof WO2020016654A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862698713P 2018-07-16 2018-07-16
US62/698,713 2018-07-16
US201862783066P 2018-12-28 2018-12-28
US62/783,066 2018-12-28

Publications (1)

Publication Number Publication Date
WO2020016654A1 true WO2020016654A1 (en) 2020-01-23

Family

ID=68393029

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2019/000842 WO2020016654A1 (en) 2018-07-16 2019-07-16 Computer systems designed for instant message communications with computer-generate imagery communicated over decentralised distributed networks and methods of use thereof

Country Status (1)

Country Link
WO (1) WO2020016654A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170134937A1 (en) * 2015-11-06 2017-05-11 SWFL, Inc., d/b/a "Filament" Systems and methods for secure and private communications
US9805212B1 (en) * 2016-04-14 2017-10-31 Wickr Inc. Secure file transfer
US10049260B1 (en) 2017-01-27 2018-08-14 Banuba Limited Computer systems and computer-implemented methods specialized in processing electronic image data
US10129476B1 (en) 2017-04-26 2018-11-13 Banuba Limited Subject stabilisation based on the precisely detected face position in the visual input and computer systems and computer-implemented methods for implementing thereof
US10204438B2 (en) 2017-04-18 2019-02-12 Banuba Limited Dynamic real-time generation of three-dimensional avatar models of users based on live visual input of users' appearance and computer systems and computer-implemented methods directed to thereof
US10289899B2 (en) 2017-08-31 2019-05-14 Banuba Limited Computer-implemented methods and computer systems for real-time detection of human's emotions from visual recordings

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170134937A1 (en) * 2015-11-06 2017-05-11 SWFL, Inc., d/b/a "Filament" Systems and methods for secure and private communications
US9805212B1 (en) * 2016-04-14 2017-10-31 Wickr Inc. Secure file transfer
US10049260B1 (en) 2017-01-27 2018-08-14 Banuba Limited Computer systems and computer-implemented methods specialized in processing electronic image data
US10204438B2 (en) 2017-04-18 2019-02-12 Banuba Limited Dynamic real-time generation of three-dimensional avatar models of users based on live visual input of users' appearance and computer systems and computer-implemented methods directed to thereof
US10129476B1 (en) 2017-04-26 2018-11-13 Banuba Limited Subject stabilisation based on the precisely detected face position in the visual input and computer systems and computer-implemented methods for implementing thereof
US10289899B2 (en) 2017-08-31 2019-05-14 Banuba Limited Computer-implemented methods and computer systems for real-time detection of human's emotions from visual recordings

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CANETTI R.DWORK C.NAOR M.OSTROVSKY R.: "Lecture Notes in Computer Science", vol. 1294, 1997, SPRINGER
CREMERS CAS ET AL: "Beyond eCK: Perfect Forward Secrecy under Actor Compromise and Ephemeral-Key Reveal", 10 September 2012, ROBOCUP 2008: ROBOCUP 2008: ROBOT SOCCER WORLD CUP XII; [LECTURE NOTES IN COMPUTER SCIENCE; LECT.NOTES COMPUTER], SPRINGER INTERNATIONAL PUBLISHING, CHAM, PAGE(S) 734 - 751, ISBN: 978-3-319-10403-4, XP047509413 *
CREMERS, C.FELTZ: "Beyond eCK: perfect forward secrecy under actor compromise and ephemeral-key reveal", M. DES. CODES CRYPTOGR., vol. 74, 2015, pages 183
UNGER NIK ET AL: "SoK: Secure Messaging", 2014 IEEE SYMPOSIUM ON SECURITY AND PRIVACY, IEEE, 17 May 2015 (2015-05-17), pages 232 - 249, XP033177720, ISSN: 1081-6011, [retrieved on 20150717], DOI: 10.1109/SP.2015.22 *
UNGER, NIKDECHAND, SERGEJBONNEAU, JOSEPHFAHL, SASCHAPERL, HENNINGGOLDBERG, IANSMITH, MATTHEW: "2015 IEEE Symposium on Security and Privacy. San Jose", CA: INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, article "Secure Messaging", pages: 241

Similar Documents

Publication Publication Date Title
US11822626B2 (en) Secure web RTC real time communications service for audio and video streaming communications
CN104219051B (en) The communication means and system of a kind of inner group message
US11599655B1 (en) Data sharing method
WO2018049867A1 (en) Method and apparatus for performing synchronization operation on contents
CN100583989C (en) Media stream transmission method
US9397984B1 (en) Apparatus and method for secure file transfer
WO2019227225A1 (en) Systems and methods for establishing communications via blockchain
Chu et al. Random linear network coding for peer-to-peer applications
WO2017054480A1 (en) Multimedia data encryption method and apparatus
Montpetit et al. Social television: Enabling technologies and architectures
CN111478911A (en) Instant messaging encryption method adopting lightweight key exchange algorithm
US10601589B1 (en) Computer systems designed for instant message communications with computer-generated imagery communicated over decentralised distributed networks and methods of use thereof
US20230208615A1 (en) Online-Streamer Image Model File Transmission in Co-Hosting During Livestreaming
CN112217862A (en) Data communication method, device, terminal equipment and storage medium
WO2020016654A1 (en) Computer systems designed for instant message communications with computer-generate imagery communicated over decentralised distributed networks and methods of use thereof
WO2023049002A1 (en) Dynamic groups key generation with communication history
Ramdan et al. Selective encryption algorithm implementation for video call on Skype client
Vazquez-Salazar et al. Partially homomorphic encryption scheme for real-time image stream
Janu et al. Development of an efficient real-time H. 264/AVC advanced video compression encryption scheme
Fraczek et al. Steg Blocks: Ensuring perfect undetectability of network steganography
Asghar et al. MIKEY for keys management of H. 264 scalable video coded layers
WO2022026946A1 (en) Methods and system for transmitting content during a networked conference
US20230208618A1 (en) Image Model File Transmission
Berg et al. WebRTC-based Decentralized Chat Application with Minimal Latency
JP2006211118A (en) Communication terminal, and method for each terminal to surely confirm connections among all other terminals in full-mesh network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19795636

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 15.04.2021)

122 Ep: pct application non-entry in european phase

Ref document number: 19795636

Country of ref document: EP

Kind code of ref document: A1