Patents by Inventor Donald J. Kadyk

Donald J. Kadyk 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).

  • Patent number: 7293046
    Abstract: Methods, systems, and computer program products for synchronizing data stored at one or more message clients with data stored at a message server where the message clients may receive update notifications and may represent the data using different data structures than the message server uses to represent the same data. A token is associated with each data change that occurs at the message server. The message server sends each change and associated token to the message clients. When the message clients request a synchronization, the tokens they received are returned to the message server for comparison with the tokens the message server sent to the message clients. If the message clients do not return a particular token, the message server determines that the clients did not receive the corresponding change and resends the change to the message clients. Tokens may also be used to divide a change into one or more portions, with only one portion being provided initially.
    Type: Grant
    Filed: December 23, 2004
    Date of Patent: November 6, 2007
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc E. Seinfeld
  • Patent number: 7293049
    Abstract: Methods, systems, and computer program products for synchronizing data stored at one or more message clients with data stored at a message server where the message clients may receive update notifications and may represent the data using different data structures than the message server uses to represent the same data. A token is associated with each data change that occurs at the message server. The message server sends each change and associated token to the message clients. When the message clients request a synchronization, the tokens they received are returned to the message server for comparison with the tokens the message server sent to the message clients. If the message clients do not return a particular token, the message server determines that the clients did not receive the corresponding change and resends the change to the message clients. Tokens may also be used to divide a change into one or more portions, with only one portion being provided initially.
    Type: Grant
    Filed: October 5, 2004
    Date of Patent: November 6, 2007
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc E. Seinfeld
  • Patent number: 7293045
    Abstract: Methods, systems, and computer program products for synchronizing data stored at one or more message clients with data stored at a message server where the message clients may receive update notifications and may represent the data using different data structures than the message server uses to represent the same data. A token is associated with each data change that occurs at the message server. The message server sends each change and associated token to the message clients. When the message clients request a synchronization, the tokens they received are returned to the message server for comparison with the tokens the message server sent to the message clients. If the message clients do not return a particular token, the message server determines that the clients did not receive the corresponding change and resends the change to the message clients. Tokens may also be used to divide a change into one or more portions, with only one portion being provided initially.
    Type: Grant
    Filed: October 8, 2004
    Date of Patent: November 6, 2007
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc E. Seinfeld
  • Patent number: 7269659
    Abstract: Methods, systems, computer program products and data structures are described which allow a client to communicate with a server even though multiple proxies that require different authentication data must be traversed to allow such communication. In operation, the client first authenticates to a first proxy using authentication data appropriate for the first proxy. The client then authenticates to a second proxy using different authentication data that is appropriate for the second proxy. This proxy authentication continues through as many proxies as necessary until the client is in communication with the server.
    Type: Grant
    Filed: October 29, 2004
    Date of Patent: September 11, 2007
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Kevin T. Damour, Michael Kramer
  • Patent number: 7174565
    Abstract: Methods, systems, and computer program products for negotiating a secure end-to-end connection using a proxy server as an intermediary. The client first negotiates a secure connection between the client and the proxy so that any credentials exchanged will be encrypted. After the exchange of authentication credentials, the secure client-proxy connection is altered so that no further encryption takes place. The client and server then negotiate a secure end-to-end connection through the proxy, with the secure end-to-end connection being encapsulated within the insecure client-proxy connection. In this way, the overhead of creating a separate client-proxy connection for the secure end-to-end connection may be avoided, but the insecure client-proxy connection introduces only minimal overhead because it no longer encrypts any data that it carries.
    Type: Grant
    Filed: December 16, 2005
    Date of Patent: February 6, 2007
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc E. Seinfeld, Michael Kramer
  • Patent number: 7127742
    Abstract: An external client securely accesses a private corporate network using a communications device, but without the communications device being required to communicate through the private corporate network when communicating with resources external to the private corporate network. The external client establishes a connection with the private corporate network over the public network such as the Internet using, for example, Transmission Control Protocol (TCP). The external client then provides security to the connection by running, for example, the Secure Socket Layer (SSL) protocol over the TCP protocol. During the ensuing session with the private corporate network, the communications device establishes a subsequent connection(s) with the external resource.
    Type: Grant
    Filed: January 24, 2001
    Date of Patent: October 24, 2006
    Assignee: Microsoft Corporation
    Inventors: Michael Kramer, Donald J. Kadyk, Neil S. Fishman
  • Patent number: 7054903
    Abstract: An expert proxy server is described that is coupled to a number of wireless devices through a wireless network, and to a number of server computer systems through an external network such as, for example, the Internet. The expert proxy server acts as an agent for a wireless device by providing a service for the wireless device. Specifically, the expert proxy server determines that a service is to be provided to the wireless device. Next, the expert proxy server identifies an application that provides the service and then communicates with the identified application that provides the service. The expert proxy server compiles the results of the communication with the application and then transmits the compilation to the wireless device over the wireless network. Thus, the relatively smaller bandwidth of the wireless network is preserved by transmitting a minimal amount of information over the wireless network while leaving more extensive communications to occur over higher bandwidth external networks.
    Type: Grant
    Filed: February 17, 2005
    Date of Patent: May 30, 2006
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc Seinfeld
  • Patent number: 6996841
    Abstract: Methods, systems, and computer program products for negotiating a secure end-to-end connection using a proxy server as an intermediary. The client first negotiates a secure connection between the client and the proxy so that any credentials exchanged will be encrypted. After the exchange of authentication credentials, the secure client-proxy connection is altered so that no further encryption takes place. The client and server then negotiate a secure end-to-end connection through the proxy, with the secure end-to-end connection being encapsulated within the insecure client-proxy connection. In this way, the overhead of creating a separate client-proxy connection for the secure end-to-end connection may be avoided, but the insecure client-proxy connection introduces only minimal overhead because it no longer encrypts any data that it carries.
    Type: Grant
    Filed: April 19, 2001
    Date of Patent: February 7, 2006
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc E. Seinfeld, Michael Kramer
  • Patent number: 6941326
    Abstract: Methods, systems, and computer program products for synchronizing data stored at one or more message clients with data stored at a message server where the message clients may receive update notifications and may represent the data using different data structures than the message server uses to represent the same data. A token is associated with each data change that occurs at the message server. The message server sends each change and associated token to the message clients. When the message clients request a synchronization, the tokens they received are returned to the message server for comparison with the tokens the message server sent to the message clients. If the message clients do not return a particular token, the message server determines that the clients did not receive the corresponding change and resends the change to the message clients. Tokens may also be used to divide a change into one or more portions, with only one portion being provided initially.
    Type: Grant
    Filed: January 24, 2001
    Date of Patent: September 6, 2005
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc E. Seinfeld
  • Patent number: 6895425
    Abstract: An expert proxy server is described that is coupled to a number of wireless devices through a wireless network, and to a number of server computer systems through an external network such as, for example, the Internet. The expert proxy server acts as an agent for a wireless device by providing a service for the wireless device. Specifically, the expert proxy server determines that a service is to be provided to the wireless device. Next, the expert proxy server identifies an application that provides the service and then communicates with the identified application that provides the service. The expert proxy server compiles the results of the communication with the application and then transmits the compilation to the wireless device over the wireless network. Thus, the relatively smaller bandwidth of the wireless network is preserved by transmitting a minimal amount of information over the wireless network while leaving more extensive communications to occur over higher bandwidth external networks.
    Type: Grant
    Filed: October 6, 2000
    Date of Patent: May 17, 2005
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc Seinfeld
  • Patent number: 6839761
    Abstract: Methods, systems, computer program products and data structures are described which allow a client to communicate with a server even though multiple proxies that require different authentication data must be traversed to allow such communication. In operation, the client first authenticates to a first proxy using authentication data appropriate for the first proxy. The client then authenticates to a second proxy using different authentication data that is appropriate for the second proxy. This proxy authentication continues through as many proxies as necessary until the client is in communication with the server.
    Type: Grant
    Filed: April 19, 2001
    Date of Patent: January 4, 2005
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Kevin T. Damour, Michael Kramer
  • Patent number: 6674767
    Abstract: A flexible gateway accommodates data transfer from a data origination device over a wide variety of networks to a wide variety of destination devices, even if those networks use different protocols, and even if the devices recognize different data formats. Thus, the gateway can perform work previously requiring numerous gateways. After the gateway receives information from a data source, the gateway identifies the specific device type and the specific network type to which the information is to be routed. The gateway then calls device and network drivers associated with the specific device and network identified with the destination device. These drivers then manipulate the data using the device driver into the format recognized by the destination device, and then provide the manipulated data to the destination device over the identified network using the compatible protocol. Thus, the destination device properly receives and interprets the information provided by the data source.
    Type: Grant
    Filed: October 4, 1999
    Date of Patent: January 6, 2004
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Neil S. Fishman, Leif Pederson, Marc E. Seinfeld
  • Publication number: 20020157019
    Abstract: Methods, systems, and computer program products for negotiating a secure end-to-end connection using a proxy server as an intermediary. The client first negotiates a secure connection between the client and the proxy so that any credentials exchanged will be encrypted. After the exchange of authentication credentials, the secure client-proxy connection is altered so that no further encryption takes place. The client and server then negotiate a secure end-to-end connection through the proxy, with the secure end-to-end connection being encapsulated within the insecure client-proxy connection. In this way, the overhead of creating a separate client-proxy connection for the secure end-to-end connection may be avoided, but the insecure client-proxy connection introduces only minimal overhead because it no longer encrypts any data that it carries.
    Type: Application
    Filed: April 19, 2001
    Publication date: October 24, 2002
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc E. Seinfeld, Michael Kramer
  • Publication number: 20020156906
    Abstract: Methods, systems, computer program products and data structures are described which allow a client to communicate with a server even though multiple proxies that require different authentication data must be traversed to allow such communication. In operation, the client first authenticates to a first proxy using authentication data appropriate for the first proxy. The client then authenticates to a second proxy using different authentication data that is appropriate for the second proxy. This proxy authentication continues through as many proxies as necessary until the client is in communication with the server.
    Type: Application
    Filed: April 19, 2001
    Publication date: October 24, 2002
    Inventors: Donald J. Kadyk, Neil S. Fishman, Kevin T. Damour, Michael Kramer
  • Publication number: 20020099957
    Abstract: An external client securely accesses a private corporate network using a communications device, but without the communications device being required to communicate through the private corporate network when communicating with resources external to the private corporate network. The external client establishes a connection with the private corporate network over the public network such as the Internet using, for example, Transmission Control Protocol (TCP). The external client then provides security to the connection by running, for example, the Secure Socket Layer (SSL) protocol over the TCP protocol. During the ensuing session with the private corporate network, the communications device establishes a subsequent connection(s) with the external resource.
    Type: Application
    Filed: January 24, 2001
    Publication date: July 25, 2002
    Inventors: Michael Kramer, Donald J. Kadyk, Neil S. Fishman
  • Publication number: 20020099727
    Abstract: Methods, systems, and computer program products for synchronizing data stored at one or more message clients with data stored at a message server where the message clients may receive update notifications and may represent the data using different data structures than the message server uses to represent the same data. A token is associated with each data change that occurs at the message server. The message server sends each change and associated token to the message clients. When the message clients request a synchronization, the tokens they received are returned to the message server for comparison with the tokens the message server sent to the message clients. If the message clients do not return a particular token, the message server determines that the clients did not receive the corresponding change and resends the change to the message clients. Tokens may also be used to divide a change into one or more portions, with only one portion being provided initially.
    Type: Application
    Filed: January 24, 2001
    Publication date: July 25, 2002
    Inventors: Donald J. Kadyk, Neil S. Fishman, Marc E. Seinfield
  • Patent number: 5930399
    Abstract: Characters that are not among those recognized for use in page messages are encoded using a subset of the recognized printable characters to enable the data comprising a page object to be transmitted over a paging channel. In one preferred form of the invention, a subset of the recognized printable characters are designated as encoding characters for use in encoding data that includes characters not among the recognized printable character set. Further, each time that one of the encoding characters occurs in the input data, the byte representing that character must also be encoded. To encode the characters, the byte is divided into nibbles. Each nibble is a hexadecimal digit that is encoded using one of the 16 encoding characters. If a byte of the input data repeats more than four times in succession, it is run length encoded (RLE) during the encoding process to compress the encoded data.
    Type: Grant
    Filed: April 3, 1997
    Date of Patent: July 27, 1999
    Assignee: Microsoft Corporation
    Inventors: Donald J. Kadyk, Vinay Deo, Joan R. Anastasio