(2021.07.20) 톰캣 오류 The server cannot be started because one or more of the ports are invalid. Open the server editor and correct the invalid ports. 위의 사항을 체크해주어 빠진게 없는지 확인해준다. 나는 Tomcat admin port가 -로 설정되어있는것을 8005로 수정했더니 오류가 해결되었다. HTTP/1.1 포트는 주로 8080이라고 설정하지만, 혹시나 데이터베이스랑 충돌할까봐 8090으로 설정해주었다.
(2021.07.19) 자구 7주차 과제랑 연결 깊이 우선 탐색 (Depth First Search) 깊이 우선탐색 (DFS) 은 시작 정점의 한 방향으로 갈 수 있는 경로가 있는 곳까지 깊이 탐색하다가 더 이상 탐색할 수 없을 때, 그 전의 정점으로 돌아가 다른 방향의 간선으로 탐색을 하는 순회방법이다. 탐색 과정에서 후입 선출 구조의 스택을 사용한다. 정점 A에서 탐색할 정점이 없으므로 스택을 pop하면, 스택이 공백이므로 깊이 우선 탐색을 종료한다. 깊이 우선 탐색으로 순회한 경로는 아래와 같다.
(2021.07.19) 자구 재수강하면서 정리했던 것들 DFS, BFS, 최소비용 신장트리, 최단경로 알고리즘은 하나씩 자세하게 정리해서 따로 올릴 계획이다. V(vertex) : 정점 E(Edge) : 간선 차수(degree) : 정점에 부속되어있는 간선의 수 경로(path) : 정점 Vi ~ 정점 Vj 까지 간선으로 연결된 정점을 순서대로 나열한 리스트 - 단순경로 : 모두 다른 정점으로 구성 - cycle : 시작정점과 마지막정점이 같음 순차 자료구조를 이용한 그래프의 구현: 인접행렬 연결 자료구조를 이용한 그래프의 구현: 인접리스트 그래프의 순회 - DFS: 깊이 우선 탐색 (후입 선출 구조의 스택) - BFS: 넓이 우선 탐색 (선입 선출 구조의 큐) 신장트리(Spanning Tree) : 모든..
(2021.07.19) ✔ 원격 저장소란? 깃에서는 지역 저장소와 원격 저장소를 연결해서 버전 관리하는 파일들을 백업할 수 있다. 원격 저장소는 지역 저장소가 아닌 컴퓨터나 서버에 만든 저장소를 말한다. 원격 저장소는 백업, 협업을 할 때 중요한 역할을 한다. ✔ 깃허브에 원격 저장소 만들기 HTTPS 주소를 사용해서 언제든지 깃허브 저장소에 접속하거나 파일을 올릴 수 있다. ✔ 지역 저장소를 원격 저장소에 연결하기 $ git remote add origin 복사한HTTPS주소 : 지역 저장소를 특정 원격 저장소에 연결 $ git remote -v : 원격 저장소에 연결되었는지 확인 ✔ 원격 저장소에 파일 올리기 $ git push -u origin master : 지역 저장소의 브랜치를 원격 저장소의 ..
(2021.07.18) 2주차 암호 스터디 제 2장은 정수론에 대해 다루고 있다. 42p 까지만 정리해보았다. 2.1 정수집합 ✔ 2.1.1 연산의 기본 성질 정수들의 집합=Z Z1. 집합 Z위에서 덧셈이 정의된다. Z2. 덧셈에 대하여 교환법칙이 성립한다. Z3. 덧셈에 대하여 결합법칙이 성립한다. Z4. 특정한 정수 0∈Z은 모든 a∈Z에 대하여 a+0=0+a 를 만족한다. +) 정수 0을 덧셈에 대한 항등원(identity)이라고 함 Z5. 모든 a∈Z 에 대하여 a+(-a)=(-a)+a=0 인 -a∈Z 가 존재한다. +) 정수 -a를 덧셈에 관한 a의 역원(inverse)이라고 함 Z6. 집합 Z위에서 곱셈이 정의된다. Z7. 곱셈에 대하여 교환 법칙이 성립한다. Z8. 곱셈에 대하여 결합 법칙이..
(2021.07.16) ✔ 브랜치란? 가지치듯이 여러 갈래로 분기(branch)하고, 다시 병합하여 버전관리가 이루어지도록 한다. ✔ 브랜치 만들기 $ git branch : 깃의 브랜치 확인 $ git branch 브랜치이름 : 새로운 브랜치 생성 ✔ 브랜치 이동하기 $ git checkout 이동할브랜치이름 : 해당 브랜치로 이동 git checkout 하여 브랜치를 이동하여 파일을 수정하고 커밋하게 되면, 다른 브랜치는 그 영향을 받지 않는다. +) git log 명령 옵션 $ git log --oneline --branches : 각 브랜치의 커밋을 볼 수 있음 $ git log --oneline --branches --graph : 각 브랜치의 커밋, 그리고 그 커밋의 관계를 그래프의 형태로 볼..
(2021.07.16) ✔ git 버전 파일을 수정하고, 어떤 내용을 수정했는지를 기록할 수 있다. 파일 이름은 그대로 유지하면서, 각 버전마다 작업했던 내용을 확인하고, 그 버전으로 돌아갈 수도 있다. ✔ 스테이지와 커밋 깃에서 버전을 만드는 단계는 위의 그림을 통해 이해할 수 있다. -작업 트리: 파일 수정, 저장 등의 작업을 하는 디렉터리. 눈에 보이는 디렉터리 -스테이지: 버전으로 만들 파일이 대기하는 곳 -저장소: 스테이지에 대기하고 있는 파일들을 버전으로 만들어서 저장하는 곳 파일을 수정하고 저장하면 그 파일은 작업트리에 존재함. ① 수정한 파일을 버전으로 만들고 싶으면 우선 스테이징을 함. -> 파일이 스테이지에 들어옴. ② 스테이징한 파일을 버전으로 만들고 싶으면 커밋을 함. -> 파일이 ..
(2021.07.16) ✔ git 초기화 하기 git 초기화하는 방법으로는 두가지가 있다. ① mkdir로 디렉터리를 만들고, cd 디렉터리 후 git init을 하는 방법 ② git init 새로운디렉터리로 한번에 초기화하는 방법 첫번째 방법의 예) 두번째 방법의 예) +) .git 디렉터리는 감춰져있다
(2021.07.13) 깃 배시를 실행하여 명령어를 입력한다는 가정 ✔ 현재 디렉터리 살펴보기 $ pwd : 현재 위치의 경로 $ ls : 디렉터리와 파일 이름 ls 옵션 -a : 숨김 파일과 디렉터리 함께 표시 -l : 파일과 디렉터리의 상세정보 함께 표시 -r : 파일의 정렬 순서를 거꾸로 표시 -t : 파일 작성 시간 순으로 표시(내림차순) ✔ 터미널 창에서 디렉터리 이동하기 $ cd .. : 현재 위치에서 상위 디렉터리로 이동 $ cd 하위디렉터리 : 입력한 하위 디렉터리로 이동 $ cd ~ : 홈 디렉터리로 이동 리눅스에서 디렉터리를 나타내는 기호 ~ : 현재 접속 중인 사용자의 홈 디렉터리 ./ : 현재 사용자가 작업 중인 디렉터리 ../ : 현재 디렉터리의 상위 디렉터리 ✔ 터미널 창에서 디..
(2021.07.13) 이번 여름방학에 암호 스터디에서 공부할 책이다. 다음 학기에 들을 강의 교재이기도 하다. 열심히 해서 성적을 잘 받았으면.. 좋겠다... https://book.naver.com/bookdb/book_detail.nhn?bid=16490928 현대 암호학(6판)(양장본 HardCover) 원동호의 『현대 암호학』은 〈암호학〉, 〈수학적 배경〉, 〈관용 암호 방식〉, 〈상용 관용 암호 방식〉, 〈공개키 암호 방식〉 등 현대 암오학의 기초적이고 전반적인 내용이 수록되어 있다. book.naver.com 1.1 정보화 사회와 암호학 ✔ 정보화 사회란? - 컴퓨터와 정보 통신 기술이 결합되어 정보의 축적, 처리, 전송 능력이 획기적으로 증대되면서, 정보의 가치가 산업 사회에서의 물질이나 ..
(2021.03.22) 더보기 객프 과제를 하는 중 char 형을 입력받는 거에서 좀 시간이 걸렸다. 자꾸 빨간 밑줄이 그어지길래 그냥 String 으로 바꿨더니 또 char 로 바꾸라고 오류뜬다.. Scanner 를 통해서 문자열을 입력받고, charAt(0) 를 통해 서입력받은 문자열의 첫번째 문자를 꺼내오는 방식으로 코드를 짜야한다. // 예제 Scanner scan = new Scanner(System.in); String c1; char c2; c1=scan.next(); c2=c1.charAt(0);
(2021.02.27) 더보기 자바도 초심을 잃고... 한동안 공부를 안했다... 정신을 차리고 보니 개강이 코앞이다... | 인터페이스 인터페이스는 일종의 추상클래스임 추상클래스처럼 추상메서드를 갖지만, 추상화정도가 더 높음 오직 추상 메서드와 상수만을 멤버로 가질 수 있음 인터페이스의 작성 인터페이스는 클래스를 작성하는 것과 같은데 class 대신 interface를 사용함 interface 인터페이스 이름 { public static final 타입 상수이름 = 값; public abstract 메서드이름 (매개변수목록); } 인터페이스의 멤버는 일반 클래스의 멤버와 다르게 제약사항이 있음 1. 모든 멤버변수는 public static final 이어야함. 생략가능 2. 모든 메서드는 public ..
(2021.02.24) 더보기 초심을 잃고 2월은 너무 놀아버렸다.. 겨울방학 마지막 웹개발 공부를.. 했다.. 1학기엔 더 열심히 해야지 | props 와 이벤트 전달을 이용해 해야할 일 입력 기능 개선하기 | TodoInput 컴포넌트와 TodoList 컴포넌트 수정하기 propsdata 로 바꿔주어서 새로고침을 하지 않고도 바로 목록이 갱신되도록 만들어줌 | 이벤트 전달을 이용하여 Clear All 버튼 기능 개선하기 1. 상위 컴포넌트 코드 수정하기 2. 하위 컴포넌트 코드 수정하기 | 이벤트 전달을 이용해 할 일 삭제 기능 개선하기
(2021.02.11) 이용한 도구들 010 editor 파일을 다운받아주고 압축을 풀었다 ..... 한석원 선생님 사진이 두장 있었다.. hxd 로 두개를 보니까 헤더부분과 푸터부분을 비롯해서 매우 비슷하다 내 눈으로는 차이점을 찾을 수 없었다 010 editor 로 차이점을 찾아주었다 H 를 시작으로 a , c , k 순으로 afterimage_2.jpeg 에서 플래그형식의 값들이 보인다 순서대로 쭉 써보면 HackCTF{wh3r3_@re_you_l00king?} 이 플래그이다!!
(2021.02.11) 이용한 도구들 HxD 파일 다운 후 압축 풀어주면 mission.jpg 파일이 하나가 있다 hxd 에디터로 mission.jpg 파일을 열어준다 파일의 헤더부분의 시그니처를 보니 .jpg 의 파일 시그니처가 아니다 나와있는 m4a 가 그 힌트인가보다 66 74 79 70 4D 34 41 20 가 m4a 의 파일 시그니처이다 jpg 파일이 아니라 m4a 파일이었던 것이다 확장자를 m4a 로 바꿔준다 재생해보니 뭔 알 수 없는 소리가 들린다 포렌식에서 음성파일 관련 문제는 역재생해보는 것이 필수가 아닐까 싶다 audiotrimmer.com/kr/online-audio-reverser/ 이 사이트에서 역재생 할 수 있다 (아예 툴도 다운받을 수 있음) 변환해서 다운받고 들어보니 뭐를 수..