레일 펜스 암호 구현
이 단계에서는 fence.py 파일에서 레일 펜스 암호화 알고리즘을 구현합니다.
- 텍스트 편집기에서
fence.py 파일을 엽니다.
- 파일에 다음 코드를 추가합니다:
def rail_fence_cipher(text: str) -> str:
"""
레일 펜스 암호 방법을 사용하여 텍스트를 암호화합니다.
Args:
text (str): 암호화할 텍스트.
Returns:
str: 암호화된 텍스트.
"""
if text is None or len(text.strip()) == 0:
return None
group = text.split()
grouped_list = [group[i : i + 2] for i in range(0, len(group), 2)]
first_part = [sublist[0] for sublist in grouped_list]
second_part = [sublist[1] for sublist in grouped_list if len(sublist) > 1]
encryption_text = "".join(first_part + second_part)
return encryption_text
if __name__ == "__main__":
print(rail_fence_cipher("This is a sample text."))
-
다음 단계를 따라 rail_fence_cipher 함수를 구현합니다:
- 입력
text가 None이거나 빈 문자열인지 확인합니다. 그렇다면 None을 반환합니다.
text를 두 글자씩 그룹으로 나눕니다.
- 각 그룹에서 첫 번째 문자를 추출하여 목록에 저장합니다.
- 각 그룹에서 두 번째 문자를 추출하여 목록에 저장합니다.
- 두 목록을 연결하여 암호화된 텍스트를 형성합니다.
- 암호화된 텍스트를 반환합니다.
-
fence.py 파일을 저장합니다.