7

I want to hash a simple array of strings The documentation says you can't simple feed a string into hashlib's update() function, so I tried a regular variable, but then I got the TypeError: object supporting the buffer API required error.

Here's what I had so far

def generateHash(data):
    # Prepare the project id hash
    hashId = hashlib.md5()

    hashId.update(data)

    return hashId.hexdigest()
4

3 に答える 3

1

文字列のリストをハッシュしたい場合、単純な解決策は次のようになります。

def hash_string_list(string_list):
    h = hashlib.md5()
    for s in string_list: # Note that you could use ''.join(string_list) instead
        h.update(s)       # s.encode('utf-8') if you're using Python 3
    return h.hexdigest()

ただし、同じ値にハッシュされることに注意して['abc', 'efg']ください。['a', 'bcefg']

目的に関してより多くのコンテキストを提供すると、他のソリューションがより適切になる可能性があります。

于 2013-07-01T19:41:10.893 に答える