java的加密方法如下:
public
class
EncryptUtil {
/**
16进制 : 16
*/
private
static
final
int HEX = 16;
/** SHA: 0xFF */privatestaticfinalint SHA_FF = 0xFF;
/** SHA: 0x100 */privatestaticfinalint SHA_100 = 0x100;
/**
* SHA(Secure Hash Algorithm,安全散列算法)是消息摘要算法的一种,被广泛认可的MD5算法的继任者。
* SHA算法家族目前共有SHA-0、SHA-1、SHA-224、SHA-256、SHA-384和SHA-512五种算法,
* 通常将后四种算法并称为SHA-2算法
* @param msg 明文
* @param salt 盐
* @return 密文
*/publicstatic String encryptSHA(final String msg, String salt) {
StringBuilder sb = new StringBuilder();
try {
MessageDigest md = MessageDigest.getInstance("SHA-1");
md.update(salt.getBytes());
byte[] bytes = md.digest(msg.getBytes());
for (int i = 0; i < bytes.length; i++) {
sb.append(Integer.toString((bytes[i] & SHA_FF) + SHA_100, HEX).substring(1));
}
} catch (final Exception e) {
thrownew SmsException(-1001, "", e.getMessage(), e);
}
return sb.toString();
}
}
对应的python加密方法:
import
hashlib
def
encryptSHA(msg, salt):
"""
采用sha1加密方法,返回加密结果
:param msg: 待加密的字符串
:param salt:加密盐
:return:加密结果
"""
md = hashlib.sha1(salt)
md.update(msg)
return md.hexdigest()
原文:https://www.cnblogs.com/gcgc/p/12034138.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!