<p>They don't and that's the point.</p>
<p>The actual process varies probably from company to company, but generally, deposits into cold storage are automated, and withdrawals from cold storage require varying degrees of manual involvement.</p>
<p>The process usually involves some of the following components:</p>
<ul>
<li>Air-gapped signing system<br />
The signing device is not connected to other networks in the company or let alone the internet. An unsigned withdrawal transaction is produced by means of a watch-only wallet on the &quot;hot-side&quot;, then manually input to the signing device either by means of QR codes or USB stick and signed. The signed transaction is then manually transferred to the hot-system for broadcast.</li>
<li>Hardware Security Modules (HSM)<br />
The private key to the cold wallet is stored in a system with a narrow API which cannot dump the key itself but will only produce signatures. Access to this signing request interface should be further locked down by requiring the requests to be signed as well as subject to additional security requirements and policy checks.</li>
<li>Multi-factor setup<br />
The cold wallet is locked to a quorum of multiple public keys. Each signature is produced by independent signers with isolated security procedures. Preferably, the signing protocol ensures that multiple stakeholders verify the transaction and sign off. The protocol should record the involved parties for accountability. Similar outcomes can be achieved via MPC or by sharding, in which case the signing protocol must ensure that the reconstituted key cannot be extracted by any signing participant.</li>
</ul>
<p>Security and convenience are often at odds, but the inconvenience can be managed by automating all processes around the manual steps, and by limiting the events in which manual involvement is necessary. E.g. funds should be consolidated before depositing into cold storage so that the cold wallet has fewer UTXOs. An intermediate security level can be introduced with a warm wallet, that e.g. is not airgapped but requires manual 2FA for each transaction.</p>
<p>An example flow with three wallets could for example look like this:</p>
<ul>
<li>a hot wallet that issues batched withdrawals. The hot wallet gets restocked from the warm wallet to have operational funds for at most a day.</li>
<li>a warm wallet that holds funds for a few days of operation but requires sign-off on each transaction that sends funds from the wallet. Deposits are received to the warm wallet. Funds from the warm wallet get consolidated regularly in an automated fashion. Excess funds are deposited into the cold wallet. When running low on funds, the warm wallet gets restocked from the cold wallet.</li>
<li>a cold wallet which holds the majority of the funds and should not issue transactions more than a few times per week.</li>
</ul>

CC BY-SA 4.0
2021-04-30T15:52:46.573Z
2023-09-26T15:36:12.357Z
2023-09-26T15:36:12.357Z
Murch
<p>Most exchanges use Cold Storage to store the bulk (approx. 95%) of their user assets. Only a relatively small amount (approx. 5%) of funds are held in their Hot Wallet.</p>
<p>My question is, what process is used to transfer funds from cold storage to the hot wallet? Is the process automated in any way or is each transfer reviewed and processed manually? It seems to be very tedious and inefficient to have to review and process each transfer manually without being able to rely on any form of automation.</p>
<p>Are there any ways to make the process more efficient? Are there generally well accepted protocols that most exchanges follow in this regard?</p>

CC BY-SA 4.0
2021-01-31T21:59:46.103Z
I'm guessing that the "5% in hot wallets" is what is used for all automated transfers, and if coin needs pulled from cold storage, they *want* that to have to be handled manually....why else use cold storage? Using an automated system to retrieve from cold storage would make your cold storage "warm," and readily hackable.
Robherc KV5ROB
<transactions><wallet><security><exchanges><coldstorage>
How do exchanges automate transfer of Bitcoin from a cold storage wallet?
S.O.S
# How do exchanges automate transfer of Bitcoin from a cold storage wallet?

(Asked by: username_0 on 2021-01-31)

Most exchanges use Cold Storage to store the bulk (approx. 95%) of their user assets. Only a relatively small amount (approx. 5%) of funds are held in their Hot Wallet.

My question is, what process is used to transfer funds from cold storage to the hot wallet? Is the process automated in any way or is each transfer reviewed and processed manually? It seems to be very tedious and inefficient to have to review and process each transfer manually without being able to rely on any form of automation.

Are there any ways to make the process more efficient? Are there generally well accepted protocols that most exchanges follow in this regard?

**Tags:** transactions, wallet, security, exchanges, coldstorage

> **Comments:**
> **username_1**: I'm guessing that the "5% in hot wallets" is what is used for all automated transfers, and if coin needs pulled from cold storage, they *want* that to have to be handled manually....why else use cold storage? Using an automated system to retrieve from cold storage would make your cold storage "warm," and readily hackable.  

---

## 1 answers

### Answer by username_2 on 2021-04-30. Score: 1

They don't and that's the point.

The actual process varies probably from company to company, but generally, deposits into cold storage are automated, and withdrawals from cold storage require varying degrees of manual involvement.

The process usually involves some of the following components:

* Air-gapped signing system  
  The signing device is not connected to other networks in the company or let alone the internet. An unsigned withdrawal transaction is produced by means of a watch-only wallet on the "hot-side", then manually input to the signing device either by means of QR codes or USB stick and signed. The signed transaction is then manually transferred to the hot-system for broadcast.
* Hardware Security Modules (HSM)  
  The private key to the cold wallet is stored in a system with a narrow API which cannot dump the key itself but will only produce signatures. Access to this signing request interface should be further locked down by requiring the requests to be signed as well as subject to additional security requirements and policy checks.
* Multi-factor setup  
  The cold wallet is locked to a quorum of multiple public keys. Each signature is produced by independent signers with isolated security procedures. Preferably, the signing protocol ensures that multiple stakeholders verify the transaction and sign off. The protocol should record the involved parties for accountability. Similar outcomes can be achieved via MPC or by sharding, in which case the signing protocol must ensure that the reconstituted key cannot be extracted by any signing participant.

Security and convenience are often at odds, but the inconvenience can be managed by automating all processes around the manual steps, and by limiting the events in which manual involvement is necessary. E.g. funds should be consolidated before depositing into cold storage so that the cold wallet has fewer UTXOs. An intermediate security level can be introduced with a warm wallet, that e.g. is not airgapped but requires manual 2FA for each transaction.

An example flow with three wallets could for example look like this:

* a hot wallet that issues batched withdrawals. The hot wallet gets restocked from the warm wallet to have operational funds for at most a day.
* a warm wallet that holds funds for a few days of operation but requires sign-off on each transaction that sends funds from the wallet. Deposits are received to the warm wallet. Funds from the warm wallet get consolidated regularly in an automated fashion. Excess funds are deposited into the cold wallet. When running low on funds, the warm wallet gets restocked from the cold wallet.
* a cold wallet which holds the majority of the funds and should not issue transactions more than a few times per week.


---

