Size: a a a

JavaScript fwdays

2020 April 14

TS

Timur Shemsedinov in JavaScript fwdays
SkipTyler (Sunrise)
Argon2

моё имхо
Да! Всем юзать аргон2 для криптографии
источник

V

Viktor in JavaScript fwdays
С аргон2 не все так просто, он есть нескольких вариаций и некоторые уязвимы для сайдченел атак, нужно понимать детально, что и как, чтобы не ошибиться в вариации. Мы лично сошлись на Scrypt, у него есть несколько плюсов по сравнению с argon2. Он настолько же  надежный, как и argon2, но:
1. Там нет риска взять не ту вариацию
2. Он есть в стандартной библиотеке (модуль crypto), что очень важно для секьюрити библиотек и алгоритмов
источник

TS

Timur Shemsedinov in JavaScript fwdays
Viktor
С аргон2 не все так просто, он есть нескольких вариаций и некоторые уязвимы для сайдченел атак, нужно понимать детально, что и как, чтобы не ошибиться в вариации. Мы лично сошлись на Scrypt, у него есть несколько плюсов по сравнению с argon2. Он настолько же  надежный, как и argon2, но:
1. Там нет риска взять не ту вариацию
2. Он есть в стандартной библиотеке (модуль crypto), что очень важно для секьюрити библиотек и алгоритмов
Не юзал, посмотрю, еще: если кто использует bcrypt - то выпиливайте его к чертям
источник

V

Viktor in JavaScript fwdays
Главное, чтобы не md5, bcrypt далеко не худший вариант))
источник

V

Viktor in JavaScript fwdays
Знаю, что даже есть любители в открытом виде хранить пароли)
источник

MM

Mike Mulukin in JavaScript fwdays
@tshemsedinov Тимур, вот в NodejsStarterKit/lib/sessions.js  вы используете в функции generateToken  Math.random(), может поменять на подход crypto.randomBytes ??? или смысла нет?
источник

TS

Timur Shemsedinov in JavaScript fwdays
Mike Mulukin
@tshemsedinov Тимур, вот в NodejsStarterKit/lib/sessions.js  вы используете в функции generateToken  Math.random(), может поменять на подход crypto.randomBytes ??? или смысла нет?
Это правильно, жду пул-реквест
источник

A

Alex in JavaScript fwdays
А в bcrypt есть критические уязвимости?

Ps я не ожидаю что пароли будут взламывать фермой суперкомпьютеров.
источник

V

Viktor in JavaScript fwdays
Alex
А в bcrypt есть критические уязвимости?

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

A

Alex in JavaScript fwdays
Тимур сказал - выпиливать.
Я юзаю бкрiпт и если честно не знал  что там беда-беда...
источник

V

Viktor in JavaScript fwdays
Viktor
Вроде нет таких
Bcrypt достаточно надёжен, чтобы спать спокойно. Просто вопрос надёжности библиотеки, которую юзаешь. А так bcrypt когда-то рекомендовали, он просто не утвержден NIST, как PBKDF2 (scrypt использует внутри PBKDF2)
источник

V

Viktor in JavaScript fwdays
Уязвимостей в нем нет, на GPU плохо брутфорсится, сложность параметризируется
источник

BS

Bohdan Shulha in JavaScript fwdays
Typescript он не только для отлова ошибок “которые можно отследить в голове” (btw, strictNullChecks это огонь), но и для документирования кода для последователей.

Вы, конечно, используете JSDoc и у вас всё ок (я пользовался тайпчекером TS с флажком —allowJs в проектах на SFCC), но, увы, в реальном мире далеко не каждый проект придерживается соглашений по поддержанию документации к коду.

Тут ещё можно сказать, что в моём текущем проекте 200+ ошибок в TS (оно не компилится, типы убираются при запуске, ReactNative, чтоб его 🙈) и много где implicit any, но я просто не представляю, насколько сложнее было мне в этом чуде разобраться без хоть какой-нибудь помощи от среды разработки
источник

BS

Bohdan Shulha in JavaScript fwdays
О тестах я говорить не буду, потому что о покойниках или хорошо, или никак))
источник

A

Alex in JavaScript fwdays
Viktor
Уязвимостей в нем нет, на GPU плохо брутфорсится, сложность параметризируется
Да, я поставил saltRounds = 12.

Просто с одной стороны Тимур говорит что у нас масштабировать сервер практически никому не надо, вот я и напрягся когда он предал bcrypt анафеме.
источник

V

Viktor in JavaScript fwdays
Я не был на вебинаре, сложно прокомментировать) но вроде есть запись, планирую посмотреть
источник

MM

Mike Mulukin in JavaScript fwdays
Timur Shemsedinov
Это правильно, жду пул-реквест
+
источник

AI

Andrew Ivanov in JavaScript fwdays
Странно слушать про один тазик для любых проектов. Вообще подход с baremetall в корне устаревший. Контейнеры и Кубер рулят миром и нода в нем отлично себя чувствует. И да, CI/CD никто не отменял, и это как раз для TTM самое оно. Так что если хотите масштабируемость из коробки и всякие кенери деплойменты без головняков что ваш "один тазик" упал и не поднялся - кубер курите с самого начала.
источник

MS

Max S in JavaScript fwdays
@tshemsedinov Тимур, доброй ночи. Подскажи, а репозитарий со стартеркитом уже законченный? Или же планируется еще пак работ?
источник

TS

Timur Shemsedinov in JavaScript fwdays
Andrew Ivanov
Странно слушать про один тазик для любых проектов. Вообще подход с baremetall в корне устаревший. Контейнеры и Кубер рулят миром и нода в нем отлично себя чувствует. И да, CI/CD никто не отменял, и это как раз для TTM самое оно. Так что если хотите масштабируемость из коробки и всякие кенери деплойменты без головняков что ваш "один тазик" упал и не поднялся - кубер курите с самого начала.
Контейнеры ничего не решают, они не делают приложения масштабируемыми, положите СУБД в k8s, он не станет от этого мультимастером. K8s это не про масштабирование, а про управление инфраструктурой
источник