ebics-client-rs
v0.1.1
Published
EBICS banking client powered by Rust/WASM
Readme
ebics-client-rs
Minimal EBICS client in Rust for downloading bank statements (camt.053 / Z53). Implements the EBICS H004 protocol.
Features
- Key generation (RSA-2048 for A006, X002, E002)
- INI / HIA key registration with the bank
- HPB bank key download
- Z53 (camt.053) statement download with date range filtering
- INI letter generation for bank verification
- Compatible with node-ebics-client key files
Usage
# Generate keys
ebics --config config.toml init
# Register keys with the bank
ebics --config config.toml ini
ebics --config config.toml hia
# After bank activates your keys, download bank's public keys
ebics --config config.toml hpb
# Download statements
ebics --config config.toml z53 --start 2025-01-01 --end 2025-12-31
# Print INI letter
ebics --config config.toml letterConfiguration
Create a config.toml:
url = "https://ebics.bank.example/ebics-server"
host_id = "BANKID"
partner_id = "PARTNERID"
user_id = "USERID"
keys_file = "keys.json"
passphrase = "your-passphrase"Build
cargo build --releaseProtocol
Implements EBICS H004 with:
- XML Canonical (C14N 1.0) for signature computation
- RSA PKCS#1 v1.5 with SHA-256 for authentication signatures (X002)
- RSA-PSS with SHA-256 for electronic signatures (A006)
- AES-128-CBC for order data decryption
- RSA PKCS#1 v1.5 for transaction key encryption/decryption (E002)
License
MIT
