목록전체 글 (155)
사자자리
http://www.xssgame.com/m4KKGHi2rVUN 로그인 - Google 계정 이메일 또는 휴대전화 accounts.google.com 이 레벨은 적절한 escaping 없이 사용자의 입력이 웹페이지에 직접 written될 때의 XSS의 전형적인 원인을 보여준다. 아래의 취약한 app에서 원하는 JavaScript를 실행시킬 방법을 찾아보자. app이 JavaScript의 alert( ) 함수를 실행하도록 입력하라. 입력 성공 http://www.xssgame.com/WrfpuKFX8GNr 로그인 - Google 계정 이메일 또는 휴대전화 accounts.google.com
공개키 교환 알고리즘 - 네트워크 같은 공개된 채널에서 키를 교환해도 외부인은 키를 알 수 없게 하는 알고리즘 - 대칭키 암호를 사용하려면, 사전에 수신자와 송신자의 키 교환(Key Exchange)이 이루어져야 한다. - 대칭키 암호의 안전성은 키에서 비롯되고, 키를 안전하게 공유할 수 없는 환경에서 대칭키 암호는 무용지물이다. Diffie-Hellman 키 교환의 수학적 원리 1. 모듈로 연산에서의 거듭제곱 2. 페르마의 소정리 3. 이산 로그 문제 1. 모듈로 연산(Modulo Operation)에서의 거듭제곱 https://coding-leo.tistory.com/77 [암호학] 배타적 논리합과 합동식 배타적 논리합(XOR; exclusive or) - 입력으로 들어온 두 인자가 서로 다를 때 참..
https://www.acmicpc.net/problem/1547 1547번: 공 첫째 줄에 컵의 위치를 바꾼 횟수 M이 주어지며, M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 M개의 줄에는 컵의 위치를 바꾼 방법 X와 Y가 주어지며, X번 컵과 Y번 컵의 위치를 서로 바꾸는 것 www.acmicpc.net #include int main(){ int n, a, b, ball = 1; scanf("%d", &n); for (int i = 0; i < n; i++){ scanf("%d %d", &a, &b); if (a == ball) ball = b; else if (b == ball) ball = a; } printf("%d", ball); return 0; }
https://www.acmicpc.net/problem/2755 2755번: 이번학기 평점은 몇점? 첫째 줄에, 백준이가 이번 학기에 들은 과목 수가 주어진다. 둘째 줄부터 N개의 줄에 각 과목의 과목명, 학점, 성적이 주어진다. 과목명은 알파벳 소문자와 숫자, 그리고 밑줄 (_)로만 이루어져 있 www.acmicpc.net #include double getGrade(char *grade){ double result; if (grade[0] == 'A') result = 4.0; else if (grade[0] == 'B') result = 3.0; else if (grade[0] == 'C') result = 2.0; else if (grade[0] == 'D') result = 1.0; else ..
https://www.acmicpc.net/problem/9996 9996번: 한국이 그리울 땐 서버에 접속하지 총 N개의 줄에 걸쳐서, 입력으로 주어진 i번째 파일 이름이 패턴과 일치하면 "DA", 일치하지 않으면 "NE"를 출력한다. 참고로, "DA"는 크로아티어어로 "YES"를, "NE"는 "NO"를 의미한다. www.acmicpc.net #include #include int main(){ char pattern[101], left[101] = "", right[101] = ""; char test[101], tleft[101] = "", tright[101] = ""; char yesno[100][3]; int n, star; scanf("%d", &n); scanf("%s", pattern);..
https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 www.acmicpc.net #include #include int main(){ int n, len; char str[50][51]; scanf("%d", &n); for (int i = 0; i < n; i++){ scanf("%s", str[i]); } len = strlen(str[0]); for (int i = 0; i < n; i++){ for (int j = 0; j < len; j++){ if (str[0..
https://www.acmicpc.net/problem/2747 2747번: 피보나치 수 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net #include int main(){ int n, memo[46] = {0, 1}; scanf("%d", &n); for (int i = 2; i