목차
- 파이썬 RSA PrivateKey, PublicKey 암호화 및 복호화 예제 이전 포스팅 참고 학습
- 파이썬 RSA 개인키, 공개키 키 쌍 생성 및 파일 저장 예제 이전 포스팅 참고 학습
- 파이썬 크롬 Seleninum 활용하여 입력창에 값 자동 입력 예제 이전 포스팅 참고 학습
- 파이썬 프로세스간 통신을 위해 파일에 실시간 데이터를 쓰는 예제(IPC)
- 파이썬 프로세스간 통신을 위해 파일에 쓰여진 데이터가 있는지 실시간 확인 및 출력 예제(IPC)
파이썬 RSA PrivateKey, PublicKey 암호화 및 복호화 예제 이전 포스팅 참고 학습
이전 포스팅에서는 파이썬에서 RSA 암호화 및 복호화를 위한 개인키(PrivateKey), 공개키(PublicKey) 를 가지고 실제 데이터를 암복호화 하는 예제에 대해 알아보았습니다. 암호화란 상대방과 약속을하고 서로만 알고 있는 열쇠를 공유한 뒤 서로가 전달하는 메세지를 다른 사람은 알 수 없도록 열쇠로 잠그는 것을 의미합니다. 추상적으로 설명하기는 했지만 서로만 알 수 있는 약속으로 메세지를 주고 받는다고 생각하시면됩니다. 컴퓨터에서도 마찬가지입니다. 만약 파이썬에서 RSA 암호화 및 복호화 예제가 궁금하시다면 아래 링크를 참고하여주세요.
2023.08.21 - [Python] - [Python] 파이썬 RSA 암호화 예제(PrivateKey, PublicKey)
파이썬 RSA 개인키, 공개키 키 쌍 생성 및 파일 저장 예제 이전 포스팅 참고 학습
다음으로 이전 포스팅에서는 위에서 언급한 RSA 암호화 및 복호화를 수행하기 위한 RSA 개인키, 공개키 키 쌍을 생성하는 예제를 알아보았습니다. RSA 는 PKI 의 대표적인 알고리즘으로서 공개키 기반 암호화 알고리즘입니다. 공개키는 누구에게나 공개되도 상관없는 키를 의미하고 개인키는 반드시 공개되면안되고 나만 알고 있어야하는 키를 의미합니다. 이처럼 이러한 RSA 암호화 및 복호화에 사용할 키 2개를 생성하는 방법에 대해 궁금하시다면 아래 링크를 참고하여 학습해주세요.
2023.08.21 - [Python] - [Python] 파이썬 RSA 키 쌍 생성 및 파일 저장 예제(개인키, 공개키)
파이썬 크롬 Seleninum 활용하여 입력창에 값 자동 입력 예제 이전 포스팅 참고 학습
마지막으로 이전 포스팅에서는 파이썬에서 크롬의 Seleninum 을 활용하여 크롬 브라우저에 자동으로 내가 원하는 값을 입력하는 방법에 대해 알아보았습니다. 브라우저를 통한 자동화 업무를 구성하기 위해 자주 사용하는 모듈입니다. 구글 드라이버를 사용하기 때문에 호환성이 좋습니다. 만약 파이썬 스크립트에서 크롬 브라우저 자동화 업무를 구성하고 계시다면 아래 링크의 포스팅을 참고하면 크롬 Seleninum으로 입력창에 자동 입력하는 방벙베 대한 예제를 확인하실 수 있습니다.
2023.08.21 - [Python] - [Python] 파이썬 크롬 Selenium 활용 입력창에 값 입력하기 예제(xpath, input)
파이썬 프로세스간 통신을 위해 파일에 실시간 데이터를 쓰는 예제(IPC)
아래는 파이썬에서 프로세스간 통신(IPC)를 수행하는 방법중 하나인 파일로 데이터를 주고 받는 예제입니다. 한쪽에서는 파일에 데이터를 실시간으로 작성하고 한쪽에서는 실시간으로 데이터가 있는지 확인하여 읽고 출력합니다. 이런 I/O 방식을 통해 프로세스간 통신이 가능합니다. 다만 I/O 이다보니 속도가 메모리에 비해 느릴 수 있습니다. 요즘은 SSD와 같이 성능이 좋은 디스크들이 많이 나왔기 때문에 속도가 빠릅니다.
file_path = "ipc_data.txt"
while True:
user_input = input("입력할 내용을 입력하세요 (종료하려면 'exit' 입력): ")
if user_input == "exit":
break
with open(file_path, "a") as file:
file.write(user_input + "\n")
print("프로그램을 종료합니다.")
파이썬 프로세스간 통신을 위해 파일에 쓰여진 데이터가 있는지 실시간 확인 및 출력 예제(IPC)
아래는 위 예제와 반대인 한쪽에서 쓴 데이터가 있는지 확인하여 읽고 출력하는 예제입니다.
import time
file_path = "ipc_data.txt"
last_position = 0
# 파일 열기 (마지막 위치부터 읽기)
with open(file_path, "r") as file:
file.seek(last_position)
while True:
# 파일 읽기
new_data = file.read()
if new_data:
print("Received:", new_data)
last_position = file.tell() # 마지막 읽은 위치 저장
time.sleep(1)
# 파일 업데이트 확인 (새로운 데이터가 추가되면 파일 크기가 변경됨)
current_position = file.tell()
file.seek(last_position)
if current_position > last_position:
file.seek(last_position)
else:
file.seek(current_position)