2014-10-23 3 views
0

변수에 sha256 해시를 사용하는 데 문제가 있습니다. 여기에 내가이sha256 파이썬에서 변수를 해쉬하는 방법

hashedWord = sha256(b'password').hexdigest() 
print(hashedWord) 

을 할 수 쉬울 것 알고하지만 난 그런 식으로하고 싶지 않아 내 코드

var = 'password' 
hashedWord = sha256(b var).hexdigest() 
print(hashedWord) 

입니다. 누구든지 도와 줄 수 있습니까?

답변

2

당신은 인코딩에 바이트 문자열이 필요합니다

var = 'password' 
hashedWord = sha256(var.encode('ascii')).hexdigest() 

텍스트 작동하는 인코딩을 선택을; UTF-8은 유니 코드를 모두 인코딩 할 수 있지만 원하는 해시 서명을 생성하지 못할 수 있습니다. 이것은 다른 시스템이 서명이 무엇인지에 달려 있습니다.

1

Martijn's 대안은 var 변수에 바이트 문자열을 저장하는 것입니다.

var = b'password' hashedWord = sha256(var).hexdigest() print(hashedWord)