👋 Hello, I am Seung-ho Ham

🧑🏻‍💻 A Developers who create code that changes the world

전체보기 113

[IT] 보안 - 공격 수법

DoS(Daniel of Service attack 서비스 방해 공격) : 웹 사이트에 집중 엑세스 공격을 하여 웹 사이트를 다운시키는 것 DDoS(Distributed DoS 분산형 DoS) : Dos는 일대일 공격이지만 DDoS는 일대다 공격이다. 분산된 여러 공격자가 하나의 웹 사이트를 다운시킨다. 대기형 공격 : 많은 사용자가 엑세스하는 사이트를 대상으로 취약점을 찾아 사이트를 변조해 바이러스를 감염시킨다. 표적형 공격 : 특정 조직이나 기업을 표적으로 한 공격 드라이브 바이 다운로드 : 브라우저 등을 경유하여 사용자의 PC에 몰래 그리고 강제적으로 멀웨어를 다운로드시켜 설치하는 공격방법 버퍼오버플로 : 소프트웨어에 대한 입력을 저장하는 영역(버퍼)을 넘치게 하는 것(오버플로)으로 시스템에 의도하..

카테고리 없음 2021.05.22

[IT] 보안 - 공격 해석 방식

동적 해석 : 멀웨어를 실제로 작동시켜 그 움직임을 따라감으로써 멀웨어가 어떤 나쁜 행위를 하는지 해석하는 방법 정적 해석 : 멀웨어를 실행시키지 않고 실제로 피해를 입은 컴퓨터에 남겨진 파일이나 메모리에 잔존하는 멀웨어 관련 정보등의 내용을 보고 해석하는 방법 포렌식 : 컴퓨터이 잔존하는 정보를 수집하여 해당 컴퓨터에서 무슨 일이 일어났는지를 나타내는 정보를 특정하고, 그 내용을 조사하는 작업 SIEM(Security and Event Management) : 각종 로그를 총동원하여 해석하고, 보안상 위협 되는 사건을 감지하는 장치

카테고리 없음 2021.05.21

[IT] 핀테크와 테크핀

핀테크(FinTech) 금융과 기술의 합성어 금융업체가 아이티 기술을 도입해 사업이나 서비스를 출시하는 것 주체 : 금융업체 간편결제서비스, 온라인자산관리 서비스 등 테크핀(TechFin) 기술 중심의 기업에서 기술을 중심으로 금융 서비스를 하는 것 (인공지능을 사용한 금융서비스 등) 주체 : 기술중심기업 중국 알리바바 그룹의 마윈회장이 처음 제시 "테크핀은 ICT바탕 위에 금융시스템을 구축한 서비스" 카카오뱅크나 카카오페이 네이버페이 토스 등이 테크핀에 해당 네이버파이낸셜의 네이버페이 엔트파이낸셜과 협업하고 있는 카카오페이 sk텔레콤과 손잡은 대구은행, kdb산업은행 은행권도 디지털 전환을 시도하기 위해 노력하고 있다. 테크핀의 간편 송금 간편 결제가 활성화 되자 간편이체 등의 서비스를 만들고 있다.

카테고리 없음 2021.05.20

[DEV] CSS선택자2

가상 클래스 선택자 (Pseudo-Classes) Hover : 선택자 x 요소에 마우스 커서가 올라가 있는 동안 선택 .x { width: 100px; height: 10px; background-color: orange; transition 1s; (자연스러운 변경) } x:hover { width: 300px; } active : 선택자 x 요소에 마우스를 클릭하고 있는 동안 선택 x:active { } focus : 선택자 x요소가 포커스 되면 선택(포커스가 가능한 요소만 적용가능 ex. input select 등 , html에서 포커스 하고자 하는 요소에 tabindex="-1"을 넣어주면 포커스가 가능하다. ) x:focus{ } first-child : 선택자 x가 형제 요소 중 첫째라면 선..

카테고리 없음 2021.05.19

[DEV] CSS 선택자1

CSS 선택자 종류 기본선택자, 복합선택자, 가상 클래스 선택자, 가상요소 선택자, 속성 선택자 기본 선택자 전체 선택자(*) 에스터리스트 : 모든요소를 선택 * { } 태그 선택자 : 태그이름이 x인 요소 선택 x { } 클래스 선택자 : HTML class속성의 값이 x인 요소 선택 .x{ } 아이디 선택자 : HTML id 속성의 값이 x인 요소 선택 #x{ } 복합선택자 일치 선택자 : 선택자 x와 y를 동시에 만족하는 요소 선택 x.y{ } 자식 선택자 : 선택자 x의 자식요소 y 선택 x > .y{ } 하위 선택자 : 선택자 x의 하위요소 y선택(띄어쓰기가 선택자의 기호) x .y{ } 인접 형제 선택자 : 선택자 x의 다음 형제요소 y 하나를 선택 .x + y{ } 일반 형제 선택자 : 선택..

카테고리 없음 2021.05.18

[IT] SSH(Secure SHell)

시큐어 셸(Secure SHell, SSH)은 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용프로그램 또는 그 프로토콜을 가리킨다. 기존의 rsh, rlogin, 텔넷 등을 대체하기 위해 설계되었으며, 강력한 인증 방법 및 안전하지 못한 네트워크에서 안전하게 통신을 할 수 있는 기능을 제공한다. 원래는 telnet(텔넷)이라는 원격 접속 방식을 사용했는디 암호화를 지원하지 않아서 ssh를 사용하게 되었다. 기본적으로는 22번 포트를 사용한다. SSH는 암호화 기법을 사용하기 때문에, 통신이 노출된다고 하더라도 이해할 수 없는 암호화된 문자로 보인다. 대칭암호화, 비대칭암호화 해시함수의 임호화 방법이 있다. SSH의 주요 기능..

카테고리 없음 2021.05.17

[IT] 파일 전송 프로토콜(File Transfer Protocol)

파일 전송 프로토콜(File Transfer Protocol)의 약자로 tcp/ip 네트워크 상에서 컴퓨터들이 파일을 교환하기 위해 1971년에 최초로 공개된 통신 규약이다. 네트워크에 연결된 컴퓨터끼리 데이터를 원활하게 교환하기 위한 목적으로 개발되었다. 파생형으로 FTP에 TLS 프로토콜이 적용된 FTPS가 있으며, 비슷한 기능을 제공하는 SSH 프로토콜 기반의 SFTP가 있다. SFTP는 FTP라는 키워드를 포함하고 있으며 용도 또한 같으나 FTP와 기술적인 연관성은 없는 완전히 다른 프로토콜임을 주의해야 한다. FTP는 비밀번호가 평문으로 전송되어 보안성이 매우 떨어지므로 FTPS를 사용하는걸 적극 권장한다. FTPS의 경우 PROT P를 사용하면 데이터 전송까지 암호화되어 높은 보안성을 지니며,..

카테고리 없음 2021.05.16

[IT] 보안(Security)

보안의 3대 요소 기밀성(Confidentiality) : 허가받은 사람만 정보에 접근할 수 있는 것 무결성(Integrity) : 정보가 본래 상태에서 변조되지 않았고 신뢰할만한 상태 가용성(Availability) : 정보에 접근할 수 있는 사람은 언제든지 그 정보에 접근할 수 있는 것 암호 어떤 데이터를 외부인이 간단히 읽을수 없도록 하기위한 수단 암호화 : 평문을 외부인만 읽을 수 없게 하는 것 복호화 : 암호화된 데이터를 원래대로 돌리는 것 공통키 암호화 : 데이터의 암호화와 복호화에 똑같은 키를 사용한다. 공개키 암호화 : 데이터의 암호화와 복호화에 다른 키를 사용한다. 암호는 어떠한 암호든 시간이 지나면 반드시 풀린다. 단, 현재 사용하고 있는 암호들의 모든 조합을 시험하려면 방대한 시간과 ..

카테고리 없음 2021.05.15

[DEV] TypeScript

타입스크립트(TypeScript)는 자바스크립트의 슈퍼셋인 오픈소스 프로그래밍 언어이다. 마이크로소프트에서 개발, 유지하고 있으며 엄격한 문법을 지원한다. C#의 리드 아키텍트이자 델파이, 터보 파스칼의 창시자인 Anders Hejlsberg가 개발에 참여한다. 클라이언트 사이드와 서버 사이드를 위한 개발에 사용할 수 있다. 타입스크립트는 자바스크립트 엔진을 사용하면서 커다란 애플리케이션을 개발할 수 있게 설계된 언어이다. 자바스크립트의 슈퍼셋이기 때문에 자바스크립트로 작성된 프로그램이 타입스크립트 프로그램으로도 동작한다. 타입스크립트에서 자신이 원하는 타입을 정의하고 프로그래밍을 하면 자바스크립트로 컴파일되어 실행할 수 있다. 타입스크립트는 모든 운영 체제, 모든 브라우저, 모든 호스트에서 사용 가능한..

카테고리 없음 2021.05.14

[DEV] 웹애플리케이션의 구성요소

웹 애플리케이션의 구성요소 HTML CSS JavaScript HTML UI를 기본적으로 만들고, CSS는 비주얼적인 요소를 만들며, JS는 동적인 프로그램을 만든다. 문서, 정보만 주는 목적으로 만드려면 HTML, CSS만 있어도 되며 그냥 웹페이지 라고 할 수 있다. 웹 애플리케이션이 되기 위해선 정적으로 동작하기 위한 자바스크립트가 반드시 필요하다. 웹앱을 실행시키는 것이 브라우저이며, 브라우저는 런타임 환경을 제공하는 환경이다. Node.js 라는 앱이 나오면서 브라우저가 아니더라도 자바스크립트를 실행할 수 있게 되었다. 자바스크립트가 실행되면서 필요한 UI를 생성해내는 방식과 웹서버에서 HTML이 만들어져서 브라우저로 전송하는 방법이 있다. HTML을 주도적으로 만들어서 UI로 표현하는 것을 클..

카테고리 없음 2021.05.13

[DEV] 웹앱 프로그래밍 학습 방향

프론트엔드는 가장 변화가 심한 새로운 것들이 계속 등장하는 분야 (피로감이 높다.) 기술의 세가지 유형 변하지 않는 기술 네트워크 운영체제 컴퓨터시스템 논리학 대수학 느리게 변하는 기술 프로그래밍 언어 프로그래밍 패러다임 자료구조 보안 알고리즘 빠르게 변하는 기술 디자인패턴 프레인워크 라이브러리 UX UI 상대적으로 느리게 변화하는 기술들을 익혀놓으면 빠르게 변화하는 기술들을 빠르게 꾸준히 습득할 수 있다. 프로그래밍 역량 4가지 1. 일관성 2. 유연성 3. 확장성 4. 독립성 빠르게 배워야하는 것 네트워크와 OS, CS 등과 같은 기초적인 시스템이 어떻게 이루어져 있는지 배운다. 나중에(상대적으로 느리지만 반드시)배워야하는 것 논리학과 대수학 등의 학문적 이론(간접적 도움을 주는)들은 천천히 배우되 ..

카테고리 없음 2021.05.12

[DEV] 반응형 웹페이지

반응형 웹 디자인(responsive web design, RWD)이란 하나의 웹사이트에서 PC, 스마트폰, 태블릿 PC 등 접속하는 디스플레이의 종류에 따라 화면의 크기가 자동으로 변하도록 만든 웹페이지 접근 기법을 말한다. 디바이스의 디스플레이의 종류에 반응하여 그에 맞도록 적절하게 UI 요소들이 유기적으로 배치되도록 설계된다. 반응형 웹 디자인을 하기 위해서는 일반 웹 디자인과 다른 특별한 기법들이 사용된다. 이는 웹 디자인에 대한 높은 이해도와 새로운 레이아웃 등의 개념을 필요로 한다. - 반응형 웹 디자인을 할 때 필수적인 기법들 미디어 쿼리 미디어 쿼리는 CSS2부터 시작되어 CSS3에서 본격적으로 쓰이기 시작한 웹 기법이다. 디바이스의 폭이나 높이 등의 정보를 가지고 스타일을 개별적으로 줄 ..

카테고리 없음 2021.05.11

[DEV] 페이지 방문자 수 카운트

홈페이지에 오늘 방문자 수, 어제 방문자 수, 전체 방문자 수가 카운트되어 보여지도록 되어있는데 이 카운트 방식에 문제가 있었다. 홈페이지의 어느 곳에 들어가든 페이지가 바뀌게 되면 +1로 카운트가 되고 그 페이지에서 새로고침을 해도 +1 카운트가 된다. 그냥 페이지에 접속 하기만 해도 카운트가 되는 방식으로 소스가 짜여져 있는 것 이었다. 같은 사람이 여러번 접속해도 카운트가 안되게 하려면 접속하는 기기의 IP가 중복인지 확인을 하는 방법이 있고, 접속자가 쿠키를 가지고 있다면 쿠키가 저장된 시간과 현재의 시간을 비교하여 하루가 지났다면 방문자수를 카운트 해주고 쿠키 저장 시간을 바꿔주는 방법이 있다. 하지만 접속자가 쿠키허용을 하지 않았을 경우에는 어떻게 해야할지 모르겠다. 가장 좋은 방법은 IP를 ..

카테고리 없음 2021.05.10

[DEV] HTML 블록요소와 인라인요소

요소과 화면에 출력되는 특성을 크게 두가지로 구분한다. 인라인(inline)요소와 블록(block)요소로 나눠진다. 먼저 인라인(inline)요소는 글자를 만들기 위한 요소들이고 블록(block)요소는 상자(레이아웃)를 만들기 위한 요소들이다. 대표적인 inline요소는 태그 이다. 이 태그는 본질적으로 아무것도 나타내지 않는 콘텐츠 영역을 설정하는 용도이다. (요소가 수평으로 쌓인다.) 포함한 콘텐츠 크기만큼 상하좌우 크기가 자동으로 줄어든다. 또한 요소의 가로(width), 세로(height)의 너비를 지정하는 CSS속성을 사용하여도 반응이 없다. 요소의 외부 여백(margin)속성과 내부 여백(padding)속성은 사용 가능하다. Block요소는 대표적으로 태그가 있다. 블록요소는 요소가 수직으로 ..

카테고리 없음 2021.05.09

[DEV] HTML자주 사용하는 태그

HTML은 구조를 만드는 역할을 하므로, 각 태그(요소)가 어떤 역할을 하는지, 어떤 속성을 하는지만 기억해두면 된다. : 구분이라는 뜻을 가진 Division을 뜻하며 특별한 의미가 없는 구분을 위한 요소이다. ~ : 제목의 heading을 의미한다. (1이 가장 큰 글씨이며 6이 가장 작은 글씨이다.) : paragraph 를 뜻하며, 문장을 의미하는 요소이다. : 이미지 삽입 요소이다. (src와 alt는 필수 속성이다.) 이미지가 출력되지 않으면 alt의 글자가 출력된다. 이러한 상황을 "엑박(엑스박스)떴다." 라고 한다.) : Unordered List로 순서가 필요없는 목록의 집합이다. : List Item으로 목록 내의 각 항목이다. : Anchor을 뜻하며 속성인 href의 값의 하이퍼 링..

카테고리 없음 2021.05.08

[DEV] 홈페이지 슬라이드바 오류

홈페이지 상단에 마우스를 갖다 대면 사이트맵들이 내려오는 방식으로 소스가 짜여져 있었는데 여기서 마우스를 갖다 댈 때 슬라이드 바가 올라갔다 내려갔다 무한 반복하는 현상이 일어났다. 이 현상을 해결하기 위해서 소스를 훝어보았다.이 부분은 제이쿼리를 사용하여 작성이 되어있었다. 왜 이런 문제가 생기는지 소스를 보며 생각해보았다. 이미지 위에 커서를 올리면 slide.down("fast"); 가 실행되며 사이트맵이 내려오고 이미지에 커서를 떼면 slide.up("fast")이 실행되며 사이트맵이 올라가는데 사이트맵이 내려왔을 때 커서를 떼고 기다리면 사이트맵이 올라갔다가 다시 내려오면서 반복한다. 이때 커서가 올라가있지도 않은데 사이트맵이 내려오는걸 보면 내려온 사이트맵도 이미지로 인식하여 무한반복 되는 것..

카테고리 없음 2021.05.07

[IT] XML과 HTML의 차이점

eXtensible Markup Language의 약어이다. W3C에서 여러 특수 목적의 마크업 언어를 만드는 용도에서 권장되는 다목적 마크업 언어이다. 1996년 제안된 언어로, 기존의 HTML과 달리 웹상에서 구조화된 문서를 전송가능하도록 설계되었다. 이게 무슨 뜻이냐면 예를 들어 HTML에서는 CPU 2.83GHz라는 데이터를 표기할 때 어디부터가 데이터 명이고 어디부터가 실제 데이터인지 표시할 수 있는 마땅한 방법이 없다. 이런 문제를 해결하기 위해 XML을 이용하면 어디부터 어디까지가 데이터 이름이고 어디부터 어디까지가 실제 데이터이며 어디부터 어디까지가 데이터 단위인지도 표현이 가능하다. 즉, 데이터에 의미를 부여하는 메타데이터를 기술할 수 있다. XML은 바로 이러한 목적으로 탄생했다. 위의..

카테고리 없음 2021.05.06

[DEV] JavaScript + jQuery

jQuery는 HTML 속 클라이언트 사이드 스크립트 언어를 단순화하도록 설계된 브라우저 호환성이 있는 자바스크립트 라이브러리이다. 존 레식에 의해 2006년 뉴욕 시 바캠프(Barcamp NYC)에서 공식적으로 소개되었다.MIT라이선스(소프트웨어 사용권)를 가진 자유 오픈 소프트웨어. 무지하게 쉽고 간편하다 'write less, do more.'가 모토로서 비프로그래머인 웹디자이너들도 어렵지 않게 이해할 수 있을 만큼 쉬운 편이다. DOM 구조와 CSS에 대한 지식만 있다면 애니메이션 같은 건 바로 이해가 가능할 정도다. jQuery는 Behavioral model(행동 모델)에 기초한 아키텍처를 따른다. 특히 jQuery는 메서드 체이닝을 통해 DOM 엘리먼트를 조작한다. jQuery의 기능DOM ..

카테고리 없음 2021.05.05

[블록체인] 이더리움과 이더리움클래식

이더리움은 2015년 7월 30일 Vitalik Buterin이 개발하였다. 비탈릭 부테린은 가상화폐인 비트코인에 사용된 핵심 기술인 블록체인에 화폐 거래 기록뿐 아니라 계약서 등의 추가 정보를 기록할 수 있다는 점에 착안하여, 전 세계 수많은 사용자들이 보유하고 있는 컴퓨팅 자원을 활용해 이더리움 가상머신(EVM)을 만들고, 이 플랫폼을 이용하여 SNS, 이메일, 전자투표 등 다양한 정보를 기록하는 시스템을 창안했다. 2015년 7월 30일 이더리움 서비스가 시작되었고 2016년 4월 이더리움 블록체인 기반의 The DAO 펀드를 구성하고 1.5억 달러에 해당하는 투자자금을 모았다. 하지만 2016년 6월 The DAO에 대한 해킹 사건이 발생했다. 이후 부득이 기존 이더리움에 대한 하드포크(Hard ..

카테고리 없음 2021.05.04

[IT] 사물인터넷(Internet Of Things) 주요기술/적용분야

사물인터넷(IoT)는 인터넷에 연결되어 그 정보를 활용하여 사물의 본연의 기능을 더 충실히 행하도록 하는 기술을 말하며, '인터넷을 기반으로 모든 사물을 연결하여 사람과 사물, 사물과 사물 간의 정보를 상호 소통하는 지능형 기술 및 서비스'라고 정의하고 있다. - 사물인터넷 4대 주요기술유무선통신, 네트워크 인프라서비스, 인터페이스보안(정보보안)센싱 - 사물인터넷 적용 분야헬스케어(건강 보조 도구, 혈당 측정, 운동량)홈케어(스마트 거울, 조명/온도/습도 자동제어)자동차(텔레매틱스, 무인자동차)산업(원격공장 자동화, 원격 시설물 관리)스마트시티(교통 관제, 스마트주차, 스마트 횡단보도)에너지(스마트 그리드, 중앙 전력 통제)안전(재해•재난 감지, 조기 대응)환경(날씨 및 온도 관리) - 사물인터넷 기반 ..

카테고리 없음 2021.05.04
반응형