Patents by Inventor Kanna Shimizu

Kanna Shimizu 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: 20140317169
    Abstract: A method, apparatus, and computer program product are provided in order to provide for the specification of server-side data mashups. A method is provided comprising receiving a request for data of an object type; retrieving a data model for the object type; interpreting one or more annotations specifying data to be retrieved from one or more sources to be combined with the object data; retrieving data from one or more sources based on the annotations; generating an output payload by merging the object data and the retrieved data; and causing the output payload to be returned to a client application. A corresponding apparatus and a computer program product are also provided.
    Type: Application
    Filed: April 19, 2013
    Publication date: October 23, 2014
    Inventors: Kanna Shimizu, Balaji Rajamani, (David) Ngai Lam
  • Patent number: 8438658
    Abstract: Mechanisms that provide a sealed storage in a data processing device are provided. Processors of the data processing device may operate in a hardware isolation mode which allows a process to execute in an isolated environment on a processor and associated memory thereby being protected from access by other elements of the data processing device. In addition, a hardware controlled authentication and decryption mechanism is provided that is based on a hardware core key. These two features are tied together such that authentication occurs every time the isolation mode is entered. Based on the core key, which is only accessible from the hardware when in isolation mode, a chain of trust is generated by providing authentication keys for authenticating a next piece of software in the chain, in each piece of software that must be loaded, starting with the core key.
    Type: Grant
    Filed: February 2, 2006
    Date of Patent: May 7, 2013
    Assignee: International Business Machines Corporation
    Inventors: H. Peter Hofstee, Kanna Shimizu
  • Patent number: 8433927
    Abstract: A method, computer program product, and data processing system are disclosed for protecting sensitive program code (and also data) from unauthorized access in a memory space not subject to protection fault detection. In a preferred embodiment, secure initialization hardware loads the sensitive code from a storage location accessible only to the secure initialization hardware itself and decrypts the sensitive code into a portion of the processor-accessible memory space, from which the code is executed. Once execution of the sensitive code has completed, all or at least a portion of the code is deleted before passing control to application software. If the application software needs to cause the sensitive code to be executed, the secure initialization hardware is activated to reload/decrypt a fresh copy of the sensitive code into the memory space and cause the code to be executed. Before control is returned to the application software, the sensitive code is again deleted to prevent unauthorized access.
    Type: Grant
    Filed: May 29, 2007
    Date of Patent: April 30, 2013
    Assignee: International Business Machines Corporation
    Inventors: Wilfred E. Plouffe, Jr., Kanna Shimizu
  • Patent number: 8422674
    Abstract: A method, computer program product, and data processing system for protecting sensitive program code and data (including persistently stored data) from unauthorized access. Dedicated hardware decrypts an encrypted kernel into memory for execution. When an application is to be executed, the kernel computes one or more secrets by cryptographically combining information contained in the application with secret information contained in the kernel itself. The kernel then deletes its secret information and passes the computed secrets to the application. To store data persistently in memory, the application uses one of the computed secrets to encrypt the data prior to storage. If the kernel starts another instance of the same application, the kernel (which will have been re-decrypted to restore the kernel's secrets) will compute the same one or more secrets, thus allowing the second application instance to access the data encrypted by the first application instance.
    Type: Grant
    Filed: May 29, 2007
    Date of Patent: April 16, 2013
    Assignee: International Business Machines Corporation
    Inventors: Masana Murase, Wilfred E. Plouffe, Jr., Kanna Shimizu, Vladimir Zbarsky
  • Patent number: 8332636
    Abstract: A method, computer program product, and data processing system are disclosed for ensuring that applications executed in the data processing system originate only from trusted sources are disclosed. In a preferred embodiment, a secure operating kernel maintains a “key ring” containing keys corresponding to trusted software vendors. The secure kernel uses vendor keys to verify that a given application was signed by an approved vendor. To make it possible for users to execute software from independent software developers, an administrative user may disable the above-described vendor key-checking as an option.
    Type: Grant
    Filed: October 2, 2007
    Date of Patent: December 11, 2012
    Assignee: International Business Machines Corporation
    Inventors: Masana Murase, Masaharu Sakamoto, Kanna Shimizu, Vladimir Zbarsky
  • Patent number: 8332635
    Abstract: A method, computer program product, and data processing system provide an updateable encrypted operating kernel. Secure initialization hardware decrypts a minimal secure kernel containing sensitive portions of data and/or code into a portion of the processor-accessible memory space, from which the kernel is executed. Most system software functions are not directly supported by the secure kernel but are provided by dynamically loaded kernel extensions that are encrypted with a public key so that they can only be decrypted with a private key possessed by the secure kernel. The public/private key pair is processor-specific. Before passing control to a kernel extension, the secure kernel deletes a subset of its sensitive portions, retaining only those sensitive portions needed to perform the task(s) delegated to the kernel extension. Which sensitive portions are retained is determined by a cryptographic key with which the kernel extension is signed.
    Type: Grant
    Filed: May 29, 2007
    Date of Patent: December 11, 2012
    Assignee: International Business Machines Corporation
    Inventors: Wilfred E. Plouffe, Jr., Kanna Shimizu, Vladimir Zbarsky
  • Patent number: 8190917
    Abstract: A system, method and program product that securely saves and restores the context of a secure program loader is presented. An interrupt is sent to a secured program running on an special purpose processor core that is running in isolation mode. The special purpose processor core is included in a heterogeneous processing environment that includes the special purpose processor cores (including the isolated special purpose processor core), and one or more general purpose processors. Each of the processors can access a shared memory. The isolated special purpose processor core includes a local memory that is inaccessible from the other processors. The system encrypts the secured program's context using a randomly generated encryption key and stores the context in the shared memory. A secure loader's context is updated with the generated encryption key and then the secure loader's context is saved to the shared memory.
    Type: Grant
    Filed: September 12, 2006
    Date of Patent: May 29, 2012
    Assignee: International Business Machines Corporation
    Inventors: Mark Richard Nutter, Kanna Shimizu
  • Patent number: 8166304
    Abstract: A method, computer program product, and data processing system are disclosed for ensuring that applications executed in the data processing system originate only from trusted sources are disclosed. In a preferred embodiment, a secure operating kernel maintains a “key ring” containing keys corresponding to trusted software vendors. The secure kernel uses vendor keys to verify that a given application was signed by an approved vendor. To make it possible for independent developers to develop software for the herein-described platform, a “global key pair” is provided in which both the public and private keys of the pair are publicly known, so that anyone may sign an application with the global key. Such an application may be allowed to execute by including the global key pair's public key in the key ring as a “vendor key” or, conversely, it may be disallowed by excluding the global public key from the key ring.
    Type: Grant
    Filed: October 2, 2007
    Date of Patent: April 24, 2012
    Assignee: International Business Machines Corporation
    Inventors: Masana Murase, Wilfred E. Plouffe, Jr., Kanna Shimizu, Vladimir Zbarsky
  • Patent number: 8108905
    Abstract: A system, method, and computer-usable medium for an isolated process to control address translation. According to a preferred embodiment of the present invention, an isolation region that is accessible only to a first processing unit in a data processing system is created. A loader is executed to load a secure process in the isolation region. If the secure process is determined to be allowed to issue real mode direct memory access commands, real mode direct memory access commands are enabled to allow the secure process to issue non-translated direct memory access commands.
    Type: Grant
    Filed: October 26, 2006
    Date of Patent: January 31, 2012
    Assignee: International Business Machines Corporation
    Inventors: Charles R. Johns, Kanna Shimizu
  • Patent number: 8095802
    Abstract: A system, method and program product for securely saving a program context to a shared memory is presented. A secured program running on an special purpose processor core running in isolation mode is interrupted. The isolated special purpose processor core is included in a heterogeneous processing environment, that includes purpose processors and general purpose processor cores that each access a shared memory. In isolation mode, the special purpose processor core's local memory is inaccessible from the other heterogeneous processors. The secured program's context is securely saved to the shared memory using a random persistent security data. The lines of code stored in the isolated special purpose processor core's local memory are read along with data values, such as register settings, set by the secured program. The lines of code and data values are encrypted using the persistent security data, and the encrypted code lines and data values are stored in the shared memory.
    Type: Grant
    Filed: September 12, 2006
    Date of Patent: January 10, 2012
    Assignee: International Business Machines Corporation
    Inventors: Mark Richard Nutter, Kanna Shimizu
  • Patent number: 8010804
    Abstract: A method, system, and computer-usable medium are disclosed for controlling unauthorized access to encrypted application program code. Predetermined program code is encrypted with a first key. The hash value of an application verification certificate associated with a second key is calculated by performing a one-way hash function. Binding operations are then performed with the first key and the calculated hash value to generate a third key, which is a binding key. The binding key is encrypted with a fourth key to generate an encrypted binding key, which is then embedded in the application. The application is digitally signed with a fifth key to generate an encrypted and signed program code image. To decrypt the encrypted program code, the application verification key certificate is verified and in turn is used to verify the authenticity of the encrypted and signed program code image. The encrypted binding key is then decrypted with a sixth key to extract the binding key.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: August 30, 2011
    Assignee: International Business Machines Corporation
    Inventors: Masana Murase, Kanna Shimizu, Wilfred Edmund Plouffe, Jr.
  • Patent number: 7945789
    Abstract: A system and method for securely restoring software program context is presented. A special purpose processor core is included in a heterogeneous processing environment where each processor can access a shared memory. The isolated special purpose processor core includes an isolated local memory. The isolated special purpose processor core receives an identifier corresponding to the secured program. The identifier is used to read an encrypted context of the secured program from the shared memory. The encrypted context is decrypted using an encryption key. The decrypted context is stored in the isolated special purpose processor core's local memory. The secured program's context integrity is verified by using a persistent security data that is retrieved from a secure location, such as a persistent storage register that can only be accessed when the special purpose processor core is running in isolation mode. If the context is verified, the secured program is executed.
    Type: Grant
    Filed: September 12, 2006
    Date of Patent: May 17, 2011
    Assignee: International Business Machines Corporation
    Inventors: Mark Richard Nutter, Kanna Shimizu
  • Patent number: 7934063
    Abstract: A method of invoking power processor element (PPE) serviced C library functions on a synergistic processing element (SPE) running in isolated mode. When the SPE initiates a PPE-serviced function, an SPE stub routine allocates a parameter buffer in an open area of a local store (LS) memory within the SPE. The LS memory includes an open area accessible to the PPE, and an isolated area inaccessible to the PPE. The SPE stub routine copies function parameters corresponding to the PPE-serviced function to a buffer within the open area of the LS memory, and writes a message word, which contains an identification variable of the PPE-serviced function and a location variable of the function parameters, to the open area. When execution is temporarily suspended on the SPE, the PPE reads the message word from the open area of the LS memory and executes the PPE-serviced function.
    Type: Grant
    Filed: March 29, 2007
    Date of Patent: April 26, 2011
    Assignee: International Business Machines Corporation
    Inventors: Masana Murase, Wilfred E. Plouffe, Jr., Masaharu Sakamoto, Kanna Shimizu, Vladimir Zbarsky
  • Patent number: 7886162
    Abstract: A method, computer program product, and data processing system for executing larger-than-physical-memory applications while protecting sensitive program code (and also data) from unauthorized access in a memory space not subject to protection fault or page fault detection are disclosed. Large applications are accommodated by providing a mechanism for secure program overlays, in which a single large application is broken into two or more smaller applications (overlays) that can be executed from the same memory space by overwriting one of the smaller applications with another of the smaller applications when the latter needs to be executed. So that the data may be shared among these smaller applications, each of the applications contains embedded cryptographic keys, which may be used to encrypt or decrypt information to be stored persistently while control is transferred from one application to the other.
    Type: Grant
    Filed: May 29, 2007
    Date of Patent: February 8, 2011
    Assignee: International Business Machines Corporation
    Inventors: Masana Murase, Wilfred E. Plouffe, Jr., Kanna Shimizu, Masaharu Sakamoto, Vladimir Zbarsky
  • Publication number: 20100037068
    Abstract: A method, system, and computer-usable medium are disclosed for controlling unauthorized access to encrypted application program code. Predetermined program code is encrypted with a first key. The hash value of an application verification certificate associated with a second key is calculated by performing a one-way hash function. Binding operations are then performed with the first key and the calculated hash value to generate a third key, which is a binding key. The binding key is encrypted with a fourth key to generate an encrypted binding key, which is then embedded in the application. The application is digitally signed with a fifth key to generate an encrypted and signed program code image. To decrypt the encrypted program code, the application verification key certificate is verified and in turn is used to verify the authenticity of the encrypted and signed program code image. The encrypted binding key is then decrypted with a sixth key to extract the binding key.
    Type: Application
    Filed: August 8, 2008
    Publication date: February 11, 2010
    Inventors: Masana Murase, Kanna Shimizu, Wilfred Edmund Plouffe, JR.
  • Patent number: 7660769
    Abstract: A system and method for digital content player with secure processing vault is presented. A system uses an attached processing unit and a local storage area as a hardware-based secure processing vault. The secure processing vault calculates a title key based upon stored device keys, and decrypts encrypted/encoded digital content using the calculated title key. The decryption process results in encoded digital content, which remains within the secure processing vault until the secure processing vault decodes the encoded digital content. The decoded digital content is then passed to a main processing unit or a graphics card for further processing. In one embodiment, a secure processing vault may process multiple threads in parallel. In another embodiment, multiple secure processing vaults may be used to process a single, highly computational thread.
    Type: Grant
    Filed: September 12, 2006
    Date of Patent: February 9, 2010
    Assignee: International Business Machines Corporation
    Inventor: Kanna Shimizu
  • Publication number: 20090086974
    Abstract: A method, computer program product, and data processing system are disclosed for ensuring that applications executed in the data processing system originate only from trusted sources are disclosed. In a preferred embodiment, a secure operating kernel maintains a “key ring” containing keys corresponding to trusted software vendors. The secure kernel uses vendor keys to verify that a given application was signed by an approved vendor. To make it possible for independent developers to develop software for the herein-described platform, a “global key pair” is provided in which both the public and private keys of the pair are publicly known, so that anyone may sign an application with the global key. Such an application may be allowed to execute by including the global key pair's public key in the key ring as a “vendor key” or, conversely, it may be disallowed by excluding the global public key from the key ring.
    Type: Application
    Filed: October 2, 2007
    Publication date: April 2, 2009
    Inventors: Masana Murase, Wilfred E. Plouffe, JR., Kanna Shimizu, Vladimir Zbarsky
  • Publication number: 20090089579
    Abstract: A method, computer program product, and data processing system are disclosed for ensuring that applications executed in the data processing system originate only from trusted sources are disclosed. In a preferred embodiment, a secure operating kernel maintains a “key ring” containing keys corresponding to trusted software vendors. The secure kernel uses vendor keys to verify that a given application was signed by an approved vendor. To make it possible for users to execute software from independent software developers, an administrative user may disable the above-described vendor key-checking as an option.
    Type: Application
    Filed: October 2, 2007
    Publication date: April 2, 2009
    Inventors: Masana Murase, Masaharu Sakamoto, Kanna Shimizu, Vladimir Zbarsky
  • Publication number: 20080301440
    Abstract: A method, computer program product, and data processing system for providing an updateable encrypted operating kernel are disclosed. In a preferred embodiment, secure initialization hardware decrypts a minimal secure kernel containing sensitive portions of data and/or code into a portion of the processor-accessible memory space, from which the kernel is executed. Most system software functions are not directly supported by the secure kernel but are provided by dynamically loaded kernel extensions that are encrypted with a public key so that they can only be decrypted with a private key possessed by the secure kernel. The public/private key pair is processor-specific. Before passing control to a kernel extension the secure kernel deletes a subset of its sensitive portions, retaining only those sensitive portions needed to perform the task(s) delegated to the kernel extension. Which sensitive portions are retained is determined by a cryptographic key with which the kernel extension is signed.
    Type: Application
    Filed: May 29, 2007
    Publication date: December 4, 2008
    Inventors: Wilfred E. Plouffe, JR., Kanna Shimizu, Vladimir Zbarsky
  • Publication number: 20080298581
    Abstract: A method, computer program product, and data processing system for protecting sensitive program code and data (including persistently stored data) from unauthorized access are disclosed. Dedicated hardware decrypts an encrypted kernel into memory for execution. When an application is to be executed, the kernel computes one or more secrets by cryptographically combining information contained in the application with secret information contained in the kernel itself. The kernel then deletes its secret information and passes the computed secrets to the application. To store data persistently in memory, the application uses one of the computed secrets to encrypt the data prior to storage. If the kernel starts another instance of the same application, the kernel (which will have been re-decrypted to restore the kernel's secrets) will compute the same one or more secrets, thus allowing the second application instance to access the data encrypted by the first application instance.
    Type: Application
    Filed: May 29, 2007
    Publication date: December 4, 2008
    Inventors: Masana Murase, Wilfred E. Plouffe, JR., Kanna Shimizu, Vladimir Zbarsky