[java] 쉬프트 암호화 기법

안녕하세요! 이번에는 Java를 사용하여 쉬프트 암호화 기법을 구현하는 방법에 대해 알아보겠습니다.

쉬프트 암호화란 무엇인가요?

쉬프트 암호화는 평문의 각 문자를 정해진 숫자만큼 알파벳 순서에서 이동시켜 다른 문자로 치환하는 간단한 방법입니다. 예를 들어, 각 문자를 세 글자 뒤로 이동시키는 경우, ‘A’는 ‘D’로, ‘B’는 ‘E’로 바뀝니다.

Java를 사용한 쉬프트 암호화 구현

다음은 Java를 사용하여 쉬프트 암호화를 구현하는 간단한 예제입니다.

public class ShiftEncryption {
    public static String encrypt(String plaintext, int shiftKey) {
        String encryptedText = "";
        for (int i = 0; i < plaintext.length(); i++) {
            char ch = plaintext.charAt(i);
            if (Character.isLetter(ch)) {
                char encryptedChar = (char) (ch + shiftKey);
                if ((Character.isLowerCase(ch) && encryptedChar > 'z') || (Character.isUpperCase(ch) && encryptedChar > 'Z')) {
                    encryptedChar = (char) (ch - (26 - shiftKey));
                }
                encryptedText += encryptedChar;
            } else {
                encryptedText += ch;
            }
        }
        return encryptedText;
    }

    public static void main(String[] args) {
        String plaintext = "Hello, World!";
        int shiftKey = 3;
        String encryptedText = encrypt(plaintext, shiftKey);
        System.out.println("Encrypted text: " + encryptedText);
    }
}

위의 예제에서는 encrypt 메서드를 사용하여 평문을 암호화하고, 암호화된 텍스트를 출력하는 간단한 Java 프로그램을 보여줍니다.

마무리

Java를 사용하여 쉬프트 암호화를 구현하는 방법에 대해 간단히 살펴보았습니다. 이러한 간단한 암호화 기법은 보안이 중요하지 않은 경우나 연습용으로 사용될 수 있습니다. 그러나 진정한 보안을 위해서는 강력한 암호화 알고리즘을 사용하는 것이 중요합니다.

자세한 내용은 Shift Cipher를 참고해주시기 바랍니다.