분류 전체보기 (75) 썸네일형 리스트형 PHP 17~22 php 17$list = scandir('파일이름')의 형식으로 디렉터리를 만들고 var_dump를 이용하여 출력합니다. 제 노트북에서는 이렇게 출력됐습니다...$list[$i]\n"; $i = $i +1; ? }$list[$i]\n"; } } $i = $i +1; } ?>위와 같은 순서대로 반복문을 활용할 수 있습니다. 세번째 반복문의 '.' 와 '..'은 상위 디렉터리로의 이동을 뜻합니다. php 18~19function 함수명() { } 의 형식으로 함수 생성이 가능하다.인자를 넣는 방법은 C언어와 크게 차이가 나지 않은다. 다만 안에 수를 넣을 때 앞에 $를 붙여야한다.다음과 같이 return 형식으로 출력하는 것도 가능하다. PHP 21CRUD에 대해.. C언어 2주차 #include #include #include int f(const void *a, const void *b) { return (*(char *)b - *(char *)a);}int main() { char N[11]; scanf("%s", N); int len = strlen(N); qsort(N, len, sizeof(char), f); // 정렬된 결과 출력 printf("%s\n", N); return 0;}1.문자들로 이루어진 숫자를 입력받는다.2.길이를 확인한다.3.qsort함수를 이용하여 배열을 정리한다. 3-1.이때 문자로 이루어진 숫자를 비교하는 것 처럼 정리된다.4.출력한다.#include #include int main() { .. 웹해킹 2주 쿠키클라이언트의 IP 주소와 User-Agent는 매번 변경될 수 있는 고유하지 않은 정보일 뿐만 아니라, HTTP 프로토콜의 Connectionless와 Stateless 특징 때문에 웹 서버는 클라이언트를 기억할 수 없습니다. HTTP 프로토콜 특징Connectionless하나의 요청에 하나의 응답을 한 후 연결을 종료하는 것을 의미합니다. 특정 요청에 대한 연결은 이후의 요청과 이어지지 않고 새 요청이 있을 때 마다 항상 새로운 연결을 맺습니다.Stateless통신이 끝난 후 상태 정보를 저장하지 않는 것을 의미합니다. 이전 연결에서 사용한 데이터를 다른 연결에서 요구할 수 없습니다.용도일반적으로 쿠키는 클라이언트의 정보 기록과 상태 정보를 표현하는 용도로 사용합니다.정보 기록웹 서비스 사용 시 종.. php 1~16 PHP-1웹페이지를 자동으로 생산할 수 있게 해준다.PHP-2php를 이용하면 효과적으로 만들 수 있다.PHP-3bitnami사이트에서 php를 다운받는다.정상적으로 작동하는 걸 확인한다. PHP-4PHP의 원리는 다음과 같다. 다이나믹한 변환이 가능하다.PHP-5사진과 같이 숫자의 연산이 가능하다다음과 같이 문자열을 출력하는게 가능하다. " " 사이에는 "가 들어오지 말아야하며 사용할 시 \를 앞에 붙인다. 문자와 문자 사이 .를 붙이면 합쳐진다. strlen을 이용하면 문자열의 길이를 구하는게 가능하다.PHP-6앞에 &를 붙여서 변수를 만든다. PHP-7url의 입력값에 따라 다르게 들어가도록 할 수 있다. &_GET[' ']을 사용한다. url에는 ' '=의 방식으로 넣고싶은 말을 입력한다. ?뒤.. 웹해킹 1주차 웹인터넷을 기반으로 구현된 서비스 중 HTTP를 이용하여 정보를 공유하는 서비스를 웹이라고 한다. 정보를 제공하는 주체를 웹 서버 (Web Server), 정보를 받는 이용자를 웹 클라이언트 (Web Client) 라고 한다, 웹의 발전과 웹 보안의 중요성과거에는 단순히 정보를 보여주는 것에서 그쳤다면, 현재는 정보를 검색하고 직접 제품을 구매할 수 있도록 변화하였다. 그리고 웹에서 처리하는 정보 자산들이 많아짐에 따라 이들을 안전하게 보관하고 처리해야 할 필요성도 함께 증가하였습니다. 그래서 웹을 통한 정보의 교환 과정에서 이러한 민감한 정보들이 유출되거나 악용되지 않도록 보호하는 웹 보안의 중요성이 대두하고 있다. 웹 서비스, 프론트엔드와 백엔드웹서비스는 현재는 이용자의 요청을 해석하고 가공하여 필요.. 2024년 2학기 C언어 1주차 #define _CRT_SECURE_NO_WARNINGS#include #include #include int group(char* word) { int button[26] = { 0 }; int len = strlen(word); for (int i = 0; i 1.조건에 따라 단어를 담을 수 있는 [100][100]크기의 배열을 만들어둔다.2.for문으로 단어를 입력받는다. 받을 때 마다 그룹단어인지 체크한다.2-1.단어가 연속인지 아닌지 체크할 배열 button을 만든다.2-2.button이 0이면 이전에 단어가 들어온적이 없으며 1이면 들어온 적이 있다. 만약 1일 때 같은 단어가 들어오면 함수가 종료된다.3.그룹단어일경우 count에 횟수를 추가하며 완료한다. #includ.. 9주차 암호학 전자 서명 서명과 검증서명키를 통해 메시지로부터 서명을 생성하는 과정을 서명 작성(Signing), 검증키를 통해 메시지에 대한 서명을 검증하는 과정을 서명 검증(Verification)이라고 한다. 검증키를 pk, 서명키를 sk, 서명 검증 알고리즘을 Ver, 서명 생성 알고리즘을 Sig라고 할 때 메시지 m에 대한 서명 s는 아래의 수식으로 생성된다. 해시 함수를 이용한 전자 서명해시 함수를 이용한 전자 서명에서는 해시 함수로 메시지의 해시 값을 생성하고, 이 값에 대한 서명을 생성합니다. 이를 수식으로 표현한다면 다음과 같다. H는 임의의 암호학적 해시 함수를 의미다. RSA 전자 서명RSA 공개키 방식에서의 공개키 (n,e)는 전자 서명 방식에서는 검증키로, 비밀키 d는 서명키로 사용된다. 서명 .. 8주차 웹해킹 6.읽기{topic["title"]}'def template(contents, content): return f''' WEB {liTags} {contents} Welcome Hello, Web {content} '''@app.route('/create/')def create(): return 'Create'def getContents(): liTags = '' for topic in topics: liTags = liTags + f'{topic["t.. 8주차_시스템 basic_exploitation_000 문자열을 받는 것에 문제가 있으니 이에 대해 payload를 작성한다. basic_exploitation_001오버플로우 공격이 가능한 것을 gets() 함수로 알 수 있다. Bomb6개의 숫자를 받아서 비교하는 걸 알 수 있다. 크기는 1부터 6까지이며 서로 전부 달라야한다. 노드 값은 다음과 같다. 8주차 암호학 암호학적 해시 함수의 성질다음 성질을 만족하는 해시 함수를 말한다. 1. 제 1 역상 저항성(Preimage resistance): 암호학적 해시 함수 H에 대해 y가 주어졌을 때 H(x)=y를 만족하는 x를 찾는 것이 어렵다. 함수가 일방향 함수(One-way function)여야 함을 의미합니다. 2. 제 2 역상 저항성(Second preimage resistance): 암호학적 해시 함수 H에 대해 x가 주어졌을 때 x!=x′,H(x)=H(x′)을 만족하는 x′을 찾는 것이 어렵다. 즉, 한 입력에 대해 같은 해시값을 갖는 다른 입력을 찾기 어렵다. 3. 충돌 저항성(Collision resistance): 암호학적 해시 함수 H에 대해 x!=x′,H(x)=H(x′)을 만족하는 x,x′을 찾는 것.. 이전 1 2 3 4 5 6 ··· 8 다음