PicoCrypt — Quick Guide
VeraCrypt
If you are currently using for file containers, Cryptomator for cloud encryption, or GPG for single files, the answer is yes .
Q: Can I decrypt a Picocrypt file in 20 years?
A: Yes. Since the source code is MIT licensed and the algorithm (XChaCha20) is standardized, future decompilers will exist. Save a copy of the Picocrypt binary with your archive.
Decryption: salt, nonce, ciphertext = split(input) key = Argon2id(password, salt, ...) plaintext = XChaCha20-Poly1305_decrypt(ciphertext, nonce, key, additional_data) (Integrity fails if authentication tag mismatch)
- XChaCha20: An extended nonce variant of the ChaCha20 stream cipher. While AES is the industry standard, ChaCha20 is often favored in software implementations due to its speed and constant-time execution, which mitigates side-channel timing attacks common in AES table lookups.
- Poly1305: A message authentication code (MAC) used to ensure data integrity and authenticity. This prevents tampering with the encrypted file.
- Nonce Management: XChaCha20 utilizes a 24-byte nonce (number used once). Picocrypt generates this randomly for every encryption operation. The extended size (compared to the standard 12-byte ChaCha20 nonce) significantly reduces the risk of nonce reuse, even with random generation.
Picocrypt [exclusive] [ 2024 ]
PicoCrypt — Quick Guide
VeraCrypt
If you are currently using for file containers, Cryptomator for cloud encryption, or GPG for single files, the answer is yes .
Q: Can I decrypt a Picocrypt file in 20 years?
A: Yes. Since the source code is MIT licensed and the algorithm (XChaCha20) is standardized, future decompilers will exist. Save a copy of the Picocrypt binary with your archive. picocrypt
Decryption: salt, nonce, ciphertext = split(input) key = Argon2id(password, salt, ...) plaintext = XChaCha20-Poly1305_decrypt(ciphertext, nonce, key, additional_data) (Integrity fails if authentication tag mismatch) PicoCrypt — Quick Guide VeraCrypt If you are
- XChaCha20: An extended nonce variant of the ChaCha20 stream cipher. While AES is the industry standard, ChaCha20 is often favored in software implementations due to its speed and constant-time execution, which mitigates side-channel timing attacks common in AES table lookups.
- Poly1305: A message authentication code (MAC) used to ensure data integrity and authenticity. This prevents tampering with the encrypted file.
- Nonce Management: XChaCha20 utilizes a 24-byte nonce (number used once). Picocrypt generates this randomly for every encryption operation. The extended size (compared to the standard 12-byte ChaCha20 nonce) significantly reduces the risk of nonce reuse, even with random generation.