Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Как достать исходный код из APK? - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Не получается добавить новый AVD http://www.cyberforum.ru/android-dev/thread1786297.html
Здравствуйте. Пытаюсь следовать вот этому уроку http://startandroid.ru/ru/uroki/vse-uroki-spiskom/12-urok-3-sozdanie-avd-pervoe-prilozhenie-struktura-android-proekta.html Но когда добавляю AVD....
Программирование Android CoverFlow галерея Всем, привет. Нужна помощь. Нужно в приложении добавить небольшой слайдер фоток. Нашел вот этот все красиво, все работает. Но у меня вопрос как убрать отражение картинки снизу, а то не вписывается в... http://www.cyberforum.ru/android-dev/thread1786210.html
3D треугольники в libGDX Программирование Android
Нужен пример кода для вывода на экран массива треугольников (как на картинке)
Программирование Android Выбор языка для разработки ПО под Android
Добрый. Необходимо заняться разработкой ПО под Android. Столкнулся с проблемой: "Какой язык программирования для разработки выбрать?". Из ООП-языков имею опыт с: Java, C++,C#,Scala. Вопрос поднят...
Программирование Android Как открыть web-страницу как это сделано в Telegram? http://www.cyberforum.ru/android-dev/thread1786056.html
Здравствуйте! Когда в приложениях Telegram или Вконтакте для андройд открываешь веб-ссылку, тебя не перебрасывает в какой либо браузер, а открывает как будто свой нативный, который можно просто...
Программирование Android Выбор инструментов для написания 2D игр Здравствуйте. Я хочу заняться разработкой 2D игр под android уровня сложности на подобие red ball, mario, arcanoid, tetris, puzzle. Опыта программирования на java у меня более чем достаточно, с... подробнее

Показать сообщение отдельно
Performans
6 / 6 / 3
Регистрация: 29.06.2014
Сообщений: 44
28.07.2016, 20:43
делал для автошколы небольшое приложение в виде увлекательной игры тренажера с вопросами ПДД. Ничего особенного, вопросы и варианты ответов. Решил сделать на Эйр, т.к. нужен был красочный интерфейс со многими эффектами и т.д., да и вообще, нравится мне писать на as3.
Так вот, долго думал как же спрятать ответы от кулхацкеров и конечно тот самый секретный ключ для расшифровки xml файлов. Решил просто запутать код

Чтение файла
ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
file = File.applicationStorageDirectory.resolvePath(path);
               var bytes:ByteArray = new ByteArray();
               fileStream = new FileStream();
               fileStream.open(file, FileMode.READ);
               fileStream.readBytes(bytes);
               fileStream.close();
               var key:ByteArray = Hex.toArray(gen() as String);
               var md5:MD5 = new MD5();
               key = md5.hash(key);
               var pad:IPad = new PKCS5;
               var aes:ICipher = Crypto.getCipher("simple-aes-128-cbc", key, pad);
               pad.setBlockSize(aes.getBlockSize());
               aes.decrypt(bytes);
               bytes.position = 0;
               prefsXML = XML(bytes.readObject());
Функция генерирующий нужный ключ
ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
private function gen():String
        {
            var arr:Array = [];
            for (var i:int = 1; i < 5; ++i)
            {
                var b:String = "t1NH0WQ?oStPcyN2qq_CU1RHRw";
                var diff:int = 185;
                arr.push(Global.EMAIL.length * i * Global.APP_NAME.length);
                var alt1:String = "Pfl+8LoVh4Uu186Y";
                var alt2:String = "kohDZ/F0suaAiW9lhWJc";
                var alt3:String = "rz8xzZuKpLB2B";
                var alt4:String = "jX59yie4PzdLylDfQFbn+";
                if (arr.length > 82 && arr.length < 65 && 87 && diff)
                {
                    arr.reverse();
                    for each (var item:String in arr)
                    {
                        var def:int = arr.length + Math.random() * 12;
                        
                        for (var j:int = 0; j < b.length; j++)
                        {
                            def++;
                            def + arr.length * (Math.random() * Global.EMAIL.length);
                            if (def > b.length || def < diff && b.length != 0)
                            {
                                return arr[12] + [13] + [28] + [4] + arr[11];
                            }
                            else if (b.length > arr[12] + [13])
                            {
                                return b;
                            }
                            else
                            {
                                return alt1.concat(alt2 + alt3 + alt4);
                            }
                            
                        }
                    }
                }
                
            }
            
            var arrr:String = "4XFErS37bt+Os6";
            return String(arr[0] + [1] + [2] + [3] + arr[0]);
        
        }
Представьте себя на месте взломщика, какой ключ может выдать это функция?
Вот таким простым способом можно защитить свои данные
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru