분류 전체보기 (183) 썸네일형 리스트형 [정보처리기사 실기] DOS 공격이란? ▶ DoS(Denial of Service)특정 서버에게 수많은 접속시도를 만들어 다른 이용자가 정상적으로 서비스 이용을 하지 못하게 하거나, 서버의 자원을 소진시켜서 원래 의도된 용도로 사용하지 못하게 하는 공격이다.-> DOS 공격은 1대의 공격자 컴퓨터에서 타깃 시스템에 악성 패킷을 보내는 방식으로 공격하고, 타깃 시스템 측에서 공격자의 주소를 확인하고 차단하면 더이상 공격을 하지 못하는 단점이 있따. -> DOS 공격에서 진화된 DDOS 공격은 완벽한 공격을 위해 공격자가 여러대의 컴퓨터를 감염시키고, 분산된 좀비 PC들을 사용해 타깃 시스템을 집중적으로 공격해서 서비스를 마비시키는 차이점이 있다. ▶ DoS 공격의 종류⦁ SYN 플러딩(Flooding) : TCP 프로토콜의 구조적 문제를 이.. [정보처리기사 실기] 프로그램 관리 : 분석자동화도구(CASE), 테스트, 일정관리 분석자동화도구(CASE) 유형설명상위 CASE(Upper CASE)계획수립, 요구분석, 기본설계 단계를 다이어그램으로 표현모델들 사이의 모순검사 및 모델의 오류 검증, 일관성 검증 지원자료흐름도 프로토타이핑 작성 지원 및 UI 설계 지원하위 CASE(Lower CASE)구문 중심 편집 및 정적,동적 테스트 지원시스템 명세서 생성 및 소스코드 생성 지원 테스트 순서 대분류중분류비고단위정적테스트 : 코드를 실행시키지않은 상태 동적테스트 : 코드를 실행시킨 상태 통합하향식 테스트 : 위의 모듈부터 테스트해서 내려옴(점진적 테스트)스텁 : 하향식으로 테스트하다가 밑에서 모듈이 만들어지지않았을 경우 사용하는 임시모듈상향식 테스트 : 밑의 모듈부터 테스트해서 내려옴(점진적테스트)드라이버 : 상향식으로 테스트하.. [정보처리기사 실기] 세션 하이재킹(Session Hijacking) , 암호화 알고리즘 ▶ 세션 하이재킹(Session Hijacking)이란?시스템 간 연결이 활성화 되어 있을 때, 유지되고 있는 상태를 중간에 가로채 해당 유저인 것 처럼 시스템에 접근하여 자원이나 데이터를 사용하는 공격을 의미합니다. 세션 하이재킹은 TCP라는 프로토콜을 사용할 때, 설계 상 보안을 고려하지 않아 발생하는 문제점을 이용하는 해킹 기법입니다.▶ TCP 세션 하이재킹서버와 클라이언트 통신 시 TCP의 시퀀스 넘버(순서제어)를 제어하는데 발생하는 문제를 공격하는 것입니다.공격자가 숫자를 이용해 상호간의 소통하는 것에 가짜 시퀀스 넘버를 만들어서 끼어들며 해킹하는 기법이며, 주로 서버와 클라이언트가 TCP를 이용해 통신하고 있을 때 RST패킷을 보내 일시적으로 TCP세션을 끊고 시퀀스 넘버를 새로 생성하여 인증.. [정보처리기사 실기] 암기해야하는 여러가지 기술 정리 JSON(제이슨) 웹과 컴퓨터 프로그램에서 용량이 적은 데이터를 교환하기 위해 데이터 객체를 속성-값의 쌍 형태로 표현하는 형식의 자바스크립트(JavaScript)를 토대로 개발되어진 형식 PICONET(피코넷) 여러 개의 독립된 통신장치가 UWB(UltraWideband) 기술 또는 블루투스 기술을 사용하여 통신망을 형성하는 무선 네트워크 기술로 네트워크를 구성하는 장비간에 사전에 네트워크의 정의와 계획 없이 상황에 따라 조정 프로토콜에 의하여 마스터와 슬레이브의 역할을 하면서 네트워크를 형성하며, 주로 수십미터 이내의 좁은 공간에서 네트워크를 형성하는 점과 정지 또는 이동하고 있는 장치를 모두 포함하는 특징을 가지고있다. (19년 2회 기출) Zigbee(지그비) 저속 전송속도를 갖는 홈오토메이션 및.. [정보처리기사 실기] 소프트웨어 아키텍처 ▶ 소프트웨어 아키텍처란?소프트웨어의 골격이 되는 기본구조이자, 소프트웨어를 구성하는 요소들간의 관계를 표현하는 시스템 구조 또는 구조체이다. (ex. 아파트의 기본 방 구조) 즉, 어떠한 문제를 해결할 때 문제를 해결할 수 있는 어떠한 공식이며 아키텍처를 통해 문제해결의 윤곽을 제시할 수 있다.** 소프트웨어 개발시 적용되는 원칙과 지침이며, 이해관계자들의 의사소통 도구 ▶ 소프트웨어의 기본 원리1) 모듈화(Modularity)소프트웨어의 성능을 향상 시키거나 시스템의 수정 및 재사용, 유지 관리 등이 용이하도록 시스템의 기능들을 모듈 단위로 나누는 것을 의미프로젝트의 재사용성 향상모듈 크기를 너무 작게 나누면 통합 비용 증가, 너무 크게 나누면 모듈 하나의 개발 비용 증가 2) 추상화(Abstract.. 01. 이것이 자바다 자바의 특징 1. 이식성이 높은 언어이다. 서로 다른 실행환경(리눅스, 윈도우, 유닉스 등)에서도 자바 실행 환경(JRE)가 설치되어있는 곳에선 별다른 컴파일 없이 실 행 가능하다. 2. 객체지향언어이다. 부품에 해당하는 객체를 먼저 만들고 이를 하나씩 조립 연결하여 전체 프로그램을 완성하는 기법을 객체지향프로그래밍이 라고 하며 자바는 100% 객체 지향 언어이다. 3. 함수적 스타일 코딩을 지원한다. 함수적 스타일 코딩은 대용량 데이터의 병렬처리, 이벤트 지향 프로그래밍에 적합하며 java8부터 함수적 프로그래밍을 위 한 람다식을 지원한다. 4. 메모리를 자동으로 관리한다. 객체 생성시 개발자가 아닌 자바가 자동적으로 메모리 영역을 찾아 할당한다. 이에 개발자는 메모리 관리의 수고스러움을 덜고, 핵심 .. POSTMAN postman이란? API 개발을 보다 빠르고 쉽게 구현할 수 있도록 도와주는 테스트 결과를 공유하며 API개발의 생산성을 높여주는 플랫폼이다. POSTMAN이 나오게 된 이유 post의 경우 html 클라이언트에서 form, 버튼, 이벤트, 이벤트 등록, 등등등... 백엔드를 구현하기 전 우선 만들어져야 하는 것들이 있다. 그럼 백엔드가 프론트엔드가 구현되기를 기다려야하는 상황이 발생되는데 이러한 불편함을 개선하기 위해 postman 탄생되었다. POSTMAN 메뉴 설명 Collections : 요청할 api들을 만들고 관리하는 공간 APIs : 포스트맨에 정의된 컬렉션 및 환경 변수, Mock Servers를 버전 별로 관리할 수 있는 기능 Environments : api에서 사용할 환경 변수들을 .. DB의 프로시저란? 프로시저란? 프로시저란 SQL Server에서 제공하는 프로그래밍 기능이다. 쿼리문을 마치 하나의 메서드 형식으로 만들고 어떠한 동작을 일괄적으로 처리하는 용도로 사용된다. 프로시저 사용 이유 1. 효율성쿼리문을 작성하다보면 여러 개의 칼럼을 조회하고 여러 개의 테이블을 조인하고 거기에 조건까지 넣어줌으로써 하나의 쿼리를 만드는데 엄청나게 긴 쿼리문이 생길 수 있다. 이러한 여러개의 쿼리를 사용할 때마다 긴 쿼리문을 써야 한다면 엄청나게 불편할 텐데 이를 프로시저에 저장하고 저장된 프로시저를 호출하여 프로그래밍을 하는것이 훨씬 효율적입니다.즉, 하나의 요청으로 여러 SQL문을 실행할 수 있는 것이다. 2. 네트워크 소요 시간을 줄일 수 있다.만약 동일한 쿼리를 1000번 2000번 호출하는 것보다 S.. Spring_JPA[2](영속성, 영속성 컨텍스트) 영속성이란? 영속성(persistency)이란 영속성이란 JPA를 이해하는데에 가장 중요한 용어로서 데이터를 영구적으로 저장하는 것을 의미하며 따라서 영속성을 갖지 않는 데이터는 단지 메모리에서만 존재하기 때문에 프로그램을 종료하면 모두 잃어버리게 된다. 영속성 컨텍스트란? 영속성 컨텍스트를 직역하자면 데이터를 영구적으로 저장하는 환경 정도로 해석될 수 있다. "Entity를 영구 저장하는 환경"이라는 뜻도 가지고 있는 영속성 컨텍스트는 EntityManager를 통해 DB에 데이터를 저장한다. //설정파일 읽어옴 EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEn.. Spring_JPA[1](ORM, JPA설정방법, 방언, JPQL) ORM이란? Object-relational mapping이라고 하여 객체 관계 매핑이라고도 부른다. 기존 Mybatis는 select 구문 하나가 바뀌면 연결되는 여러 쿼리들 그리고 java까지 수정을 해야만했다. 그러나 스프링프레임워크에서 ORM기술을 사용하면 ORM 프레임워크가 중간에서 매핑해주기에 객체는 객체대로, 관계형 데이터베이스는 관계형 데이터베이스대로 설계가 가능하다. 우리가 일반적으로 알고있는 애플리케이션 Class와 RDB(Relational DataBase)의 테이블을 매핑(연결)한다는 뜻이며, 기술적으로는 어플리케이션의 객체를 RDB 테이블에 자동으로 영속화 해주는 것이라고 보면된다. 즉, ORM은 어플리케이션과 DB를 연결해주는 기술이라고 할 수 있는데 그 중에서 Java언어 OR.. 이전 1 2 3 4 5 6 ··· 19 다음