SkepticalFox 1,445 #313855 Posted February 15, 2016 (edited) и в нем набор букавок какой-тоzlib + base64. это просто для минимайза. Edited February 15, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites
SEREGA_SF 611 #313857 Posted February 15, 2016 zlib + base64 Пох, я в этом не шарю серавно)) так что мне проще)) Не, а если серьезно, если есть возможность дополнительно защиту сделать - то почему бы и нет, только за. Quote Share this post Link to post Short link Share on other sites
spoter 1,402 #313860 Posted February 15, 2016 фига себе вы там развлекаетесь )))) не недельку пропал, а тут тема в 11 страниц ))) к Лису просьба во флешке кое что допилить. а я питон часть доработаю. 1. возможность указывать текст для объектов из питона (для перевода на другие языки) 2. сделать словарь серверов, чтобы заполнялись из питона, я список серверов буду генерировать в зависимости от логин серверв (актуально для иносранцев) ну и т.д. у меня обратная проблема, я флеш вообще ни бум-бум, но питон легко. 3 Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #313862 Posted February 15, 2016 (edited) 2. сделать словарь серверов, чтобы заполнялись из питона, я список серверов буду генерировать в зависимости от логин серверв (актуально для иносранцев)Сейчас с этим все в порядке! Сервера берутся из питона. И мне не нравится код с присвоением id рандомайзером. 'id': random.randint(999999, 9999999999999L) Edited February 15, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #313863 Posted February 15, 2016 (edited) Вот на коленке def data_xor(self, data, key): from itertools import izip, cycle return ''.join(chr(ord(x) ^ ord(y)) for (x,y) in izip(data, cycle(key))) def new_key(self): from random import randint return ''.join(map(chr, [random.randint(0, 255) for x in range(10)])) def renew_accounts(self): try: with open(self.__accounts_manager, 'r') as f: filedata = f.read() filedata = data_xor(filedata[:len(filedata)-10], filedata[::-1][:10]) self.accounts = json.loads(filedata.decode('base64').decode('zlib')) except Exception as e: self.accounts = [] print e def write_accounts(self): key = new_key() data = data_xor(json.dumps(self.accounts).encode('zlib').encode('base64'), key) + key[::-1] with open(self.__accounts_manager, 'w') as f: f.write(data) УПД: Подправил порядок в renew_accounts Edited February 15, 2016 by StranikS_Scan 1 Quote Share this post Link to post Short link Share on other sites
SEREGA_SF 611 #313864 Posted February 15, 2016 фига себе вы там развлекаетесь )))) не недельку пропал, а тут тема в 11 страниц ))) Ты б на месяц пропал - тебя б вообще умудрились забыть))))))) Своим думаю приколоться, кнопки нарисовать "вперед рачина за орденами!" "проверь лох, правильно вписал данные?" и "ога, удали акк и игру следом не забудь" и втихушку дать))))) пусть поматюгаются))) Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #313868 Posted February 15, 2016 len(filedata)-10это опасно... Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #313874 Posted February 15, 2016 это опасно... Чем? Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #313876 Posted February 15, 2016 (edited) del Edited February 15, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #313879 Posted February 15, 2016 (edited) тем, что ошибки сыплет всякие в лог INFO: Error -5 while decompressing data: incomplete or truncated stream Он и должен ошибку давать, если у тебя там исходные данные левые. там же try except стоит чтоб перехватывать их. Убери в нем print e, этот принт не нужен. Edited February 15, 2016 by StranikS_Scan Quote Share this post Link to post Short link Share on other sites
angelsoft 52 #313880 Posted February 15, 2016 Ммм, интересно. И в чем проблема сейчас выражается, в кратце? Я этим модом не пользуюсь. вообще просили так сделать когда сохраняешь данные акк в ма то там 5 значний код еще можно было бы добавить для защити, тем самим если кто то захочет использовать акк то нужно будет ввести код подтверждение в мини окне вот как то так ну не кто не знает как это сделать Quote Share this post Link to post Short link Share on other sites
VGS_13 66 #313881 Posted February 15, 2016 код еще можно было бы добавить для защити, тем самим если кто то захочет использовать акк то нужно будет ввести код подтверждение в мини окне честное слово, я не понимаю нафиг этим людям меджер аккаунтов? Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #313882 Posted February 15, 2016 (edited) Убери в нем print e, этот принт не нужен.Добавил твой вариант. Edited February 15, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #313883 Posted February 15, 2016 (edited) вообще просили так сделать когда сохраняешь данные акк в ма то там 5 значний код еще можно было бы добавить для защити, тем самим если кто то захочет использовать акк то нужно будет ввести код подтверждение в мини окне вот как то так ну не кто не знает как это сделать А чего там делать то: 1. Добавляем в GUI едитор для ввода кода юзвера. Я нарисовал в Делфи, а вы во флеше по аналогии делаете. 2. Теперь берем код и правим self.USER_KEY = '0000000' # В эту переменную надо поместить ключ хозяина из едитора перед тем как читать/писать в файл, сейчас это текст '3526124' в едиторе выше def data_xor(self, data, key): from itertools import izip, cycle return ''.join(chr(ord(x) ^ ord(y)) for (x,y) in izip(data, cycle(key))) def new_key(self): from random import randint return ''.join(map(chr, [random.randint(0, 255) for x in range(10)])) def renew_accounts(self): try: with open(self.__accounts_manager, 'r') as f: filedata = f.read().decode('zlib') filedata = data_xor(filedata[:len(filedata)-10], data_xor((filedata[::-1][:10], str(hash(self.USER_KEY))) self.accounts = json.loads(filedata) except Exception as e: self.accounts = [] def write_accounts(self): key = new_key() data = data_xor(json.dumps(self.accounts), data_xor(key, str(hash(self.USER_KEY)))) + key[::-1] with open(self.__accounts_manager, 'w') as f: f.write(data.encode('zlib')) Всё готово. УПД: Опять с ошибкой сделал теперь уже в write_accounts. Исправил. Edited February 19, 2016 by StranikS_Scan Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #313884 Posted February 15, 2016 (edited) Всё готово.а в питоновомм ZipFile разве нет работы с запароленными архивами? https://docs.python.org/2.7/library/zipfile.html#zipfile.ZipFile.setpassword Я нарисовал в ДелфиПочему ты сидишь на Windows 8? Edited February 15, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #313886 Posted February 15, 2016 а в питоновомм ZipFile разве нет работы с запароленными архивами? Есть, но я не пользовался. Почему ты сидишь на Windows 8? ГУИ нравится и дрова есть под неё. Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #313887 Posted February 15, 2016 (edited) ГУИ нравитсяПросто этот выделяющийся крестик закрытия окна... 1. возможность указывать текст для объектов из питона (для перевода на другие языки)Сделал. https://bitbucket.org/ShadowHunterRUS/account_manager_extended/src Edited February 15, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites
SEREGA_SF 611 #313916 Posted February 16, 2016 (edited) Не силен в рисовании)) говорили тут, что цветовую гамму под игровую надо сделать, так, постебался, заодно все графические файлы перетащил в отдельную папку)) Edited February 16, 2016 by SEREGA_SF Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #313917 Posted February 16, 2016 (edited) постебался, заодно все графические файлы перетащил в отдельную папку))Скоро полностью переделаю это окно, как и нужно было с самого начала. будет круче! кнопки будут ситемные. будет скроллбар. Лучше подожди. Edited February 16, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites
angelsoft 52 #313921 Posted February 16, 2016 Не силен в рисовании)) говорили тут, что цветовую гамму под игровую надо сделать, так, постебался, заодно все графические файлы перетащил в отдельную папку)) 2.png 1.png вот вот что и надо было только кнопки не красные а как у кнопки добавить, а кнопка открыть м.а все ok пс там все работает ? а то у меня не сохраняет данные (правда брал из источника ShadowHunterRUS) скидывай Quote Share this post Link to post Short link Share on other sites