Найти - Пользователи
Полная версия: base64 декодирование
Начало » Python для новичков » base64 декодирование
1
bagas
Доброй ночи.
Взник вопрос…
Имеетсья скрипт на питоне,
функционал скрипта - бэкап пользовательсктх данных и бд .
И по выполнению этого хозяйства должно отправляться на мыло письмо, что сохранение данных законченно.
Все работает , но лишний раз не хочеться светить в открытом виде пароль от мыла.
так вот подскажи как правельнее закодировать пароль, что бы он вскрипте был хешем.
заранее сгенерил хеш в питоне спомощью модуля base64, вот что получилось.
import base64

P = "PyFRUTExMTExMQ==
PWD = base64.b64decode(P)

server = smtplib.SMTP
server.starttls()
server.login(USER,PWD)
server.sendmail(from_addr, to_addrs, msg.as_string())
server.quit()
Вообщем пароль декодируеться с кавычьками ‘?!QQ111111’
Как мне быть?, подскажи пожалуйста.
В питоне не силен , только постигаю.
Может подскажите другой вариант реализации.
py.user.next
>>> s = "PyFRUTExMTExMQ=="
>>> s
'PyFRUTExMTExMQ=='
>>> import base64
>>> base64.b64decode(s)
'?!QQ111111'
>>> print base64.b64decode(s)
?!QQ111111
>>>
bagas
это понятно , что через принт без ковычек он будет выходить…
$ python backup.py 
File "backup.py", line 29
pwd = print base64.b64decode(P)
^
SyntaxError: invalid syntax
.но по другому ни как не могу соброзить , что бы дешифровка пароля была. и передовалась переменной pwd.
cookie-god
bagas
это понятно , что через принт без ковычек он будет выходить…
$ python backup.py 
File "backup.py", line 29
pwd = print base64.b64decode(P)
^
SyntaxError: invalid syntax
.но по другому ни как не могу соброзить , что бы дешифровка пароля была. и передовалась переменной pwd.
pwd=P.decode('base64')
upd
“PyFRUTExMTExMQ==” переводится в ?!QQ111111, никаких кавычек там нет, они выводятся в интерпретаторе при вызове repr(P)
bagas
при таком раскдае переменная pwd будет неправельно передаваться…тоесть обрезанный пароль…и еще в придачу с ковычьками….
Хмм тут дело в передаче пароля , а в его предоставлении . показе. пароль обрабатываеться хорошо.
bagas
Все всем спасибо,
Все моя не внимательность…у меня в логине была ошибка.
cookie-god
Спасибо. но в вашем варианте есть не дочет… указывает удалять начало и конце по одному символу.тоесть пароль цепляет, а не ковычьки,
# Параметры авторизации
username = ‘bagas@mail.com
p = "P2Q0l89hKHJаDF04="
pwd = p.decode('base64')
оставил такой вариант
py.user.next
bagas
это понятно , что через принт без ковычек он будет выходить…
print показывает, что там нет кавычек

SyntaxError: invalid syntax
для третьего питона изпользуется print('a') вместо print ‘a’
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB