Obfuskator String Dart
Obfuskasi literal string Dart memakai 6 teknik berbeda: escape sequence hex, String.fromCharCodes dengan array titik kode, dekode Base64 dengan dart:convert, array byte terenkripsi XOR dengan dekripsi saat runtime, konkatenasi string terpisah, dan StringBuffer dengan pemanggilan writeCharCode. Setiap metode menghasilkan kode Dart yang valid yang menghasilkan string asli saat runtime. Bandingkan semua metode berdampingan, filter berdasarkan teknik, dan salin kode yang dihasilkan - semuanya gratis, privat, dan tanpa pendaftaran.
Obfuscate Dart string literals using 6 different techniques: hex escape sequences, String.fromCharCodes, Base64 decoding with dart:convert, XOR-encrypted byte arrays, split string concatenation, and StringBuffer with writeCharCode calls. Each method generates valid Dart code that produces the original string at runtime. Compare all methods side by side or focus on one.
Enter a Dart string above to obfuscate it using 6 different techniques. Choose from hex escape sequences, String.fromCharCodes, Base64 decoding, XOR encryption, split concatenation, or StringBuffer + writeCharCode. Click any example below the input to get started.
Fitur
- 6 Metode Obfuskasi: pilih dari escape hex, String.fromCharCodes, dekode Base64, enkripsi XOR, konkatenasi terpisah, dan StringBuffer + writeCharCode. Masing-masing menghasilkan kode Dart yang valid.
- Perbandingan Berdampingan: lihat keenam metode secara bersamaan untuk membandingkan ukuran kode, keterbacaan, dan kekuatan obfuskasi. Filter untuk fokus pada satu metode saat Anda menemukan yang cocok.
- Analisis Dampak Ukuran: setiap metode menampilkan jumlah karakter dan kenaikan ukuran dari string asli, membantu Anda menyeimbangkan kekuatan obfuskasi dengan ukuran kode.
- Contoh Siap Flutter: uji cepat dengan string Dart/Flutter yang realistis: kunci Firebase, endpoint API, kueri GraphQL, dan frasa umum. Semua metode berfungsi di Flutter dan aplikasi CLI Dart.
Apa Itu Obfuskasi String?
Obfuskasi string adalah praktik mengubah literal string yang mudah dibaca di kode sumber menjadi representasi setara yang sulit dipahami manusia maupun alat otomatis. Alih-alih menulis 'Hello' , Anda dapat menulis String.fromCharCodes([72, 101, 108, 108, 111]) atau String.fromCharCodes(base64.decode('SGVsbG8=')) . Keduanya menghasilkan string yang sama saat runtime tetapi tampak sama sekali berbeda di kode sumber Anda.
Cara Kerja Obfuskasi
Obfuskator String Dart menerapkan enam teknik transformasi berbeda. Escape hex mengubah setiap karakter menjadi nilai byte hex-nya. String.fromCharCodes merepresentasikan setiap karakter sebagai bilangan bulat titik kode. Dekode Base64 membungkus string terenkode dalam base64.decode() dari dart:convert. Enkripsi XOR menerapkan XOR pada setiap byte dengan kunci acak dan menghasilkan kode dekripsi. Konkatenasi terpisah memecah string menjadi potongan berkode hex yang digabung dengan +. StringBuffer + writeCharCode membangun string karakter demi karakter. Setiap teknik memakai pengacakan untuk menghasilkan keluaran berbeda pada setiap pembuatan.
Efektivitas dalam Perlindungan Kode
Obfuskasi string sangat penting untuk aplikasi Flutter dan Dart karena kode Dart dapat direkayasa balik dari snapshot terkompilasi AOT dan berkas kernel. Meskipun perekayasa balik yang gigih dapat menjalankan kode terobfuskasi untuk memulihkan string asli, string terobfuskasi membuat pemindaian otomatis dan pencocokan pola jauh lebih sulit. Untuk hasil terbaik, gabungkan obfuskasi string dengan flag --obfuscate bawaan Dart, yang mengganti nama simbol, dan gunakan konkatenasi terpisah untuk string penting yang tidak boleh muncul utuh di mana pun.
Privasi & Keamanan
Alat ini berjalan sepenuhnya di browser Anda memakai JavaScript sisi klien. String masukan dan keluaran terobfuskasi yang dihasilkan tidak pernah meninggalkan perangkat Anda. Tidak ada panggilan API, pemrosesan sisi server, penyimpanan data, atau pelacakan. Mesin obfuskasi memakai metode string dan angka bawaan JavaScript untuk semua transformasi - semuanya lokal dan privat.
Pertanyaan yang Sering Diajukan
Obfuskasi string Dart mengubah literal string yang mudah dibaca di kode sumber Dart menjadi representasi setara tetapi sulit dibaca. Misalnya, "Hello" bisa menjadi String.fromCharCodes([72, 101, 108, 108, 111]) atau String.fromCharCodes(base64.decode('SGVsbG8=')). Keduanya menghasilkan string yang sama saat runtime tetapi jauh lebih sulit dipahami melalui dekompilasi atau inspeksi kode.
Alat mendukung 6 metode: escape sequence hex, String.fromCharCodes dengan titik kode bilangan bulat, dekode Base64 melalui base64.decode() dari dart:convert, array byte terenkripsi XOR dengan dekripsi saat runtime, konkatenasi string terpisah memakai operator +, dan StringBuffer dengan pemanggilan writeCharCode() untuk konstruksi per karakter.
Enkripsi XOR dan StringBuffer dengan writeCharCode menawarkan obfuskasi terkuat karena string asli tidak dapat langsung dipulihkan tanpa menjalankan transformasinya. Escape hex dan konkatenasi terpisah dapat dikenali pengembang Dart berpengalaman tetapi tetap jauh lebih sulit dibaca daripada string biasa.
Ya, semua kode yang dihasilkan sepenuhnya kompatibel dengan aplikasi Flutter. Metode bekerja di widget Flutter, model, service, BLoC, provider, dan berkas Dart apa pun. Metode Base64 memerlukan penambahan import 'dart:convert' ke berkas. Semua metode lain berfungsi dengan pustaka inti Dart tanpa impor tambahan.
Tentu saja. Obfuskator string Dart berjalan sepenuhnya di browser Anda. String masukan dan keluaran terobfuskasi Anda tidak pernah dikirim ke server mana pun. Semua pemrosesan terjadi lokal di perangkat Anda. Tanpa pendaftaran.
Metode XOR mengubah setiap karakter menjadi nilai byte ASCII, lalu menerapkan XOR pada setiap byte dengan kunci satu byte yang dipilih acak. Keluarannya mencakup nilai byte hasil XOR sekaligus kuncinya sebagai literal bilangan bulat. Saat runtime, kode Dart memakai List.map() untuk membalik XOR setiap byte, lalu String.fromCharCodes() membangun ulang string asli.
Bisa. Obfuskasi string melengkapi flag --obfuscate bawaan Dart yang mengganti nama simbol dan kelas di build rilis. Terapkan obfuskasi string lebih dulu pada kode sumber Anda, lalu gunakan flutter build --obfuscate atau dart compile --obfuscate untuk build rilis.
Ya - 100% gratis tanpa pendaftaran, tanpa akun, dan tanpa batas penggunaan. Keenam metode obfuskasi, perbandingan berdampingan, dan fungsi salin tersedia tanpa batasan apa pun.