Releases: cobilab/cryfa
v26.05
Cryfa v26.05
This is a major performance release. The headline change is a new streaming FASTA/FASTQ processing pipeline that delivers more than 3x speedup in local benchmarks while keeping the familiar Cryfa command-line workflow intact.
Highlights
- More than 3x faster FASTA/FASTQ processing through streamed compression, encryption, decryption, and decompression.
- Replaced much of the old temp-file-heavy pack/unpack flow with ordered in-memory pipelines.
- Added streaming crypto APIs and cached derived encryption state to reduce repeated setup work.
- Improved FASTA and FASTQ chunk handling for faster round trips and lower intermediate I/O pressure.
- Added a local benchmark and correctness harness for repeatable performance checks.
- Improved Linux, macOS, and Windows install scripts.
- Refreshed README installation, Docker, usage, and benchmarking documentation.
- Cleaned up formatting, diagnostics, and source headers across the codebase.
Performance
This release focuses heavily on throughput. FASTA and FASTQ compression/decompression now stream data directly through Cryfa’s processing pipeline instead of relying on large intermediate files. In local checks, this gives Cryfa a greater than 3x speedup over the previous release path.
The new local benchmark harness also verifies every round trip with cmp, so performance results are paired with correctness checks.
New Benchmark Harness
A new local performance harness is available:
bash scripts/runtime/run_local_perf.sh --label local-check --input example/in.fq --target-mb 200 --threads "1 4 8" --runs 1 --modes both --no-promptIt can:
- Expand a seed FASTA/FASTQ input to a target size.
- Run compression and decompression across selected thread counts.
- Verify every round trip.
- Write CSV and Markdown reports under
results/local_perf/. - Compare results against previous runs.
Build And Install Improvements
install.shandinstall.ps1now handle stale CMake cache state more gracefully.- Install scripts support both single-config and multi-config CMake generators.
- The Dockerfile was cleaned up while preserving existing behavior.
- CI and release workflows were refreshed for the current release flow.
Versioning
Cryfa now generates version metadata at build time. Tagged release builds report the release version, while local development builds fall back to Git-derived version strings.
Assets
Pre-built release assets are provided for:
- Linux
- macOS
- Windows
Both cryfa and keygen binaries are included as release assets.
v26.04
This release is a significant modernization of Cryfa's build system, CI, and distribution — making it easier to build, test, and run on all major platforms.
Highlights
Cross-platform builds
Cryfa now builds and tests on Linux, macOS, and Windows (MSVC) via GitHub Actions. Fixes include portable random number generation, VLA removal, missing headers, and MASM support for x64 assembly on Windows.
ARM64 support
Native ARM64 builds work out of the box — including Apple Silicon and AWS Graviton — with proper SIMD flags for cryptopp's AES, SHA, and CRC extensions.
Docker
The image is now multi-stage (ubuntu builder → debian-slim runtime) and multi-arch (linux/amd64 + linux/arm64). Available on Docker Hub as smortezah/cryfa.
Installation
Added install.ps1 for Windows. Linux instructions updated to use pip3 install cmake to get cmake ≥ 4.0. Pre-compiled binaries are available on the Releases page.
Round-trip integration test
A CTest test now verifies that encrypt → decrypt reproduces the original file exactly, on every CI run.
Cryfa 20.04
Minor release
Cryfa 18.06
- Secure encryption of genomic data, in:
- FASTA
- FASTQ
- VCF
- SAM/BAM
- Compacting FASTA and FASTQ files
- Key generator, to automatically generate a strong password
Cryfa 17.05
- FASTA encryption and decryption tool
- AES symmetric encryption, with very fast processing times
- Applicable to any FASTA file (DNA sequences with headers)
- Compact 3 DNA bases into 1 char, using a fixed block size packing. When compared with general encryption tools it allows to reduce the storage (~3x), without creating security problems such as those derived from CRIME attacks.
D. Pratas, M. Hosseini and A.J. Pinho, "Cryfa: a tool to compact and encrypt FASTA files," 11'th International Conference on Practical Applications of Computational Biology & Bioinformatics (PACBB), Springer, June 2017.