Patents by Inventor John Graham Cumming

John Graham Cumming has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20160013935
    Abstract: A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server proxies messages to/from the different server including a set of signed cryptographic parameters signed using the private key on the different server. The different server generates the master secret, and generates and transmits the session keys to the server that are to be used in the secure session for encrypting and decrypting communication between the client device and the server.
    Type: Application
    Filed: February 24, 2015
    Publication date: January 14, 2016
    Inventors: Sébastien Andreas Henry Pahl, Matthieu Philippe François Tourne, Piotr Sikora, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming, Lee Hahn Holloway, Nicholas Thomas Sullivan, Albertus Strasheim
  • Publication number: 20160014114
    Abstract: A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server receives a premaster secret that has been encrypted using a public key bound with a domain for which the client device is attempting to establish a secure session with. The server transmits the encrypted premaster secret to the different server for decryption along with other information necessary to compute a master secret. The different server decrypts the encrypted premaster secret, generates the master secret, and transmits the master secret to the server. The server receives the master secret and continues with the handshake procedure including generating one or more session keys that are used in the secure session for encrypting and decrypting communication between the client device and the server.
    Type: Application
    Filed: March 31, 2015
    Publication date: January 14, 2016
    Inventors: Sébastien Andreas Henry Pahl, Matthieu Philippe François Tourne, Piotr Sikora, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming, Lee Hahn Holloway, Nicholas Thomas Sullivan, Albertus Strasheim
  • Publication number: 20150333912
    Abstract: A Transmission Control Protocol (TCP) receiver receives a SYN segment from a TCP initiator that initiates a TCP handshake between the TCP initiator and a TCP server. A first value is extracted from a predefined portion of the SYN segment. A second value is computed using an authentication algorithm that includes at least using a cryptographic hash function that takes as input at least the source IP address of the encapsulating IP packet of the SYN segment and a shared secret between the TCP initiator and the TCP receiver. If the computed second value matches the extracted first value, then the TCP handshake is allowed to continue. If the computed second value does not match the extracted first value, then the TCP handshake is not allowed to continue.
    Type: Application
    Filed: March 17, 2015
    Publication date: November 19, 2015
    Inventor: John Graham-Cumming
  • Patent number: 9184911
    Abstract: A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server receives a premaster secret that has been encrypted using a public key bound with a domain for which the client device is attempting to establish a secure session. The server transmits the encrypted premaster secret to the different server for decryption along with other information necessary to compute a master secret and session keys for the secure session. The different server decrypts the encrypted premaster secret, generates the master secret, and generates session keys that are used in the secure session for encrypting and decrypting communication between the client device and the server and transmits those session keys to that server.
    Type: Grant
    Filed: April 8, 2014
    Date of Patent: November 10, 2015
    Assignee: CLOUDFLARE, INC.
    Inventors: Sébastien Andreas Henry Pahl, Matthieu Philippe François Tourne, Piotr Sikora, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming, Lee Hahn Holloway, Nicholas Thomas Sullivan, Albertus Strasheim
  • Publication number: 20150288514
    Abstract: A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server receives a premaster secret that has been encrypted using a public key bound with a domain for which the client device is attempting to establish a secure session. The server transmits the encrypted premaster secret to the different server for decryption along with other information necessary to compute a master secret and session keys for the secure session. The different server decrypts the encrypted premaster secret, generates the master secret, and generates session keys that are used in the secure session for encrypting and decrypting communication between the client device and the server and transmits those session keys to that server.
    Type: Application
    Filed: April 8, 2014
    Publication date: October 8, 2015
    Inventors: Sébastien Andreas Henry Pahl, Matthieu Philippe François Tourne, Piotr Sikora, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming, Lee Hahn Holloway, Nicholas Thomas Sullivan, Albertus Strasheim
  • Publication number: 20150281168
    Abstract: A method and apparatus for managing CNAME records such that CNAME records at the root domain are supported while complying with the RFC specification (an IP address is returned for any Address query for the root record). The authoritative DNS infrastructure acts as a DNS resolver where if there is a CNAME at the root record, rather than returning that record directly, a recursive lookup is used to follow the CNAME chain until an A record is located. The address associated with the A record is then returned. This effectively “flattens” the CNAME chain. This complies with the requirements of the DNS specification and is invisible to any service that interacts with the DNS server.
    Type: Application
    Filed: April 1, 2015
    Publication date: October 1, 2015
    Inventors: Lee Hahn Holloway, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming
  • Publication number: 20150195382
    Abstract: A transparent TCP proxy device intercepts TCP connection requests received from a TCP client and destined for a TCP server as if acting as the TCP server in a handshake with the TCP client. Only after completing the handshake with the TCP client, the transparent TCP proxy participates in a handshake with the TCP server as if acting as the TCP client. After the handshake with the TCP server is complete, the transparent TCP proxy intercepts and translates subsequent TCP packets received from the TCP client and destined for the TCP server into a form expected by the TCP server including updating an acknowledgement number and TCP checksum; and intercepts and translates subsequent TCP packets received from the TCP server and destined for the TCP client into a form expected by the TCP client including updating an acknowledgement number and TCP checksum.
    Type: Application
    Filed: August 12, 2014
    Publication date: July 9, 2015
    Inventor: John Graham-Cumming
  • Patent number: 8996873
    Abstract: A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server receives a premaster secret that has been encrypted using a public key bound with a domain for which the client device is attempting to establish a secure session with. The server transmits the encrypted premaster secret to the different server for decryption along with other information necessary to compute a master secret. The different server decrypts the encrypted premaster secret, generates the master secret, and transmits the master secret to the server. The server receives the master secret and continues with the handshake procedure including generating one or more session keys that are used in the secure session for encrypting and decrypting communication between the client device and the server.
    Type: Grant
    Filed: April 8, 2014
    Date of Patent: March 31, 2015
    Assignee: Cloudflare, Inc.
    Inventors: Sébastien Andreas Henry Pahl, Matthieu Philippe François Tourne, Piotr Sikora, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming, Lee Hahn Holloway, Nicholas Thomas Sullivan, Albertus Strasheim
  • Patent number: 8990357
    Abstract: A proxy server receives a request for a web page from a client device. In response to determining that a portion of the web page is available in cache, the proxy server retrieves that portion and transmits it to the client device. The portion of the web page is not the entire web page and is a prediction of the portion of the page that will remain static if the page is reloaded or requested by a different client device. The proxy server transmits a request to an origin server for the full web page. In response to receiving the full web page from the origin server, the proxy server modifies the full web page to remove the portion that was already transmitted to the client device, and transmits the modified web page to the client device.
    Type: Grant
    Filed: July 29, 2013
    Date of Patent: March 24, 2015
    Assignee: Cloudflare, Inc.
    Inventors: John Graham-Cumming, Andrew Galloni, Albertus Strasheim
  • Patent number: 8984166
    Abstract: A near end network optimizer receives, from a client device, a request for a network resource. Responsive to determining that a version of the network resource is stored in the near end network optimizer, a request for the network resource is transmitted to a far end network optimizer along with a version identifier that identifies that version. The near end network optimizer receives, from the far end network optimizer, a response that includes a differences file that specifies the difference(s) between the version of the network resource stored in the near end network optimizer with a most current version of the network resource. The response does not include the entire network resource. The near end network optimizer applies the specified difference(s) to the version that it has stored to generate an updated version of the network resource, and transmits the updated version of the network resource to the client device.
    Type: Grant
    Filed: April 5, 2012
    Date of Patent: March 17, 2015
    Assignee: Cloudflare, Inc.
    Inventor: John Graham-Cumming
  • Patent number: 8984635
    Abstract: A Transmission Control Protocol (TCP) receiver receives a SYN segment from a TCP initiator that initiates a TCP handshake between the TCP initiator and a TCP server. A first value is extracted from a predefined portion of the SYN segment. A second value is computed using an authentication algorithm that includes at least using a cryptographic hash function that takes as input at least the source IP address of the encapsulating IP packet of the SYN segment and a shared secret between the TCP initiator and the TCP receiver. If the computed second value matches the extracted first value, then the TCP handshake is allowed to continue. If the computed second value does not match the extracted first value, then the TCP handshake is not allowed to continue.
    Type: Grant
    Filed: January 6, 2014
    Date of Patent: March 17, 2015
    Assignee: Cloudflare, Inc.
    Inventor: John Graham-Cumming
  • Patent number: 8966267
    Abstract: A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server proxies messages to/from the different server including a set of signed cryptographic parameters signed using the private key on the different server. The different server generates the master secret, and generates and transmits the session keys to the server that are to be used in the secure session for encrypting and decrypting communication between the client device and the server.
    Type: Grant
    Filed: April 8, 2014
    Date of Patent: February 24, 2015
    Assignee: Cloudflare, Inc.
    Inventors: Sébastien Andreas Henry Pahl, Matthieu Philippe François Tourne, Piotr Sikora, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming, Lee Hahn Holloway, Nicholas Thomas Sullivan, Albertus Strasheim
  • Publication number: 20150032803
    Abstract: A proxy server receives a request for a web page from a client device. In response to determining that a portion of the web page is available in cache, the proxy server retrieves that portion and transmits it to the client device. The portion of the web page is not the entire web page and is a prediction of the portion of the page that will remain static if the page is reloaded or requested by a different client device. The proxy server transmits a request to an origin server for the full web page. In response to receiving the full web page from the origin server, the proxy server modifies the full web page to remove the portion that was already transmitted to the client device, and transmits the modified web page to the client device.
    Type: Application
    Filed: July 29, 2013
    Publication date: January 29, 2015
    Inventors: John Graham-Cumming, Andrew Galloni, Albertus Strasheim
  • Publication number: 20140310526
    Abstract: A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server receives a premaster secret that has been encrypted using a public key bound with a domain for which the client device is attempting to establish a secure session with. The server transmits the encrypted premaster secret to another server for decryption. The server receives the decrypted premaster secret and continues with the handshake procedure including generating a master secret from the decrypted premaster secret and generating one or more session keys that are used in the secure session for encrypting and decrypting communication between the client device and the server.
    Type: Application
    Filed: June 25, 2014
    Publication date: October 16, 2014
    Inventors: Sébastien Andreas Henry Pahl, Matthieu Philippe François Tourne, Piotr Sikora, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming, Lee Hahn Holloway, Albertus Strasheim
  • Patent number: 8806011
    Abstract: A transparent TCP proxy device intercepts TCP connection requests received from a TCP client and destined for a TCP server as if acting as the TCP server in a handshake with the TCP client. Only after completing the handshake with the TCP client, the transparent TCP proxy participates in a handshake with the TCP server as if acting as the TCP client. After the handshake with the TCP server is complete, the transparent TCP proxy intercepts and translates subsequent TCP packets received from the TCP client and destined for the TCP server into a form expected by the TCP server including updating an acknowledgement number and TCP checksum; and intercepts and translates subsequent TCP packets received from the TCP server and destined for the TCP client into a form expected by the TCP client including updating an acknowledgement number and TCP checksum.
    Type: Grant
    Filed: January 6, 2014
    Date of Patent: August 12, 2014
    Assignee: Cloudflare, Inc.
    Inventor: John Graham-Cumming
  • Patent number: 8782774
    Abstract: A server establishes a secure session with a client device where a private key used in the handshake when establishing the secure session is stored in a different server. During the handshake procedure, the server receives a premaster secret that has been encrypted using a public key bound with a domain for which the client device is attempting to establish a secure session with. The server transmits the encrypted premaster secret to another server for decryption. The server receives the decrypted premaster secret and continues with the handshake procedure including generating a master secret from the decrypted premaster secret and generating one or more session keys that are used in the secure session for encrypting and decrypting communication between the client device and the server.
    Type: Grant
    Filed: March 7, 2013
    Date of Patent: July 15, 2014
    Assignee: Cloudflare, Inc.
    Inventors: Sébastien Andreas Henry Pahl, Matthieu Philippe François Tourne, Piotr Sikora, Ray Raymond Bejjani, Dane Orion Knecht, Matthew Browning Prince, John Graham-Cumming, Lee Hahn Holloway, Albertus Strasheim
  • Patent number: 8768879
    Abstract: Methods of storing data records produced from monitoring interactions between external agents and a system are described. The method defines specific interactions that occur between the external agents and the system as events of interest. A chain of interactions occurring during respective interaction sessions between a respective external agent and the system are monitored and events of interest occurring in the chain are determined. Data records from the monitored chain are produced, the respective data record including data identifying determined events of interest and data associated therewith. A profile identity, representative of the external agent, is assigned to each data record produced during an interaction session. Data records of individual events of interest are stored in a way ordered according to the type of event of interest and data records of events of interest occurring during an interaction session are stored in a way ordered according to assigned profile identity.
    Type: Grant
    Filed: January 24, 2011
    Date of Patent: July 1, 2014
    Assignee: Nice Systems Technologies UK Limited
    Inventors: Alan Paul Rolleston Phillips, John Graham-Cumming, Gareth O'Loughlin, Jason Derek McFall, Paul David Mellor, Neil Samuel Ferguson, Alfredo Ramos-Alvarez, Liam Philip Clancy, Fiann James Curry-Towneley-O'Hagan, Andrew Galloni, Steven Heron, Maciej Buczkowski, Panagiotis Belesis, Benjamin Thomas Pickering
  • Patent number: 8742124
    Abstract: The invention concerns a compound of the Formula (I), wherein Qa is heteroaryl and is substituted with halogeno; R1 and R2 are hydrogen; and Qb is phenyl or heteroaryl, and Qb may optionally bear 1 or 2 substituents selected from hydroxy, halogeno and (1-6C)alkyl, or a pharmaceutically-acceptable salt thereof; processes for their preparation, pharmaceutical compositions containing them and their use in the treatment of diseases or medical conditions mediated by cytokines.
    Type: Grant
    Filed: September 27, 2012
    Date of Patent: June 3, 2014
    Assignee: AstraZeneca AB
    Inventors: Dearg Sutherland Brown, John Graham Cumming, Ian Alun Nash
  • Publication number: 20130268673
    Abstract: A near end network optimizer receives, from a client device, a request for a network resource. Responsive to determining that a version of the network resource is stored in the near end network optimizer, a request for the network resource is transmitted to a far end network optimizer along with a version identifier that identifies that version. The near end network optimizer receives, from the far end network optimizer, a response that includes a differences file that specifies the difference(s) between the version of the network resource stored in the near end network optimizer with a most current version of the network resource. The response does not include the entire network resource. The near end network optimizer applies the specified difference(s) to the version that it has stored to generate an updated version of the network resource, and transmits the updated version of the network resource to the client device.
    Type: Application
    Filed: April 5, 2012
    Publication date: October 10, 2013
    Inventor: John Graham-Cumming
  • Publication number: 20120004243
    Abstract: The invention concerns a compound of the Formula (I), wherein Qa is heteroaryl and is substituted with halogeno; R1 and R2 are hydrogen; and Qb is phenyl or heteroaryl, and Qb may optionally bear 1 or 2 substituents selected from hydroxy, halogeno and (1-6C)alkyl, or a pharmaceutically-acceptable salt thereof; processes for their preparation, pharmaceutical compositions containing them and their use in the treatment of diseases or medical conditions mediated by cytokines.
    Type: Application
    Filed: April 5, 2011
    Publication date: January 5, 2012
    Applicant: AstraZeneca AB
    Inventors: Dearg Sutherland Brown, John Graham Cumming, Ian Alun Nash