关闭

用hash去存储用户密码

402人阅读 评论(0) 收藏 举报
分类:

1.db2的function:

create function tvc.pwdEncrypt(password varchar(20))
returns varchar(90)
fenced
threadsafe
deterministic
allow parallel
no sql
returns null on null input
no external action
language java
parameter style java
external name 'com.ibm.mbps.tvc.util.TvcPwdEncrypt!pwdEncrypt';

2./*
 * OCO Source Materials
 *
 * Licensed Materials -
 *
 * 5747-SM3
 *
 * (C) Copyright Corp. 2011  All Rights Reserved.
 *
 * US Government Users Restricted Rights - Use, duplication or
 * disclosure restricted by Schedule Contract with IBM Corp.
 */

package com.xxx.mbps.tvc.util;

import java.security.MessageDigest;

import COM.ibm.db2.app.UDF;

import com.ibm.misc.BASE64Encoder;

public class TvcPwdEncrypt extends UDF {
    public static String pwdEncrypt(String password) {
        if (password == null) {
            return null;
        }

        try {
            MessageDigest md = MessageDigest.getInstance("SHA512");
            byte[] input = password.trim().getBytes();
            md.update(input);
            byte[] buf = md.digest();
            BASE64Encoder be = new BASE64Encoder();
            String result = be.encode(buf);
            // remove \r \n
            result = result.replaceAll("\n", "").replaceAll("\r", "");
            return result;
        } catch (Exception e) {
            return null;
        }
    }
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:91235次
    • 积分:1511
    • 等级:
    • 排名:千里之外
    • 原创:51篇
    • 转载:25篇
    • 译文:0篇
    • 评论:4条
    最新评论