sh sense_obfuscator.sh#!/bin/bash
set -euo pipefail
echo "๐ ================================================"
echo "๐ DOWNLOAD & RUN OBFUSCATOR"
echo "๐ ================================================"
# ---------------------------------------------------
# 1. Detect Project Directory
# ---------------------------------------------------
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
TEMP_DIR="$PROJECT_DIR/.obf_temp"
mkdir -p "$TEMP_DIR"
OBF_BIN="$TEMP_DIR/obfuscator.bin"
REMOTE_URL="https://strctl.gosense.ai/v1/sense-protect-ios-sdk"
echo "๐ Project Directory : $PROJECT_DIR"
echo "๐ Temp Directory : $TEMP_DIR"
# ---------------------------------------------------
# 2. Download Obfuscator
# ---------------------------------------------------
echo "๐ก Downloading obfuscator..."
AUTH_HEADER=$(printf "%s:%s" "<Publick key>" "<Private key>" | base64)
curl -fSL -H "Authorization: Basic $AUTH_HEADER" -o "$OBF_BIN" "$REMOTE_URL" || {
echo "โ Download failed"
rm -rf "$TEMP_DIR"
exit 1
}
echo "๐ Removing macOS quarantine..."
xattr -dr com.apple.quarantine "$OBF_BIN"
chmod +x "$OBF_BIN"
# ---------------------------------------------------
# 3. Run Obfuscator
# ---------------------------------------------------
echo "๐ Running Swift Obfuscator..."
"$OBF_BIN" "$PROJECT_DIR" --in-place --force || {
echo "โ Obfuscation failed"
rm -rf "$TEMP_DIR"
exit 1
}
echo "๐ Obfuscation Complete!"
# ---------------------------------------------------
# 4. Delete Temp Directory (including .bin)
# ---------------------------------------------------
echo "๐งน Cleaning temp directory..."
rm -rf "$TEMP_DIR"
echo "โ
Obfuscator binary deleted"
echo "๐ ================================================"
echo "โ All done โ no leftover binaries"
echo "๐ ================================================"
exit 0