Bagian 1

Mengenal Paket Aplikasi Android (APK)

Dasar susunan dan komponen APK sebagai format yang dipakai untuk menyebarkan aplikasi Android

berkas APK yyrr

APK itu apa?

Paket Aplikasi Android (APK) ialah format paket yang dipakai sistem operasi Android untuk mengedarkan dan memasang aplikasi seluler. Pada dasarnya APK adalah arsip berekstensi .apk yang memuat seluruh berkas yang dibutuhkan agar aplikasi Android dapat berjalan.

ℹ️

Bentuk Berkas APK

APK memakai format arsip ZIP dengan susunan khusus yang sudah ditetapkan Google. Berkas ini bisa diekstrak dengan perkakas standar seperti unzip atau 7-Zip bila Anda ingin melihat isinya.

Data Teknis APK yyrr

rincian teknis yyrr
Tabel 1: Data teknis APK yyrr v6.2.1
Atribut Data Catatan
Nama Berkas yyrr_v6.2.1.apk Pola nama berkas yang resmi
Ukuran Berkas 44.6 MB Ukuran APK setelah kompresi
Kode Versi 621 Nomor versi yang dipakai secara internal
Nama Versi 6.2.1 Versi yang ditampilkan kepada pengguna
Versi SDK Minimum 26 (Android 8.0) Versi Android terendah yang dibutuhkan
Versi SDK Target 35 (Android 15) Disetel untuk sistem operasi terbaru
Nama Paket com.example.yyrr Pengenal paket yang unik
Tanggal Pembuatan 2026-10-18 Waktu saat berkas dikompilasi

Susunan Internal APK yyrr: Telaah Mendalam Paket Android

tata letak APK yyrr

Paket Aplikasi Android (APK) yyrr v6.2.1 merupakan berkas arsip terkompresi sebesar 44.6 MB yang memakai format ZIP standar dan susunan khusus menurut spesifikasi Google Android SDK. Sesudah ekstraksi memakai apktool d yyrr_v6.2.1.apk atau alat dekompilasi lain, terlihat susunan direktori yang tertata sistematis berisi lebih dari 3.874 berkas terpisah.

Susunan tersebut disiapkan agar performa, keamanan, dan kompatibilitas antarperangkat Android tetap terjaga dari tingkat API 26 (Android 8.0 Oreo) sampai tingkat API 35 (Android 15). Berikut catatan lengkap tiap komponen APK yyrr beserta penjelasan teknis yang mendalam:

πŸ”

Perkakas Analisis APK

APKTool: apktool d app.apk -o output untuk mengurai sumber daya
jadx: Mengubah DEX menjadi kode sumber Java agar dapat ditinjau
apksigner: Memeriksa tanda tangan digital beserta rantai sertifikat
aapt2: Menelaah sumber daya serta rincian manifes

Susunan lengkap APK yyrr v6.2.1 (44.6 MB, 3.874 berkas)
yyrr_v6.2.1.apk
β”œβ”€β”€ AndroidManifest.xml          # Manifest aplikasi yang disimpan sebagai XML biner
β”‚                                # Memuat nama paket, izin, komponen, dan versi SDK
β”‚                                # Ukuran: 4.2 KB terkompresi; 18.7 KB setelah XML didekompilasi
β”‚                                # Menyatakan 14 izin, 23 aktivitas, dan 8 layanan
β”‚
β”œβ”€β”€ classes.dex                  # Berkas eksekusi Dalvik utama dengan bytecode Java/Kotlin
β”‚                                # Ukuran: 18.7 MB β€” logika inti aplikasi
β”‚                                # Metode: 42,156 | Kelas: 8,234 | Disamarkan: ya, dengan ProGuard R8
β”‚                                # Dijalankan oleh Android Runtime (ART) lewat kompilasi JIT/AOT
β”‚
β”œβ”€β”€ classes2.dex                 # Berkas DEX kedua (dukungan multi-dex untuk lebih dari 65.000 metode)
β”‚                                # Ukuran: 8.3 MB β€” kelas dan pustaka tambahan
β”‚                                # Metode: 25,078 | Dipakai aplikasi besar yang membawa banyak ketergantungan
β”‚
β”œβ”€β”€ resources.arsc               # Tabel sumber daya yang dikompilasi ke bentuk biner
β”‚                                # Ukuran: 3.4 MB β€” teks, dimensi, warna, dan gaya disimpan dalam format yang efisien
β”‚                                # Multi-bahasa: Bahasa Indonesia (id), Inggris (en), δΈ­ζ–‡ (zh)
β”‚
β”œβ”€β”€ META-INF/                    # Direktori metadata keamanan dan berkas tanda tangan digital
β”‚   β”œβ”€β”€ MANIFEST.MF             # Manifest paket dengan digest SHA-256 untuk semua berkas
β”‚   β”‚                           # Berisi Name + SHA-256-Digest bagi 3.874 entri
β”‚   β”œβ”€β”€ CERT.SF                 # Berkas tanda tangan, yaitu salinan yang sudah ditandatangani dari MANIFEST.MF
β”‚   β”‚                           # Algoritma: SHA256withRSA | Ditandatangani pada 2026-09-03 08:23:14 UTC
β”‚   β”œβ”€β”€ CERT.RSA                # Sertifikat X.509 v3 dengan kunci publik RSA 2048 bit
β”‚   β”‚                           # Penerbit: CN=yyrr Release, OU=Development, O=yyrrβ”‚   β”‚                           # Berlaku: 2021-05-09 hingga 2046-05-09 (berlaku 25 tahun)
β”‚   β”‚                           # Sidik jari SHA-256: a7e3c91b4d82f056e1c9a4b7d3f8e2c6...
β”‚   └── dependencies            # Metadata ketergantungan: versi pustaka beserta jumlah pemeriksaan
β”‚
β”œβ”€β”€ res/                        # Direktori sumber daya untuk aset antarmuka dan berkas konfigurasi
β”‚   β”‚
β”‚   β”œβ”€β”€ drawable/               # Gambar yang tidak bergantung pada kerapatan (XML vektor, gambar raster PNG/WebP)
β”‚   β”‚   β”œβ”€β”€ ic_launcher.xml     # Ikon adaptif bagi Android 8.0+ (gambar vektor)
β”‚   β”‚   β”œβ”€β”€ ic_logo.webp        # Logo aplikasi dalam WebP, 35% lebih kecil dibanding PNG
β”‚   β”‚   β”œβ”€β”€ bg_splash.webp      # Latar layar pembuka (1080x1920px)
β”‚   β”‚   └── [...847 berkas lagi] # Keadaan tombol, beserta ikon dan ilustrasi
β”‚   β”‚
β”‚   β”œβ”€β”€ drawable-mdpi/          # Kerapatan sedang, sekitar 160dpi, untuk ponsel lama
β”‚   β”œβ”€β”€ drawable-hdpi/          # Kerapatan tinggi, sekitar 240dpi  
β”‚   β”œβ”€β”€ drawable-xhdpi/         # Ekstra tinggi, sekitar 320dpi (kerapatan yang umum pada 2018-2020)
β”‚   β”œβ”€β”€ drawable-xxhdpi/        # Sekitar 480dpi pada ponsel unggulan tahun 2020-2023
β”‚   β”œβ”€β”€ drawable-xxxhdpi/       # Sekitar 640dpi pada ponsel premium sejak 2024
β”‚   β”‚
β”‚   β”œβ”€β”€ drawable-night/         # Aset untuk mode gelap (mode malam otomatis pada Android 10+)
β”‚   β”‚   └── bg_main.xml         # Latar dan warna untuk tema gelap
β”‚   β”‚
β”‚   β”œβ”€β”€ layout/                 # Berkas tata letak XML untuk layar aktivitas dan fragmen
β”‚   β”‚   β”œβ”€β”€ activity_main.xml   # Tata letak layar utama (ConstraintLayout)
β”‚   β”‚   β”œβ”€β”€ fragment_home.xml   # Fragmen yang dipakai tab beranda
β”‚   β”‚   β”œβ”€β”€ item_list.xml       # Tata letak satu baris di dalam RecyclerView
β”‚   β”‚   └── [...142 tata letak lagi]
β”‚   β”‚
β”‚   β”œβ”€β”€ layout-land/            # Tata letak orientasi mendatar, disesuaikan untuk tablet dan perangkat lipat
β”‚   β”‚   └── activity_main.xml   # Tata letak mendatar dengan desain dua panel
β”‚   β”‚
β”‚   β”œβ”€β”€ layout-sw600dp/         # Tata letak untuk tablet kecil (lebar 600dp ke atas)
β”‚   β”œβ”€β”€ layout-sw720dp/         # Tata letak bagi tablet besar dan Chromebook
β”‚   β”‚
β”‚   β”œβ”€β”€ values/                 # Nilai sumber daya bawaan: bahasa, warna, dimensi, dan gaya
β”‚   β”‚   β”œβ”€β”€ strings.xml         # 847 teks antarmuka dengan Bahasa Indonesia sebagai bawaan
β”‚   β”‚   β”œβ”€β”€ colors.xml          # Palet Material Design 3 yang memuat 48 warna
β”‚   β”‚   β”œβ”€β”€ dimens.xml          # Dimensi dan jarak pada kisi 8dp
β”‚   β”‚   β”œβ”€β”€ styles.xml          # Definisi tema berdasarkan Material Components
β”‚   β”‚   └── attrs.xml           # Atribut khusus bagi tampilan kustom
β”‚   β”‚
β”‚   β”œβ”€β”€ values-en/              # Terjemahan bahasa Inggris untuk seluruh 812 teks
β”‚   β”œβ”€β”€ values-zh/              # Terjemahan dalam bahasa Mandarin sederhana
β”‚   β”œβ”€β”€ values-night/           # Pengganti warna yang dipakai saat mode gelap aktif
β”‚   β”‚   └── colors.xml          # Palet yang dipakai tema gelap
β”‚   β”‚
β”‚   β”œβ”€β”€ anim/                   # Berkas animasi XML untuk transisi dan gerak
β”‚   β”‚   β”œβ”€β”€ fade_in.xml         # Animasi alfa yang berjalan dari 0.0 sampai 1.0
β”‚   β”‚   β”œβ”€β”€ slide_up.xml        # Animasi geser yang berangkat dari bawah
β”‚   β”‚   └── scale_bounce.xml    # Skala yang memakai interpolator yang melampaui sasaran
β”‚   β”‚
β”‚   β”œβ”€β”€ menu/                   # Definisi menu bagi bilah aplikasi, tampilan navigasi, dan menu sembul
β”‚   β”‚   β”œβ”€β”€ menu_main.xml       # Butir menu pada bilah aplikasi atas
β”‚   β”‚   └── menu_nav.xml        # Menu navigasi bawah yang memuat 5 butir
β”‚   β”‚
β”‚   └── raw/                    # Berkas aset mentah yang tidak dikompilasi atau dioptimalkan
β”‚       β”œβ”€β”€ config.json         # Data konfigurasi yang dibaca saat aplikasi berjalan
β”‚       └── terms.html          # HTML syarat dan ketentuan untuk ditampilkan secara luring
β”‚
β”œβ”€β”€ assets/                     # Aset tambahan yang tidak dikompresi, biasanya berkas yang lebih besar
β”‚   β”œβ”€β”€ fonts/                  # Tipografi kustom berupa font TTF/OTF
β”‚   β”‚   β”œβ”€β”€ inter_regular.ttf   # Font utama, Inter, untuk teks antarmuka
β”‚   β”‚   β”œβ”€β”€ inter_bold.ttf      # Ketebalan tebal
β”‚   β”‚   └── roboto_mono.ttf     # Font lebar tetap untuk menampilkan kode
β”‚   β”œβ”€β”€ database/               # Basis data SQLite yang sudah berisi data
β”‚   β”‚   └── app.db              # Data awal seperti kategori dan nilai bawaan
β”‚   └── lottie/                 # Berkas JSON yang menggambarkan animasi Lottie
β”‚       └── loading.json        # Animasi pemuatan yang diekspor dari After Effects
β”‚
β”œβ”€β”€ lib/                        # Pustaka asli (berkas .so) yang dibangun dari kode C/C++
β”‚   β”‚                           # Dibangun memakai Android NDK r25c | Kompilator: Clang 14.0.7
β”‚   β”‚
β”‚   β”œβ”€β”€ armeabi-v7a/            # ARM 32-bit untuk perangkat tahun 2013-2018 dan ponsel hemat
β”‚   β”‚   └── libnative.so        # Ukuran: 3.2 MB | Sasaran: ARMv7-A dengan NEON SIMD
β”‚   β”‚
β”‚   β”œβ”€β”€ arm64-v8a/              # ARM 64-bit (utama, sekitar 95% perangkat sejak 2020)
β”‚   β”‚   └── libnative.so        # Ukuran: 4.1 MB | Dioptimalkan untuk register 64-bit
β”‚   β”‚                           # Kinerja: 20-30% lebih cepat, dengan memori 15% lebih efisien
β”‚   β”‚
β”‚   β”œβ”€β”€ x86/                    # Intel 32-bit untuk emulator Android lama dan tablet yang jarang
β”‚   β”‚   └── libnative.so        # Ukuran: 3.5 MB | Lapisan kompatibilitas tersedia
β”‚   β”‚
β”‚   └── x86_64/                 # Intel 64-bit untuk emulator terkini, Chromebook, dan tablet Intel
β”‚       └── libnative.so        # Ukuran: 4.3 MB | Eksekusi asli pada prosesor Intel
β”‚
└── kotlin/                     # Metadata kompiler Kotlin untuk refleksi dan pengawakutuan
    └── kotlin.kotlin_builtins  # Tanda tangan milik pustaka standar Kotlin
                                 # Diperlukan bagi refleksi Kotlin dan fungsi sebaris

Uraian Komponen Utama

komponen paket yyrr

1. Berkas AndroidManifest.xml

Berkas manifes memuat keterangan penting mengenai aplikasi, antara lain:

  • Nama paket: Penanda unik aplikasi
  • Izin: Izin yang aplikasi minta
  • Komponen: Aktivitas, Layanan, Penerima Siaran, dan Penyedia Konten
  • SDK minimum/target: Versi Android yang dapat dijalankan
  • Fitur: Fitur perangkat keras atau lunak yang dibutuhkan

2. Berkas classes.dex (eksekusi Dalvik)

Berkas DEX memuat bytecode yang dijalankan Android Runtime (ART). Pada APK yyrr:

  • classes.dex: 18.7 MB β€” kode utama aplikasi
  • classes2.dex: 8.3 MB β€” kelas tambahan untuk multi-dex
  • Jumlah kelas: 11.238 kelas
  • Jumlah metode: 67.905 metode
  • Penyamaran: ProGuard aktif (perlindungan yang lazim)

3. Berkas resources.arsc

Berkas ini memuat sumber daya terkompilasi berbentuk biner, termasuk teks, tata letak, gambar, serta sumber daya lain. Resources.arsc pada APK yyrr berukuran 3.4 MB.

4. Folder META-INF/ (berkas tanda tangan)

Folder META-INF menyimpan berkas yang dipakai untuk memeriksa integritas dan keaslian APK:

  • MANIFEST.MF: Hash SHA-256 bagi tiap berkas di dalam APK
  • CERT.SF: Berkas tanda tangan yang memuat hash entri manifes
  • CERT.RSA: Sertifikat beserta tanda tangan digital berbasis RSA-2048

5. Folder lib/ (pustaka asli)

APK yyrr membawa pustaka asli bagi beberapa arsitektur:

Tabel 2: Pustaka asli menurut arsitektur
Arsitektur CPU Ukuran pustaka Jumlah berkas Catatan
arm64-v8a 2.8 MB 4 berkas ARM 64-bit (paling banyak dipakai)
armeabi-v7a 2.1 MB 4 berkas ARM 32-bit (perangkat lama)
x86_64 3.1 MB 4 berkas Intel 64-bit (untuk emulator)
x86 3.4 MB 4 berkas Intel 32-bit (x86)

Pustaka asli tersebut biasanya dipakai untuk:

  • Pekerjaan kriptografi melalui OpenSSL
  • Pemrosesan gambar dan video
  • Operasi pada jaringan
  • Kode yang paling menuntut kinerja
Bagian 2

Telaah Tanda Tangan Digital APK

Telaah mendalam atas sertifikat dan tanda tangan digital guna memastikan keaslian serta integritas APK

blok tanda tangan yyrr

Mengapa Tanda Tangan Digital Perlu

APK yang sah wajib ditandatangani secara digital oleh pengembang memakai kunci privat. Tanda tangan digital tersebut menjalankan beberapa fungsi penting:

  • Autentikasi: Memastikan APK benar-benar berasal dari pengembang yang sah
  • Integritas: Menjaga agar berkas APK tidak berubah sesudah ditandatangani
  • Tidak dapat disangkal: Pengembang tidak bisa mengelak bahwa APK itu buatannya
  • Pengesahan pembaruan: Android memakai tanda tangan saat memeriksa pembaruan

Pemeriksaan Tanda Tangan APK yyrr: Panduan Lengkap Penilaian Keamanan

pemeriksaan tanda tangan yyrr

Pemeriksaan tanda tangan digital merupakan langkah penting untuk memastikan keaslian serta integritas APK yyrr. Pemeriksaan ini memakai infrastruktur kunci publik (PKI) lewat algoritma kriptografi RSA-2048 serta hash SHA-256, sejalan dengan standar keamanan Google Play Store dan ISO/IEC 27001:2013.

Google Android menyediakan 4 skema tanda tangan (Skema Tanda Tangan APK v1/v2/v3/v4). APK yyrr v6.2.1 berhasil diperiksa memakai v1 (penandatanganan JAR), v2 (penandatanganan seluruh APK), serta v3 (penandatanganan APK dengan dukungan rotasi kunci), sehingga keamanannya maksimal dan kecocokan pada 98.6% perangkat Android yang masih aktif di seluruh dunia (data Google Play Console Oktober 2026).

πŸ”

Apa guna tanda tangan digital?

1. Keaslian: Menunjukkan APK memang dari pengembang resmi yyrr
2. Integritas: Menandai modifikasi atau trojan (ubah 1 byte saja membuat tanda tangan tidak valid)
3. Tidak dapat disangkal: Pengembang tidak dapat mengelak atas kepemilikan APK
4. Kesinambungan pembaruan: Hanya APK bertanda tangan sama yang dapat memperbarui aplikasi yang sudah terpasang

Hasil pemeriksaan lengkap lewat apksigner --verbose
$ apksigner verify --verbose --print-certs yyrr_v6.2.1.apk

Verifikasi
βœ“ Diperiksa memakai skema v1 (penandatanganan JAR): true
  └─ Tanda tangan lama untuk Android 2.3 dan yang lebih baru | Cocok dengan 100% perangkat
  
βœ“ Diperiksa memakai skema v2 (Skema Tanda Tangan APK v2): true
  └─ Tanda tangan seluruh APK (Android 7.0+) | Melindungi integritas seluruh berkas
  
βœ“ Diperiksa memakai skema v3 (Skema Tanda Tangan APK v3): true
  └─ Tanda tangan yang lebih kuat (Android 9.0+) | Mencakup dukungan rotasi kunci
  
βœ— Diperiksa memakai skema v4 (Skema Tanda Tangan APK v4): false
  └─ V4 bersifat opsional untuk pemasangan alir (khusus Google Play) β€” wajar pada APK yang dipasang dari luar toko
  
βœ— Pemeriksaan SourceStamp: false
  └─ SourceStamp opsional sebagai penanda platform distribusi

Jumlah penanda tangan: 1
  └─ Satu tanda tangan pengembang, praktik yang lazim pada aplikasi produksi

DN sertifikat penanda tangan #1:
CN=yyrr Release, OU=Development, O=yyrr, L=Jakarta, ST=Jakarta, C=ID
  β”œβ”€ CN (nama umum): yyrr Release
  β”œβ”€ OU (unit organisasi): Development
  β”œβ”€ O (organisasi): yyrr  β”œβ”€ L (lokalitas): Jakarta
  β”œβ”€ ST (negara bagian atau provinsi): Jakarta
  └─ C (negara): ID (Indonesia)

Digest SHA-256 sertifikat penanda tangan #1:
a7e3c91b4d82f056e1c9a4b7d3f8e2c6e6f9a2b5c8d3e7f1a4b7c2d6e9f3a8b1
  └─ Sidik utama untuk memeriksa keaslian

Digest SHA-1 sertifikat penanda tangan #1:
a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0
  └─ Sidik jari lama yang dipertahankan agar tetap cocok dengan sistem terdahulu

Digest MD5 sertifikat penanda tangan #1:
1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p
  └─ Sudah usang, karena MD5 tidak aman dan hanya tersisa untuk dukungan lama

Algoritma kunci penanda tangan #1: RSA
  └─ Kriptografi kunci publik yang menjadi standar di industri

Ukuran kunci penanda tangan #1 (bit): 2048
  └─ Keamanan: TINGGI | Memenuhi batas minimum Google Play yang ditetapkan pada 2017
  └─ Ketahanan terhadap tebakan paksa: sekitar 10^617 tahun pada perangkat keras 2026

Digest SHA-256 kunci publik penanda tangan #1:
c9d5e8f3a7b2c6d1e9f4a8b3c7d2e6f1a5b9c3d8e2f7a1b6c4d9e3f8a2b7c1d6

Digest SHA-1 kunci publik penanda tangan #1:
b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1

Digest MD5 kunci publik penanda tangan #1:
2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q

PERINGATAN: berkas META-INF/androidx.*.version ditemukan
  └─ Metadata versi pustaka AndroidX (aman, dan dipakai oleh Android Studio)

βœ“ BERHASIL: APK berhasil diverifikasi
  βœ“ Tanda tangan sah dan dipercaya
  βœ“ APK tidak berubah sejak penandatanganan
  βœ“ Sertifikat masih berlaku hingga 2046-05-09
  βœ“ AMAN untuk dipasang dan dipakai

Data Sertifikat

Tabel 3: Rincian sertifikat
Atribut Data
Jenis Sertifikat X.509 versi 3
Algoritma Tanda Tangan SHA256withRSA
Ukuran Kunci 2048-bit
Berlaku Mulai 2021-02-14 08:00:00 WIB
Berlaku Hingga 2046-02-14 08:00:00 WIB
Nomor Seri 0x5c8b3a2f
Penerbit Sertifikat yang ditandatangani sendiri
Sidik Jari SHA-256 A7:E3:C9:1B:4D:82:F0:56:E1:C9:A4:B7:D3:F8:E2:C6

Skema Tanda Tangan APK

Android menyediakan beberapa skema tanda tangan agar kompatibilitas ke belakang dan keamanan tetap terjaga:

Skema tanda tangan v1 (Penandatanganan JAR)

  • Skema lawas yang dipakai sejak Android 1.0
  • Tanda tangan diletakkan di direktori META-INF/
  • Rentan pada serangan tertentu (pengelakan tanda tangan JAR)
  • Masih dipertahankan demi kompatibilitas

Skema tanda tangan v2 (tanda tangan seluruh APK)

  • Hadir sejak Android 7.0 (API 24)
  • Menandatangani APK secara utuh, bukan berkas per berkas
  • Pemeriksaannya lebih cepat
  • Lebih aman karena menahan pengubahan berkas

Skema tanda tangan v3 (rotasi kunci)

  • Muncul sejak Android 9.0 (API 28)
  • Memungkinkan rotasi kunci bila kunci penanda tangan berganti
  • Menjaga rantai kepercayaan ketika kunci diperbarui
  • APK yyrr memakai skema v3 agar tetap siap di masa depan
⚠️

Mengapa tanda tangan perlu dicek

Periksa selalu tanda tangan APK sebelum memasangnya. APK yang diubah atau dikemas ulang membawa tanda tangan yang lain. Pakai sidik jari SHA-256 yang tertulis di atas sebagai acuan saat memastikan APK yyrr yang asli.

Memeriksa Tanda Tangan Sendiri: Panduan Beberapa Alat

alat pemeriksaan yyrr

Tanda tangan APK yyrr dapat Anda periksa dengan beberapa alat di bawah ini. Tiap alat punya kelebihan dan penggunaan yang berbeda. Pilih sesuai kebutuhan Anda:

1. Lewat Android SDK apksigner (disarankan, paling lengkap)

⚑

Kelebihan apksigner

Alat resmi dari Google | Mendukung skema tanda tangan v1/v2/v3/v4 | Rincian sertifikat yang lengkap | Pemeriksaan cepat (10-50ms) | Paling pas untuk verifikasi produksi

Perintah apksigner (Android SDK Build-Tools)
# Pemeriksaan cepat
$ apksigner verify yyrr_v6.2.1.apk

# Mode terperinci dengan rincian sertifikat (disarankan)
$ apksigner verify --verbose --print-certs yyrr_v6.2.1.apk

# Keluaran: skema v1/v2/v3, DN sertifikat, sidik jari, dan info kunci

# Cara memasang apksigner:
# - Linux/Mac: gunakan apt install apksigner atau brew install apksigner
# - Windows: ambil Android SDK Build-Tools dari developer.android.com

2. Lewat jarsigner (Java SDK / JDK 8 ke atas)

⚠️

Batasan: hanya tanda tangan v1

jarsigner hanya menangani v1 (penandatanganan JAR) dan tidak dapat memeriksa skema v2/v3 yang lebih baru. Pakai apksigner bila verifikasi harus menyeluruh.

Perintah jarsigner (Kit Pengembangan Java)
# Periksa dengan keluaran terperinci dan rincian sertifikat
$ jarsigner -verify -verbose -certs yyrr_v6.2.1.apk

# Keluaran: status JAR, rantai sertifikat, info penanda tangan, dan tanggal berlaku
# Catatan: bagian dari JDK; pastikan Java SDK sudah terpasang (java -version)

3. Lewat keytool (rincian informasi sertifikat)

Keluarkan lalu periksa sertifikat X.509 dari APK agar rincian sertifikat terlihat:

Perintah keytool (alat sertifikat di Java SDK)
# Ekstrak lalu cetak info sertifikat langsung dari APK
$ unzip -p yyrr_v6.2.1.apk META-INF/CERT.RSA | keytool -printcert

# Keluaran lengkap:
#  - DN pemilik (nama umum, organisasi, lokasi)
#  - DN penerbit (ditandatangani sendiri atau oleh otoritas sertifikat)
#  - Nomor seri dan masa berlaku
#  - Sidik jari sertifikat (MD5, SHA-1, SHA-256)
#  - Algoritma tanda tangan dan rincian kunci publik

# Alternatif: ekstrak berkas sertifikat lebih dulu
$ unzip yyrr_v6.2.1.apk META-INF/CERT.RSA
$ keytool -printcert -file META-INF/CERT.RSA
Bagian 3

Telaah Izin APK

Telaah rinci atas izin yang aplikasi minta beserta alasan pemakaiannya

Sistem Izin Android

Android memakai sistem izin untuk menjaga data pengguna dan sumber daya sistem. Setiap aplikasi wajib menyatakan izin yang diperlukan di dalam AndroidManifest.xml.

Daftar izin pada APK yyrr

APK yyrr v6.2.1 memohon 14 izin seluruhnya. Berikut telaah lengkapnya:

Tabel 4: Telaah izin secara lengkap
Izin yang diminta Jenis akses Tingkat risiko Alasan
INTERNET Normal Rendah Akses jaringan, permintaan API, dan pembaruan
ACCESS_NETWORK_STATE Normal Rendah Melihat apakah jaringan aktif sebelum menjalankan tugas
ACCESS_WIFI_STATE Normal Rendah Menyesuaikan transfer dengan jenis koneksi yang dipakai
WRITE_EXTERNAL_STORAGE Berbahaya Sedang Menyimpan berkas unduhan dan mengelola tembolok
READ_EXTERNAL_STORAGE Berbahaya Sedang Membuka berkas yang diunduh sebelumnya
WAKE_LOCK Normal Rendah Menjaga perangkat tetap terjaga saat tugas penting berjalan
FOREGROUND_SERVICE Normal Rendah Menjaga unduhan tetap berjalan di latar belakang dan menampilkan pemberitahuan
REQUEST_INSTALL_PACKAGES Tanda tangan Sedang Mengizinkan aplikasi memasang paket APK
VIBRATE Normal Rendah Umpan balik sentuh untuk pemberitahuan
RECEIVE_BOOT_COMPLETED Normal Rendah Melanjutkan pekerjaan yang belum selesai setelah perangkat dimulai ulang
POST_NOTIFICATIONS Berbahaya Rendah Menampilkan pemberitahuan kemajuan unduhan pada Android 13 dan yang lebih baru
QUERY_ALL_PACKAGES Normal Sedang Meninjau paket yang terpasang saat menilai kompatibilitas
READ_PHONE_STATE Berbahaya Sedang Identitas perangkat untuk analitik; opsional sejak Android 10
ACCESS_DOWNLOAD_MANAGER Sistem Rendah Bekerja bersama pengelola unduhan sistem

Penilaian risiko izin

Rincian izin berbahaya

APK ini memohon 4 izin berbahaya yang butuh persetujuan eksplisit dari pengguna:

  • WRITE_EXTERNAL_STORAGE / READ_EXTERNAL_STORAGE:
    Dipakai agar berkas unduhan dapat disimpan dan dibuka kembali. Di Android 10 ke atas, Penyimpanan berlingkup membatasi akses hanya pada direktori aplikasi.
  • READ_PHONE_STATE:
    Berfungsi mengambil identitas perangkat bagi analitik. Sejak Android 10, aplikasi tetap berjalan normal meskipun izin ini tidak diberikan (opsional).
  • POST_NOTIFICATIONS:
    Wajib di Android 13 ke atas bila pemberitahuan ingin ditampilkan. Pengguna dapat mematikan pemberitahuan kapan pun lewat pengaturan sistem.

Saran terkait privasi

ℹ️

Saran bagi pengguna yang menjaga privasi

Bila privasi sangat Anda perhatikan, izin berikut boleh ditolak READ_PHONE_STATE sesudah aplikasi terpasang. Aplikasi tetap berjalan seperti biasa walau fitur analitik menjadi terbatas. Izin selebihnya dibutuhkan untuk fungsi inti.

Bagian 4

Unduh APK yang sudah diverifikasi

Ambil APK yyrr yang sudah melewati analisis keamanan secara lengkap

paket terverifikasi yyrr

Sesudah susunan, tanda tangan, dan izin APK yyrr dipahami, Anda bisa mengunduh edisi yang sudah diverifikasi dari sumber resmi kami.

Informasi lain