「java单词加密」java加密解密字符串

博主:adminadmin 2023-03-20 04:57:08 170

今天给各位分享java单词加密的知识,其中也会对java加密解密字符串进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java加密的几种方式

基本的单向加密算法:

BASE64 严格地说,属于编码格式,而非加密算法

MD5(Message Digest algorithm 5,信息摘要算法)

SHA(Secure Hash Algorithm,安全散列算法)

HMAC(Hash Message Authentication Code,散列消息鉴别码)

复杂的对称加密(DES、PBE)、非对称加密算法:

DES(Data Encryption Standard,数据加密算法)

PBE(Password-based encryption,基于密码验证)

RSA(算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman)

DH(Diffie-Hellman算法,密钥一致协议)

DSA(Digital Signature Algorithm,数字签名)

ECC(Elliptic Curves Cryptography,椭圆曲线密码编码学)

代码参考:

/**

* BASE64加密

*

* @param key

* @return

* @throws Exception

*/

public static String encryptBASE64(byte[] key) throws Exception {

return (new BASE64Encoder()).encodeBuffer(key);

}

/**

* MD5加密

*

* @param data

* @return

* @throws Exception

*/

public static byte[] encryptMD5(byte[] data) throws Exception {

MessageDigest md5 = MessageDigest.getInstance(KEY_MD5);

md5.update(data);

return md5.digest();

}

/**

* SHA加密

*

* @param data

* @return

* @throws Exception

*/

public static byte[] encryptSHA(byte[] data) throws Exception {

MessageDigest sha = MessageDigest.getInstance(KEY_SHA);

sha.update(data);

return sha.digest();

}

}

/**

* 初始化HMAC密钥

*

* @return

* @throws Exception

*/

public static String initMacKey() throws Exception {

KeyGenerator keyGenerator = KeyGenerator.getInstance(KEY_MAC);

SecretKey secretKey = keyGenerator.generateKey();

return encryptBASE64(secretKey.getEncoded());

}

/**

* HMAC加密

*

* @param data

* @param key

* @return

* @throws Exception

*/

public static byte[] encryptHMAC(byte[] data, String key) throws Exception {

SecretKey secretKey = new SecretKeySpec(decryptBASE64(key), KEY_MAC);

Mac mac = Mac.getInstance(secretKey.getAlgorithm());

mac.init(secretKey);

return mac.doFinal(data);

}

Java加密方式?

这个一般没有统一的标准,教材有不同的版本一样。

我做过这个,记得很清楚

加密方式1:Conye加密方法

加密方式2:WeiffbYfds方法

就是这样了,不懂追问哈,嘻嘻。

用java把一个命令加密成10个字母(输入的命大于10个则减到10个,少的补足10个)

题主,你好

您提出的需求据我所知是无法实现的.

如果是对称加密, 则密文和原文长度有关联, 即原文长度越长,密文长度也越长.

如果是非对称加密, 即摘要算法,最低也会有32个字母, 且无法解密.

如不明,再追问.

java对一个单词进行加密,给定一个密钥lock和一张密码表。

class Test{

    private static char cat(char row, char col){

        String str="abcdefghijklmnopqrstuvwxyz";

        int index=(int)(row-'a')+1;

        str=str.replaceAll("^(.*)(.{"+index+"})$", "$2$1");

        int jndex=(int)(col-'a');

        return str.charAt(jndex);

    }

    public static void main (String[] args) {

        String rows="lock";

        String cols="message";

        String result = "";

        for(int i=0;icols.length();i++){

            char col=cols.charAt(i);

            char row=rows.charAt(i%rows.length());

            result+=cat(row,col);

        }

        System.out.println(result);

    }

}

如何用JAVA实现英文的简单加密和解密?

最简单的方法,把第一行和第二行存在一个哈希表里,第一行作为哈希表的KEY,第二行作为VALUE。根据KEY找VALUE,明白否?

Java 如何给字母进行加密?例如:heibei

你可以把每个字母加上一个数 如“20” 这样就跟原来的不同了 想还原的话再减去 20 就好了

如:String str = "heihie";

char[] c = new char[6];

for(int i=0;i6;i++){

c[i]=str.charAt(i);

}

System.out.println(c[i]+20);

java单词加密的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java加密解密字符串、java单词加密的信息别忘了在本站进行查找喔。