Patents by Inventor James P. Schneider

James P. Schneider 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: 20100287173
    Abstract: A method and system searches documents that contain an ordered pair of keywords using search indices stored in multiple storage locations. In one embodiment, a server receives the search request that includes an ordered pair of keywords. The server hashes each keyword with multiple hash functions to obtain a hash vector pair, which are used to index a chain of search indices. Hash values in the hash vector pair are used to locate the chain of search indices that are stored across multiple storage locations. The last search index in the chain provides identifiers of documents containing the ordered pair of keywords, with a distance between the keywords in the documents below a predetermined limit. The documents can be retrieved from document repositories using the identifiers.
    Type: Application
    Filed: May 11, 2009
    Publication date: November 11, 2010
    Applicant: Red Hat, Inc.
    Inventor: James P. Schneider
  • Patent number: 7821426
    Abstract: A system stores compressed literal symbols in a first data block and encoded literal symbols in a second data block. The compressed literal symbols correspond to a first group of literal symbols and the encoded literal symbols correspond to a second group of literal symbols. Each of the second group of literal symbols occurs subsequently in a symbol stream to a literal symbol with the same value in the first group of literal symbols.
    Type: Grant
    Filed: September 9, 2009
    Date of Patent: October 26, 2010
    Assignee: Red Hat, Inc.
    Inventor: James P. Schneider
  • Patent number: 7817069
    Abstract: A data processing method where a source bit stream is manipulated to produce four intermediate streams: flag bits, literals, offsets and lengths. Flag bits are grouped into multi-bit units, and an output stream containing flag units, literals, offsets and lengths is emitted. The output stream occupies fewer bits than the source bit stream, but encodes all the data of the source bit stream.
    Type: Grant
    Filed: January 12, 2009
    Date of Patent: October 19, 2010
    Assignee: Red Hat, Inc.
    Inventor: James P. Schneider
  • Publication number: 20100228703
    Abstract: Some embodiments of a method and an apparatus to reduce memory required for prediction by partial matching (PPM) models usable in data compression have been presented. In one embodiment, statistics of received data are accumulated in a tree of dynamic tree-type data structures. The data is compressed based on the statistics. The tree of dynamic tree-type data structures may be stored in a computer-readable storage medium.
    Type: Application
    Filed: February 26, 2009
    Publication date: September 9, 2010
    Inventor: James P. Schneider
  • Publication number: 20100223456
    Abstract: Techniques for implementing security within a browser of a data processing system are described herein. According to one embodiment, first data representing a user interaction with a Web page presented by a browser application is encrypted at an application level by a cipher module communicatively coupled to the browser application running at a local client. A JavaScript module embedded within the browser application is configured to transmit the encrypted first data over a network to a remote server for updating the Web page. In response to second data received from the remote server, the cipher module is configured to decrypt the second data at the application level and the decrypted second data is then rendered by the browser application to update the Web page without having to reload the entire Web page. Other methods and apparatuses are also described.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Applicant: RED HAT INC.
    Inventor: James P. Schneider
  • Publication number: 20100219993
    Abstract: Coding efficiently in non-power-of-two ranges. Coding is performed in an N-bit system, where certain codes are represented with N bits and other codes are represented with (N+1) bits. An example is where the other codes may have an N-bit representation used to represent multiple values, with the additional bit being disambiguation information provided to distinguish the codes having multiple values. Thus, N bits are used to represent most codes, and an extra bit is used to represent other codes. The number of bits per element used for representing a sequence is, on average, close to a theoretical minimum for N-bits.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Applicant: Red Hat, Inc.
    Inventor: James P. Schneider
  • Publication number: 20100223358
    Abstract: Techniques for thwarting keylogger using a proxy are described herein. According to one embodiment, in response to a request received from a client for accessing a Web page provided from a remote Web server over a network, a proxy server retrieves the Web page from the remote Web server and presents the Web page to the client. The proxy server further presents a virtual keyboard to the client to allow a user of the client to enter one or more keys in an input field of the Web page without having to type at the client for the purposes of logging into the Web site. Thereafter, the proxy server directs traffic between the client and the remote Web server over the network. Other methods and apparatuses are also described.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Applicant: Red Hat Inc.
    Inventor: James P. Schneider
  • Publication number: 20100223613
    Abstract: A system and method for isolating processes executing within a computing device. A process is loaded into a virtual machine operating under the control of a hypervisor communicatively interfaced with an operating system kernel. A subset of an application programming interface (API) is exposed to the virtual machine enabling the process to interface with the operating system kernel via the subset of the API. The process is then executed in the virtual machine.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Inventor: James P. Schneider
  • Publication number: 20100220855
    Abstract: Some embodiments of a method and an apparatus to strengthen key schedule for arcfour have been presented. In one embodiment, an S array of a predetermined size is initialized. The S array is usable in a key generating process of arcfour encryption. The key generation process is extended to generate keys, which are substantially random and substantially unbiased. Using the keys generated, a stream cipher performs arcfour encryption on plaintext data to output ciphertext data.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Inventor: James P. Schneider
  • Publication number: 20100217938
    Abstract: Some embodiments of a method and an apparatus to improve locality of references for objects have been presented. In one embodiment, an access counter is provided to each of a set of objects in a computing system. The access counter is incremented each time a respective object is accessed. In response to a request to organize the objects, the objects are sorted by their respective counts of access in the access counters.
    Type: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Inventor: James P. Schneider
  • Publication number: 20100218174
    Abstract: A compiler is loaded by a computing device using an evaluation function that is included in a program in a compiled form. The evaluation function causes the compiler to compile source code for the program, wherein the source code includes new instructions that are uncompiled, and wherein compiling the source code generates compiled code that includes the new instructions. The evaluation function loads the compiled code into memory, retrieves the new instructions, and executes the new instructions. The evaluation function may perform these operations during runtime of the program that includes the evaluation function.
    Type: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Inventor: James P. Schneider
  • Publication number: 20100217841
    Abstract: A network appliance sends a configuration request to multiple different servers, each of which is associated with a different environment. A response is received from at least one server. Each received response includes configuration data that pertains to an environment associated with the server from which the response is received. The network appliance is then configured based on the configuration data included in the response to enable the network appliance to operate in the environment associated with the server from which the response originated.
    Type: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Inventor: James P. Schneider
  • Publication number: 20100218201
    Abstract: Some embodiments of a method and an apparatus to a method and an apparatus to implement secure system call wrapper have been presented. In one embodiment, a system call wrapper is used to validate parameters of a system call directed to a kernel from a user-space process. The user-space process supplies the parameters of the system call. The parameters are protected from being accessed by processes in the user-space after the parameters have been validated.
    Type: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Inventor: James P. Schneider
  • Publication number: 20100217978
    Abstract: A method and system for distributing a secret to a plurality of computing systems. In one embodiment, the method determines the number (n) of shares to generate and a threshold number (k) of the shares from which the secret can be reconstructed. The method further chooses n coprime random bit strings in any one of general rings as moduli, the general rings including one or more non-integer rings. The secret is then embedded in a bit string which is at least one bit longer than the product of any k?1 moduli and at least one bit shorter than the product of any k moduli. The method further computes shares of the bit string for distribution to n computing systems, each share including one of the moduli and a corresponding remainder.
    Type: Application
    Filed: August 29, 2007
    Publication date: August 26, 2010
    Inventor: James P. Schneider
  • Publication number: 20100217986
    Abstract: A method and system distributes N shares of a secret among cooperating entities by forming a mathematical construct that has an embedded internal structure to allow authentication of a reconstructed secret. The mathematical construct can be a splitting polynomial constructed using the secret, a key and a message authentication code (MAC) as coefficients. The splitting polynomial is evaluated at N random evaluation points to obtain N result values. N shares of the secret are generated and distributed among the cooperating entities for storage. A reconstructed secret can be authenticated by computing the MAC of the reconstructed secret and verifying a relationship among the coefficients of a reconstructed splitting polynomial using the MAC. If the coefficients do not satisfy the relationship, one or more additional shares of the secret can be used to reconstruct the splitting polynomial and the secret.
    Type: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Applicant: Red Hat, Inc.
    Inventor: James P. Schneider
  • Publication number: 20100218261
    Abstract: A system and method for receiving a request to load a computer application into a memory for execution, analyzing the computer application to identify one or more join points, injecting aspect computer code into the computer application at the one or more join points, wherein the aspect computer code to regulate the execution of restricted operations initiated by the computer application based on a restricted operations profile associated with the aspect computer code, and executing the computer application having the aspect computer code injected therein.
    Type: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Inventor: James P. Schneider
  • Publication number: 20100217947
    Abstract: Some embodiments of discontiguous object addressing have been presented. In one embodiment, a set of objects, each having one or more properties, are stored in a memory of a computer system. The memory is divided into chunks. The properties of at least one of the objects are stored in discontiguous chunks of the memory. Furthermore, a processor in the computer system may independently access the individual properties in the discontiguous chunks of memory.
    Type: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Inventor: James P. Schneider
  • Publication number: 20100215172
    Abstract: A method and system distributes N shares of a secret among cooperating entities by calculating the multiplicative inverses of the secret. In one embodiment, a distributor selects N distinct prime numbers and forms unique subsets of the prime numbers, with each subset containing K of the N prime numbers (N>=K), where K is a threshold number of shares necessary to reconstruct the secret. The distributor calculates a product of the prime numbers in each subset, and, for each subset, calculates the multiplicative inverse of the secret modulo the product. A total of N shares are generated, with each share containing the multiplicative inverses and one of the prime numbers. The N shares are distributed to the cooperating entities for secret sharing.
    Type: Application
    Filed: February 26, 2009
    Publication date: August 26, 2010
    Applicant: Red Hat, Inc.
    Inventor: James P. Schneider
  • Patent number: 7773000
    Abstract: Coding efficiently in non-power-of-two ranges. Coding is performed in an N-bit system, where certain codes are represented with N bits and other codes are represented with (N+1) bits. An example is where the other codes may have an N-bit representation used to represent multiple values, with the additional bit being disambiguation information provided to distinguish the codes having multiple values. Thus, N bits are used to represent most codes, and an extra bit is used to represent other codes. The number of bits per element used for representing a sequence is, on average, close to a theoretical minimum for N-bits.
    Type: Grant
    Filed: February 27, 2009
    Date of Patent: August 10, 2010
    Assignee: Red Hat, Inc.
    Inventor: James P. Schneider
  • Patent number: 7764202
    Abstract: An input stream of characters is received. The input stream is parsed into a plurality of strings each of which include one or more of the characters, wherein each parsed string is a longest match to a string entry in a data structure. An output stream is generated that includes a first portion having literal values of the characters and a separate and distinct second portion having index values corresponding to string entries in the data structure that match parsed strings from the input stream.
    Type: Grant
    Filed: November 26, 2008
    Date of Patent: July 27, 2010
    Assignee: Red Hat, Inc.
    Inventor: James P. Schneider