mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2026-01-09 13:50:49 +08:00
21 lines
568 B
Python
21 lines
568 B
Python
from __future__ import annotations
|
|
|
|
import hashlib
|
|
import json
|
|
from typing_extensions import Buffer
|
|
|
|
|
|
def digest(data: dict | str | Buffer) -> str:
|
|
hash_object = hashlib.sha256()
|
|
if isinstance(data, Buffer):
|
|
hash_object.update(data)
|
|
else:
|
|
if isinstance(data, str):
|
|
json_str = data
|
|
elif isinstance(data, dict):
|
|
json_str = json.dumps(data, separators=(',', ':'))
|
|
else:
|
|
raise RuntimeError("invalid data type")
|
|
hash_object.update(json_str.encode())
|
|
return hash_object.hexdigest()
|