সচেতনতাই সুরক্ষা  ·  Awareness is Protection

Surokkha সাইবার সুরক্ষা

Bangladesh's free cybersecurity app — in Bengali and English. Detect scams, scan your device, check any link, and protect your money.

🇧🇩 Made for Bangladesh 🔒 Zero data collection 📴 Works offline 🆓 Free forever · No ads

Bangladesh has over 50 million active mobile internet users — yet cybersecurity awareness is extremely low outside educated urban circles. bKash fraud, fake loan apps, Facebook hijacking, SIM swap, smishing — all rampant, with no widely available Bengali-language resource to fight back. Surokkha closes that gap.

Everything you need to stay safe

Built for every Bangladeshi — from a first-time smartphone user to an IT professional. Three reading levels so nobody is left behind.

🔍

Device Security Scanner

9 on-device checks: screen lock strength, unknown app sources, dangerous permission combinations, accessibility service hijacks, device admin apps, notification listener access, Google Play Protect, OS patch age, and developer mode.

100% on-device · nothing sent to servers
🔗

Link & QR Code Checker

Paste any URL or point your camera at a QR code. Checked against a local Bangladesh-specific blocklist (bKash, Nagad, Facebook phishing), 4 heuristic checks, and optional Google Safe Browsing — before you ever tap.

Privacy-safe hash matching
📱

Phone Number Checker

Type any number to check it against a community-reported scammer database before you call back or send money. Only a SHA-256 hash of the number is ever transmitted — your raw number never leaves your device.

Hash-only lookup · raw number stays local
📖

Threat Library

30+ articles on the scams most affecting Bangladeshis — bKash/Nagad fraud, Facebook hijacking, fake loan apps, smishing, prize call scams, Google account security, and more. Written at three levels: Simple, Normal, Technical.

Works offline after first sync
⚙️

Security Checklist

12-item Android security checklist that reads your actual device state — screen lock, Play Protect, developer mode, encryption. Each item has step-by-step "How to Fix" instructions and a one-tap "Open Settings" button.

Live device state · one-tap fixes
👥

Community Stories

Real, anonymised experiences from Bangladeshis who've encountered scams. Submit your own story to warn others — moderated by volunteers before publication. Filter by category, district, or recency.

Volunteer-moderated
🗺️

Scam Hotspot Map

Visual map of scam incidents by division and district — updated from community reports. When multiple reports cluster in one area, nearby users get a push alert automatically.

Real-time geo alerts
📹

Video Library

Curated and community-submitted YouTube and Facebook safety videos in a swipeable feed — straight from security experts and educators. Submit videos through the app for moderation and publication.

YouTube & Facebook embed
💬

Discussion Threads

Ask questions, start conversations, get answers from the community. Reply notifications keep the discussion going. Threads are moderated to keep the space safe and accurate.

Reply notifications via FCM
🌐

Bengali & English

Every screen, article, notification, and community story is available in both Bengali and English. Switch language instantly at any time from the home screen.

Switch anytime · persisted
📴

Offline-First

All articles, guides, and the device scanner work fully offline after the first sync. Designed for low-data plans and 1 GB RAM devices. APK target under 20 MB.

Android 7.0+ · low-end device friendly
📨

SMS & Text Link Scanner

Received a suspicious SMS? Paste the full message text into the app, or long-press any SMS in your messaging app and share it directly to Surokkha. Every URL found in the text is extracted and checked instantly against the local blocklist and heuristic rules — no copy-pasting individual links needed.

Share intent · paste & scan · no background access

Articles bundled in the app

Available offline from day one — no internet needed to read these after first launch.

Mobile Fraud
bKash "ভুল নম্বরে" স্ক্যাম
Social Engineering
"আপনি পুরস্কার জিতেছেন" ফোন কল
Account Security
ফেসবুক অ্যাকাউন্ট হ্যাক হলে কী করবেন
Phishing
কুরিয়ার SMS-এর নকল লিংক (Smishing)
Account Security
ফেসবুক লগইন সুরক্ষা — ধাপে ধাপে গাইড
OTP Fraud
WhatsApp OTP চুরি স্ক্যাম
Malware
নকল লোন অ্যাপ থেকে বাঁচুন
Device Security
Android ফোনের ৫টি গুরুত্বপূর্ণ সেটিংস
Malware
অচেনা APK ইনস্টল করবেন না কেন?
Account Security
Google অ্যাকাউন্ট সুরক্ষা গাইড
Security Guide
bKash & Nagad Safety Guide
Security Guide
Facebook Account Security
Security Guide
WhatsApp Security Guide
Security Guide
Android Privacy Settings
Security Guide
Strong Password Guide

…and 15+ more articles available after syncing with the server.

Built for everyone

Three types of users, one app — progressive depth means every level finds exactly what they need.

The Unaware Majority

Rickshaw pullers, shopkeepers, garment workers, rural users, elderly users — people using bKash and Nagad daily but unfamiliar with social engineering. Bengali by default, ultra-simple language, real stories from people like them.

The Digitally Active

Students, office workers, gig workers, social media users. People who use mobile banking and e-commerce daily and want deeper guides, threat news, peer discussion, and a device scanner.

Security-Aware & Professionals

IT professionals, teachers, journalists, NGO workers who want technical depth, sharing tools, and the ability to help spread awareness in their communities. Technical article layer + sharing tools built in.

30+
Threat articles bundled
9
Device scan checks
45+
Glossary terms
31+
Blocklist seed entries
0
Ads. Ever.

Feature Testing Guide

Step-by-step test cases for every feature — follow these to verify the app is working correctly on any device.

🚀
1. Onboarding — First Launch 3-screen horizontal pager shown only on first install
▼
A
Language selection on first slide
  1. Clear app data or install fresh so onboarding has not been completed.
  2. Launch the app — you should land on the first onboarding slide.
  3. Tap English; verify all slide text switches to English immediately.
  4. Tap বাং (Bengali); verify text reverts to Bengali.
✅ Language preference persists — Home screen after "Get Started" also shows in the selected language.

B
Swipe through all 3 slides and complete onboarding
  1. Swipe left on slide 1 → slide 2 describes app features.
  2. Swipe left again → slide 3 shows the privacy commitment.
  3. Tap Get Started / শুরু করুন.
✅ App navigates to Home screen. Onboarding never appears again on subsequent launches.
🏠
2. Home Dashboard Scrollable feed: hero score, alerts, 8 quick actions, daily tip, trending stories, articles
▼
A
Security score — no-scan state
  1. Install fresh (no scan done yet).
  2. Home hero should show a pulsing shield icon and "আপনার ডিভাইস কি নিরাপদ?" / "Is your device secure?"
  3. A white Start Scan button should be visible in the hero.
✅ No score ring shown. Button tap navigates to the Scanner screen.

B
Security score — after a scan
  1. Complete a device scan from Scanner tab.
  2. Return to Home — the hero should display an animated score ring (0–100).
  3. Check colour: ≥ 80 = green  50–79 = yellow  < 50 = red.
  4. If the scan was more than 7 days ago, a yellow "⚠ Scan outdated" line should appear.
✅ Score ring animates on load. "Scan Again" outline button is visible. Stale warning only shows when scan > 7 days old.

C
Active Alerts Online
  1. Publish a CRITICAL or HIGH severity alert from the moderation portal.
  2. Pull-to-refresh or restart the app to sync.
  3. Verify the alert card appears with a coloured left border (red = CRITICAL, amber = HIGH).
  4. Tap the ✕ dismiss icon — card should disappear immediately and not return on relaunch.
✅ Up to 3 alerts shown. Dismissed alerts are persisted locally.

D
Quick Actions grid (2 rows × 4 tiles)
  1. Confirm 8 action tiles are visible: জরুরি সাহায্য, ডিভাইস স্ক্যান, শিখুন, লিংক চেক, QR স্ক্যান, APK চেক, জরুরি নম্বর, সেটিংস গাইড.
  2. Tap each tile and confirm it navigates to the correct screen.
✅ All 8 tiles are tappable and navigate correctly with no crashes.
🔍
3. Device Security Scanner 9 on-device checks — no data sent to servers
▼
A
Start a full scan
  1. Navigate to the Scanner tab.
  2. Tap "পূর্ণ স্ক্যান শুরু করুন" / "Start Full Scan".
  3. A scanning animation should appear for ~5–10 seconds.
  4. Results screen should show an overall score (0–100) and individual findings.
✅ All 9 checks complete without crashing. Score is a number 0–100.

B
Verify all 9 checks are present
#BengaliEnglish
1Android ভার্সনAndroid Version
2অজানা উৎস থেকে ইনস্টলInstall from Unknown Sources
3ডেভেলপার মোডDeveloper Mode
4স্ক্রিন লকScreen Lock
5অ্যাপ পার্মিশন অডিটApp Permission Audit
6অ্যাক্সেসিবিলিটি সার্ভিসAccessibility Service Audit
7ডিভাইস অ্যাডমিনDevice Administrator Audit
8নোটিফিকেশন লিসেনারNotification Listener Audit
9Google Play ProtectGoogle Play Protect
✅ All 9 findings visible in the results list. No duplicate rows.

C
"Fix This" deep-link opens Android Settings
  1. Find any finding with CRITICAL or WARNING status.
  2. Tap the "ঠিক করুন" / "Fix This" button on that card.
✅ Android Settings opens directly at the relevant screen (Security Settings, Developer Options, etc.). Back button returns to the scanner.

D
Re-scan after fixing an issue updates the score
  1. Identify a WARNING finding (e.g., Developer Mode enabled).
  2. Use the "Fix This" button to fix it in Android Settings.
  3. Return to Scanner and tap "আবার স্ক্যান করুন" / "Scan Again".
✅ Fixed check now shows PASS ✅. Overall score increases.
🔗
4. URL / Link Checker Local blocklist + 4 heuristics + optional Google Safe Browsing cloud check
▼
A
Safe URL
  1. Navigate to URL Checker (quick actions or bottom nav).
  2. Type or paste: https://www.google.com
  3. Tap the Check / যাচাই করুন button.
✅ Result card shows Safe with message "No issues found in any check."

B
HTTP-only URL (heuristic) Offline
  1. Enter: http://example-bank.com (plain HTTP, not HTTPS).
  2. Tap Check.
✅ Result shows Suspicious — heuristic: unencrypted HTTP connection.

C
Brand impersonation in subdomain Offline
  1. Enter: https://bkash.login-verify.com
  2. Tap Check.
✅ Result shows Dangerous or Suspicious — heuristic: brand keyword "bkash" in a non-official domain.

D
URL shortener detection Offline
  1. Enter: https://bit.ly/abc123
  2. Tap Check.
✅ Result shows Suspicious — heuristic: URL shortener detected.

E
Local blocklist hit works without internet Offline
  1. Turn off mobile data and Wi-Fi.
  2. Enter a known phishing URL from the bundled Bangladesh-specific blocklist (any of the 31 seeded bKash/Nagad phishing domains).
  3. Tap Check.
✅ Result shows Dangerous with source "LOCAL_BLOCKLIST" — no internet required.
📷
5. QR Code Scanner Live camera → QR decode (ML Kit, on-device) → URL safety check pipeline
▼
A
Camera permission grant Requires Camera
  1. Navigate to QR স্ক্যান / QR Scan from Home quick actions.
  2. If first launch, grant the camera permission when prompted.
✅ Camera preview starts and the square scan frame is visible. No crash.

B
Scan a safe QR code
  1. Generate a QR code for https://www.google.com on another device.
  2. Point the camera at it — ML Kit decodes it automatically, then a brief "Checking…" state appears.
✅ Result shows Safe with the URL displayed and a green explanation.

C
Camera permission denied gracefully
  1. Revoke camera permission for the app in Android Settings.
  2. Try to open QR Scan.
✅ App shows a "Permission Denied" message with instructions to enable camera. No crash.
🤖
6. APK Checker Upload an APK → permission combo analysis + optional VirusTotal hash check
▼
A
Upload a clean APK
  1. Navigate to APK চেক / APK Check (Home quick actions).
  2. Tap the upload button and select any small, known-clean APK (under 100 MB).
  3. Wait for analysis to complete.
✅ Result shows Safe, lists permissions, and "No dangerous combinations found."

B
APK with dangerous permission combo flagged
  1. Use or create a test APK declaring INTERNET permission and a DEVICE_ADMIN_ENABLED receiver.
  2. Upload via the APK Checker.
✅ Result shows Dangerous with combo description "দূর থেকে ডিভাইস নিয়ন্ত্রণ সম্ভব" / "Possible remote device control".
📖
7. Learn — Threat Library & Articles Category browse, full-text search, 3-level reading depth, glossary, bookmarks, share
▼
A
Browse by category and search
  1. Go to Learn → নিবন্ধ / Articles tab.
  2. Tap a category chip (e.g., "📱 Mobile Scams") — article list should filter.
  3. Type "bkash" in the search bar — matching articles appear. Clear to reset.
✅ Filter and search work across both Bengali and English titles. "All" chip resets.

B
3-level reading depth per article
  1. Open any article.
  2. Find three tabs: সহজ / Simple, সাধারণ / Normal, বিস্তারিত / Technical.
  3. Tap each tab — content should change to match the reading level.
✅ Simple = short story + bullet points. Normal = step-by-step. Technical = detailed mechanism and links.

C
Bookmark an article and verify it appears on Home
  1. Open any article and tap the bookmark icon in the top bar.
  2. Go back to Home — the article should appear in the "Saved Articles" shortcut card.
  3. Tap the bookmark again — article is removed from saved.
✅ Bookmark state persists across app restarts (stored in Room DB).

D
10 bundled articles readable offline Offline
  1. Turn off internet.
  2. Open Learn → Articles and confirm at least 10 articles are visible and open fully.
✅ All 10 bundled articles open with full content — no "no connection" error shown.

E
Glossary — search 45+ terms
  1. Tap the Glossary / অভিধান button in the Articles tab.
  2. Search for "ফিশিং" or "phishing".
✅ Glossary opens with 45+ terms. Search finds the term in both languages.
🎯
8. Security Quiz 5 levels of increasing difficulty, badges for passing each level
▼
A
Navigate to Quiz Hub and start Level 1
  1. Go to Learn → কুইজ / Quiz tab → tap "কুইজ শুরু করুন".
  2. Quiz Hub shows 5 level cards — Level 1 unlocked, Levels 2–5 locked.
  3. Tap Level 1 → answer all questions.
✅ After passing Level 1, a badge is awarded and Level 2 is unlocked in the hub.

B
Retry a failed quiz level
  1. Deliberately answer all questions incorrectly on Level 1.
  2. On the Result screen, tap Retry / আবার চেষ্টা.
✅ Quiz restarts for the same level. Level 2 remains locked until Level 1 is passed.
▶️
9. In-App Video Library Reels-style vertical pager — YouTube & Facebook embed via WebView
▼
A
Browse and play videos Online
  1. Go to Learn → ভিডিও / Videos tab.
  2. Verify video cards appear. Use category chips to filter.
  3. Tap any video — fullscreen player opens and video begins playing.
  4. Swipe up to advance to the next video; swipe down to go back.
✅ Player fills the screen. Swipe navigation works. Back button exits the player.

B
Mark video as Helpful
  1. On a video card, tap the 👍 Helpful toggle — count increments.
  2. Tap again — count decrements (toggle off).
✅ Helpful count updates locally and syncs with the backend.
💬
10. Community — Stories, Discussions & District Map 3 tabs: Reports | Discussions | Map
▼
A
Browse story feed Online
  1. Navigate to Community / সম্প্রদায় (bottom nav).
  2. Confirm story cards load with title, category badge, district, helpful count.
  3. Filter by Top — stories reorder by helpful count.
  4. Pull down to refresh.
✅ "Verified Experience ✓ যাচাইকৃত" green badge appears on moderated stories.

B
Submit a story (full 5-step flow)
  1. Tap the + FAB or "আমার অভিজ্ঞতা লিখুন".
  2. Step 1 — Select a category (e.g., bKash Fraud).
  3. Step 2 — Enter a description; fill guided prompts (channel, loss, how you realised, what you did).
  4. Step 3 — Attach a screenshot; use the redact tool to black out faces/numbers; confirm.
  5. Step 4 — Verify "Keep name anonymous" is ON by default.
  6. Step 5 — Tap Submit.
✅ Story saved locally with "Pending moderation" status. After moderator approval, story appears in the feed with "Verified" badge and a push notification is sent.

C
Screenshot redaction tool
  1. During submission, tap "Upload Screenshot" and pick a photo.
  2. On the Redact screen, draw rectangles over sensitive areas.
  3. Tap Done / সম্পন্ন.
✅ Redacted regions appear as black rectangles. The redacted image (not the original) is used for submission.

D
Helpful vote on a story detail
  1. Tap any story card to open its detail.
  2. Tap the "সহায়ক ছিল / Helpful" 👍 button — count increments.
  3. Tap again — count decrements.
✅ Per-device vote deduplication — each device can vote once per story.

E
District Map tab filters the story feed
  1. Switch to the মানচিত্র / Map tab.
  2. Tap any district on the Bangladesh map.
✅ App switches to Reports tab and automatically filters stories to that district.
⚙️
11. Security Checklist (Settings Guide) 12-item checklist reading live device state with a progress bar
▼
A
Progress bar reflects live device state
  1. Navigate to সেটিংস গাইড / Settings Guide.
  2. Note the progress fraction (e.g., "3 / 12").
  3. Enable screen lock in Android Settings if not already set, then return to the app.
✅ "Screen Lock" item shows ✅ Pass. Progress bar increments.

B
Verify all 12 checklist items are present
#ItemLive Check?
1Screen Lock (PIN/Biometric)✅ Live via KeyguardManager
2Google Play Protect✅ Live via Settings.Global
3Disable Unknown Sources◯ Guidance only
4Disable Developer Mode✅ Live via Settings.Global
5Find My Device◯ Guidance only
6Auto-Updates Enabled◯ Guidance only
72FA on Google / Facebook◯ Guidance only
8Public Wi-Fi Safety◯ Guidance only
9Strong, Unique Passwords◯ Guidance only
10Review App Permissions◯ Guidance only
11Phone Backup◯ Guidance only
12Encryption Check✅ Live (Android 6+)
✅ All 12 items visible. Live checks reflect actual device state on each screen visit.

C
"Open Settings" deep-link
  1. Expand the "Screen Lock" item and read the step-by-step instructions.
  2. Tap the "Open Settings" / "সেটিংস খুলুন" button.
✅ Android Security Settings screen opens. Back button returns to the checklist.
🆘
12. Emergency Contacts & SOS Screen One-tap call shortcuts across 9 categories and step-by-step crisis guidance
▼
A
Emergency Contacts — 9 categories
  1. Tap জরুরি নম্বর / Emergency Nos. from Home quick actions.
  2. Browse all 9 categories: National Emergency, Cyber Crime, Mobile Banking, Banking, Telecom, Women's Support, Children, Social & Consumer, Mental Health.
  3. Tap a Call Now button on any contact.
✅ Android dialer opens pre-filled with the number. User must press dial — no auto-dial.

B
SOS screen — scenario guidance
  1. Tap জরুরি সাহায্য / Emergency from Home quick actions.
  2. Tap the scenario "ফোনে চাপ দিচ্ছে" / "Pressure on a call".
  3. Read through the colour-coded steps: CRITICAL (red) → WARN (amber) → INFO (neutral).
  4. If a helpline action button is present, tap it — dialer should open.
✅ Each SOS scenario expands with numbered, colour-coded steps. Action buttons open the phone dialer.
👤
13. Profile & Badges Nickname, contribution stats, 5 earned badges, submission history
▼
A
Set a nickname
  1. Navigate to Profile via the hamburger menu or bottom nav.
  2. Tap the edit (pencil) icon next to the default nickname.
  3. Enter a new name and confirm.
✅ Nickname updates immediately in the header and persists across restarts (stored in DataStore).

B
Earn badges through activity
ActionBadge Earned
Submit 1 community story📖 প্রথম গল্প / First Story
Post 1 discussion thread💬 প্রথম প্রশ্ন / First Question
Accumulate 5 helpful votes🤝 সাহায্যকারী / Helper
Get 3 stories published⭐ বিশ্বস্ত কণ্ঠ / Trusted Voice
Both stories and threads posted🌟 সক্রিয় সদস্য / Active Member
✅ Badges are computed locally from submission history and appear as chips in the profile header.
🔔
14. Notifications 3 channels: Alerts (HIGH), Tips (LOW), Scan Reminder (DEFAULT)
▼
A
Notification channels created on install
  1. Go to Android Settings → Apps → Cyber Surokkha → Notifications.
  2. Verify three channels: Surokkha Alerts (High), Surokkha Tips (Low), Scan Reminder (Default).
✅ All 3 channels visible and independently togglable by the user.

B
Thread reply notification deep-links to the thread Online
  1. Post a discussion thread from Device A.
  2. Reply to that thread from another device or the moderation portal (Device B).
  3. Device A should receive a push notification.
  4. Tap the notification — it should deep-link to that specific thread.
✅ FCM notification delivered within ~30 seconds. Deep-link opens the correct thread detail screen.
🌐
15. Language Toggle — Bengali ↔ English Pill button in Home hero; global and persisted across all screens
▼
A
Toggle language globally
  1. On Home, find the EN / বাং pill button in the top-right of the green hero area.
  2. Tap EN — all visible text on Home switches to English.
  3. Navigate to Learn, Scanner, Community — all text remains in English.
  4. Tap বাং — everything reverts to Bengali.
✅ Language preference is global and persists across app restarts. No partial text in the old language after toggling.
📵
16. Offline Behaviour Core features work fully offline after first sync
▼
A
Core features work on Airplane Mode Offline
  1. Enable Airplane Mode.
  2. Verify each of these works without any error:
FeatureExpected offline behaviour
Threat Library articlesAll 10+ bundled articles readable
GlossaryAll 45 terms browsable
Device ScannerAll 9 checks run, score calculated
Security ChecklistAll 12 items evaluated from device state
URL Checker — local checksHeuristics + blocklist work; cloud check skipped gracefully
Saved articlesBookmarked articles open fully
SOS / Emergency ContactsAll content visible; call actions work
✅ No crash or empty screen on any of the above. Community feed shows cached stories only.
"Scammers are experts. Being targeted is not your fault.
Sharing your story protects others."
Surokkha's guiding principle — non-punitive, community-driven, empowering.

Your privacy is our promise

Built around one rule: your data stays on your device.

🔒 What we never do

Download Surokkha — it's free

For Android 7.0 and above · No account required · No ads · No data collection

Get it on Google Play

iOS version under consideration.  ·  Contact us