mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-13 22:09:17 +00:00
fix: 修复默认 gcm key padding
This commit is contained in:
@@ -4,6 +4,7 @@ import re
|
|||||||
from Cryptodome.Cipher import AES, PKCS1_v1_5
|
from Cryptodome.Cipher import AES, PKCS1_v1_5
|
||||||
from Cryptodome.Random import get_random_bytes
|
from Cryptodome.Random import get_random_bytes
|
||||||
from Cryptodome.PublicKey import RSA
|
from Cryptodome.PublicKey import RSA
|
||||||
|
from Cryptodome.Util.Padding import pad
|
||||||
from Cryptodome import Random
|
from Cryptodome import Random
|
||||||
from gmssl.sm4 import CryptSM4, SM4_ENCRYPT, SM4_DECRYPT
|
from gmssl.sm4 import CryptSM4, SM4_ENCRYPT, SM4_DECRYPT
|
||||||
|
|
||||||
@@ -107,7 +108,15 @@ class AESCryptoGCM:
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, key):
|
def __init__(self, key):
|
||||||
self.key = padding_key(key)
|
self.key = self.process_key(key)
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def process_key(key):
|
||||||
|
if not isinstance(key, bytes):
|
||||||
|
key = bytes(key, encoding='utf-8')
|
||||||
|
if len(key) >= 32:
|
||||||
|
return key[:32]
|
||||||
|
return pad(key, 32)
|
||||||
|
|
||||||
def encrypt(self, text):
|
def encrypt(self, text):
|
||||||
"""
|
"""
|
||||||
|
Reference in New Issue
Block a user