목록분류 전체보기 (155)
사자자리
PHP와 MySQL의 연동 원리 1. 웹브라우저에 index.php 입력 2. 웹브라우저가 index.php 파일을 가지고 있는 웹서버에 접속 3. 웹서버가 PHP에게 index.php 파일의 처리를 위임 4. PHP가 index.php 파일의 PHP 코드를 PHP 문법에 따라 해석하고 동작 5. index.php 파일의 PHP 코드 중에 MySQL 관련 함수가 있으면, PHP가 MySQL에게 SQL문을 전달 6. MySQL이 SQL문을 따라 동작하고 결과를 PHP에게 전달 7. PHP가 최종적으로 순수한 HTML 코드를 생성 8. 웹서버가 HTML 코드를 웹브라우저에게 전송 *이 맥락에서, PHP는 웹서버와 MySQL 사이의 중개자 역할을 한다. 이를 미들웨어(Middleware)라고도 한다. MySQ..
IP 주소와 MAC 주소 IP 주소 MAC주소 Internet Protocol Address Media Access Control Address - 사람의 이름과 비슷하다. - 바뀔 수 있고, 다른 PC와 중복될 수 있다. - 사람의 주민등록번호와 비슷하다. - 하드웨어 고유의 주소이며, 다른 하드웨어와 중복될 수 없다. 192.168.0.1 AA-BB-CC-DD-EE-FF - 통신하기 위해서는 IP 주소와 MAC 주소 둘 다 필요하다. - 통신할 때, 주로 IP 주소만 알고 있고 MAC 주소는 모르는 경우가 많다. ARP - Address Resolution Protocol: 주소 결정 프로토콜 - IP 주소를 MAC 주소로 변환하는 기능 1. IP 호스트 A가 IP 호스트 B에게 IP 패킷을 전송하려..

암호의 기능 기밀성(Confidentiality) 허락된 사람만이 정보를 열람할 수 있게 하는 기능 - 허락된 사람은 일반적으로 키를 가지고 있는 사람이다. 무결성(Integrity) 송신자가 보낸 정보에 변조가 일어나지 않았음을 의미 - 데이터는 조작, 네트워크 상의 문제 등으로 변경될 수 있다. 인증(Authentication) 정보를 주고 받는 상대방의 신원을 확인하는 기능 - 예: 공인인증서, 아이디와 비밀번호 부인 방지(Non-repudiation) 정보를 교환한 이후에 교환한 사실을 부인할 수 없게 하는 기능 혼돈과 확산(Confusion and Diffusion) - 1945년, 암호학자 클로드 섀넌(Claude Shannon)은 안전한 암호 시스템은 혼돈과 확산의 성질을 만족해야 한다고 발..
고전 암호 - 컴퓨터와 같은 고성능 연산 장치가 발명되기 전, 비교적 간단한 기계와 손 등으로 암복호화를 수행하던 암호 - 컴퓨터를 사용하면 대부분 쉽게 복호화되므로, 현대에는 사용하지 않는다. 고전 암호의 분류 치환 암호 Substitution Cipher 평문의 문자를 다른 문자로 바꾸는 것 전치 암호 Transposition Cipher 평문의 문자들의 위치를 바꾸는 것 단순한 고전 암호: 한 가지 원리만을 사용 복잡한 고전 암호: 두 가지 원리 모두 사용 단일 문자 치환 암호(Monoalphabetic Substitution Cipher) - 평문의 각 문자를 약속된 다른 문자로 치환하는 암호 - 치환의 대응 관계는 일대일 대응 카이사르 암호(Caesar Cipher) - 기원전 44년 줄리어스 ..

https://www.acmicpc.net/problem/1371 1371번: 가장 많은 글자 첫째 줄부터 글의 문장이 주어진다. 글은 최대 50개의 줄로 이루어져 있고, 각 줄은 최대 50개의 글자로 이루어져 있다. 각 줄에는 공백과 알파벳 소문자만 있다. 문장에 알파벳은 적어도 하나 이 www.acmicpc.net #include int main(){ char text; int alpha[26] = {0}, max = -1; while ((text = getchar()) != EOF){ alpha[text - 97]++; } for (int i = 0; i < 26; i++){ if (max < alpha[i]) max = alpha[i]; } for (int i = 0; i < 26; i++){ i..

https://www.acmicpc.net/problem/1356 1356번: 유진수 첫째 줄에 수 N이 주어진다. 이 수는 2,147,483,647보다 작거나 같은 자연수이다. www.acmicpc.net 유진수: 어떤 수를 10진수로 표현한 뒤, 그 수를 두 부분으로 나눴을 때 (앞부분 자리수의 곱) = (뒷부분 자리수의 곱) 1236의 경우 1 ≠ 2 * 3 * 6 1 * 2 ≠ 3 * 6 1 * 2 * 3 = 6 → 유진수 #include #include int main(){ int len, left, right; int judge = 0; char num[11]; scanf("%s", num); len = strlen(num); if (len == 1){//앞부분과 뒷부분으로 나눌 수 없으므로 ..

MISSON. 버프스위트를 이용해 사용자들의 id와 password를 획득하자. [난이도 low] 모든 공격은 버프스위트를 이용해주세요. 공격 과정은 GET방식과 유사합니다. Quest 1. 데이터베이스 정보를 알아내세요. burp suite를 켜고 input 박스에 harry potter를 입력해봤다. POST /bWAPP/sqli_6.php HTTP/1.1 Host: 192.168.35.41 Content-Length: 32 Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 Origin: http://192.168.35.41 Content-Type: application/x-www-form-urlencoded User-Agent: Mozilla/5.0 (..

MySQL(MariaDB)의 구조 표(Table) 데이터를 기록하는 최종적인 곳. 스프레드시트와 비슷한 구조. 행(Row, Record) 표의 한 행. 위의 표들은 2개의 행을 가지고 있다. 열(Column) 표의 한 열. 위의 표들은 4개의 열을 가지고 있다. 데이터베이스(Database) 서로 연관된 표들을 그룹핑해서 연관되지 않은 표들과 분리하는 것 수업에서는 데이터베이스라는 표현 대신 스키마(Schema)를 대신 사용한다. 데이터베이스 서버(Database Server) 많아진 데이터베이스(스키마)들이 저장되는 곳. MySQL(MariaDB)을 설치한 것 = 데이터베이스 서버라는 프로그램을 설치한 것 데이터베이스의 효용 보안 - 파일은 운영체제만 뚫리면 무주공당(임자가 없는 빈집)이다. - 하지만..