`
`US009948625B2
`
`( 12 ) United States Patent
`Lester et al .
`
`( 10 ) Patent No . :
`( 45 ) Date of Patent :
`
`US 9 , 948 , 625 B2
`* Apr . 17 , 2018
`
`( 54 ) ENCRYPTED GROUP COMMUNICATION
`METHOD
`( 71 ) Applicant : Cyph , Inc . , Dover , DE ( US )
`( 72 )
`Inventors : Ryan Lester , Dover , DE ( US ) ; Bryant
`Zadegan , Dover , DE ( US )
`( 73 ) Assignee : CYPH , INC . , Dover , DE ( US )
`Subject to any disclaimer , the term of this
`( * ) Notice :
`patent is extended or adjusted under 35
`U . S . C . 154 ( b ) by 0 days .
`This patent is subject to a terminal dis
`claimer .
`( 21 ) Appl . No . : 14 / 841 , 281
`Aug . 31 , 2015
`( 22 ) Filed :
`Prior Publication Data
`( 65 )
`US 2016 / 0197901 A1 Jul . 7 , 2016
`Related U . S . Application Data
`( 60 ) Provisional application No . 62 / 100 , 684 , filed on Jan .
`7 , 2015 .
`Int . Ci .
`H04L 29 / 06
`( 2006 . 01 )
`( 2006 . 01 )
`H04L 12 / 58
`H04L 9 / 08
`( 2006 . 01 )
`( 2006 . 01 )
`H04L 9 / 32
`( 2013 . 01 )
`G06F 21 / 40
`G06F 21 / 60
`( 2013 . 01 )
`U . S . CI .
`CPC . . . . . . . . . . . . H04L 63 / 065 ( 2013 . 01 ) ; G06F 21 / 40
`( 2013 . 01 ) ; G06F 21 / 606 ( 2013 . 01 ) ; H04L
`9 / 0833 ( 2013 . 01 ) ; H04L 9 / 3215 ( 2013 . 01 ) ;
`H04L 51 / 04 ( 2013 . 01 ) ; H04L 63 / 0435
`
`( 52 )
`
`( 51 )
`
`( 58 )
`
`( 2013 . 01 ) ; H04L 63 / 0442 ( 2013 . 01 ) ; G06F
`2221 / 2107 ( 2013 . 01 ) ; H04L 2463 / 082
`( 2013 . 01 )
`Field of Classification Search
`CPC . . . . . . . . . . . . . HO4L 63 / 0442 ; H04L 63 / 0435 ; H04L
`63 / 0428 ; H04L 63 / 065 ; HO4L 9 / 0833 ;
`HO4L 9 / 3215 ; HO4L 51 / 04 ; H04L
`2463 / 082 ; G06F 21 / 40 ; G06F 21 / 606
`See application file for complete search history .
`References Cited
`U . S . PATENT DOCUMENTS
`2011 / 0307695 Al *
`12 / 2011 Slater . . . . . . . . . . . . . . . . G06F 17 / 30528
`713 / 163
`2013 / 0101121 A1 *
`4 / 2013 Nordholt . . . . . . . . . . . . . H04L 9 / 0852
`380 / 279
`2015 / 0195261 A1 *
`7 / 2015 Gehrmann . . . . . . . . . . . H04L 9 / 0833
`726 / 7
`* cited by examiner
`Primary Examiner — Ghodrat Jamshidi
`( 74 ) Attorney , Agent , or Firm — Brundidge & Stanger ,
`P . C .
`( 57 )
`ABSTRACT
`Embodiments herein include , for example , a method , com
`prising : generating a shared symmetric key to begin a
`communication session among a group of users by a first
`user ; distributing , by the first user , the generated shared
`symmetric key to each user in the group of users ; commu
`nicating within the communication session among a group
`of users , where each user encrypts a message to the group of
`users to be distributed through the communication session
`using the generated shared symmetric key , and each user
`decrypts a message received from the communication ses
`s ion using the generated shared symmetric key .
`2 Claims , 3 Drawing Sheets
`
`10 .
`
`A first user initiates a group
`communication and generates a
`shared symmetric key . The first
`user then distributes the shared
`symmetric key individually to the
`other users invited to the group
`communication .
`
`Any time a party communicates to
`the group using the secure group
`communication , he or she
`encrypts the communication with
`the shared symmetric key .
`
`All parties decrypt communications
`sent to the group using the shared
`symmetric key .
`
`30
`
`Zoom Video Commc’ns, Inc. - Ex. 1001, Page 1
`Zoom Video Commc’ns, Inc. v. Cyph, Inc. (IPR2023-00140)
`
`
`
`U . S . Paten
`
`atent
`
`Apr . 17 , 2018
`
`Apr . 17 , 2018
`
`Sheet 1 of 3
`
`US 9 , 948 , 625 B2
`
`A first user initiates a group
`communication and generates a
`shared symmetric key . The first
`user then distributes the shared
`symmetric key individually to the
`other users invited to the group
`communication .
`
`20
`
`Any time a party communicates to
`the group using the secure group
`communication , he or she
`encrypts the communication with
`the shared symmetric key .
`
`All parties decrypt communications
`sent to the group using the shared
`symmetric key .
`
`FIG . 1
`
`Zoom Video Commc’ns, Inc. - Ex. 1001, Page 2
`Zoom Video Commc’ns, Inc. v. Cyph, Inc. (IPR2023-00140)
`
`
`
`U . S . Patent
`
`Apr . 17 , 2018
`
`Sheet 2 of 3
`
`US 9 , 948 , 625 B2
`
`FIG . 2
`
`NETWORK
`225
`
`CPU
`210
`
`CPU
`210
`
`RAM
`214
`
`ROM
`
`1 / O ADAPTER
`218
`
`COMMUNICATIONS
`ADAPTER
`220
`
`216 007
`2001
`8
`
`22
`
`215
`
`222
`
`200
`
`USER
`INTERFACE
`ADAPTER
`219
`
`DISPLAY
`ADAPTER
`221
`
`Zoom Video Commc’ns, Inc. - Ex. 1001, Page 3
`Zoom Video Commc’ns, Inc. v. Cyph, Inc. (IPR2023-00140)
`
`
`
`U . S . Patent
`
`Apr . 17 , 2018
`
`Sheet 3 of 3
`
`US 9 , 948 , 625 B2
`
`Resource
`Provider A
`502a
`
`FIG . 3
`
`Resource
`Provider B
`502b
`
`Network
`508
`
`Resource
`Provider C
`502c
`
`Resource
`Manager
`506
`
`Computing
`Device ( s )
`504a
`
`504C
`
`Zoom Video Commc’ns, Inc. - Ex. 1001, Page 4
`Zoom Video Commc’ns, Inc. v. Cyph, Inc. (IPR2023-00140)
`
`
`
`US 9 , 948 , 625 B2
`
`ENCRYPTED GROUP COMMUNICATION
`METHOD
`
`CROSS - REFERENCE TO RELATED
`APPLICATIONS
`
`management information . To protect sensitive information ,
`the information can be transmitted over a secure transmis
`sion connection provided by an encryption system .
`Conventional encryption systems are often difficult to use
`5 and thereby introduce weaknesses in the overall systems .
`For example , asymmetric encryption relies on complex
`This application claims priority to U . S . Provisional Appli
`mathematics applied to private and public information ( e . g . ,
`cation No . 62 / 100 , 684 , entitled “ ENCRYPTED GROUP private and public keys ) and is inherently inefficient . Sym
`COMMUNICATION METHOD ” and filed Jan . 7 , 2015 .
`metric encryption is significantly more efficient , but relies on
`The subject matter of the present application is related to 10 secret information ( e . g . , a password , passphrase , or private
`that disclosed in the following co - pending applications :
`key ) that must remain private between all persons or devices
`Ser . No . 14 / 841 , 327 , entitled “ CROSS - CLIENT COM with authorized access to the encrypted data .
`MUNICATION METHOD ” and filed Aug . 31 , 2015 and
`The difficulties of conventional encryption systems
`claiming priority to
`U . S . Provisional Application No .
`5 increase when the secret information is publicly known . For
`62 / 100 , 674 , filed on Jan . 7 , 2015 ;
`example , when the secret information is publicly known , the
`Ser . No . 14 / 841 , 318 , entitled “ CRYPTOGRAPHIC
`entire encryption system becomes compromised and must be
`METHOD FOR SECURE COMMUNICATIONS ” and filed
`revised ( e . g . , resetting passwords , passphrases , private keys ,
`Aug . 31 , 2015 and claiming priority to U . S . Provisional
`etc . ) . Since various methods to obtain this secret information
`Application No . 62 / 100 , 676 , filed on Jan . 7 , 2015 ;
`Ser . No . 14 / 841 , 313 , entitled “ METHOD OF DENIABLE 20 are well known and frequently use — techniques such as such
`ENCRYPTED COMMUNICATIONS ” and filed Aug . 31 ,
`as man - in - the - middle attacks , social engineering — it
`is
`2015 and claiming priority to U . S . Provisional Application
`therefore desirable to reduce exposure to an encryption
`system ' s private information when communication within a
`No . 62 / 100 , 682 , filed on Jan . 7 , 2015 ;
`Ser . No . 14 / 841 , 310 , entitled “ METHOD OF GENER -
`group and thereby reducing the potential attack surface
`ATING A DENIABLE ENCRYPTED COMMUNICA - 25 employing such an encryption system .
`TIONS VIA PASSWORD ENTRY ” and filed Aug . 31 , 2015
`and claiming priority to U . S . Provisional Application No .
`SUMMARY
`62 / 100 , 686 , filed on Jan . 7 , 2015 ;
`Ser . No . 14 / 841 , 288 , entitled “ MULTI - KEY ENCRYP -
`In view of the foregoing , an embodiment herein provides
`TION METHOD ” and filed Aug . 31 , 2015 and claiming 30 a method , comprising : generating a shared symmetric key to
`priority to U . S . Provisional Application No . 62 / 100 , 688 ,
`begin a communication session among a group of users by
`filed on Jan . 7 , 2015 ;
`a first user ; distributing , by the first user , the generated
`Ser . No . 14 / 841 , 302 , entitled “ METHOD OF EPHEM shared symmetric key to each user in the group of users ;
`ERAL ENCRYPTED COMMUNICATIONS ” and filed
`communicating within the communication session among a
`Aug . 31 , 2015 and claiming priority to U . S . Provisional 35 group of users , wherein each user encrypts a message to the
`Application No . 62 / 100 , 689 , filed on Jan . 7 , 2015 ;
`group of users to be distributed through the communication
`Ser . No . 14 / 841 , 292 , entitled “ METHOD OF MULTI
`session using the generated shared symmetric key , and each
`FACTOR AUTHENTICATION DURING ENCRYPTED
`user decrypts a message received from the communication
`COMMUNICATIONS ” and filed Aug . 31 , 2015 and claim
`ing priority to U . S . Provisional Application No . 62 / 100 . 692 . 40 session using the generated shared symmetric key . In such a
`method , additional users may be added to the communica
`filed on Jan . 7 , 2015 ;
`Ser . No . 14 / 841 . 296 . entitled “ METHOD OF USING
`tion session when the first user distributes to the additional
`SYMMETRIC CRYPTOGRAPHY FOR BOTH DATA
`users the generated shared symmetric key . In addition ,
`ENCRYPTION AND SIGN - ON AUTHENTICATION ” and
`changing users within the group of users to reform the
`filed Aug . 31 , 2015 and claiming priority to U . S . Provisional 45 communication session among a new group of users may
`Application No . 62 / 100 , 693 , filed on Jan . 7 , 2015 . and
`include : generating a new shared symmetric key by the first
`Ser . No . 15 / 001 , 015 , entitled “ SYSTEM AND METHOD
`user ; distributing , by the first user , the generated new shared
`OF CRYPTOGRAPHICALLY SIGNING WEB APPLICA
`symmetric key to each user in the new group of users ;
`TIONS ” and filed Aug . 31 , 2015 and claiming priority to
`communicating to the communication session among a new
`U . S . Provisional Application No . 62 / 104 , 307 , filed on Jan . 50 group of users , wherein each user encrypts a message to the
`new group of users to be distributed through the communi
`16 , 2015 .
`The content of the above applications are incorporated by
`cation session using the generated new shared symmetric
`key , and each user decrypts a message received from the
`reference in their entirety .
`communication session using the generated new shared
`55 symmetric key .
`BACKGROUND
`BRIEF DESCRIPTION OF THE DRAWINGS
`The embodiments herein will be better understood from
`60 the following detailed description with reference to the
`drawings , in which :
`FIG . 1 illustrates a flow diagram illustrating a method of
`an encrypted group communication according to an embodi
`ment herein ;
`FIG . 2 illustrates a schematic diagram of a network
`architecture used in accordance with the embodiments
`herein ; and
`
`Technical Field
`The embodiments herein generally relate to cryptography ,
`and , more particularly , to a method of encrypted group
`communications .
`Description of the Related Art
`With communication occurring through a variety of com -
`munication channels , often to a group of individuals , infor -
`mation such as personal data and other sensitive information
`may be passed across a public network , such as the Internet . 65
`Such communication may include , for example , credential
`information , payment information , and / or personal account
`
`Zoom Video Commc’ns, Inc. - Ex. 1001, Page 5
`Zoom Video Commc’ns, Inc. v. Cyph, Inc. (IPR2023-00140)
`
`
`
`US 9 , 948 , 625 B2
`
`5
`
`other methods of distribution known to those skilled in the
`FIG . 3 illustrates a schematic diagram of a computer
`art . According to one embodiment herein , when a user joins
`architecture used in accordance with the embodiments
`herein .
`or leaves the group , the most senior member ( e . g . , Alice )
`may generate and redistribute a new shared symmetric key .
`According to step 20 , any time a party communicates to
`DETAILED DESCRIPTION OF PREFERRED
`EMBODIMENTS
`the group using the secure group communication , that party
`encrypts the communication with the shared symmetric key .
`Moreover , according to step 30 , all parties decrypt commu
`The embodiments herein and the various features and
`nications sent to the group using the shared symmetric key .
`advantageous details thereof are explained more fully with
`reference to the non - limiting embodiments that are illus - 10 While not shown in FIG . 1 , according to one embodiment
`trated in the accompanying drawings and detailed in the
`herein , the secure group communication session terminates
`following description . Descriptions of well - known compo -
`when the shared symmetric key is revoked .
`nents and processing techniques are omitted so as to not
`F
`IG . 2 illustrates an implementation of an exemplary
`unnecessarily obscure the embodiments herein . The
`networking environment ( e . g . , cloud computing environ
`examples used herein are intended merely to facilitate an 15 ment 500 ) for the embodiments described herein is shown
`understanding of ways in which the embodiments herein
`and described . The cloud computing environment 500 may
`may be practiced and to further enable those of skill in the
`include one or more resource providers 502 a , 502 b , 502 C
`art to practice the embodiments herein . Accordingly , the
`collectively , 502 ) . Each resource provider 502 may include
`examples should not be construed as limiting the scope of
`computing resources . In some implementations , computing
`20 resources may include any hardware and / or software used to
`the embodiments herein .
`The embodiments herein provide a method of encrypted
`process data . For example , computing resources may
`group communication . For example , a user ( e . g . , " Alice " ) of
`include hardware and / or software capable of executing
`an encrypted communication system
`( e . g . , the CyphTM
`algorithms , computer programs , and / or computer applica
`secure messaging platform ) would like to engage several
`tions . In some implementations , exemplary computing
`other users to the system ( e . g . , " Bob , " " Carl , " and " David " ) 25 resources may include application servers and / or databases
`in
`an encrypted group communication . Conventional
`with storage and retrieval capabilities . Each resource pro
`encrypted communication systems , however , require signifi -
`vider 502 may be connected to any other resource provider
`cant resources to encrypt and maintain encrypted group
`502 in the cloud computing environment 500 . In some
`communications . For example , convention encrypted com -
`implementations , the resource providers 502 may be con
`munication systems require N , to as many as N ! ( where N
`30 nected over a computer network 508 . Each resource provider
`is the number of messages transmitted to the group ) , long -
`502 may be connected to one or more computing device 504
`lived sessions ( e . g . , last multiple messages or multiple
`a , 504 b , 504 c ( collectively , 504 ) , over the computer
`sessions ) . According to the embodiments herein , however ,
`network 508 .
`all encrypted group communications between Alice , Bob ,
`The cloud computing environment 500 may include a
`Carl and David require N short - lived secure communication 35 resource manager 506 . The resource manager 506 may be
`sessions and 1 long - lived session . As such , the embodiments
`connected to the resource providers 502 and the computing
`herein are more efficient in computation use and network
`devices 504 over the computer network 508 . In some
`bandwidth use . These benefits are especially important in
`implementations , the resource manager 506 may facilitate
`energy - constrained environments ( such as communication
`the provision of computing resources by one or more
`that occurs on a mobile device relying on stored energy ( e . g . , 40 resource providers 502 to one or more computing devices
`a battery ) to power the device ) . Additionally , the embodi -
`504 . The resource manager 506 may receive a request for a
`ments herein are simple , and more convenient , to imple -
`computing resource from a particular computing device 504 .
`ment , compared to conventional encrypted group commu
`The resource manager 506 may identify one or more
`resource providers 502 capable of providing the computing
`nication systems
`Referring now to the drawings , and more particularly to 45 resource requested by the computing device 504 . The
`resource manager 506 may select a resource provider 502 to
`FIGS . 1 through 3 , where similar reference characters
`denote corresponding features consistently throughout the
`provide the computing resource . The resource manager 506
`figures , there are shown preferred embodiments .
`may facilitate a connection between the resource provider
`FIG . 1 illustrates a flow diagram illustrating a method 1
`502 and a particular computing device 504 . In some imple
`of an encrypted group communication according to an 50 mentations , the resource manager 506 may establish a
`embodiment herein . As shown in FIG . 1 , in step 10 , a first
`connection between a particular resource provider 502 and
`user ( e . g . , Alice ) initiates a group communication session
`a particular computing device 504 . In some implementa
`( e . g . , on the CyphTM secure messaging platform ) with a
`tions , the resource manager 506 may redirect a particular
`Server ( e . g . , a computing device shown in FIGS . 2 and 3 )
`computing device 504 to a particular resource provider 502
`and generates a shared symmetric key to be used by the 55 with the requested computing resource .
`group . According to one embodiment herein , Alice specifies
`The techniques provided by the embodiments herein may
`all users in the group when initiating the group communi -
`be implemented on an integrated circuit chip ( not shown ) .
`cation session . The first user then distributes the shared
`The chip design is created in a graphical computer program
`symmetric key individually to the other users ( e . g . , “ Bob , ”
`ming language , and stored in a computer storage medium
`" Carl ” and “ David ” ) invited to the group communication . 60 ( such as a disk , tape , physical hard drive , or virtual hard
`For example , Alice distributes the shared symmetric key to
`drive such as in a storage access network ) . If the designer
`Bob , Carl and David on at least one of the following
`does not fabricate chips or the photolithographic masks used
`communication platforms : the CyphTM secure messaging
`to fabricate chips , the designer transmits the resulting design
`platform , the Off - The - Record ( “ OTR ” ) messaging platform
`by physical means ( e . g . , by providing a copy of the storage
`and email messages using Pretty Good Privacy ( “ PGP ” ) 65 medium storing the design ) or electronically ( e . g . , through
`encryption . Embodiments described herein , however , are
`the Internet ) to such entities , directly or indirectly . The
`not limited to these distribution methods and may include
`stored design is then converted into the appropriate format
`
`Zoom Video Commc’ns, Inc. - Ex. 1001, Page 6
`Zoom Video Commc’ns, Inc. v. Cyph, Inc. (IPR2023-00140)
`
`
`
`US 9 , 948 , 625 B2
`
`A representative hardware environment for practicing the
`( e . g . , GDSII ) for the fabrication of photolithographic masks ,
`embodiments herein is depicted in FIG . 3 . This schematic
`which typically include multiple copies of the chip design in
`drawing illustrates a hardware configuration of an informa
`question that are to be formed on a wafer . The photolitho -
`tion handling / computer system 600 in accordance with the
`graphic masks are utilized to define areas of the wafer
`5 embodiments herein . The system comprises at least one
`( and / or the layers thereon ) to be etched or otherwise pro -
`processor or central processing unit ( CPU ) 610 . The CPUs
`cessed .
`610 are interconnected via system bus 612 to various
`The resulting integrated circuit chips can be distributed by
`devices such as a random access memory ( RAM ) 614 ,
`the fabricator in raw wafer form ( that is , as a single wafer
`read - only memory ( ROM ) 616 , and an input / output ( I / O )
`that has multiple unpackaged chips ) , as a bare die , or in a 10 adapter 618 . The I / O adapter 618 can connect to peripheral
`packaged form . In the latter case the chip is mounted in a
`devices , such as disk units 611 and tape drives 613 , or other
`single chip package ( such as a plastic carrier , with leads that
`program storage devices that are readable by the system . The
`are affixed to a motherboard or other higher level carrier ) or
`system can read the inventive instructions on the program
`in a multichip package ( such as a ceramic carrier that has
`storage devices and follow these instructions to execute the
`either or both surface interconnections or buried intercon
`Intercon - 15 methodology of the embodiments herein . The system further
`nections ) . In any case the chip is then integrated with other
`includes a user interface adapter 619 that connects a key
`chips , discrete circuit elements , and / or other signal process
`board 615 , mouse 617 , speaker 624 , microphone 622 , and / or
`other user interface devices such as a touch screen device
`ing devices as part of either ( a ) an intermediate product , such
`as a motherboard , or ( b ) an end product . The end product can
`( not shown ) to the bus 612 to gather user input . Additionally ,
`be any product that includes integrated circuit chips , ranging 20 a communication adapter 620 connects the bus 612 to a data
`from toys and other low - end applications to advanced com -
`processing network 625 , and a display adapter 621 connects
`puter products having a display , a keyboard or other input
`the bus 612 to a display device 623 which may be embodied
`as an output device such as a monitor , printer , or transmitter ,
`device , and a central processor .
`The embodiments herein can take the form of an entirely
`for example .
`hardware embodiment , an entirely software embodiment or 25
`For example , FIG . 3 includes exemplary embodiments of
`an embodiment including both hardware and software ele -
`a computing device and a mobile computing device that can
`ments . The embodiments that are implemented in software
`be used to implement the techniques described in this
`include but are not limited to , firmware , resident software ,
`disclosure . As a computing device , system 600 is intended to
`represent various forms of digital computers , such as lap
`microcode , etc .
`Furthermore , the embodiments herein can take the form
`30 tops , desktops , workstations , personal digital assistants ,
`of a computer program product accessible from a computer -
`servers , blade servers , mainframes , and other appropriate
`usable or computer - readable medium providing program
`computers . As a mobile computing device , system 600 is
`code for use by or in connection with a computer or any
`intended to represent various forms of mobile devices , such
`instruction execution system . For the purposes of this
`as personal digital assistants , cellular telephones , smart
`description ,
`a computer - usable or computer readable 35 phones , and other similar computing devices . The compo
`medium can be any apparatus that can comprise , store ,
`nents shown here , their connections and relationships , and
`communicate , propagate , or transport the program for use by
`their functions , are meant to be examples only , and are not
`or in connection with the instruction execution system ,
`meant to be limiting .
`Thus , as a computing device , system 600 includes a
`apparatus , or device .
`The medium can be an electronic , magnetic , optical , 40 processor ( e . g . , CPUs 610 ) , a memory 614 , storage units
`electromagnetic , infrared , or semiconductor system ( or
`( e . g . , ROM 616 , disk units 611 , tape drives 613 ) , a high
`apparatus or device ) or a propagation medium . Examples of
`speed interface 618 connecting to the memory 614 and
`a computer - readable medium include a semiconductor or
`multiple high - speed expansion ports 619 , and a low - speed
`solid state memory , magnetic tape , a removable computer
`interface ( not shown ) connecting to a low - speed expansion
`diskette , a random access memory ( RAM ) , a read - only 45 port ( not shown ) and a storage device . Each of the proces
`memory ( ROM ) , a rigid magnetic disk and an optical disk .
`sors , the memory 614 , the storage device , the high - speed
`Current examples of optical disks include compact disk - read
`interface 618 , the high - speed expansion ports 619 , and the
`only memory ( CD - ROM ) , compact disk - read / write ( CD - R
`low - speed interface , are interconnected using various busses
`W ) and DVD .
`( e . g . , bus 612 ) , and may be mounted on a common moth
`A data processing system suitable for storing and / or 50 erboard or in other manners as appropriate . The processor
`executing program code will include at least one processor
`can process instructions for execution within the computing
`coupled directly or indirectly to memory elements through a
`device , including instructions stored in the memory 614 or
`system bus . The memory elements can include local
`on the storage device to display graphical information for a
`memory employed during actual execution of the program
`GUI on an external input / output device , such as a display
`code , bulk storage , and cache memories which provide 55 623 coupled to the high - speed interface 619 . In other imple
`temporary storage of at least some program code in order to
`mentations , multiple processors and / or multiple buses may
`reduce the number of times code must be retrieved from bulk
`be used , as appropriate , along with multiple memories and
`storage during execution .
`types of memory . Also , multiple computing devices may be
`Input / output ( 1 / 0 ) devices ( including but not limited to
`connected , with each device providing portions of the nec
`keyboards , displays , pointing devices , etc . ) can be coupled 60 essary operations ( e . g . , as a server bank , a group of blade
`to the system either directly or through intervening I / O
`servers , or a multi - processor system ) .
`controllers . Network adapters may also be coupled to the
`The memory 614 stores information within the computing
`system to enable the data processing system to become
`device . In some implementations , the memory 614 is a
`coupled to other data processing systems or remote printers
`volatile memory unit or units . In some implementations , the
`or storage devices through intervening private or public 65 memory 614 is a non - volatile memory unit or units . The
`networks . Modems , cable modem and Ethernet cards are just
`memory 614 may also be another form of computer - readable
`a few of the currently available types of network adapters .
`medium , such as a magnetic or optical disk .
`
`Zoom Video Commc’ns, Inc. - Ex. 1001, Page 7
`Zoom Video Commc’ns, Inc. v. Cyph, Inc. (IPR2023-00140)
`
`
`
`US 9 , 948 , 625 B2
`The storage device is capable of providing mass storage
`coupled to the display 623 . The display 623 may be , for
`for the computing device . In some implementations , the
`example , a TFT ( Thin - Film - Transistor Liquid Crystal Dis
`storage device may be or contain a computer - readable
`play ) display or an OLED ( Organic Light Emitting Diode )
`medium , such as a floppy disk device , a hard disk device , an
`display , or other appropriate display technology . The display
`optical disk device , or a tape device , a flash memory or other 5
`interface may comprise appropriate circuitry for driving the
`similar solid state memory device , or an array of devices ,
`display 623 to present graphical and other information to a
`including devices in a storage area network or other con -
`user . The control interface 619 may receive commands from
`figurations . Instructions can be stored in an information
`a user and convert them for submission to the processor . In
`carrier . The instructions , when executed by one or more
`addition , an external interface ( not shown ) may provide
`processing devices ( for example , processor ) , perform one or 10 communication with the processor , so as to enable near area
`more methods , such as those described above . The instruc
`communication of the mobile computing device with other
`tions can also be stored by one or more storage devices such
`devices . The external interface may provide , for example ,
`as computer - or machine - readable mediums ( for example ,
`for wired communication in some implementations , or for
`the memory 614 , the storage device , or memory on the
`wireless communication in other implementations , and mul
`processor ) .
`15 tiple interfaces may also be used .
`The high - speed interface 618 manages bandwidth - inten -
`The memory 614 stores information within the mobile
`sive operations for the computing device , while the low -
`computing device . The memory 614 can be implemented as
`speed interface manages lower bandwidth - intensive opera -
`one or more of a computer - readable medium or media , a
`tions . Such allocation of functions is an example only . In
`volatile memory unit or units , or a non - volatile memory unit
`some implementations , the high - speed interface 618 is 20 or units . An expansion memory ( not shown ) may also be
`coupled to the memory 614 , the display 623 ( e . g . , through a
`provided and connected to the mobile computing device
`graphics processor or accelerator ) , and to the high - speed
`through an expansion interface ( not shown ) , which may
`expansion ports 619 , which may accept various expansion
`include , for example , a SIMM ( Single In Line Memory
`cards ( not shown ) . In the implementation , the low - speed
`Module ) card interface . The expansion memory may pro
`interface is coupled to the storage device and the low - speed 25 vide extra storage space for the mobile computing device , or
`expansion port . The low - speed expansion port , which may may also store applications or other information for the
`include various communication ports ( e . g . , USB , Blu -
`mobile computing device . Specifically , the expansion
`etooth® , Ethernet , wireless Ethernet ) may be coupled to one
`memory may include instructions to carry out or supplement
`or more input / output devices , such as a keyboard , a pointing
`the processes described above , and may include secure
`device , a scanner , or a networking device such as a switch 30 information also . Thus , for example , the expansion memory
`or router , e . g . , through a network adapter .
`may be provide as a security module for the mobile com
`The computing device may be implemented in a number
`puting device , and may be programmed with instructions
`of different forms , as shown in the figure . For example , it
`that permit secure use of the mobile computing device . In
`may be implemented as a standard server , or multiple times
`addition , secure applications may be provided via the SIMM
`in a group of such servers . In addition , it may be imple - 35 cards , along with additional information , such as placing
`mented in a personal computer such as a laptop computer . It
`identifying information on the SIMM card in a non - hackable
`may also be implemented as part of a rack server system .
`manner .
`Alternatively , components from the computing device may
`The memory may include , for example , flash memory
`be combined with other components in a mobile device ( not
`and / or NVRAM memory ( non - volatile random access
`shown ) , such as a mobile computing device . Each of such 40 memory ) , as discussed below . In some implementations ,
`devices may contain one or more of the computing device
`instructions are stored in an information carrier . The instruc
`and the mobile computing device , and an entire system may
`tions , when executed by one or more processing devices ( for
`be made up of multiple computing devices communicating
`example , processor ) , perform one or more methods , such as
`with each other .
`those described above . The instructions can also be stored by
`As a mobile computing device , system 600 includes a 45 one or more storage devices , such as one or more computer
`processor ( e . g . , CPUs 610 ) , a memory 614 , an input / output
`or machine - readable mediums ( for example , the memory
`device such as a display 623 , a communication interface
`614 , the expansion memory , or memory on the processor ) .
`620 , and a transceiver ( not shown )