PHP AES加密零填充ZeroPadding
·
private function hitEncrypt(string $data): string
{
$cipherAlgo = match (strlen($this->aesKey)) {
24 => 'AES-192-CBC',
32 => 'AES-256-CBC',
default => 'AES-128-CBC',
};
$paddedData = $this->zeroPad($data);
$text = openssl_encrypt($paddedData, $cipherAlgo, $this->aesKey, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING, $this->aesIv);
return base64_encode((string)$text);
}
private function zeroPad($data) {
$blockSize = 16;
$padding = $blockSize - (strlen($data) % $blockSize);
return $data . str_repeat("\0", $padding);
}
更多推荐



所有评论(0)