Skip to content

AnkaSecure Crypto CLI Installation

CLI Version: 3.4.0 Java Version: 25 (bundled in installers) Total Commands: 35 Package: AnkaSecure Crypto CLI

The AnkaSecure Crypto CLI installers are generated using install4j and are available for Windows, macOS, and Linux. These installers make it simple to set up the CLI on your preferred platform.


1. Download CLI Installers

The release produces five installers, one per platform and packaging. Every one of them is linked, with its SHA-256 checksum, on the downloads page; the file names below are the ones that page serves, so a name that is not in this list is not published.

Windows

  • Executable wizard (recommended): ANKASecureCLI_windows-x64_3_4_0.exe

    • Guided installation wizard
    • Automatic PATH configuration
    • Includes Java 25 runtime
    • Start menu shortcuts
  • Portable ZIP: ANKASecureCLI_windows-x64_3_4_0.zip

    • No installation required
    • Extract and run directly
    • Manual PATH configuration needed
    • Includes Java 25 runtime

Both are x64 builds. Windows on ARM runs them through the platform's x64 emulation; there is no native ARM64 build.


macOS

  • DMG (Universal): ANKASecureCLI_macos_3_4_0.dmg
    • One image for Apple Silicon and Intel
    • Drag-and-drop installation
    • Includes Java 25 runtime

Opening the app the first time on macOS

The macOS installer is not signed or notarized with an Apple Developer ID, so macOS blocks the first launch of ANKASecureCLI.app. To allow it, try to open it once, then choose Apple menu > System Settings > Privacy & Security, click Open Anyway under Security and confirm with your login password. The button is available for about an hour after the blocked launch. Apple describes the steps in Open a Mac app from an unknown developer.


Linux

  • Debian/Ubuntu package: ANKASecureCLI_linux_3_4_0.deb

    • System package manager integration
    • Automatic dependency resolution
    • Includes Java 25 runtime
    • Installation: sudo dpkg -i ANKASecureCLI_linux_3_4_0.deb
  • Universal shell installer: ANKASecureCLI_unix_3_4_0.sh

    • Works on any distribution, with or without a package manager
    • Interactive installation wizard
    • Includes Java 25 runtime
    • Installation: chmod +x ANKASecureCLI_unix_3_4_0.sh && ./ANKASecureCLI_unix_3_4_0.sh

Installer Selection Guide

Platform Recommended Installer Alternative
Windows 10/11 .exe (Wizard) .zip (Portable)
macOS (Apple Silicon or Intel) .dmg (Universal) —
Ubuntu/Debian .deb .sh (Universal)
RHEL/CentOS/Fedora and other Linux/Unix .sh (Universal) —

After downloading the installer for your platform, verify its checksum (the downloads page links one per file), then run it and follow the on-screen instructions.


2. Installation Paths

The CLI is installed in platform-specific directories:

Platform Installation Directory
Windows C:\AnkaTech\ANKASecureCLI\
Linux /srv/anka-secure/ANKASecureCLI/
macOS /Applications/ANKASecureCLI.app/

3. Included CLI Executables

The installers include two distinct CLI executables:

AnkaSecureCLI (Primary CLI)

The main command-line interface for post-quantum cryptographic operations.

Usage modes:

  • Command-line mode - Direct command execution for automation and scripting
  • Interactive mode - Menu-driven interface for guided operations (launch with -i or --interactive)

Platform-specific commands:

  • Windows: AnkaSecureCLI.exe
  • Linux/macOS: AnkaSecureCLI

Examples:

# Show help
AnkaSecureCLI --help

# List available keys (read-only)
AnkaSecureCLI list-keys

# Launch interactive mode
AnkaSecureCLI --interactive
# OR
AnkaSecureCLI -i

AnkaSecureCLIDemo (SDK Examples)

An interactive menu showcasing 16 SDK integration examples and demonstrating the full capabilities of the AnkaSecure API.

Platform-specific commands:

  • Windows: AnkaSecureCLIDemo.exe
  • Linux/macOS: AnkaSecureCLIDemo

Use cases:

  • Explore SDK capabilities through working examples
  • Learn API integration patterns
  • Test server connectivity and authentication
  • Prototype cryptographic workflows

Example:

# Launch SDK examples menu
AnkaSecureCLIDemo

Which Executable Should I Use?

  • Use AnkaSecureCLI for production cryptographic operations (both command-line and interactive modes)
  • Use AnkaSecureCLIDemo for learning SDK integration patterns and exploring capabilities

4. First Run Configuration

IMPORTANT: Before using the CLI, you must initialize your credentials.

4.1 User Configuration Location

The CLI stores user-specific credentials in a secure location in your home directory:

Platform Configuration Directory
Windows %USERPROFILE%\.ankasecure-crypto\
Linux ~/.ankasecure-crypto/
macOS ~/.ankasecure-crypto/

Security features:

  • ✅ Credentials encrypted using AES-GCM-256 with PBKDF2 key derivation (150,000 iterations)
  • ✅ File permissions automatically set to 600 (owner read/write only) on Unix/Linux/macOS
  • ✅ Directory permissions set to 700 (owner access only) on Unix/Linux/macOS
  • ✅ Each user has isolated credentials (multi-user support)

4.2 Getting Credentials

Before initializing the CLI, you need an actor UUID and its client secret, issued by your tenant administrator in the Admin Console:

  1. Create an application and a service actor under it (for example crypto-cli-app and crypto-cli).
  2. Assign the actor its cryptographic roles: secure.encrypt, secure.decrypt, secure.sign, secure.verifySignature.
  3. Issue the actor's credential. The client secret is shown once, in the console or in the answer of the Admin API POST /api/v3/admin/tenants/{tenantId}/actors/{actorId}/credentials.

Save both the actor UUID (the client ID) and the client secret — you'll need them for the next step.


4.3 Initialize CLI Credentials

Run the init command to securely store your API credentials:

Interactive mode (recommended - prompts for credentials):

AnkaSecureCLI init

Prompts:

Enter API URL [https://demo.ankatech.co]: https://demo.ankatech.co
Enter client ID: f23aa3b4-5c36-45e0-bfd5-730d1dfddad3
Enter client secret: ********
✅ Configuration saved to: /home/user/.ankasecure-crypto/config.properties
✅ File permissions set to 600 (owner read/write only)
✅ Credentials encrypted using PBKDF2 + AES-GCM

Non-interactive mode (for automation/scripts). --client-secret takes no value on the command line; the secret is read from ANKASECURE_CLIENT_SECRET:

# Set by the runner from its secret store, never written into the script.
export ANKASECURE_CLIENT_SECRET="$CLIENT_SECRET_FROM_SECRET_STORE"

AnkaSecureCLI init \
  --silent \
  --client-id f23aa3b4-5c36-45e0-bfd5-730d1dfddad3 \
  --url https://demo.ankatech.co

What happens during init:

  • Credentials encrypted using AES-GCM-256 with PBKDF2 key derivation (150,000 iterations)
  • Configuration saved to ~/.ankasecure-crypto/config.properties
  • File permissions automatically set to 600 (owner read/write only)
  • API endpoint and TLS settings configured
  • Ready to execute cryptographic operations

4.4 Verify Installation

# Check CLI version
AnkaSecureCLI --version

# Display help
AnkaSecureCLI --help

# List available algorithms (requires init first)
AnkaSecureCLI get-supported-algorithms

# List keys (should be empty initially)
AnkaSecureCLI list-keys

5. Multi-User Environments

The CLI fully supports multi-user environments:

  • ✅ Each user has their own configuration in their home directory
  • ✅ No conflicts between users on the same system
  • ✅ Credentials are isolated per user account
  • ✅ Safe for shared servers and development environments

Example:

# User 1 (the secret comes from that user's own ANKASECURE_CLIENT_SECRET)
user1@server$ AnkaSecureCLI init \
  --silent \
  --client-id f23aa3b4-5c36-45e0-bfd5-730d1dfddad3 \
  --url https://demo.ankatech.co
# Config saved to: /home/user1/.ankasecure-crypto/config.properties

# User 2 (same server, a different actor)
user2@server$ AnkaSecureCLI init \
  --silent \
  --client-id a98fe7dc-6b45-12d3-a456-426614174111 \
  --url https://demo.ankatech.co
# Config saved to: /home/user2/.ankasecure-crypto/config.properties

6. Advanced Configuration

Custom Configuration Path

You can override the default configuration location:

# Using the flag every subcommand accepts (it follows the subcommand, not the binary)
AnkaSecureCLI list-keys --config-path /path/to/custom/config.properties

# Using system property (advanced users running from JAR)
java -Dcli.config=/path/to/custom/config.properties -jar ankasecure-cli-crypto-3.4.0-fat.jar <command>

Running the fat JAR yourself

The fat JAR needs Java 25 or later, from any vendor (OpenJDK builds such as Eclipse Temurin, or an Oracle JDK). It loads Bouncy Castle from the lib/ directory beside it (lib/bcprov-jdk18on.jar, lib/bcutil-jdk18on.jar, lib/bcpkix-jdk18on.jar), which every installer creates. When you copy the CLI elsewhere, for example into a container image, copy the fat JAR together with its lib/ directory. The installed AnkaSecureCLI launcher uses the Java 25 runtime bundled with the installer.

Server Connection Settings

The configuration file supports customization of server endpoints, timeouts, and PQC transport:

# Server connection
openapi.scheme=https
openapi.host=prod.ankatech.co
openapi.port=443

# Timeouts (milliseconds)
openapi.connectTimeoutMs=10000
openapi.readTimeoutMs=30000

# PQC transport encryption (optional)
pqc.transport.enabled=false
# ML-KEM-512/768/1024, HQC-128/192/256 or FRODO-976/1344
pqc.kem.algorithm=ML-KEM-768

For detailed configuration options, see the CLI Configuration section.


7. Post-Installation Steps

Once the CLI is installed and initialized, refer to the following documentation:

Getting Started

Technical Documentation

SDK Integration

If you need programmatic access instead of CLI:

Getting Credentials


Last Updated: December 2025
CLI Version: 3.4.0 Java Version: 25


© 2025 ANKATech Solutions Inc. All rights reserved.