달력

3

« 2020/3 »

 

 

쿠키 생성 단계

쿠키는 웹브라우저와의 관계를 유지하는 수단으로 사용됩니다.

구분

단계

설명

1

쿠키 생성

쿠키 클래스를 이용합니다.

2

쿠키 속성 설정

setter를 이용합니다.

3

response객체에 쿠키 탑재

response.addCookie()메소드를 이용 합니다.

 

 

 

쿠키 생성하기

//쿠키 생성

Cookie cookie = new Cookie(cookieName,cookieValue);

 

 

 

 

생성된 쿠키를 클라이언로 전송

response.addCookie(cookie);

 

 

 

쿠키값 읽어오기

Cookie[] cookies = request.getCookies();

 

 

Posted by codedragon codedragon

댓글을 달아 주세요

 

시빌 공격(Sybil Attack)

·         일종의 네트워크 해킹 공격으로 특정한 목적을 얻기 위해 명의 행위를 여러 명의 행위인 것처럼 속이는 공격 형태를 의미합니다.

·         시빌 공격은 다양한 네트워크 시스템의 기능을 무력화하는데 사용될 있습니다.

 

 

http://bit.ly/2HTT1qb

 

 

 

 

 

 

시빌 공격의 피해 사례

토렌트(Torrent) 같은 P2P 기반의 서비스에서 평판이 좋은 애플리케이션을 다운로드 받아서 사용해보니 악성코드였던 사례가 있습니다.

 

 

 

 

 

 

시빌(Sybil) 어원

·         1973 출판된 동명의 제목에선 따온 것으로 책은 다중 인격 장애를 가지고 이는 여성에 대한 사례 연구를 다룬 책입니다.

·         다중 인격 장애를 겪는 사람이 여러 개의 인격을 가진 것처럼 명의 네트워크 참여자가 여러 명인 것처럼 속인다는 의미에서 시빌 공격(Sybil Attack)이라는 말이 만들어졌습니다.

 

 


 

https://en.wikipedia.org/wiki/Sybil_(Schreiber_book)

 


Posted by codedragon codedragon

댓글을 달아 주세요


 

 

예외 처리 방법

·       try/except

·       try/except/else/finally 절 사용하기

·       같은 부류의 예외 다 잡아내기

 

 

 

 


'Development > Python' 카테고리의 다른 글

파이썬 표준 라이브러리  (0) 2020.03.12
{logging} 모듈  (0) 2020.03.12
예외 처리 방법  (0) 2020.03.11
파이썬 구문 오류(syntax error) 해결 방법  (0) 2020.03.11
__name__ 어트리뷰트  (0) 2020.03.11
webbrowser  (0) 2020.03.11
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

 

파이썬 구문 오류(syntax error) 해결 방법

구분

오류 방지 해결방법

예약어

·       파이썬 예약어를 변수 이름으로 쓰지 않았는지 확인합니다.

반복문

·       for, while, if, def 같은 구문의 선언부 끝에 콜론(:)이 있는지 확인합니다.

문자열

·       코드의 문자열에 따옴표(', ")가 짝이 맞는지 확인합니다.

·       작은 따옴표가(') ` 되어 있지 않은 확인합니다.

삼중 부호

·       여러 줄 문자열을 사용하는 경우 삼중 부호(''' 또는 """)  문자열이 올바르게 감싸졌는지 확인합니다.


블록 연산자

·       열기 연산자 (, {, [ 를 열고 닫지 않으면 파이썬은 다음 줄을 현재 문장의 일부분으로 인식합니다.


조건문

·       조건문 안에 ==(비교연산자) 대신 =(대입연산자) 쓰였는지 확인합니다.

들여쓰기

·       들여쓰기가 잘 되어있는지 확인합니다.

·       파이썬은 공백과 탭을 모두 처리할 수 있지만, 이 둘을 섞어 쓸 경우 문제가 일어날 수도 있습니다.

·       문제가 일어나지 않게 들여쓰기하는 가장 좋은 방법은 파이썬 문법을 이해하는 텍스트 에디터, IDE 사용해 코드를 작성하면 일관된 들여쓰기를 사용하여 코드를 작성할 있습니다.

인코딩

·       코드, 문자열, 주석에 ASCII 이외의 문자가 있다면 Error 발생하거나 다양한 문제를 일으킬 수 있습니다.

·       파이썬은 문자열 처리시 ASCII 이외의 문자도 모두 처리할 수 있도록 Unicode 처리가 되어집니다.

·       하지만 웹 페이지나 다른 소스에서 텍스트를 가져오는 경우 인코딩에 문제가 발생할 있으므로 주의해야 합니다.

 

 


'Development > Python' 카테고리의 다른 글

{logging} 모듈  (0) 2020.03.12
예외 처리 방법  (0) 2020.03.11
파이썬 구문 오류(syntax error) 해결 방법  (0) 2020.03.11
__name__ 어트리뷰트  (0) 2020.03.11
webbrowser  (0) 2020.03.11
PYTHONPATH 환경 변수 사용하기  (0) 2020.03.11
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

__name__ 어트리뷰트

·         현재의 모듈이 최상위 모듈로서 수행되는지, 아니면 다른 모듈에 의해 import 되어 수행되는지를 구별하기 위해 주로 활용됩니다.

·         최상위 모듈 파이썬 인터프리터 기본적으로 가장 먼저 인식하여 처리하는 모듈입니다.

·         모듈이 직접 실행 혹은 다른 곳에서 임포트 되었는지를 구분 있는 속성입니다.

·         파이썬에서 모듈을 import해서 사용할 경우 모듈 안의 __name__ 해당 모듈의 이름이 되며, 모듈을 스크립트로 실행할 경우 모듈 안의 __name__ "__main__" 됩니다.

·         모듈이 임포트 되었을 __name__ "모듈 자기 자신의 이름" 되고 모듈이 직접 실행 되었을 __name__ "__main__" 값을 가지게 됩니다.

 

구분

설명

모듈이 임포트 되었을 __name__

 


"모듈 자기 자신의 이름" 됩니다.

mylib

 

__name__ = mylib.py

 

import mylib

mylib.add(10, 20)

모듈이 직접 실행 되었을 __name__

 


"__main__" 됩니다.

__main__

 

__name__ =__main__

 

>> python mylib.py

 

 

 


'Development > Python' 카테고리의 다른 글

예외 처리 방법  (0) 2020.03.11
파이썬 구문 오류(syntax error) 해결 방법  (0) 2020.03.11
__name__ 어트리뷰트  (0) 2020.03.11
webbrowser  (0) 2020.03.11
PYTHONPATH 환경 변수 사용하기  (0) 2020.03.11
sys.path.append()  (0) 2020.03.11
Posted by codedragon codedragon

댓글을 달아 주세요

2020. 3. 11. 11:55

webbrowser Development/Python



 

 

webbrowser

시스템에 설정된 기본 웹 브라우저를 실행시켜주는 모듈입니다.

 

 

메소드

설명

webbrowser.open("url")

·       웹 브라우저가 이미 실행된 상태이면 입력 주소로 이동합니다.

·       만약 웹 브라우저가 실행되지 않은 상태이면 새로 웹 브라우저를 실행한 후 해당 주소로 이동합니다.

webbrowser.open_new("url")

·       이미 웹 브라우저가 실행된 상태면 새로운 창으로 해당 주소가 열리도록 합니다.

 

 


'Development > Python' 카테고리의 다른 글

파이썬 구문 오류(syntax error) 해결 방법  (0) 2020.03.11
__name__ 어트리뷰트  (0) 2020.03.11
webbrowser  (0) 2020.03.11
PYTHONPATH 환경 변수 사용하기  (0) 2020.03.11
sys.path.append()  (0) 2020.03.11
로그 수준(level)  (0) 2020.03.11
Posted by codedragon codedragon

댓글을 달아 주세요



 

 

PYTHONPATH 환경 변수 사용하기

·       윈도우 시스템의 set 도스 명령어를 이용해 PYTHONPATH 환경 변수에 사용할 모듈 파일이 있는 디렉토리 경로를 설정해줍니다.

·       PYTHONPATH 등록되면 추가 작업 없이 바로 해당 디렉토리에 있는 모듈을 import 있습니다.

 

 


'Development > Python' 카테고리의 다른 글

__name__ 어트리뷰트  (0) 2020.03.11
webbrowser  (0) 2020.03.11
PYTHONPATH 환경 변수 사용하기  (0) 2020.03.11
sys.path.append()  (0) 2020.03.11
로그 수준(level)  (0) 2020.03.11
__init__.py  (0) 2020.03.11
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

sys.path.append()

·       {sys} 모듈은 파이썬을 설치할 때 함께 설치되는 내장 라이브러리 모듈입니다.

·       {sys} 모듈을 이용해서 파이썬 라이브러리가 설치되어 있는 디렉터리를 확인할 수 있습니다.

·       특정한 디렉터리에 있는 모듈을 불러와서 사용하고 싶을 때 append()메소드로 등록후 사용하면 됩니다.

 

sys.path.append("모듈이 저장된 디렉터리경로")

 

 

 


'Development > Python' 카테고리의 다른 글

webbrowser  (0) 2020.03.11
PYTHONPATH 환경 변수 사용하기  (0) 2020.03.11
sys.path.append()  (0) 2020.03.11
로그 수준(level)  (0) 2020.03.11
__init__.py  (0) 2020.03.11
Exception 계층도 (Exception hierarchy)  (0) 2020.03.11
Posted by codedragon codedragon

댓글을 달아 주세요


 

소켓(Socket)

·       인터넷 소켓(Internet socket) 네트워크 소켓(Network socket)

·       TCP/IP의 복잡한 프로토콜을 단순화시켜 네트워크 프로그램을 편리하게 작성할 수 있도록 한 API 입니다.

·       소켓은 캘리포니아 대학교에서 빌 조이(Bill Joy)에 의해 개발되었습니다.

·       소켓은 네트워크의 끝 부분을 나타내며, 실제 데이터가 어떻게 전송되는지 상관하지 않고 읽기/쓰기 인터페이스를 제공합니다.

·       OSI 7계층의 네트워크 계층과 전송 계층이 캡슐화 되어 있기 때문에 두 개의 계층을 신경 쓰지 않고 프로그램을 만들 수 있습니다.

·       소켓을 이용하면 TCP/IP 네트워크에서 양쪽 응용 프로그램의 TCP 연결 해줍니다. , 네트워크(Network) 상에서 서버(Server)와 클라이언트(Client) 두 개의 프로그램특정 포트(port)를 통해 양방향통신이 가능하도록 만들어주는 소프트웨어 장치입니다.

 

 

http://bit.ly/2kIINvH

https://en.wikipedia.org/wiki/Network_socket

 

 

 

 

 

TCP 연결 소켓 도식도


 

'Security > Network' 카테고리의 다른 글

사설 IP(내부 IP) 대역  (0) 2020.03.27
DNS address, DNS 주소  (0) 2020.03.17
소켓(Socket), 소켓 통신 도식도  (0) 2020.03.11
NETCRAFT - What's that site running?  (0) 2020.03.05
OSI 7 Layer의 특징  (0) 2019.11.30
OSI 7 Layer 송신 및 수신 측 매핑  (0) 2019.10.21
Posted by codedragon codedragon

댓글을 달아 주세요


 

로그 수준(level)

log level

Numeric value

description

NOTSET

0

·       설정 안됨

DEBUG

10

·       상세한 정보가 필요할 때,

·       보통 문제 분석,

·       일반적으로 디버깅할 때 사용

INFO

20

·       동작이 절차에 따라서 진행되고 있는지 관찰 할 때

WARNING

30

·       어떤 문제가 조만간 발생할 조짐이 있을 때.

·       ex) 디스크 용량이 10% 남았을

ERROR

40

·       프로그램에 문제가 발생해서 기능의 일부가 동작하지 않을 때

CRITICAL

50

·       심각한 문제가 발생해서 시스템이 정상적으로 동작할 수 없을 때

 

 


'Development > Python' 카테고리의 다른 글

PYTHONPATH 환경 변수 사용하기  (0) 2020.03.11
sys.path.append()  (0) 2020.03.11
로그 수준(level)  (0) 2020.03.11
__init__.py  (0) 2020.03.11
Exception 계층도 (Exception hierarchy)  (0) 2020.03.11
예외의 종류  (0) 2020.03.11
Posted by codedragon codedragon

댓글을 달아 주세요