Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
ogregor

Егор Михеев

арендатор vpn сервера debian
  • 3
    вклад
  • 79
    вопросов
  • 40
    ответов
  • 63%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как с помощью terraform создать кластер kubernetes а заполнить его сущностными?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    Я сделал иначе прокинул в лейблы метку создания пула, после того как он был готов, и после этого после создания кластера начали в правильном порядке создаваться его сущьности. Проблема в том, что такую метку надо прокидывать во все сущности

    //kuber module
    output "pool_created" {
      value = scaleway_k8s_pool_beta.emcorp_pool.created_at
    }
    //other module
    resource "kubernetes_namespace" "gitlab-ns" {
      metadata {
        name = "gitlab-managed-apps"
        labels = {
          created: var.created_at
        }
      }
    }
    Ответ написан более года назад
    Комментировать
    Комментировать
  • Какой стэк выбрать для проекта?

    ogregor
    Егор Михеев @ogregor
    арендатор vpn сервера debian
    Я бы в 2020 году сделал бы на React + прикрутил PWA. React Native требует специфических знаний иначе производительность будет проседать. Плюс очень болезненные обновления.
    Второй вариант это фреймворк Quasar он на Vue и позволяет строить SPA
    Ответ написан более двух лет назад
    Комментировать
    Комментировать
  • Есть ли решения для использования mobx-state-tree в ООП стиле и с поддержкой TS?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    - https://github.com/gnaeus/react-ioc
    Ответ написан более двух лет назад
    Комментировать
    Комментировать
  • Можно ли применить регулярное выражение в команде tail для поиска соответствующих файлов, а не строк в них?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    - вот что то такое получилось, не красиво но работает

    find . -regex ".*my_company.*" ! -regex ".*my_company_\(agent\).*\.log" | xargs tail
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • На чем лучше программировать ESP8266?

    ogregor
    Егор Михеев @ogregor
    арендатор vpn сервера debian
    PlatformIO по моему мнению одна из лучших по удобству работы
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Можно ли сейчас использовать ODATA с .NET CORE 2?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    Уже можно odata.github.io/WebApi/#14-01-netcore-beta1
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Jade или Handlebars?

    ogregor
    Егор Михеев @ogregor
    арендатор vpn сервера debian
    Уже наверное не актуально ни то не другое? JSX?
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как получить запись колонки, которая соответствует каждой из указанных записей другой колонки?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    https://ru.stackoverflow.com/questions/708895/%D0%...
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как перекодировать webm в flv c помощью ffmpeg?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    var ops=[
    			'-i', '-',
    			'-c:v', 'libx264', '-preset', 'fast', '-strict', '-2', //'-tune', 'zerolatency'
    			'-c:a', 'aac', '-b:a', '128k',
    			'-f', 'flv', socket._rtmpDestination
            ];
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Вопрос по WebRTC и возможность передачи стрима на медиасервер (WOWZA, nginx+rtmp и пр.)?

    ogregor
    Егор Михеев @ogregor
    арендатор vpn сервера debian
    А интересно есть тесты производительности kurento? сколько он может потянуть соединений?
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как реализовать алгоритм RSA на эллиптических кривых EC?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    # ECIES5.py
    # 21st November 2015
    # Mohit  Bhura 11CS30019
    # Yash Shrivastava 13CS10054
    # Souvik Sonar 15CS91S01
    # Nadeem Shaik 11CS30033 
    
    from random import randint
    from math import *
    
    #input : 3 integers - base, exp, modulus
    # output : (base^exp)%modulus
    def mod_pow(base, exp ,modulus):
    
        base%=modulus;
        result = 1;
        while ( exp > 0):
            if ( exp & 1 > 0 ):
                result = (result*base)%modulus
            base = (base*base)%modulus;
            exp/=2;
        return result;
    
    # The jacobian function
    def jacobi(a, n):
        t = 1
        while a != 0:
            while a % 2 == 0:
                a >>= 1
                if n % 8 == 3 or n % 8 == 5: t = -t
            if a < n:
                a, n = n, a
                if a % 4 == 3 and n % 4 == 3: t = -t
            a = (a - n) >> 1
            if n % 8 == 3 or n % 8 == 5: t = -t
        if n == 1: return t
        else: return 0
    
    # calculates sqrt(a)mod(p) where p is a prime
    
    def mod_sqrt(a, p):
        a = a % p
    
        if p % 8 == 3 or p % 8 == 7:
            return mod_pow(a, (p+1)/4, p)
    
        elif p % 8 == 5:
            x = mod_pow(a, (p+3)/8, p)
            c = (x*x) % p
            if a == c:
                return x
            return (x * mod_pow(2, (p-1)/4, p)) % p
    
        else:
    
            # find a quadratic non-residue d
            d = 2
            while jacobi(d, p) > -1:
                d += 1
    
            # set p-1 = 2^s * t with t odd
            t = p - 1
            s = 0
            while t % 2 == 0:
                t /= 2
                s += 1
    
            at = mod_pow(a, t, p)
            dt = mod_pow(d, t, p)
    
            m = 0
            for i in xrange(0, s):
                if mod_pow(at * pow(dt, m), pow(2, s-1-i), p) == (p-1):
                    m = m + pow(2, i)
    
            return (pow(a, (t+1)/2) * pow(dt, m/2)) % p
    
    
    #input : a point belonging to the elliptic curve
    #return : a point 
    def point_double(P):
        p1 = P;
        q1 = P;
        lam = 3*p1[0]*p1[0]+a;
        inv = mod_pow(2*p1[1],p-2,p);
        lam = lam*inv;
    
        xr = (lam*lam - p1[0] - q1[0])%p;
        yr = lam*(p1[0]-xr)-p1[1];
        yr = yr%p
        R = (xr,yr);
        return R;
    
    #input : 2 points belonging to the elliptic curve
    #return : a point 
    def point_addition(P,Q):
        p1 = P;
        q1 = Q;
        if(p1 == q1):
            return point_double(P);
        lam = (q1[1]-p1[1]);
        inv = mod_pow(q1[0]-p1[0],p-2,p);
        lam = lam*inv;
    
        xr = lam*lam - p1[0] - q1[0];
        yr = lam*(p1[0]-xr)-p1[1];
        xr %= p;
        yr %= p;
        R = (xr,yr);
        return R;
    
    #input : an integer, a point belonging to the elliptic curve
    #return : a point 
    def point_multiply(d,P):
        m = log(d,2)+1;
        d = bin(d)[2:]
        d = list(d)
        d.reverse()
        Q  = 0;
        d = map(int,d)
        for i in (d):
            if i :
                if Q == 0 :
                    Q = P;
                else:
                    Q = point_addition(P,Q);
            P = point_double(P);
        return Q
    
    
    def point_compress(P):
    
        l = P;
        return [int(l[0]),int(l[1])%2];
    
    
    # input : a tuple consisiting of the return of point_compress
    # return : a tuple [x0/m,y0/m]
    def point_decompress(x,i):
    
        z = (x**3 + a*x + b)%p;
        if mod_pow(z,(p-1)/2,p) == -1 :
            return "failure";
        y = mod_sqrt(z, p)
        if y%2 == i:
            return [x,y];
        else:
            return [x,p-y];
    
    
    #encryption
    def encrypt(x):
    
        encryption = [point_compress(l),(x*int(R[0]))%p];
        return encryption;
    
    #decryption
    def decrypt(encryption):
    
        y1 = encryption[0];
        y2 = encryption[1];
        alpha = point_decompress(y1[0],y1[1]);
        # S = E(int(alpha[0]),int(alpha[1]));
        S = (alpha[0], alpha[1]);
        # S = m*S;
        S = point_multiply(m, S);
        x0 = int(S[0])
        decryption = (y2*mod_pow(x0,p-2,p))%p;
        return decryption;
    
    
    def main():
    
        encryption = [];
        arr = [];
        x = int(raw_input("Please enter your number : "));  
        while x > 0 :   
            arr.append(x%p);    
            encryption.append(encrypt(x%p));
            x/=p;
        print 'encryption : ', encryption;
        encryption.reverse();
        decryption = 0;
        for a,i in enumerate(encryption) :
            d = decrypt(i);
            decryption*=p;
            decryption+=d;
        print 'decryption : ',decryption;
    
    a = 0;
    b = 3;
    x = 6917529027641089837;
    p = 36*(x**4)+36*(x**3)+24*(x**2)+6*(x)+1;
    print 'Elliptic Curve : y^2 = x^3 + ', a, 'x + ', b, ' over ';
    print 'Prime : ',p;
    n = 36*(x**4)+36*(x**3)+18*(x**2)+6*(x)+1;
    P = (1,2);
    print 'P (generator point for the elliptic curve, Public parameter) : ', P
    print '<P> = n  (P is having a prime order) : ', n
    m = randint(1,n);
    print 'm (Private key) : ', m
    k = randint(1,n);
    print 'k (Secret Random Number) : ', k;
    Q = point_multiply(m, P)
    print 'Q ( = mP , Public parameter) : ',Q[0],Q[1];
    R = point_multiply(k, Q)
    print 'R (= kQ = kmP): ',R[0],R[1];
    l = point_multiply(k, P)
    print 'l ( = kP, used for point compression): ',l[0],l[1];
    main();
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • В чем проблема в express framework Error: Can't set headers after they are sent?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    Было 2 ошибки.
    1) vk.on('done:wall.get', function (_o) - каждый раз создавался эвент листенер => надо once()
    2) Типичная ошибка, когда после условия и рендера поток продолжал выполняться и производился альтернативный рендер => return перед рендером.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему при запросе страницы веб сервер (node.js + nginx) возвращает недекларированный контент?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    Оказалось что это подтягивают плагины mozilla
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Есть ли сервисы для встраивания исполняемых программ в своей веб странице?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    https://repl.it - интересная тема, пока не понял как использовать в коде дополнительные либы. (Жду ответа от разработчиков)
    www.skulpt.org - только python
    https://trinket.io/ - хорошая обертка над Skylpt но много лишнего от вендора.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как избавиться от задержки при передаче данных в arduino через последовательный порт?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    Как вариант делать инициализацию порта в начале скрипта, а передавать данные уже там где надо, тогда задержек не будет.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как отслеживать любые события в DOM?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    $(window).on('click',function(e) {
    console.log(e.target);
    });
    можно было и не спрашивать.
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Каковы лучшие варианты создания полного бекапа базы данных через консоль и с помошью PHP?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    нашел такое решение https://github.com/ifsnop/mysqldump-php
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как правильно сделать обновление параметров уже инициализированного плагина?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    onGSData !== onGsData из за опечатки не работало.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как вернуть значение из функции прототипа?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    Я делал проще  присвоил внешнюю область видимости this переменной:
    и результат возвратился в основной объект
    
    getRegion: function (callback) {
    ///////
    var _this = this
    //////
    $.ajax({
    type: 'GET',
    url: './js/region.json',
    contentType: 'application/json; charset=utf-8',
    dataType: 'json'
    
    }).done(function (data) {
    _this.data = data
    });
    },
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему не удаляются дочерние элементы в обработчике keyup при пустом значении val()?

    ogregor
    Егор Михеев @ogregor Автор вопроса
    арендатор vpn сервера debian
    надо было произвести проверку на наличие пустой строки в поле ввода маски поиска вхождений.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
Оценили как «Нравится»
  • 1
  • 2
  • Следующие →
Самые активные сегодня
  • hacker2001
    • 16 ответов
    • 0 вопросов
  • rPman
    • 9 ответов
    • 0 вопросов
  • Dr. Bacon
    • 7 ответов
    • 0 вопросов
  • низкомолекулярный макрос
    • 7 ответов
    • 0 вопросов
  • sergey-kuznetsov
    Сергей Кузнецов
    • 5 ответов
    • 0 вопросов
  • Dr_Elvis
    Elvis
    • 4 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации