add 2-factor authorization

Лучше raise SomeError