0%

Godot4 Hash(哈希)算法加密MD5,SHA1,SHA256

Godot 4.3

MD5

GDScript
1
2
3
4
5
6
7
8
var text = "待计算的字符串"

var ctx_md5 = HashingContext.new()
ctx_md5.start(HashingContext.HASH_MD5)
ctx_md5.update(text.to_ascii())
var hash_md5 = ctx_md5.finish().hex_encode()

# 得到hash_md5为最终结果字符串
C#
1
2
3
4
5
6
7
8
string text = "待计算的字符串";

HashingContext ctx_md5 = new HashingContext();
ctx_md5.Start(HashType.MD5);
ctx_md5.Update(text.ToAscii());
string hash_md5 = ctx_md5.Finish().HexEncode();

// 得到hash_md5为最终结果字符串

SHA-1

GDScript
1
2
3
4
5
6
7
8
var text = "待计算的字符串"

var ctx_sha1 = HashingContext.new()
ctx_sha1.start(HashingContext.HASH_SHA1)
ctx_sha1.update(text.to_ascii())
var hash_sha1 = ctx_sha1.finish().hex_encode()

# 得到hash_sha1为最终结果字符串
C#
1
2
3
4
5
6
7
8
string text = "待计算的字符串";

HashingContext ctx_sha1 = new HashingContext();
ctx_sha1.Start(HashType.SHA1);
ctx_sha1.Update(text.ToAscii());
string hash_sha1 = ctx_sha1.Finish().HexEncode();

// 得到hash_sha1为最终结果字符串

SHA-256

GDScript
1
2
3
4
5
6
7
8
var text = "待计算的字符串"

var ctx_sha256 = HashingContext.new()
ctx_sha256.start(HashingContext.HASH_SHA256)
ctx_sha256.update(text.to_ascii())
var hash_sha256 = ctx_sha256.finish().hex_encode()

# 得到hash_sha256为最终结果字符串
C#
1
2
3
4
5
6
7
8
string text = "待计算的字符串";

HashingContext ctx_sha256 = HashingContext.new();
ctx_sha256.start(HashingContext.HASH_SHA256);
ctx_sha256.update(text.to_ascii());
string hash_sha256 = ctx_sha256.finish().hex_encode();

// 得到hash_sha256为最终结果字符串

注意: C# 代码可用性未经证实

参考