본문 바로가기
반응형

전체 글 목록571

[네트워크] 네트워크 보안 Q) 대칭키와 비대칭키에 대해 설명해주세요. A) 대칭키는 암호화, 복호화에 동일한 키가 사용되는 경우입니다. 이 경우 미리 약속된 대칭키를 사용해야하기 때문에 대칭키를 안전하게 잘 전달하는 것이 중요한 문제가 됩니다. 비대칭키는 암호화할때 사용하는 키와 복호화할 때 사용하는 키가 다른 경우입니다. 암호화 할 때는 사람들에게 공개된 공개키를 사용하고 복호화 할 때는 본인만 알고 있는 비밀키를 사용합니다. 철수가 영희에게 암호문을 보내고자 한다면 철수는 데이터를 영희의 공개키로 암호화 하여 보내야 합니다. 그러면 영희는 영희의 비밀키로 복호화하여 데이터를 확인합니다. 비대칭키 방식은 대칭키 방식에 비해 암호화와 복호화가 매우 복잡하다는 단점을 갖고 있습니다. 그래서 대칭키 방식과 비대칭키 방식을 적절히 혼.. 2021. 11. 13.
[알고리즘] 증가하는 최장 부분 수열(LIS) https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net LIS라는 명칭으로 잘 알려진 문제다. 결론부터 얘기하면 DP로 접근하여 풀 수 있다. 아래는 나의 답안 코드다. n = int(input()) nums = list(map(int, input().split())) lst = [0 for _ in range(n)] for i in range(n): max_val = 0 .. 2021. 11. 12.
[네트워크] 네트워크 계층과 데이터링크 계층 Q) 라우터가 무엇인가요? A) 라우터는 크게 두 가지 역할을 담당합니다. 패킷을 받아 목적지 주소를 확인하여 포워딩 테이블을 통해 목적지 주소에 맞는 링크로 보내주는 역할을 포워딩이라고 합니다. 그리고 이 포워딩 테이블을 만들어주는 기능을 라우팅이라고 합니다. Q) IP 주소에 대해 설명해주세요. A) IP 주소는 네트워크 인터페이스 카드를 지칭하는 주소입니다. 4버전에서 IP주소는 32비트 주소체제를 사용하고 나타낼 때는 보기좋게 8비트씩 끊어서 10진수로 나타냅니다. IP 주소를 규칙없이 배정하면 포워딩 테이블이 매우 복잡해지기 때문에 IP 주소는 계층화시켜 사용합니다. 네트워크 아이디(서브넷 아이디), 호스트 아이디로 나누고 서브넷 마스크를 통해 이 둘을 구분합니다. 예전에는 class 방식으로 .. 2021. 11. 9.
[네트워크] 응용계층과 전송계층 Q) 패킷 단위 데이터를 전송할 때 발생하는 딜레이 종류와 그에 대한 해결법을 설명해보세요. A) processing delay는 패킷에 문제가 있는지, 목적지가 어딘지 등을 확인하는데 소요되는 시간입니다. 라우터의 성능 개선을 통해 이 딜레이를 줄일 수 있습니다. queueing delay는 유저가 많을 때 데이터가 바로 라우터를 통해 빠져나가지 못하고 잠시 임시 버퍼에 저장하는데 이 큐에서 대기하는 시간을 뜻합니다. 사용자가 과하게 몰리지 않도록 하면 딜레이를 줄일 수 있습니다. transmission delay는 패킷의 맨 앞 비트부터 마지막 비트까지 뿜어져 나가는데 걸리는 시간입니다. 이때 전송 통로가 크면 클수록 소요 시간이 짧아지기 때문에 케이블을 넓히는 방법으로 딜레이를 줄일 수 있습니다. .. 2021. 11. 9.
[운영체제] 파일 시스템 & 디스크 관리 Q) 파일 보호는 왜 필요하며 어떻게 이루어지나요? A) 프로세스의 경우 제각각의 메모리를 갖고 있고 자기 자신만이 접근이 가능하기 때문에 read/write에 관한 접근 명령만 관리했습니다. 그러나 파일의 경우 여러 사용자가 사용할 수 있기 때문에 각 파일에 대해 누구에게 어떤 권한을 허용할 것인가가 필요합니다. Access control Matrix는 각 파일마다 사용자별로 어떤 접근 권한을 갖고 있는지 표시해놓은 행렬입니다. 하지만 공간적인 낭비를 이유로 선호되지 않는 방법입니다. Grouping 방법은 전체 사용자를 owner, group, other로 구분한 뒤 각 파일에 대해 세 그룹의 접근 권한(read, write, execution)을 3비트씩 표시합니다. Q) 디스크에 파일을 저장하는 .. 2021. 11. 8.
[운영체제] 메모리 관리 & 가상 메모리 Q) 연속할당과 불연속할당의 차이를 설명해주세요. A) 메모리의 낮은 주소 영역엔 커널이 상주해있고 메모리의 높은 주소 영역엔 사용자 프로그램이 올라가게 됩니다. 이때 사용자 프로그램을 할당하는 방식에 따라 연속할당과 불연속할당으로 나눌 수 있습니다. 연속할당은 다시 고정 분할 방식과 가변 분할 방식으로 나뉩니다. 고정 분할 방식은 물리적메모리를 미리 몇 개의 분할로 나누어 그 곳에 프로그램을 적재하는 방식입니다. 이 방법은 내부, 외부 조각이 모두 발생할 수 있습니다. 가변 분할 방식은 프로그램 크기를 고려하여 분할의 크기와 개수가 동적으로 변하는 방식입니다. 이 방법은 외부조각이 발생할 수 있으며 프로그램을 어느 홀에 적재시킬지 결정하는 문제가 추가로 발생합니다. 불연속할당은 하나의 프로세스를 여러 .. 2021. 11. 8.
반응형