yx_tool library

Classes

AbstractInt<T extends Number>
AEADChaCha20Poly1305
AEAD ChaCha20Poly1305 Chacha7539引擎扩展BaseStreamCipher 丹尼尔·J·伯恩斯坦的ChaCha20的RFC版本。除其他更改外,它使用了一个12字节的IV
AES
AES加密算法实现
高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法
相关概念说明:
mode: 加密算法模式,是用来描述加密算法(此处特指分组密码,不包括流密码,)在加密时对明文分组的模式,它代表了不同的分组方式
padding: 补码方式是在分组密码中,当明文长度不是分组长度的整数倍时,需要在最后一个分组中填充一些数据使其凑满一个分组的长度。
iv: 在对明文分组加密时,会将明文分组与前一个密文分组进行XOR运算(即异或运算),但是加密第一个明文分组时不存在“前一个密文分组”,
因此需要事先准备一个与分组长度相等的比特序列来代替,这个比特序列就是偏移量。
Asymmetric
BCrypt
BCrypt implements OpenBSD-style Blowfish password hashing using the scheme described in "A Future-Adaptable Password Scheme" by Niels Provos and David Mazieres.
BCryptPasswordEncoder
Implementation of PasswordEncoder that uses the BCrypt strong hashing function. Clients can optionally supply a "version" ($2a, $2b, $2y) and a "strength" (a.k.a. log rounds in BCrypt) and a SecureRandom instance. The larger the strength parameter the more work will have to be done (exponentially) to hash the passwords. The default value is 10.
BetweenFormatter
时长格式化器,用于格式化输出两个日期相差的时长
根据{@link Level}不同,调用{@link #format()}方法后返回类似于:
Byte
限制int为8位Byte
Checksum
表示数据校验和的接口。
CRC16Ansi
CRC16_ANSI
CRC16CCITT
CRC16_CCITT:多项式x16+x12+x5+1(0x1021),初始值0x0000,低位在前,高位在后,结果与0x0000异或 0x8408是0x1021按位颠倒后的结果。
CRC16CCITTFalse
CRC16_CCITT_FALSE:多项式x16+x12+x5+1(0x1021),初始值0xFFFF,低位在后,高位在前,结果与0x0000异或
CRC16Checksum
CRC16DNP
CRC16_DNP:多项式x16+x13+x12+x11+x10+x8+x6+x5+x2+1(0x3D65),初始值0x0000,低位在前,高位在后,结果与0xFFFF异或 0xA6BC是0x3D65按位颠倒后的结果
CRC16IBM
CRC16_IBM:多项式x16+x15+x2+1(0x8005),初始值0x0000,低位在前,高位在后,结果与0x0000异或 0xA001是0x8005按位颠倒后的结果
CRC16Maxim
CRC16_MAXIM:多项式x16+x15+x2+1(0x8005),初始值0x0000,低位在前,高位在后,结果与0xFFFF异或 0xA001是0x8005按位颠倒后的结果
CRC16Modbus
CRC-16 (Modbus) CRC16_MODBUS:多项式x16+x15+x2+1(0x8005),初始值0xFFFF,低位在前,高位在后,结果与0x0000异或 0xA001是0x8005按位颠倒后的结果
CRC16USB
CRC16_USB:多项式x16+x15+x2+1(0x8005),初始值0xFFFF,低位在前,高位在后,结果与0xFFFF异或 0xA001是0x8005按位颠倒后的结果
CRC16X25
CRC16_X25:多项式x16+x12+x5+1(0x1021),初始值0xffff,低位在前,高位在后,结果与0xFFFF异或 0x8408是0x1021按位颠倒后的结果。
CRC16XModem
CRC-CCITT (XModem) CRC16_XMODEM:多项式x16+x12+x5+1(0x1021),初始值0x0000,低位在后,高位在前,结果与0x0000异或
Crc32
CRC32
Name: CRC-32 x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1 Poly: 0x4C11DB7 Init: 0xFFFFFFF Refin: True Refout: True Xorout: 0xFFFFFFF Alias: CRC_32/ADCCP Use: WinRAR,ect.
CRC32MPEG2
Name: CRC-32/MPEG-2 x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1 Poly: 0x4C11DB7 Init: 0xFFFFFFF Refin: False Refout: False Xorout: 0x0000000 Note:
CRC4ITU
Name: CRC-4/ITU x4+x+1 Poly: 0x03 Init: 0x00 Refin: True Refout: True Xorout: 0x00 Note:
CRC5EPC
Name: CRC-5/EPC x5+x3+1 Poly: 0x09 Init: 0x09 Refin: False Refout: False Xorout: 0x00 Note:
CRC5ITU
Name: CRC-5/EPC x5+x3+1 Poly: 0x09 Init: 0x09 Refin: False Refout: False Xorout: 0x00 Note:
CRC5USB
Name: CRC-5/USB x5+x2+1 Poly: 0x05 Init: 0x1F Refin: True Refout: True Xorout: 0x1F Note:
CRC6ITU
Name: CRC-6/ITU x6+x+1 Poly: 0x03 Init: 0x00 Refin: True Refout: True Xorout: 0x00 Note:
CRC7MMC
Name: CRC-7/MMC x7+x3+1 Poly: 0x09 Init: 0x00 Refin: False Refout: False Xorout: 0x00 Use: MultiMediaCard,SD,ect.
CRC8
Name: CRC-8 x8+x2+x+1 Poly: 0x07 Init: 0x00 Refin: False Refout: False Xorout: 0x00 Note:
CRC8ITU
Name: CRC-8/ITU x8+x2+x+1
Poly: 0x07
Init: 0x00
Refin: False
Refout: False
Xorout: 0x55
Alias: CRC-8/ATM
CRC8MAXIM
Name: CRC-8/MAXIM x8+x5+x4+1 Poly: 0x31 Init: 0x00 Refin: True Refout: True Xorout: 0x00 Alias: DOW-CRC,CRC-8/IBUTTON Use: Maxim(Dallas)'s some devices,e.g. DS18B20
CRC8ROHC
Name: CRC-8/ROHC x8+x2+x+1 Poly: 0x07 Init: 0xFF Refin: True Refout: True Xorout: 0x00 Note:
CRCChecksum
循环冗余校验码
Decimal
A number that can be exactly written with a finite number of digits in the decimal system.
DigestUtil
摘要算法
HashUtil
Hash算法
HexColor
三原色
HexUtil
十六进制(简写为hex或下标16)在数学中是一种逢16进1的进位制,一般用数字0到9和字母A到F表示(其中:A~F即10~15)。
例如十进制数57,在二进制写作111001,在16进制写作39。
像java,c这样的语言为了区分十六进制和十进制数值,会在十六进制数的前面加上 0x,比如0x20是十进制的32,而不是十进制的20
IdUtil
ID生成器工具类
Integer
限制int为32位Integer
IntUtil
int整型工具类
ListUtil
数组工具集
Long
限制int为64位Long
Math
math的封装
MurmurHash
Murmur3 哈希算法实现
NanoId
NanoId,一个小型、安全、对 URL友好的唯一字符串 ID 生成器,特点:
NetUtil
Number<T>
PasswordEncoder
Service interface for encoding passwords.
RandomUtil
随机数工具
RSA
RSA公钥/私钥/签名加密解密
罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)
由于非对称加密速度极其缓慢,一般文件不使用它来加密而是使用对称加密,
非对称加密算法可以用来对对称加密的密钥加密,这样保证密钥的安全也就保证了数据的安全
RSAKeyParser
RSA PEM parser.
RSAKeyUtil
RSA 密钥工具
Short
限制int为16位Short
Snowflake
Twitter的Snowflake 算法
分布式系统中,有一些需要使用全局唯一ID的场景,有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。
StringBuilder
可变的字符序列。字符串缓冲区类似于String ,但可以修改
StrUtil
字符串工具类
SymmetricCrypto
SystemUtil
系统工具
TimeInterval
分组计时器
UUID
提供通用唯一识别码(universally unique identifier)(UUID)实现,UUID表示一个128位的值。

Enums

AESMode
AESPadding
BCryptVersion
Stores the default bcrypt version for use in configuration.
DateUnit
日期时间单位,每个单位都是以毫秒为基数
Level
格式化等级
RSAEncoding
非对称加密填充

Extensions

IntExtension on int
int扩展方法
StringExtension on String
String扩展方法

Constants

crc32 → const Crc32

Properties

bcryptPassword BCryptPasswordEncoder
final

Functions

testExecute({String title = '', bool timer = true, required Function function, bool execute = true, dynamic isAsync = false}) FutureOr
执行测试