Private key decryption system and method of use
First Claim
Patent Images
1. A host computer system comprising:
- a central processing unit;
an initialized service instance of a plurality of services;
a master key loader configured to store an operational master key in a memory device of the initialized service instance;
a database having an address and an encrypted private key stored in association with one another;
a web application configured to receive a request for payment to a bitcoin address, the request for payment including an amount of bitcoin to be paid, generate an unsigned transaction in response to receiving the request for payment, the unsigned transaction including the amount of bitcoin to be paid in the request for payment, and request a signing of the unsigned transaction to create a signed transaction; and
a payment module configured to receive the request for signing the transaction, determine the address corresponding to the bitcoin address in the unsigned transaction, determine the encrypted private key stored in association with the address, decrypt the encrypted private key with the operational master key to generate a decrypted private key, and sign the transaction with the decrypted private key to create the signed transaction, the web application configured to receive the signed transaction, and broadcast the signed transaction over the bitcoin network,wherein the master key loader, the web application, and the payment module are executed by the central processing unit.
1 Assignment
0 Petitions
Accused Products
Abstract
A key ceremony application creates bundles for custodians encrypted with their passphrases. Each bundle includes master key share. The master key shares are combined to store an operational master key. The operational master key is used for private key encryption during a checkout process. The operational private key is used for private key decryption for transaction signing in a payment process. The bundles further include TLS keys for authenticated requests to create an API key for a web application to communicate with a service and to unfreeze the system after it has been frozen by an administrator.
-
Citations
13 Claims
-
1. A host computer system comprising:
-
a central processing unit; an initialized service instance of a plurality of services; a master key loader configured to store an operational master key in a memory device of the initialized service instance; a database having an address and an encrypted private key stored in association with one another; a web application configured to receive a request for payment to a bitcoin address, the request for payment including an amount of bitcoin to be paid, generate an unsigned transaction in response to receiving the request for payment, the unsigned transaction including the amount of bitcoin to be paid in the request for payment, and request a signing of the unsigned transaction to create a signed transaction; and a payment module configured to receive the request for signing the transaction, determine the address corresponding to the bitcoin address in the unsigned transaction, determine the encrypted private key stored in association with the address, decrypt the encrypted private key with the operational master key to generate a decrypted private key, and sign the transaction with the decrypted private key to create the signed transaction, the web application configured to receive the signed transaction, and broadcast the signed transaction over the bitcoin network, wherein the master key loader, the web application, and the payment module are executed by the central processing unit. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of transacting bitcoin comprising:
- with a central processing unit included in a host computer system;
storing, by an initialized service instance of a plurality of services, an operational master key in a memory device of the initialized service instance; storing, by the initialized service instance, an address and an encrypted private key in association with one another; receiving, by a web application, a request for payment to a bitcoin address, the request for payment including an amount of bitcoin to be paid; generating, by the web application, an unsigned transaction in response to receiving the request for payment, the unsigned transaction including the amount of bitcoin to be paid in the request for from payment; requesting, by the web application, a signing of the unsigned transaction to create a signed transaction; receiving, by the initialized service instance, the request for signing the transaction; determining, by the initialized service instance, the address corresponding to the bitcoin address in the unsigned transaction; determining, by the initialized service instance, the encrypted private key stored in association with the address; decrypting, by the initialized service instance, the encrypted private key with the operational master key to generate a decrypted private key; signing, by the initialized service instance, the transaction with the decrypted private key to create the signed transaction; receiving, by the web application, the signed transaction; and broadcasting, by the web application, the signed transaction over the bitcoin network, wherein the initialized service instance and the web application are executed by the central processing unit. - View Dependent Claims (8, 9, 10, 11, 12)
- with a central processing unit included in a host computer system;
-
13. A non-transitory computer-readable medium having stored thereon a set of instructions that, when executed by a processor of a computer carries out a method of transacting bitcoin comprising:
-
storing, by an initialized service instance of a plurality of services, an operational master key in a memory device of the initialized service instance; and storing, by the initialized service instance, an address and an encrypted private key in association with one another; receiving, by a web application, a request for payment to a bitcoin address, the request for payment including an amount of bitcoin to be paid; generating, by the web application, an unsigned transaction in response to receiving the request for payment, the unsigned transaction including the amount of bitcoin to be paid in the request for from payment; requesting, by the web application, a signing of the unsigned transaction to create a signed transaction; receiving, by the initialized service instance, the request for signing the transaction; determining, by the initialized service instance, the address corresponding to the bitcoin address in the unsigned transaction; determining, by the initialized service instance, the encrypted private key stored in association with the address; decrypting, by the initialized service instance, the encrypted private key with the operational master key to generate a decrypted private key; signing, by the initialized service instance, the transaction with the decrypted private key to create the signed transaction; receiving, by the web application, the signed transaction; and broadcasting, by the web application, the signed transaction over the bitcoin network.
-
Specification