Transcript 인터넷과 전자 상거래
전자 상거래 관련 기술
인터넷과 전자 상거래
전자 화폐의 개념
일반적으로 지금까지 동전이나 종이와
같이 실물 형태의 “돈”으로 존재하던
화폐를 디지털 “정보”로 바꾼 것
•
•
•
•
Electronic money
Cyber money
Ecash
Virtual currency
전자 화폐의 종류
가치 저장형
• IC 칩을 내장한 플라스틱 카드에 화폐 가치를
저장한 다음 필요할 때 인출하여 사용하는 것
지불 지시형
• 미리 신용 카드 번호 등을 입력한 후 암호화된 카드
정보를 발행사의 중개로 네트워크 상에서 결제하는
것
네트워크형
• 화폐의 가치를 인터넷 등과 같은 네트워크를 통해
주고 받는 것
가치 저장형 전자 화폐 몬덱스(Mondex)
IC 칩에 암호화된 전자 현금을 저장하고
있는 스마트 카드로서 현금과 마찬가지
로 일반 상점에서 개인 간 교환 수단으로
사용
사용을 위해서는 발행 은행에 계좌를 개
설해야 하고, 특수 장비 필요
월릿, 잔액 판독기, ATM, 전화, 전용 터미
널
몬덱스 구성도
은행
2. 현금 충전
(IC 카드)
1. 계좌 설정
6. 실제 현금
5. 현금 이전
(IC 카드)
4. 현금 이전
(IC 카드)
사용자
3. 상품
상인
몬덱스 장비
몬덱스 장비
몬덱스 장비
몬덱스 장비
몬덱스 장비
몬덱스 전화
몬덱스 장비
몬덱스 장비
POS
몬덱스 참여 집단
판권 수혜자
발행자
회원
생산자
상인
카드 소지자
지불 지시형 전자 화폐 사이버캐시
8. Purchase Information
Merchant
Customer
1. Encrypted credit card number
& digital signature
2. pass
7. OK
Monthly
purchase
statement
Encryption
Software
Third Party
processor
(CyberCash)
3. Check for credit card
authenticity and sufficient funds
4. verify
Customer’s
Bank
5.Authorize
6.OK
Credit card processors
네트워크형 전자 화폐 - 이캐시
우리나라의 전자 화폐
이카드
이코인
아이캐시
한국형 전자 화폐
e카드
사이버카드사에서 99년 10월초에 출시
본인 인증 방법으로 사용하는 사용자
번호 및 비밀 번호를 카드에 저장 사용
개인 정보 영역뿐 아니라 최근
50~100건의 거래 내역이 자동으로 기록
시스템 패키지는 e카드 1장, e카드
리더기 1대, e카드맨 프로그램으로 구성
이코인
99년 9월 출시한 상품권 이용 방식의
인터넷 전자 상거래 소액 결제 시스템
플라스틱 카드에 기재한 고유 번호를
입력하여 서버와의 인증, 암호화를 통해
전자 지불 및 카드 확인 가능
1원 단위 결제 가능, 완벽한 익명성 보장
카드 종류(※)
• 기본 카드, 청소년용 카드, 성인 전용 카드
이코인 카드 동작 방법
이코인 카드 판매점에서 카드 구입
이코인 제휴 사이트를 방문해서 유료
컨텐츠 선택
이코인 결제 페이지에서 16자리 카드
번호 입력
이코인 서버에서 이용 요금 결제 후 구매
내역 확인
선택한 콘텐츠 이용
(※)
아이캐시
소액 지불 결제 수단으로 활용할 수 있는
네트워크형 전자 화폐
온라인 전자 지갑 및 IC 카드, 종이
상품권 등 다양한 형태로 사용
1만원에서 10만원까지 1만원 단위로
발행
신용 카드 연계 사용 가능
(※)
한국형 전자 화폐(KEP)
한국 은행과 금융 결제원이 시중 은행 등과
공동으로 1997년부터 준비해 온 국내 독자적인
전자 화폐
접촉식과 비접촉식을 동시에 구현한 콤비 카드
형태로 진행
전자 화폐 명칭은 K-Cash로 결정
2000년 7월부터 서울 강남구 역삼동을
시작으로 전국 확대 시행
국제 표준과 호환 불가능
(※)
기타 전자 화폐
이니시스(http://www.inicard.com/)
• 인터넷 쇼핑몰에서 사용하는 신용 카드·직불 카드·선불 카드·상품권
등의 기능을 묶은 통합 카드
아이민트(http://www.imint.co.kr/)
• 1원 단위까지 결제할 수 있는 소액 전용 결제 시스템
이지캐시(http://www.kicc.co.kr/)
• 인터넷 상점·사용자를 대상으로 선불 카드처럼 일정 금액을 가상의
카드에 충전시켜 두었다가 인터넷 상거래에 적용
올앳(http://www.allat.co.kr/)
• 쇼핑 시 아이디와 비밀 번호만으로 결제가 가능한 전자 결제 시스템
CDCash(http://www.cdcash.co.kr/)
• CD-ROM으로 구동되는 전자 화폐
하이브리드 카드(http://www.hybridcard.com/)
• 마그네틱과 CD를 이용해 인터넷 쇼핑몰은 물론 실물 상점에서
사용할 수 있는 하이브리드형 전자 신용 카드
전자 화폐의 특성
독립성: 보안성이 물리적인 존재에 의지해선 안됨
보안성: 재활용 불가능해야 함
사적 비밀 보장(추적 불가): 사용자의 사적 비밀 보호 사용자의 거래 관계 추적 불가
온라인이 아닌 상태의 지불: 판매자가 네트워크
접속(전송 수단)에 의존해선 안됨
전환 가능성: 타인에 이전 가능, 전송 시 송신자의
신원이 화폐에서 완전 분리되어야 함
가분성: 작은 금액으로 나누어지고 다시 모을 수도
있어야 함
전통적인 결제 방법의 한계
편리성 부족
보안성 미흡
제한적 적용 범위
이용의 불편성
소액 단위 거래 지원 불가
전자 지불 시스템의 의의
전자 상거래에서 필수적인 요소로
구매자와 판매자 사이에서 발생하는
온라인상의 화폐 교환
전자 결제를 이용하는 주요 요인
• 기술적 비용의 감소
• 운용 비용의 감소
• 온라인 상거래의 증가
전자 결제 시스템의 등장
전신환의 활용에서부터 출발
전자 자금 이체(EFT) 시스템의 등장
대부분의 전자 지불 시스템은 온라인
상거래 지원을 위해 고안
전자 상거래 지불 방식의 변천
주문은 인터넷 → 지불은 기존 방식
보안을 고려하지 않은 금융 정보 송수신
암호 방식을 이용한 금융 정보 교환
신뢰성 있는 브로커에 의한 지불
전자 화폐에 의한 지불
전자 지불 시스템 참가자
지불인(payer)
• 소비자, 고객, 구매자
수취인(payee)
• 판매자, 상점
발행사(issuer)
• 지불인의 거래 은행
매입사(acquirer)
• 수취인의 거래 은행
지불 시스템의 역할
지불인으로부터 수취인에게 가치 전송
지불이 취소되는 경우 가치의 반환
법정 화폐와 전자 화폐의 상호 전환
외환 거래에서 어떤 종류의 전자적
가치를 다른 종류의 전자적 가치로 전환
지불 시스템의 유형
지불인과 수취인 간의 통신
이체 시점
온라인·오프라인
익명성(anonymity)
데이콤 eCredit
First Virtual
전자 우편에 바탕을 둔 시스템
특별한 사용자 소프트웨어 없음
서비스 방식
• FV 사에 계좌를 개설하고 비밀, 이용자 번호(ID)를 받는다.
• 물품 구매시 ID를 담은 전자 우편을 판매자에게 보낸다.
• 판매자는 그 번호를 FV사에 보내어 고객의 신분 확인을
요청하고 FV사는 다시 고객에게 확인하에 물건 구매 의사를
확인하여 준다.
기술적으로 인터넷을 전혀 사용하지 않는다.
인터넷과 병행하는 오프라인 시스템으로 보안 문제로
인터넷 사용을 기피하는 사용자에게 많은 호응을 받고
있음
NetBill
카네기 멜론 대학과 비자 인터내셔널 사가
공동 운영
잡지 및 신문 기사, 책, 소프트웨어 및 비디오
클립과 같은 정보를 저렴한 비용으로 인터넷을
통해 제공할 수 있는 인터넷 대금 결제 시스템
서비스 방식
• 1. 정보를 원하는 고객은 NetBill 계좌에 일정 금액
예치
• 2. 사용자가 정보를 구입하면 NetBill은 그 계좌에서
금액 인출
전자 지불의 특징
신용 카드 모형에 기반을 둔 시스템
• 사이버캐시
• 퍼스트 버추얼
전자 수표 모형에 기반을 둔 시스템
• 넷빌
• 넷체크
전자 지불 시스템의 영향
소비자
• 편리성
• 안전성
판매자
• 시간 절약 및 비용 절감
• 종이 문서 감소
금융 기관
• 화폐 발행 비용 절감
• 고객 서비스 개선
• 새로운 추가 서비스 제공
전자 화폐의 통화 공급 효과
전자 화폐의 공급량 증가에 따른 물가
상승 및 인플레이션
전자 화폐의 통화 속도 증대 효과
모바일 인터넷 지급 결제
시스템
일반적인 구성 요소
•
•
•
•
트랜잭션 채널
애플리케이션 서버
트랜잭션 수행자
지급 결제 애플리케이션
솔루션 종류
•
•
•
•
계좌 간 이제 모형
WAPP 및 직불 카드 모형
e-Purse 모형
Phone Bill 모형
인터넷 보안의 현실과 필요성
인간 및 소프트웨어에 의한 몇 가지 위협
• 가로막기
• 가로채기
• 수정
• 위조
암호화와 복호화
암호화
평문
복호화
암호문
평문
비밀키 암호 방식
DES (Data Encryption Standard)
상업적으로 폭 넓게 개발된 최초의 대칭형
암호화 표준
1974년 미국 상무부의 공식 요청에 의해
IBM이 개발
1977년 미국 연방 표준, 1981년 미국 산업
표준으로 채택
데이터 64비트로 작동하는 블록 암호이며
56비트 키를 사용하여 암호화(8비트는 패리티
검사용)
1997년 이후 더 강력한 표준인 AES(Advanced
Encryption Standard) 개발 중
공개키 암호 방식
RSA (Rivest, Shamir, Adleman)
비대칭형 암호 방식 기반
1978년 개발
공개 키와 비밀 키의 부분을 이루는 두
가지 소수(Prime Numbers)을 곱하여 얻는
부분으로 이루어지는 수많은 공개 모듈
이용
RSA (Rivest, Shamir, Adleman)
암호화한 메시지를 보낼 때
• 수신자의 공개 키 사용
암호화한 서명을 보낼 때
• 송신자의 비밀 키 사용
암호화한 메시지를 복호화할 때
• 수신자의 비밀 키 사용
암호화한 서명을 복호화할 때
• 송신자의 공개 키 사용
복합 암호 방식
DES(비밀키 암호 시스템) 방식의 처리
시간 단축과 RSA(공개키 암호 시스템)
방식의 키 관리를 결합한 방식
대표적인 예
• PEM(Privacy Enhanced Mail)
• PGP(Pretty Good Privacy)
대칭 키와 공개 키 암호 시스템 비교
공개 키 암호 시스템
대칭 키 암호 시스템
동일한
작업을
위한 요구
사항
보안성을
위한 요구
사항
키를 가진 동일한
알고리즘이 암호·복호화에
사용
수신자와 송신자는
알고리즘과 키를 나누어야 함
암호·복호용
키는
두
비밀을 유지해야 함
만일 다른 정보를 이용할 수
없다면 메시지를 해독하는
것이 불가능
알고리즘과 암호문
샘플만으로는 키를 알 수 없음
키 두 개와 한
개의 알고리즘
수신자와 송신자는 두 개의
키 중 일치하는 키가 한 개 이상
소유
개의 키 중 하나는 비밀
유지
만일 다른 정보가 이용
불능이면 메시지 해독 불능
알고리즘과 암호문 샘플, 한
개의 키만으로는 키를 알 수
없음
암호 방식을 적용한 인터넷
보안 서비스
기밀성(Confidentiality, Privacy)
인증성(Authentication)
무결성(Integrity)
부인 봉쇄(부인 방지, Nonrepudiation)
전자 서명(Digital Signature)
전자화한 문서의 메시지 내용이 수정 및
변조되지 않았음을 보장하는 동시에 메시지의
주체인 사용자들이 진정하다는 것을 제3자가
확인할 수 있도록 하는 인증 방식
전자 서명법의 정의: 전자 문서를 작성한 자의
신원과 전자 문서의 변경 여부를 확인할 수
있도록 비대칭 암호화 방식을 이용하여 전자
서명 생성키로 생성한 정보로서 당해 전자
문서에 고유한 것
cf. Electronic Signature
전자 서명 과정
전자 서명법에서 사용하는 용어
전자 문서: 컴퓨터 등 정보 처리 능력을 가진 장치에 의하여
전자적인 형태로 작성, 송·수신 또는 저장된 정보
전자 서명 생성 키: 전자 서명을 생성하기 위하여 이용하는
전자적 정보
전자 서명 검증 키: 전자 서명을 검증하기 위하여 이용하는
전자적 정보
전자 서명 키: 전자 서명 생성 키와 이에 합치하는 전자 서명
검증 키
인증: 전자 서명 검증 키가 자연인 또는 법인이 소유하는 전자
서명 생성 키에 합치한다는 사실을 확인·증명하는 행위
인증서: 전자 서명 검증 키가 자연인 또는 법인이 소유하는 전자
서명 생성 키에 합치한다는 사실 등을 확인·증명하는 전자적
정보
비대칭 암호화 방식: 정보를 암호화하기 위하여 사용하는 키와
암호화한 정보를 복원하기 위하여 사용하는 키가 서로 다른
암호화 방식
전자 서명과 수기 서명의 차이
각 전자 서명은 유일하다.
전자 서명은 전자 문서 자체에 첨부되어
있고 잘라내어 다른 문서에 붙여 넣을 수
없다.
전자 서명은 항상 변하지 않는다.
인터넷 보안 및 지불 프로토콜
SSL (Secure Sockets Layer)
S-HTTP (Secure HTTP)
SET (Secure Electronic Transaction)
SSL (Secure Sockets Layer)
가장 낮은 단계의 보안 제공
소켓(통신의 양 끝단에서 TCP를 사용하는
소프트웨어) 사이의 모든 통신 암호화
문서나 트랜잭션 단위보다는 일반적인 유형의
클라이언트와 서버 간 링크나 경로(channel)
상의 보안 제공
넷스케이프사가 개발
RSA에 기반한 공개 및 비밀 키 암호화 기법
사용
S-HTTP (Secure HTTP)
1994년 6월 EIT(Enterprise Integration
Technologies)에서 제안
웹 전송 표준인 HTTP에 보안 측면을
강화한 것
RSA, PGP, DES 등 다양한 암호 알고리즘
지원
개별 파일 단위로 기밀성, 인증, 무결성
보장, 부인 방지 등의 기능 제공
SSL과 S-HTTP의 비교
작동 원리
• SSL은 TCP/IP 전송 수준의 바로 위, 애플리케이션
프로토콜 수준의 바로 아래 단계에서 작동
• S-HTTP는 HTTP 애플리케이션 프로토콜에 메시지
기반 보안 추가
인증 방법
• SSL은 서버측 인증 방법만 사용
• S-HTTP는 서로를 인증하기 위하여 서버와
클라이언트 양 측 인증 방법 사용
SET (Secure Electronic
Transaction)
인터넷에서 완전한 신용 카드 거래를
지원하도록 비자와 마스터카드에서
개발한 지불 프로토콜
1996년 2월 공식적인 표준으로 공시
SET의 작동 과정
사용자는 SET 가능 브라우저가 있어야 하고 거래 제공자(은행, 상점
등)은 SET 가능 서버가 있어야 함
고객이 신용 카드 계정 개설
고객이 디지털 인증서 수령(만료 기한이 있는 공개 키 포함)
각 상인들도 인증서 수령(상인의 공개 키와 은행의 공개 키 포함)
고객이 상품 주문(웹, 전화 등의 수단 이용)
고객의 브라우저에서 상인의 인증서 수령 후 신원 확인
고객이 브라우저에서 주문 정보 전송
상인이 고객의 인증서 확인
상인이 주문 메시지를 은행에 전송
은행이 상인과 메시지 확인
은행이 상인에서 승인서 발급 후 상인은 주문 처리
인터넷 보안 및 지불 프로토콜
온라인 구매
SET
HTTP
S-HTTP
SSL
TCP/IP
공개키 인증의 필요성
공개키 사칭에 따른 문제점을 해결하고,
신뢰할 수 있는 웹 공동체를 구성하기
위한 접근법
• 인증 기관에서 발급하는 전자 인증서를
이용하는 방법
• 별개의 인증 기관을 이용하지 않고 웹
사용자 간에 공개키를 인증할 수 있도록
하는 것
전자 서명법에서 요구하는
인증서 포함 내용
가입자 이름
가입자의 전자 서명 검증 키
가입자와 공인 인증 기관이 이용하는 전자 서명 방식
인증서 일련 번호
인증서 유효 기간
공인 인증 기관 명칭
인증서의 이용 범위 또는 용도를 제한하는 경우 이에
관한 사항
가입자가 제삼자를 위한 대리권 등을 갖는 경우 이에
관한 사항
인증 구조
수직적 인증 구조
네트워크형 인증 구조
복합적 인증 구조
수직적 인증 구조
CA1
CA2
CA3
CA4
CA5
수직적 인증 구조
장점
• 대부분의 조직 관리 구조가 보통 수직적이기 때문에 인증
경로와의 통합 용이
• 수직적 디렉터리 이름과 결합 가능
• 인증 경로의 탐색 용이
• 각각의 사용자가 최상위 인증 기간의 공개 키 사용 가능
단점
• 전 세계적으로 단 하나의 최상위 인증 기관만을 갖는 것이
현실적으로 어려움
• 조직 간의 신뢰 관계가 반드시 수직적이 아님
• 최상위 인증 기관의 비밀 키가 노출될 경우 파급 효과가
상당히 큼
네트워크형 인증 구조
CA1
CA2
CA5
CA3
CA4
네트워크형 인증 구조
장점
• 유연하고 임의적인 연결과 신뢰 관계 형성 가능
• 사용자는 최소한 하나의 인증 기관 신뢰
• 조직도에서 멀리 떨어진 인증 기관 간의 직접 상호
인증 가능
• 사용자들 간에 트랜잭션 빈도가 높은 인증 기관의
직접적인 상호 인증 허용
단점
• 인증 경로의 탐색 복잡
• 임의의 사용자는 공개 키 기반 구조에 속하는 다른
모든 사용자에게 자신의 서명의 검증을 보장하는
단일의 인증 경로를 제공하지 못함
복합적 인증 구조
CA1
CA2
CA3
CA4
CA5
서비스별 인증 방법
신용 카드 사용 시의 본인 인증
시스템 접속 시의 본인 인증
입장 시의 본인 인증
콘텐츠 개발 기술
HTML
CGI
XML
VRML
HTML
HyperText Markup Language
웹 페이지를 만드는 표준 포맷
현재 HTML 4.0이 많이 사용
웹 에디터 등을 활용한 문서 작성
CGI 개요
기존 프로그래밍 언어와 Web과의 연결 필요
HTTP 서버 컴퓨터에서 실행됨
HTTP 서버 컴퓨터에서 처리될 수 있는 언어면
어떠한 언어라도 CGI 작성 가능
클라이언트의 각 요구에 대해서 각각
프로그램이 실행되므로 서버쪽에 로드
UNIX: C, C++, Perl
Microsoft NT, windows: VB
환경 변수 1
사용자 관련 CGI 환경 변수
• HTTP_USER_AGENT
• 사용자 브라우저에 대한 정보
• NAME/VERSION 또는 LIBRARY/VERSION의 형태
• HTTP_ACCEPT
• 사용자가 사용하는 브라우저가 받아들일 수 있는 MIME
Type
• REMOTE_HOST
• HTTP 서버에 접속한 사용자의 컴퓨터 이름
• REMOTE_ADDRESS
• HTTP 서버에 접속한 사용자 컴퓨터의 IP주소
환경 변수 2
서버 관련 CGI 환경 변수
• SERVER_SOFTWARE
• 현재 사용하고 있는 서버 소프트웨어의 종류와
버전을 NAME/VERSION형태로 제공
• SERVER_NAME
• 현재 서버의 도메인 이름을 제공
• GATEWAY_INTERFACE
• 현재 사용하고 있는 CGI의 버전 정보를
CGI/VERSION 형식으로 제공
환경변수 3
사용자 질의 관련 CGI 환경 변수
• QUERY_STRING
• FORM문에서 사용자가 GET 메소드를 사용해서 넘긴
정보를 받는데 사용
• SCRIPT_NAME
• CGI 프로그램의 파일 이름
• SERVER_PROTOCOL
• 서버 프로토콜의 종류와 버전 정보를 제공
• SERVER_PORT
• 사용자 질의가 넘어온 서버 포트 번호
• PATH_INFO
• CGI 프로그램에 추가적으로 전달되는 디렉터리 정보
환경 변수 4
사용자 질의 관련 CGI 환경 변수
• PATH_TRANSLATED
• PATH_INFO로 받은 추가적인 디렉터리 정보를 더욱
자세히 표현
• CONTENT_TYPE
• 브라우저에게 현재 보내는 데이터의 종류를 알리는데
사용
• CONTENT_LENGTH
• FORM문에서 POST 메소드로 CGI에 정보를 제공할 때
CONTENT_TYPE과 더불어 이 정보를 전달
• 사용자가 넘긴 질의 값의 길이 정보
• REQUIRED_METHOD
• CGI 프로그램에 정보를 넘기는 방법
스크립트 언어 개요
인터프리터
매크로 기능의 확장
종류
• Client Script
• 브라우저에서 스크립트 실행, 별도의 프로그램이나
패키지가 필요 없음.
• Server Script
• 서버에서 스크립트를 실행하고 그 결과를 HTML로
클라이언트에 전달
클라이언트 스크립트
문서 객체 모델(Document Object Model)
브라우저가 인터프리터를 포함
• 브라우저가 클라이언트 스크립트를 실행시킴
• 브라우저별로 스크립트 실행 방식이 약간 다름
종류
• JavaScript, VBScript, Jscript
장점
• 클라이언트에서 실행되므로 서버쪽의 로드를
줄일 수 있음
• 동적인 상호 작용을 위한 홈 페이지 개발
서버 스크립트
서버쪽에서 실행되는 스크립트
운영 체제 및 HTTP 서버에 의존적
종류
• PHP
• ASP
• JSP
XML
eXtensible Markup Language
웹이나 인트라넷 환경에서 정보를
생성하고 데이터 자체와 데이터의 포맷
형태를 동시에 공유할 수 있도록 해주는
차세대 정보 포맷 표준
XML 기반의 EDI가 전자 상거래 시스템
구축 시 가장 각광받는 분야로 부상
인터넷 언어 비교
구분
HTML
SGML
XML
사양
단순
복잡
단순
태그
사용자 정의 불가능
제한적
사용자 정의 가능
무제한
사용자 정의 가능
SGML보다는 제한적
브라우저
웹 브라우저
전용 브라우저
웹 브라우저
데이터 공유
불가능(단방향)
가능
가능(양방향)
문서 작성
간단함
논리 구조 작성 곤란
복잡
간단
문서 검색
정확한 검색 곤란
정확한 검색 가능
문서 구조 검색 가능
정확한 검색 가능
문서 구조 검색 가능
문서 재사용
불가능
가능
가능
응용 분야
단순 구조 문서
기술 문서
웹상의 교환 문서
VRML
Virtual Markup(Modeling) Language
웹 브라우저를 통해 3차원을 볼 수 있게
해주는 언어