Кодирование текстового файла с использованием алгоритма RSA - PullRequest
0 голосов
/ 09 апреля 2020

У меня есть ключ publi c для кодирования с использованием RSA

Не могу использовать строку как есть, поэтому я конвертирую ее с использованием BASE64 в секретный ключ, но я не могу сделать это, показывая ошибку java .lang .IllegalArgumentException: недопустимый символ base64 27

String public_key = "-----BEGIN PUBLIC KEY-----MIGfMA0GCSqGSdfdgdfdDCBiQKBgQDMuBS5+6DV1XC0WETytutuiuqTHYK0F44W9Dlt8W2sR1F9u8WSNN9Pvj2grc/yM3KJ4lOAtjK9EhTywcBGizpvypWp/UAByrwmXiPNbAaQVhFrEKoJdwRuojZqzgvZK34AWKELNOM+vfkhgfhfhfhf61FEuD3InwIDAQAB-----END PUBLIC KEY-----";

        byte[] decodedKey = Base64.getDecoder().decode(public_key);
        // rebuild key using SecretKeySpec

        SecretKey myDesKey = new SecretKeySpec(decodedKey, 0, decodedKey.length, "AES");


        Cipher desCipher;

        // Create the cipher 
        desCipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");

        // Initialize the cipher for encryption
        desCipher.init(Cipher.ENCRYPT_MODE, myDesKey);

      //sensitive information
        byte[] text = "No body can see me".getBytes();

        // Encrypt the text
        byte[] textEncrypted = desCipher.doFinal(text);

        logger.info("Text Encryted : " + textEncrypted);

        // Initialize the same cipher for decryption
        desCipher.init(Cipher.DECRYPT_MODE, myDesKey);

        // Decrypt the text
        byte[] textDecrypted = desCipher.doFinal(textEncrypted);

Может ли кто-нибудь помочь в кодировании файла .txt с помощью public_key в алгоритме RSA

...