What is the BCUP file format?
A .bcup file is an encrypted password vault created by Buttercup, a free and open-source password manager written by developer Perry Mitchell. It stores logins, secure notes, payment details, and other credentials in a single file that only Buttercup can read.
The contents are protected with AES-256 encryption in CBC mode. The encryption key is derived from your master password using many rounds of PBKDF2, and a SHA-256 HMAC guards the data against tampering. Before encryption, the vault is serialized to text and GZip-compressed. Older vaults use "Format A", which records the vault's full change history and therefore grows over time; newer vaults use "Format B", a compact JSON structure that can cut file size to a fraction of the old layout.
Security & safety
RISK: LOWA .bcup file is inert encrypted data, not executable, so opening it cannot run code. The real risk is confidentiality: it contains your passwords protected only by your master password, so anyone who obtains the file can attempt to brute-force it. Use a strong master password and keep backups, because losing the password makes the vault unrecoverable.
Format details
in a nutshellPrograms that open BCUP files
Technical details
deep spec| Encoding | Text wrapper containing Base64-encoded binary ciphertext |
| Byte order | N/A (text-delimited container) |
| Container | iocane-encrypted payload wrapping GZip-compressed vault data |
| Compression | GZip applied to the serialized vault before encryption |
| Encryption | AES-256 in CBC mode; key derived from the master password via PBKDF2 (many rounds, salted); SHA-256 HMAC computed over the encrypted data for integrity/authentication |
| Typical size | A few kilobytes to a few megabytes depending on entry count and stored attachments |
| Structure | The vault is first serialized (Format A: line-by-line command history; Format B: JSON), GZip-compressed, then AES-256-CBC encrypted. The encrypted output plus its salt, IV, iteration count and HMAC are packed into a delimited text string and written to the .bcup file. |
| Integrity | SHA-256 HMAC verifies both integrity and authenticity before decryption; a wrong master password or tampering causes decryption to fail |
| Encryption Detail | PBKDF2 key derivation, AES-256-CBC cipher, SHA-256 HMAC, per-vault random salt and IV |
| Platforms | Windows, macOS, Linux, Android, iOS |
| Notes | Format A stored the vault's full command history, so files grew on every change even after deletions. Format B switched to a compact JSON structure, cutting file sizes to roughly 20-50% of Format A. Encrypted attachments are stored separately in a .buttercup directory beside the .bcup file. |
| Structure Summary Formats | Format A = deltas/command list; Format B = JSON vault tree with groups and entries |
| Released | 2015 |
| Latest version | Format B (JSON-based vault structure) |
| Specification | github.com |
BCUP conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about BCUP files.