Skip to main content

mobile-security

Mobile app security practices

Source facts

Repository
ffsshhttiikk/opencode-agents-skills
Last source activity
February 28, 2026 at 22:52
Detected SKILL.md language
English
Stars
3
Forks
2

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
mobile-security
description
Mobile app security practices
license
MIT
compatibility
opencode
metadata
{"audience":"mobile-developers","category":"mobile-development"}
## What I do - Secure mobile applications against common vulnerabilities - Implement secure data storage and encryption - Protect against reverse engineering and tampering - Secure network communications - Implement authentication and authorization - Handle sensitive data properly - Conduct security assessments for mobile apps ## When to use me Use me when: - Building mobile apps with sensitive user data - Apps requiring secure payment handling - Enterprise apps with corporate data - Apps subject to security compliance (HIPAA, PCI-DSS) - Implementing biometric authentication - Preparing security audit documentation ## Key Concepts ### OWASP Mobile Top 10 Critical mobile security risks: 1. Improper Credential Usage 2. Inadequate Supply Chain Security 3. Insecure Authentication/Authorization 4. Insufficient Input/Output Validation 5. Insecure Communication 6. Inadequate Privacy Controls 7. Insufficient Binary Protections 8. Security Misconfiguration 9. Insecure Data Storage 10. Insufficient Cryptography ### Secure Data Storage **Android (EncryptedSharedPreferences):** ```kotlin val masterKey = MasterKey.Builder(context) .setKeyScheme(MasterKey.KeyScheme.AES256_GCM) .build() val securePrefs = EncryptedSharedPreferences.create( context, "secure_prefs", masterKey, EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV, EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM ) securePrefs.edit().putString("token", authToken).apply() ``` **iOS (Keychain):** ```swift let query: [String: Any] = [ kSecClass: kSecClassGenericPassword, kSecAttrService: "com.app.service", kSecAttrAccount: "authToken", kSecValueData: token.data(using: .utf8)! ] SecItemAdd(query as CFDictionary, nil) ``` ### Code Obfuscation - **Android**: ProGuard, R8, DexGuard - **iOS**: LLVM obfuscation, symbol stripping ### Network Security - TLS 1.3 minimum - Certificate pinning - No sensitive data in URLs - Secure WebViews configuration
View on GitHub