64 lines
1.8 KiB
Dart
64 lines
1.8 KiB
Dart
import 'dart:convert';
|
|
|
|
import 'package:crypto/crypto.dart';
|
|
|
|
class Hashing {
|
|
/// This will generate the md5 bytes and hash it using #bytes2Hash
|
|
static String md5Hash(String input) {
|
|
return bytes2Hash(md5SumStr(input));
|
|
}
|
|
|
|
static String llMD5String(String src, int nonce) {
|
|
return md5Hash("${src}:${nonce}");
|
|
}
|
|
|
|
/// This will generate the Sha1 bytes and hash it using #bytes2Hash
|
|
static String sha1Hash(String input) {
|
|
return bytes2Hash(sha1SumStr(input));
|
|
}
|
|
|
|
/// This will generate the Sha256 bytes and hash it using #bytes2Hash.
|
|
static String sha256Hash(String input) {
|
|
return bytes2Hash(sha256SumStr(input));
|
|
}
|
|
|
|
/// This function takes a list of bytes and returns a hash string
|
|
static String bytes2Hash(List<int> bytes) {
|
|
String x = "";
|
|
for (int byte in bytes) {
|
|
x += byte.toRadixString(16).padLeft(2, '0');
|
|
}
|
|
|
|
return x;
|
|
}
|
|
|
|
/// This function returns the bytes instead of a hash string
|
|
static List<int> md5SumStr(String input) {
|
|
return md5.convert(utf8.encode(input)).bytes;
|
|
}
|
|
|
|
/// This functions returns the bytes instead of a hash string
|
|
static List<int> sha1SumStr(String input) {
|
|
return sha1.convert(utf8.encode(input)).bytes;
|
|
}
|
|
|
|
/// This function returns the bytes instead of a hash string
|
|
static List<int> sha256SumStr(String input) {
|
|
return sha256.convert(utf8.encode(input)).bytes;
|
|
}
|
|
|
|
/// This function returns the bytes instead of a hash string
|
|
static List<int> md5Sum(List<int> input) {
|
|
return md5.convert(input).bytes;
|
|
}
|
|
|
|
/// This functions returns the bytes instead of a hash string
|
|
static List<int> sha1Sum(List<int> input) {
|
|
return sha1.convert(input).bytes;
|
|
}
|
|
|
|
/// This function returns the bytes instead of a hash string
|
|
static List<int> sha256Sum(List<int> input) {
|
|
return sha256.convert(input).bytes;
|
|
}
|
|
}
|