ФлеймФорумСофт

GitHub - ну что ещё вам надо блин?! (8 стр)

Страницы: 13 4 5 6 7 8
#105
11:29, 30 мар 2024

Вот и меня тоже гитхаб захотел сосчитать :(

Хотя гитхаб (как и битбакет) какой-то критической роли для меня не играет, больше как переправочный пункт для локальных реп, ну и пару раз как веб-сервер, чтоб протестировать нелокально. Ну и с прицелом как "потенциальное портфолио" на всякий случай, хотя, конечно, там больше не совсем то, что хотелось бы демонстрировать в качестве "портфолио".

Стоит ли делиться своим телефонным номером? Чем может быть чревато? Могут отдать на сторону назойливым рекрутерам? Еще что-то?

Или просто послать нахер?

Есть еще какой-то вариант с passkey, но я сколько ни читаю, никак не могу понять, что такое authentificator, который "я контролирую". У меня зарегистрировано несколько SSH-ключей, но они работают в git-клиенте, и я так понимаю, это не имеет отношения к passkey.

Вариант поставить гитхаб-клиента - не вариант :)

#106
11:50, 30 мар 2024

Он телефон спрашивает? Что-то не помню такого.

Кстати, написал вчера Тарасу аутентификатор на php, а то помню он жаловался, что найти под PC не может, а на андроиде всё место забито приложениями под пивнушки и парикмахерские.

+ Показать

Странно, что в php не завезли функцию base32_decode, больше половины кода ушло на её реализацию.

#107
12:12, 30 мар 2024

entryway
> Он телефон спрашивает?

Ну я так понял, он именно его потребует, если я выберу вариант 2FA через SMS.

#108
12:13, 30 мар 2024

Dmitry_Milk
А, через SMS. Не пользуюсь таким.

#109
12:17, 30 мар 2024

entryway
> аутентификатор

Что это такое? В заметке про passkey тоже говорится про какой-то аутентификатор.

#110
12:20, 30 мар 2024

Dmitry_Milk
> Что это такое?
Это то приложение, которое ставится на телефон, например google autentificator. Сайт выдает тебе ключ в виде QR-code, либо можно посмотреть в виде base32 строки, а аутентификатор единственное что делает, это сохраняет его, и потом передает в функцию foo() выше и показывает сгенерированный код.

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

#111
12:33, 30 мар 2024

То есть двухфакторность в данном случае заключается в том, что секретный ключ, выданный пользователю поставщиком услуги (в данном случае гитхабом), хранится не на компе, а в приложении на телефоне, которое и использует его генерации одноразового кода?

И теоретически ничто не мешает сохранить код на самом же компе и точно так же генерировать из него одноразовый пароль (естественно, потеряв при этом всякий смысл двухфакторности)?

#112
12:33, 30 мар 2024

Dmitry_Milk
Типа того. Я что-то думал там как-то мутно, но там, как видишь, пять строк кода.

#113
12:38, 30 мар 2024

entryway, ок, спасибо, попробую разобраться, мож сам напитоню что-нибудь.

#114
12:42, 30 мар 2024

Dmitry_Milk
Гугли сразу python totp

import pyotp
totp = pyotp.TOTP('base32secret3232')
totp.now() # => '492039'
#115
12:53, 30 мар 2024

entryway, о, спасибо. Как обычно, "все уже до нас украдено" :)

#116
14:35, 30 мар 2024

entryway
> pyotp

class OTP(object):
    @staticmethod
    def int_to_bytestring(i: int, padding: int = 8) -> bytes:
        """
        Turns an integer to the OATH specified
        bytestring, which is fed to the HMAC
        along with the secret
        """
        result = bytearray()
        while i != 0:
            result.append(i & 0xFF)
            i >>= 8
        # It's necessary to convert the final result from bytearray to bytes
        # because the hmac functions in python 2.6 and 3.3 don't work with
        # bytearray
        return bytes(bytearray(reversed(result)).rjust(padding, b"\0"))

Что только люди не придумают, чтоб не написать просто i.to_bytes(padding, 'big')

Ну и еще куча методов, выполняющих действие типа "поделить таймстамп на 30". При этом если задавать время именно таймстампом, то он его сначала конвертирует в datetime, а потом datetime снова конвертирует в таймстамп и делит на 30 :)

Страницы: 13 4 5 6 7 8
ФлеймФорумСофт

Тема в архиве.