본문 바로가기

분류 전체보기

Python Forensics (2) - Concept of Network Programming 네트워크 프로그래밍은 3가지의 definition을 갖는다. (1) Client : 개인용 컴퓨터 및 워크 스테이션에서 실행 (2) Server : 동일 컴퓨터 혹은 다른 컴퓨터의 프로그램 (3) WebSockets : client와 server 사이의 TCP연결을 통해 프로토콜을 제공. 양방향 메시지 전송 위와 같은 그림은 다른 사용자가 보내거나 받은 정보의 유효성을 검사하는데 사용된다. 암호화는 메시지를 보호하는데 사용되는 방법 중 하나로 메시지가 이용하는 채널을 보호하는 것도 중요하다. 클라이언트가 handshaking을 사용하는 python 프로그램을 살펴보자. # client.py import socket # create a socket..
Python Forensics (1) 들어가기에 앞서, 해당 포스팅 시리즈는 tutorialspoint를 기반으로 작성된 포스팅입니다. 파이썬은 읽기 쉽고 이해하기 쉬운 프로그래밍언어이다. 입력으로 돌아갈 수 없어서 brute force attack로 복호화를 하는것은 불가능하다. 참고로 brute force attack이란 암호가 4글자로 이루어진 비밀번호라면 0000~9999까지 대입하여 암호를 알아내는 방식이다. 이런 종류의 알고리즘을 one-way cryptographic algorithm이라고 한다. 이러한 해시 알고리즘은 네 가지 중요 속성을 갖는다. - 주어진 입력에 대해 해쉬 값 계산이 쉽다. - 해시에서 입력을 생성할 수 없다. - 해시를 변경하지 않고 입력을 수정할 수 없다. - 동일한 해시를 가진 두 개의 입력은 없어야 ..
Pyspc를 사용하여 SPC Graph 그리기 2019/05/09 - [계약/SIDE] - Statistical Process Control (SPC) 갑자기 하늘에서 떨어져 내게 온 SPC를 세미 체험해보기 위해 Python을 켰다. SPC에 관련된 내용은 이전 글을 읽자. 그리 어려운 내용은 아니고 그저 내가 원하는 조건에서 벗어나는 친구들이 생기는지 생기지 않는지 감시하는 용도로 간단히 생각하면 될 듯 하다. Python님은 못가진거빼고 다 가지고 계시기 때문에 검색을 통해 라이브러리를 찾아본다. 역시 사귄지 얼마안된 내 친구 파이썬은 원하는 라이브러리가 있었다. 감사한 분에게 인사드리며 pyspc 라이브러리는 다음 주소로 찾아가면 된다. 제공하는 차트는 아래와 같다. pip install pyspc 마법의 주문으로 새로운 라이브러리를 맞이해준..
Statistical Process Control (SPC) Basics of Statistical Process Control Control Charts Control Charts for Attributes Control Charts for Variables Control Chart Patterns Process Capability 1. Bascis of Statistical Process Control SPC란 Statistical Process Control의 약자로 Product를 모니터링하여 허용 범위 이상의 quality를 감지해내는 생산 공정 모니터링이다. 한국어로는 통계적 공정 관리로 부른다. 하지만 모든 상품을 모니터링 할 수 없기 때문에 보통 샘플링을 통해 품질을 테스트 한다. 1분에 1만개의 전구를 만드는 공장을 생각해본다면, 샘플링이 왜 중요..
PL/SQL Tutorial - Record PL/SQL record는 multiple fields를 가진다. 구조체로 이해하면 편할 것 같다. 1) Declaring records DECLARE record_name table_name%ROWTYPE; 간단하다. 실제로 contats의 row 구조를 record로 저장하는 경우는 아래와 같다. DECLARE r_contact contacts%ROWTYPE; 2) Cursor-based record DECLARE record_name cursor_name%ROWTYPE; 안봐도 느낌이 커서의 구조를 가져가는 record이다. DECLARE CURSOR cur_contacts IS SELECT first_name, last_name, phone FROM contacts; r_contact cur_co..
PL/SQL Tutorial - Variables with REF CURSOR cursor variable DECLARE TYPE customer_data_t IS REF CURSOR RETURN customers%ROWTYPE; customer_cur customer_data_t; example로 이해해보자. -- function CREATE OR REPLACE FUNCTION get_direct_reports( p_manager_id IN employees.manager_id%TYPE) RETURN SYS_REFCURSOR AS c_direct_reports SYS_REFCURSOR; BEGIN OPEN c_direct_reports FOR SELECT employee_id, first_name, last_name, email FROM employees WHERE manager..
PL/SQL Tutorial - Parameters CURSOR cursor_name (parameter_list) IS cursor_query; parameter가 뭔지도 알고 cursor이 뭔지도 아는데 이걸 합치니 뭔지 모르겠다. 한 번 살펴보자. 일단 cursor open은 이렇게 한다. OPEN cursor_name (value_list); DECLARE rec_product products%ROWTYPE; CURSOR cur_product (low_price NUMBER, high_price NUMBER) IS SELECT * FROM products WHERE list_price BETWEEN low_price AND high_price; BEGIN -- mass products DBMS_OUTPUT.PUT_LINE('Mass products..