是否有 "hashlib.sha512(out.encode('utf-8')).hexdigest()" 的 Dart 等价物?

Is there a Dart equivalent of "hashlib.sha512(out.encode('utf-8')).hexdigest()"?

我是 Dart 的新手,我正在尝试在 Dart 中构建一个 API。我在散列部分遇到了问题,如何让它输出 128 个字符,就像 python hashlib.sha512(out.encode('utf-8')).hexdigest().upper()

中的方法一样

我试过使用 crypto 和 pointycastle 与 Python 中的散列不同,这些包输出的散列长度小于 128。

那么在 Dart 中生成长度为 128 的 sha512 哈希的最佳方法是什么?

您可以为此使用 crypto 包:

import 'dart:convert';
import 'package:crypto/crypto.dart';

void main() {
  final hash = sha512.convert(utf8.encode('Hello World'));
  print(hash); // 2c74fd17edafd80e8447b0d46741ee243b7eb74dd2149a0ab1b9246fb30382f27e853d8585719e0e67cbda0daa8f51671064615d645ae27acb15bfb1447f459b
}