# Introduction

BIP38 is a cryptographic standard that defines a method for encrypting and securing private keys associated with Pay To Public Key Hash (P2PKH) addresses. It provides a way to create encrypted versions of private keys, which can then be decrypted using a passphrase, adding an additional layer of security for storing and transmitting private keys. By encrypting a private key with BIP38, users can protect their funds even if the encrypted private key is exposed, as an attacker would still need the passphrase to decrypt the private key and gain access to the associated funds. BIP38 encryption is commonly used for creating "paper wallets" or physical copies of private keys that can be stored offline for enhanced security.

Building on this, our project delivers a robust BIP38 toolkit supporting both EC and non-EC-multiply encryption modes, designed for secure encryption and decryption of private keys across over 150 cryptocurrencies. This library and desktop app simplify private key management by enabling encrypted passphrase-protected storage in Wallet Import Format (WIF) format, with guidance for setup and secure offline storage.

### Jump right in

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Installation</td><td></td><td></td><td></td><td><a href="installation">installation</a></td></tr><tr><td>Quick Usage</td><td></td><td></td><td></td><td><a href="quick-usage">quick-usage</a></td></tr></tbody></table>

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>No EC-Multiply</td><td></td><td></td><td><a href="manual/no-ec-multiply">no-ec-multiply</a></td></tr><tr><td>EC-Multiply</td><td></td><td></td><td><a href="manual/ec-multiply">ec-multiply</a></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://talonlab.gitbook.io/bip38/introduction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
