0%

openssl-hash算法

openssl

使用openssl命令行进行加解密,需要注意的是

openssl v1.1.0之后默认的摘要算法由MD5更改为SHA256;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def get_key_and_iv(self, salt):
salt = salt or b''
password = self.password
key_length = self.key_length
iv_length = self.iv_length
d = _d = b''
while len(d) < key_length + iv_length:
# openssl 1.1.0+(具体版本需要看官方标准)以上,或者在openssl中指定hash方式
# _d = Hash.SHA256.new(_d+password+salt).digest()
_d = Hash.MD5.new(_d+password+salt).digest()
d += _d
key = d[:key_length]
iv = d[key_length:key_length+iv_length]
return key, iv