Patents by Inventor John A. Craft
John A. Craft 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: 11601914Abstract: A method may include receiving an indication that an electronic alert is to be transmitted to a user; obtaining contextual information associated with the user; determining a first time for presenting the electronic alert to the user based in part on the contextual information; transmitting the electronic alert to a computing device associated with the user at the first time; storing the electronic alert in a message feed data structure; receiving a request to view the electronic alert at a second time, the second time occurring after the first time; in response to the request, retrieving the electronic alert from the message feed data structure; and transmitting the electronic alert at the second time.Type: GrantFiled: November 22, 2021Date of Patent: March 7, 2023Assignee: Wells Fargo Bank, N.A.Inventors: Gene C. Baker, Jr., John A. Craft, Sai Ganesh, John Phillip Marquiss, Sr., Thomas A. Obreiter, John Lee Thompson, Reynaldo B. Timonera, Kenneth Bryan von Hagel, Jingjiu Wang, David W. Loomis, Irina Seabolt, Umamaheswari Veeraswami
-
Patent number: 11212769Abstract: A method may include receiving an indication that an electronic alert is to be transmitted to a user; obtaining contextual information associated with the user; determining a first time for presenting the electronic alert to the user based in part on the contextual information; transmitting the electronic alert to a computing device associated with the user at the first time; storing the electronic alert in a message feed data structure; receiving a request to view the electronic alert at a second time, the second time occurring after the first time; in response to the request, retrieving the electronic alert from the message feed data structure; and transmitting the electronic alert at the second time.Type: GrantFiled: June 1, 2020Date of Patent: December 28, 2021Assignee: Wells Fargo Bank, N.A.Inventors: Gene C. Baker, Jr., John A. Craft, Sai Ganesh, John Phillip Marquiss, Sr., Thomas A. Obreiter, John Lee Thompson, Reynaldo B. Timonera, Kenneth Bryan von Hagel, Jingjiu Wang, David W. Loomis, Irina Seabolt, Umamaheswari Veeraswami
-
Publication number: 20210150628Abstract: A system, method, and computer media are provided for operating an interactive virtual retirement tool, comprising inputting user information into a memory of a computer system related to a plurality of quantifiable life goal elements, receiving a selection of one of the life goal elements, generating display information for the selected life goal element along with: a) image data associated with a value of the selected life goal element, and b) an adjustment control associated with the selected life goal element that allows modifying a value associated with the selected life goal element, receiving an adjustment from the adjustment control to modify the value to a new value, obtaining new image data associated with the new value using a processor of the computer system, and generating display information for the new image data.Type: ApplicationFiled: March 9, 2017Publication date: May 20, 2021Inventors: John A. Craft, Sai Ganesh, John Phillip Marquiss, SR., Thomas A. Obreiter, John Lee Thompson, Reynaldo B. Timonera, Kenneth Bryan von Hagel, Jingjiu Wang, David W. Loomis, Irina Seabolt, Umamaheswari Veeraswami
-
Patent number: 10674476Abstract: A method may include receiving an indication that an electronic alert is to be transmitted to a user; obtaining contextual information associated with the user; determining a first time for presenting the electronic alert to the user based in part on the contextual information; transmitting the electronic alert to a computing device associated with the user at the first time; storing the electronic alert in a message feed data structure; receiving a request to view the electronic alert at a second time, the second time occurring after the first time; in response to the request, retrieving the electronic alert from the message feed data structure; and transmitting the electronic alert at the second time.Type: GrantFiled: March 10, 2017Date of Patent: June 2, 2020Assignee: Wells Fargo Bank, N.A.Inventors: Gene C. Baker, Jr., John A. Craft, Sai Ganesh, John Phillip Marquiss, Sr., Thomas A. Obreiter, John Lee Thompson, Reynaldo B. Timonera, Kenneth Bryan von Hagel, Jingjiu Wang, David W. Loomis, Irina Seabolt, Umamaheswari Veeraswami
-
Patent number: 8838950Abstract: The present invention provides for authenticating code and/or data and providing a protected environment for execution. The present invention provides for dynamically partitioning and un-partitioning a local store for the authentication of code or data. The local store is partitioned into an isolated and non-isolated section. Code or data is loaded into the isolated section. The code or data is authenticated in the isolated section of the local store. After authentication, the code is executed. After execution, the memory within the isolated region of the attached processor unit is erased, and the attached processor unit de-partitions the isolated section within the local store.Type: GrantFiled: June 23, 2003Date of Patent: September 16, 2014Assignee: International Business Machines CorporationInventors: David John Craft, Michael Norman Day, Harm Peter Hofstee, Charles Ray Johns, John Samuel Liberty
-
Patent number: 7650491Abstract: A secure communication methodology is presented. The client device is configured to download application code and/or content data from a server operated by a service provider. Embedded within the client is a client private key, a client serial number, and a copy of a server public key. The client forms a request, which includes the client serial number, encrypts the request with the server public key, and sends the download request to the server. The server decrypts the request with the server's private key and authenticates the client. The received client serial number is used to search for a client public key that corresponds to the embedded client private key. The server encrypts its response, which includes the requested information, with the client public key of the requesting client, and only the private key in the requesting client can be used to decrypt the information downloaded from the server.Type: GrantFiled: November 29, 2008Date of Patent: January 19, 2010Assignee: International Business Machines CorporationInventors: David John Craft, Pradeep K. Dubey, Harm Peter Hofstee, James Allan Kahle
-
Patent number: 7603703Abstract: A secure communication methodology is presented. The client device is configured to download application code and/or content data from a server operated by a service provider. Embedded within the client is a client private key, a client serial number, and a copy of a server public key. The client forms a request, which includes the client serial number, encrypts the request with the server public key, and sends the download request to the server. The server decrypts the request with the server's private key and authenticates the client. The received client serial number is used to search for a client public key that corresponds to the embedded client private key. The server encrypts its response, which includes the requested information, with the client public key of the requesting client, and only the private key in the requesting client can be used to decrypt the information downloaded from the server.Type: GrantFiled: April 12, 2001Date of Patent: October 13, 2009Assignee: International Business Machines CorporationInventors: David John Craft, Pradeep K. Dubey, Harm Peter Hofstee, James Allan Kahle
-
Publication number: 20090083542Abstract: A secure communication methodology is presented. The client device is configured to download application code and/or content data from a server operated by a service provider. Embedded within the client is a client private key, a client serial number, and a copy of a server public key. The client forms a request, which includes the client serial number, encrypts the request with the server public key, and sends the download request to the server. The server decrypts the request with the server's private key and authenticates the client. The received client serial number is used to search for a client public key that corresponds to the embedded client private key. The server encrypts its response, which includes the requested information, with the client public key of the requesting client, and only the private key in the requesting client can be used to decrypt the information downloaded from the server.Type: ApplicationFiled: November 29, 2008Publication date: March 26, 2009Inventors: David John Craft, Pradeep K. Dubey, Harm Peter Hofstee, James Allan Kahle
-
Publication number: 20080294703Abstract: A computer implemented method, apparatus, and computer program product for obtaining an absolute path name for an open file system object. A file descriptor for the open file system object is identified in response to a process in a first software partition opening a file system object to form the open file system object. The absolute path name for the open file system object is cached in a path name field in a file structure associated with the file descriptor for the open file system object. The absolute path name for the open file system object in the path name field is used during migration of the first software partition to restore the open file system object in a second software partition.Type: ApplicationFiled: May 21, 2007Publication date: November 27, 2008Inventors: David John Craft, Srikanth Vishwanathan
-
Publication number: 20080270829Abstract: A computer implemented method, apparatus, and computer program product for managing state data in a workload partitioned environment. Process state data for a process in a workload partition is saved. Process state data is used to restore the process to a given state. State data associated with open sockets and open files bound to the first process is saved. In response to a determination that the process is associated with a domain socket that is bound to a socket file, an absolute pathname for the socket file is saved. A domain socket associated with a connecting process in the workload partition uses the socket file to connect to a domain socket associated with a listening process in the same workload partition to enable the two processes to communicate with each other.Type: ApplicationFiled: April 27, 2007Publication date: October 30, 2008Inventors: DAVID JOHN CRAFT, Vinit Jain, Lance Warren Russell
-
Patent number: 7248696Abstract: The present invention provides data encryption for a differential bus employing transitional coding. The present invention maps, encodes and encrypts input data as a logic status for a given bus transfer cycle. The mapping, encoding and encrypting of the input data changes from bus transfer cycle to bus transfer cycle. The mapping, encoding and encrypting is a function of a pseudo-random number. A logic status is differentially transmitted from a bus transmitter to a bus receiver, to be mapped, decrypted and decoded as the corresponding output data.Type: GrantFiled: September 12, 2002Date of Patent: July 24, 2007Assignee: International Business Machines CorporationInventors: David John Craft, Charles Ray Johns
-
Patent number: 7194626Abstract: The present invention provides for authentication of code, such as boot code. A memory addressing engine is employable to select a portion of a memory, as a function of a step value, as a first input hash value. The step value allows for the non-commutative cumulative hashing of a plurality of memory portions with a second input hash value, such as a previous hash value that has been rotated left. An authenticator circuit is employable to perform a hash upon the portion of memory and the second input hash value. A comparison circuit is then employable to compare an output of the authenticator circuit to an expected value.Type: GrantFiled: November 21, 2002Date of Patent: March 20, 2007Assignee: International Business Machines CorporationInventor: David John Craft
-
Patent number: 7171563Abstract: The present invention provides for validating downloaded code. Code is transferred to a volatile memory of a system on a chip from a source. The volatile memory is decoupled from the source of the transferred code through employment of an isolation bus. An embedded security value, associated with the downloaded code, is determined. The security value is compared to an unlock sequence stored within the non-volatile memory in the system on a chip. If the security value matches the unlock sequence, the downloaded code is allowed access to secure data stored in the non-volatile memory. If the security value does not match the unlock sequence, the downloaded code is denied access to the secure data stored in the non-volatile memory.Type: GrantFiled: May 15, 2003Date of Patent: January 30, 2007Assignee: International Business Machines CorporationInventor: David John Craft
-
Patent number: 7003605Abstract: The present invention provides employing differential transitional encoding with a differential bus. Employing the differential transitional encoding comprises dividing the differential bus into one or more groups comprising four bus lines. Employment of the differential bus also comprises asserting half the bus lines of a group during a bus data transfer, thereby defining an asserted set of bus lines and a de-asserted set of bus lines. The method and system further comprises transmitting data by differentially driving two of the bus lines, one bus line per set, by de-asserting one of the bus lines of the asserted set, and asserting one of the bus lines of the de-asserted set.Type: GrantFiled: September 12, 2002Date of Patent: February 21, 2006Assignee: International Business Machines CorporationInventors: David John Craft, Charles Ray Johns
-
Publication number: 20040230818Abstract: The present invention provides for validating downloaded code. Code is transferred to a volatile memory of a system on a chip from a source. The volatile memory is decoupled from the source of the transferred code through employment of an isolation bus. An embedded security value, associated with the downloaded code, is determined. The security value is compared to an unlock sequence stored within the non-volatile memory in the system on a chip. If the security value matches the unlock sequence, the downloaded code is allowed access to secure data stored in the non-volatile memory. If the security value does not match the unlock sequence, the downloaded code is denied access to the secure data stored in the non-volatile memory.Type: ApplicationFiled: May 15, 2003Publication date: November 18, 2004Applicant: International Business Machines CorporationInventor: David John Craft
-
Patent number: 6771193Abstract: An encoder for compressing data is described, including a history buffer having multiple storage locations for storing target data units. The encoder is configured to input a target data string including multiple target data units, and additional data (e.g., security data associated with the target data string). In the event the history buffer contains multiple matching strings that match the target data string, the encoder is configured to select a displacement value of one of the matching strings dependent on a portion of the additional data, and to produce a copy pointer corresponding to the target data string and including the selected displacement. The selected displacement value in the copy pointer conveys the portion of the additional data. A decoder for decompressing data is also described, including a history buffer having multiple storage locations for storing data units.Type: GrantFiled: August 22, 2002Date of Patent: August 3, 2004Assignee: International Business Machines CorporationInventor: David John Craft
-
Publication number: 20040103291Abstract: The present invention provides for authentication of code, such as boot code. A memory addressing engine is employable to select a portion of a memory, as a function of a step value, as a first input hash value. The step value allows for the non-commutative cumulative hashing of a plurality of memory portions with a second input hash value, such as a previous hash value that has been rotated left. An authenticator circuit is employable to perform a hash upon the portion of memory and the second input hash value. A comparison circuit is then employable to compare an output of the authenticator circuit to an expected value.Type: ApplicationFiled: November 21, 2002Publication date: May 27, 2004Applicant: International Business Machines CorporationInventor: David John Craft
-
Publication number: 20040054830Abstract: The present invention provides employing differential transitional encoding with a differential bus. Employing the differential transitional encoding comprises dividing the differential bus into one or more groups comprising four bus lines. Employment of the differential bus also comprises asserting half the bus lines of a group during a bus data transfer, thereby defining an asserted set of bus lines and a de-asserted set of bus lines. The method and system further comprises transmitting data by differentially driving two of the bus lines, one bus line per set, by de-asserting one of the bus lines of the asserted set, and asserting one of the bus lines of the de-asserted set.Type: ApplicationFiled: September 12, 2002Publication date: March 18, 2004Applicant: International Business Machines CorporationInventors: David John Craft, Charles Ray Johns
-
Publication number: 20040052375Abstract: The present invention provides data encryption for a differential bus employing transitional coding. The present invention maps, encodes and encrypts input data as a logic status for a given bus transfer cycle. The mapping, encoding and encrypting of the input data changes from bus transfer cycle to bus transfer cycle. The mapping, encoding and encrypting is a function of a pseudo-random number. A logic status is differentially transmitted from a bus transmitter to a bus receiver, to be mapped, decrypted and decoded as the corresponding output data.Type: ApplicationFiled: September 12, 2002Publication date: March 18, 2004Applicant: International Business Machines CorporationInventors: David John Craft, Charles Ray Johns
-
Publication number: 20040036633Abstract: An encoder for compressing data is described, including a history buffer having multiple storage locations for storing target data units. The encoder is configured to input a target data string including multiple target data units, and additional data (e.g., security data associated with the target data string). In the event the history buffer contains multiple matching strings that match the target data string, the encoder is configured to select a displacement value of one of the matching strings dependent on a portion of the additional data, and to produce a copy pointer corresponding to the target data string and including the selected displacement. The selected displacement value in the copy pointer conveys the portion of the additional data. A decoder for decompressing data is also described, including a history buffer having multiple storage locations for storing data units.Type: ApplicationFiled: August 22, 2002Publication date: February 26, 2004Applicant: International Business Machines CorporationInventor: David John Craft