mgf.java

来自「RSA is an asymetric method to crypt mess」· Java 代码 · 共 34 行

JAVA
34
字号
package rsa;import java.math.BigInteger;public class MGF {    private static String T;        public static String getMGF(String msgSeed,long maskLen){        int hLen=20;        long hhLen=hLen;        hhLen<<=32;        if(maskLen > hhLen)T="mask too long";        else{            T="";            int L=(int)((maskLen+hLen-1)/hLen);            for(int counter =0;counter <L;counter++){                String C=Primitives.I2OSP(BigInteger.valueOf(counter),4);                sha1 sh=new sha1(msgSeed+C,16);                int[]sha=sh.getHash();                for(int i=0;i<5;i++)T=T+completeparzero(Long.toHexString(sha[4-i] & 0xFFFFFFFFL),8);            }        }        return T;    }        private static String completeparzero(String str,int len){        if(str.length()<len){            int str_len=str.length();            for(int i=0;i<len-str_len;i++)str="0"+str;        }        return str;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?