• Как решать подобные задачи по криптографии?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Как решать подобные задачи по криптографии?

    Для начала прочитать условия и заглянуть в код. Увидеть в нём вот это:
    key_val = b""
        seed_val = plain_text[0]
        random.seed(seed_val)
        for i in range(16):
            key_val += random.randrange(1, 255).to_bytes()

    понять, что key_val однозначно генерируется из первого символа открытого текста.

    Флаг имеет формат вида ntcontest{FLAG_VALUE}

    Я не понял эту часть, имеется в виду, что первый символ открытого текста флага -- 'n'? Если так, то вообще решение в одно действие, если нет, то в любом случае можно организовать перебор всех возможных первых символов, генерировать по ним key_val, расшифровывать им и проверять, что первый символ полученного текста совпадает с символом использованным для генерации ключа.
    Ответ написан
    Комментировать
  • Кормен или Кнут?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Кнут описывает много устаревшего материала. Большую часть из этого никогда не спросят на собеседованиях.
    Поэтому цена вопроса - к чему готовиться. Если с собеседованию то тут Кнут вообще не помошник.
    Он удивительно многословен и нуден. Кроме того если хотите читать код - то Кнут пишет его для своей
    виртуалки с очень "странной" системой регистров и с накопителями (!) ленточного типа.
    Трехтомник очень академичен и красиво смотрится на полке. Для меня Кнут будет чтивом для "долгих
    зимних вечеров". Когда некуда торопиться.

    Насчет Кормена - ничего не могу сказать. Купил но еще не читал. Судя по содержанию
    - очень солидная вешь. В качестве описателей алгоритмов там кажется используется алгоритмический
    язык на английском. Не всем такое заходит. Не всем понятно.

    Есть двухтомник Седжвика. Мне он кажется более практичным. У него есть издания для C/C++/Java
    с примерами. Там 1-й том - базовые алгоритмы на коллекциях и 2-й том - алгоритмы на графах.

    Есть Вирт - Алгоритмы. Достаточно сжато описан базис. Примеры - на Pascal.

    Есть Бхаргава - Грокаем Алгоримы. Все хвалят за практичность и примеры. Но я еще не читал.
    Ответ написан
    9 комментариев
  • Server 2019 на стационарный пк. возможно ли это?

    @Akina
    Сетевой и системный админ, SQL-программист.
    возможно ли это?

    Да. Но строго x64 - под x86 на эту матерь дров нет и не предвидится.
    Хотя я бы рекомендовал натянуть какой-нить VMM (ESX, Hyper-V и т.п.), а в нём уже виртуалку с сервером.

    как драйвера ставить?

    Как обычно. Либо накачав с вендора (брать дрова для W10), либо через MS UPDATE catalog по ven&dev.
    Ответ написан
    9 комментариев
  • Возможен ли доступ в интернет без провайдера?

    hint000
    @hint000
    у админа три руки
    spoiler
    Как можно иметь доступ в интернет без провайдер? По идее для этого нужно стать провайдеров?
    Провайдером становятся не для того, чтобы иметь доступ в Интернет без других провайдеров, а чтобы вложить N миллиардов долларов, и через 10 лет вернуть вложения, а через 20 лет заработать в Y раз больше вложенного.

    Откуда берут интернет провайдеры?
    Чтобы быть провайдером, прежде всего вам нужна кабельная инфраструктура. Если вы охватили своими кабелями один город, то подключаетесь к сети всё равно через магистрального провайдера, у которого кабели проходят по крайней мере через всю страну.
    https://habr.com/ru/companies/rootwelt/articles/305634/
    Если вы стали магистральным провайдером (ваши кабели по крайней мере заходят в соседние страны, вам это разрешили сделать, вы встречаетесь по крайней мере с министрами своей страны и соседних стран), то у вас прямой обмен трафиком с другими магистральными провайдерами. Ну а чтобы не зависеть ни от одного магистрального провайдера, вам нужно охватить своими собственными кабелями всю планету. Ну или попробовать обойтись без кабелей - запустить на орбиту тысячи спутников, как это делает Илон Маск. Тогда у вас будет своя собственная всемирная сеть, но в ней никого не будет. Ведь все остальные подключаются через каких-то провайдеров, а вы не хотите иметь контактов ни с кем из провайдеров, т.е. ваша собственная сеть будет изолирована от всех.
    Ответ написан
    Комментировать
  • Может ли вредоносное ПО запуститься без автозапуска и планировщика?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Вот еще один способ
    https://habr.com/ru/companies/dsec/articles/282546/

    Кроме того кто мешает зашить троян в любое ПО которых тысячи?
    Один деятель вообще зашил в NPM код который стирал у русских все картинки :)
    Ответ написан
    2 комментария
  • Почему в базе данных PostgreSQL сохраняются незакоммиченные изменения?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.

    BEGIN начинает блок транзакции, то есть обозначает, что все операторы после команды BEGIN и до явной команды COMMIT или ROLLBACK будут выполняться в одной транзакции. По умолчанию (без BEGIN) Postgres Pro выполняет транзакции в режиме «autocommit» (автофиксация), то есть каждый оператор выполняется в своей отдельной транзакции, которая неявно фиксируется в конце оператора (если оператор был выполнен успешно; в противном случае транзакция откатывается).


    https://postgrespro.ru/docs/postgrespro/10/sql-begin
    Ответ написан
    9 комментариев
  • Как на одном IP-адресе прикрутить несколько доменов?

    @q2digger
    никого не трогаю, починяю примус
    надо поднять реверс-прокси, например nginx , на нем настроить виртуальные хосты и их уже забрасывать на порты приложений.
    виртуальные хосты заведете в DNS как захотите.
    Ответ написан
    Комментировать
  • Почему я получаю разные значения из bytes при итерации и при высчитывании шестнадцатеричного числа вручную?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Вероятно, Вы не учли символы > и _, которые также являются частью Вашей строки bytes. Коды этих символов (62 и 95) в десятичной системе и являются теми числами, которые вызывали у Вас вопросы.

    data = b'>\x02\xfe\xbf_\xec\xe6\xee\x00R'
    
    for i in range(len(data)):
        hex_repr = '\\x{:02x}'.format(data[i])
        print(i, data[i], f"({hex_repr})")
    
    # 0 62 (\x3e)
    # 1 2 (\x02)
    # 2 254 (\xfe)
    # 3 191 (\xbf)
    # 4 95 (\x5f)
    # 5 236 (\xec)
    # 6 230 (\xe6)
    # 7 238 (\xee)
    # 8 0 (\x00)
    # 9 82 (\x52)
    Ответ написан
    1 комментарий
  • Как монтировать сетевые шары в Ubuntu из под доменного пользователя без прав root?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    Решено сто тыщ мильенов лет назад внесением команды (скрипта) в sudoers вот так:
    ## Mount SMB shares without password
    myusername        COMP = (root) NOPASSWD: /usr/local/bin/mountsmb3 -a
    myusername         COMP = (root) NOPASSWD: /usr/local/bin/umountsmb3

    где mountsmb3 и umountsmb - названия скриптов.
    Ответ написан
    9 комментариев
  • API Яндекс расписании, при запуске показывает какие поезда прибывают только с 00:00 до 07:06. Почему так проиходит?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Количество рейсов, отображаемых на одной странице — не более 100. Информация об общем количестве полученных рейсов указана в ответе в элементе total элемента pagination.


    Достаете total из pagination, целочисленно делите на лимит (100), прибавляете 1, и делаете цикл, в котором увеличиваете каждую итерацию параметр offset на 100
    Ответ написан
    1 комментарий
  • Как отключить интернет в Групповых политиках домена?

    @Drno
    Такие вещи обычно делаются на шлюзе \ на прокси... по IP адресам например ограничивается доступ
    Ответ написан
    3 комментария
  • Uncomplicated Firewall КАК ЗАПУСТИТЬ?

    Ocelot
    @Ocelot
    Там в архиве есть файл README, в нём всё написано
    Ответ написан
    1 комментарий
  • На чем сейчас (локально) принято хранить долговременные данные (бэкапы)?

    @AlexM2001
    Эксплуатация ЦОД
    Лента LTO для длительного хранения, с последовательным доступом.
    Жёсткий диск для быстрого доступа.
    SSD для храбрых)))
    Ответ написан
    3 комментария
  • Могу ли я удалить всех юзеров ubuntu кроме своих?

    vabka
    @vabka
    Токсичный шарпист
    Не трогай. Они все нужные.

    Главное смотри, чтобы у системных не было login shell
    Например ок, если /usr/sbin/nologin или /bin/false
    mark:x:1001:1001:mark,,,:/home/mark:/bin/bash
    [--] - [--] [--] [-----] [--------] [--------]
    |    |   |    |     |         |        |
    |    |   |    |     |         |        +-> 7. Login shell
    |    |   |    |     |         +----------> 6. Home directory
    |    |   |    |     +--------------------> 5. GECOS
    |    |   |    +--------------------------> 4. GID
    |    |   +-------------------------------> 3. UID
    |    +-----------------------------------> 2. Password
    +----------------------------------------> 1. Username
    Ответ написан
    Комментировать
  • Как адекватно сделать перенаправление https на файлохранилище?

    @dronmaxman
    VoIP Administrator
    Harpin NAT решит проблему, но я рекомендую этот вариант опустить вниз списка возможных решений. Наиболее оптимальным являет использовать DNS.

    Например у вас есть домен example.com и шара в этом домене share.example.com. Соответственно на внешних DNS вы прописывает share.example.com на белый IP микротика, а на самом микротике в IP-DNS-server статическую запись share.example.com на внутренний адрес этого сервера. Соответственно все клиенты внутри сети должны использовать в качестве DNS сервера микротик и при попытке обратиться share.example.com микротик вернет им внутренний адрес сервера.
    Ответ написан
    4 комментария
  • Как получить доступ к свойству объекта JSON не зная его название?

    Maksim_64
    @Maksim_64
    Data Analyst
    Можно использовать pandas. Нормализовать json, кода всего ничего будет.
    import requests
    import json
    import pandas as pd
    response = requests.get(url="https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro&explaintext&redirects=1&titles=Apple")
    info = json.loads(response.text)
    df = pd.json_normalize(info)
    print(df.iloc[:,-1][0])


    Более правильный способ будет брать колонку не iloc а regex выраженим в pandas так можно, потому что, название колонки будет содержать весь путь до extract и заканчиваться на exctract. То есть возможна более сложная и стабильная выборка. То есть вот так
    print(df.filter(regex='extract$',axis=1).iloc[0,0])
    Результат идентичный, но так на много надежнее, мы не надеемся что нужная нам колонка последняя, а находим ее независимо от ее положения.
    Ответ написан
    Комментировать
  • Где найти список случайно набранных комбинаций на клавиатуре?

    YuriyVorobyov1333
    @YuriyVorobyov1333
    Software Developer
    А есть ли смысл вообще с этим бороться? Ты можешь на клавиатуре ввести все, что угодно
    Можно, конечно, запарсить сайт со списком имен (что-то типо такого) и проверять вхождение, или ограничиться тем, что первая буква имени и фамилии обязательно должны быть заглавными. Но это создаст только дополнительные кейсы, например, есть имя Ясна, а в списке имен, что я скинул выше его нет, и что делать человеку? Не регистрироваться теперь?
    А проверять абракадабру от пользователя еще более гиблое дело, вот введет он: "Altn Altn", это плохо или нет? Похоже на набор слов или реальное имя? А это ведь реальное имя
    Можно попробовать послать запросы на этот сайт, но я уверен, что найдется имя, которое еще не успели сюда внести
    Ответ написан
    2 комментария
  • Где найти список случайно набранных комбинаций на клавиатуре?

    martin74ua
    @martin74ua
    Linux administrator
    Если все настолько серьезно - интегрируйтесь с госуслугами. Пусть через них на ваш сайт пользователи авторизуются...
    Ответ написан
    3 комментария
  • Можно ли в локальной сети с доменом закрыть доступ на все сетевые ресурсы кроме сетевых папок и одного определенного сайта?

    @Disel0k
    Если совсем просто - прописать в трудовом договоре ответственность за нарушение трудовой дисциплины. В конце месяца оштрафовать наиболее отличившихся.

    Если посложнее - доменные политики ограничения установки и запуска приложений, настройки фаерволла по ограничению трафика, потом блокировка usb портов, чтобы "не приносили с собой", борьба с расшаренным с телефонов интернетом и/или зависанием людей в собственных девайсах и так далее по нарастающей
    Ответ написан
    Комментировать
  • Как закодировать 5-6 значное число в 3х символьную буквенно-числовую последовательность и с обратным декодированием?

    Fragster
    @Fragster
    помогло? отметь решением!
    Вот тут алгоритм: https://programforyou.ru/calculators/number-systems
    Согласно https://www.ietf.org/rfc/rfc3986.txt можно использовать символы 0-9, a-z, A-Z - . _ ~, т.е. получаем 66 знаков, или 287496 значений для трехсимвольной строки, что недостаточно для всех 6значных чисел, а вот все 5значные вполне уместятся.
    Ответ написан
    Комментировать