macOS
13 Ventura or later
Download · APPCHK CLI 1.1.0
One native binary for macOS, Linux and Windows, with nothing else to install. Free forever, with every check. Scans run offline and nothing is uploaded.
13 Ventura or later
10 or later
glibc 2.17 or later
Version 1.1.0 · signed for macOS and Windows · checksums signed with minisign
Not sure which one? On macOS and Linux, uname -m prints arm64 or aarch64 for the arm64 files and x86_64 for the others. On Windows, Settings › System › About shows the system type: x64 or ARM-based.
Requirements
APPCHK uses only what the operating system already has: no Java, Android SDK, Xcode or Python, and no runtime to install first.
ldd --version shows yours)Network: only appchk feeds update connects, over HTTPS to osv-vulnerabilities.storage.googleapis.com. Its trusted root certificates are built in, so no certificate package is needed. Scans never use the network.
Check the download
Every release's SHA256SUMS is signed with the APPCHK release key. Check the signature, then your file against SHA256SUMS: that proves the file is the one we published, unchanged.
$ minisign -Vm SHA256SUMS -P RWTpNVfh7QXk3KbM6Q4phFMWX5sp7uimttcvUmAmCJvVf3ieasWBUeyg Signature and comment signature verified Trusted comment: APPCHK 1.1.0 release checksums $ shasum -a 256 --ignore-missing -c SHA256SUMS appchk-1.1.0-aarch64-apple-darwin: OK
Release public key RWTpNVfh7QXk3KbM6Q4phFMWX5sp7uimttcvUmAmCJvVf3ieasWBUeyg key ID DCE405EDE15735E9
To get minisign: macOS brew install minisign · Debian 12 or later and Ubuntu 24.04 or later sudo apt install minisign · Fedora, and RHEL with EPEL, sudo dnf install minisign · Windows: download it from the minisign page. On Windows without minisign, Get-FileHash in PowerShell checks a file against SHA256SUMS, but not who signed it.
Signed with an Apple Developer ID and notarized by Apple. On the first run macOS checks the notarization online.
Signed with an Authenticode certificate and timestamped. SmartScreen may still warn about a new program: choose More info, then Run anyway.
Linux has no system check of program signatures. The minisign signature on SHA256SUMS is what proves where the file came from.
Install
Use the Intel file name on an Intel Mac. Without sudo, any folder on your PATH works.
chmod +x appchk-1.1.0-aarch64-apple-darwin sudo mv appchk-1.1.0-aarch64-apple-darwin \ /usr/local/bin/appchk
Use the arm64 file name on arm64. Without sudo, use ~/.local/bin.
chmod +x appchk-1.1.0-x86_64-unknown-linux-gnu sudo mv appchk-1.1.0-x86_64-unknown-linux-gnu \ /usr/local/bin/appchk
Moves the program to your user programs folder; use the arm64 file name on Windows on Arm. Then add that folder to your user PATH and open a new terminal.
$dir = "$env:LOCALAPPDATA\Programs\appchk" New-Item -ItemType Directory -Force $dir Move-Item .\appchk-1.1.0-x86_64-pc-windows-gnu.exe ` "$dir\appchk.exe"
First run
$ appchk --version appchk 1.1.0 $ appchk doctor $ appchk feeds update $ appchk scan MyApp.apk
appchk scan reads APK, AAB and IPA filesappchk feeds update fetches the OSV advisory feed; it is the only command that uses the networkWhat is in 1.1.0
--fail-onNot in this release: dynamic analysis, and vulnerability matching for native libraries and iOS dependencies.