我在哪里可以找到Vigenere密码的Java源代码?

use*_*042 6 java encryption android vigenere

在我的应用程序中,我想实现一些加密.因此我需要Vigenere密码的代码.有谁知道我在哪里可以找到Java的源代码?

Ali*_*iSh 12

这是Vigenere密码类,你可以使用它,只需调用加密和解密函数:代码来自Rosetta Code.

public class VigenereCipher {
    public static void main(String[] args) {
        String key = "VIGENERECIPHER";
        String ori = "Beware the Jabberwock, my son! The jaws that bite, the claws that catch!";
        String enc = encrypt(ori, key);
        System.out.println(enc);
        System.out.println(decrypt(enc, key));
    }

    static String encrypt(String text, final String key) {
        String res = "";
        text = text.toUpperCase();
        for (int i = 0, j = 0; i < text.length(); i++) {
            char c = text.charAt(i);
            if (c < 'A' || c > 'Z') continue;
            res += (char)((c + key.charAt(j) - 2 * 'A') % 26 + 'A');
            j = ++j % key.length();
        }
        return res;
    }

    static String decrypt(String text, final String key) {
        String res = "";
        text = text.toUpperCase();
        for (int i = 0, j = 0; i < text.length(); i++) {
            char c = text.charAt(i);
            if (c < 'A' || c > 'Z') continue;
            res += (char)((c - key.charAt(j) + 26) % 26 + 'A');
            j = ++j % key.length();
        }
        return res;
    }
}
Run Code Online (Sandbox Code Playgroud)


Kon*_*che 2

这是使用 Vigenere Cipher 加密和解密的Vigenere Cipher Code 实现示例 Java 代码的链接,除此之外,我不建议使用 Vigenere Cipher 作为加密。

我推荐jBCrypt