为了提升安全性,私钥可以在更为安全的环境中由有单独的程序生成并做存储。只用于签名的钱包与一个可以进行点对点网络交互的钱包协同工作。

    只用于签名的钱包通常使用确定性密钥创建方式(在稍后的小节中会讨论)来创建父私钥和公钥,之后还可以再创建子私钥和公钥。只用于签名的钱包 - 图1

    当第一次运行时,只签名的钱包创建一个父私钥并将其对应的公钥传输给联网的钱包。

    网络钱包使用父公钥生成子公钥们,可以作为可选操作将其发布,监听这些公钥的输出,创建花费比特币的未签名交易,然后将未签名的交易传输给签名的钱包。

    通常,用户有机会使用签名钱包对未签名交易的细节(特别是输出细节)做审核。

    在可选的审核步骤之后,签名钱包使用父私钥生成相关的子私钥来对交易做签名,再将已签名的交易送回给联网钱包。

    然后联网钱包将已签名交易广播至点对点网络。

    接下来的小节将讨论两种常用的签名钱包的变体:离线钱包和硬件钱包。