php RC2 加密 java進行解密

 php RC2 加密 java進行解密



import javax.crypto.Cipher;
import javax.crypto.spec.RC2ParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;

import org.apache.tomcat.util.codec.binary.Base64;


public class RC2 {
    public static String encrypt(byte[] key, String unencrypted) throws Exception {
        RC2ParameterSpec ivSpec = new RC2ParameterSpec(key.length);
        Cipher cipher = Cipher.getInstance("RC2/ECB/NoPadding");
        cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(key, "RC2"), ivSpec);
        byte[] encrypted = cipher.doFinal(unencrypted.getBytes());
        return DatatypeConverter.printBase64Binary(encrypted);
    }

    public static String decrypt(byte[] key, String encrypted) throws Exception {
        RC2ParameterSpec ivSpec = new RC2ParameterSpec(1024);
        Cipher cipher = Cipher.getInstance("RC2/ECB/NoPadding");
        SecretKeySpec rc2 = new SecretKeySpec(key, "RC2");
        cipher.init(Cipher.DECRYPT_MODE, rc2, ivSpec);
        byte[] decrypted = cipher.doFinal(Base64.decodeBase64(encrypted));
        return new String(decrypted);
    }

    public static void main(String[] args) throws Exception {
        String key = "edf73de8ebb93dea1dd285bccf195de18a37bdb7";
        String str =
                "1u4+siUB2Q3yy+B3qzr8xdqF9Of9VK9TWFBbmk0HXR4DfZaIxSlq/QHr9p7P0KEZw+f3D2nY3ELznokeUldBOiJ"
                        + "+26ed8Kor0I8Qbj7D+rnPBTfflx/WfK9C9V7r3nMhpsmt4ka8rJu9drtydc470C9WncN+2KhpAt+FILCvmYgR"
                        + "+ABqss5EJfFB4KqWOEMTTEXmSaNhhZ/Jz8fiviTAgnWLCvO7wobmt4Fs9MRB/6DVJ0ni"
                        + "+NK2ZSylQcfYUTMTC3az2BTk2nVmSuW0wPOapx/3Nv59j27C3Oc8Re5SSO7GXyYT7xcJ0USmN4LoEBF2X7obeW8"
                        + "/JUZUHJeHBaCbI94202FqKcifFXA+JQTq2B9AF2YcM7GSBQvQ4dPcl3DrbwEFjS/wHbcEsYpsu3QAeS0P"
                        + "+Oa5EB4dh2dLsc8xDNIOuaQpfxMs9/dF9st6EwtP1Hgr0IX51LyXYtyUSWJrt5p63qvy"
                        + "/viq5orYedLduwB2Lwho4OJYdCNqZYh4E6VAnwrCkefaXqcistFqF9ru8ZtYoiq3XiHTPVaA1iNW"
                        + "+QJxghVwqMAPLwsOQLN4dEWHJlXzs+H96zcv"
                        + "+yXdZZ0fdUjLmDz4KrRCg2yw9QyXdCi9fin23kQNtKzok7Yfp7mzlNRzJU8w3s5+bZJ57L/MqkpGSr3E1PzJ";

        System.out.println(decrypt(key.getBytes(), str));


    }
}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章