안드로이드 기반 데이터
This presentation is the property of its rightful owner.
Sponsored Links
1 / 30

안드로이드 기반 데이터 암호화 플랫폼 개발 PowerPoint PPT Presentation


  • 37 Views
  • Uploaded on
  • Presentation posted in: General

안드로이드 기반 데이터 암호화 플랫폼 개발. -DES 암호화 알고리즘 모듈 개발. Kyungwon University Computer Network LAB 2011.8.19 심 재성. DES 암호화 알고리즘 모듈 개발. 1. 과제 개요 ( 전체 ). 2. 과제 개요 ( 개인 ). 3. 진행 일정 및 상황. 4. 향후 일정. 1. 과제 개요 ( 전체 ). 과제 수행의 필요성

Download Presentation

안드로이드 기반 데이터 암호화 플랫폼 개발

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


6290708

안드로이드 기반 데이터암호화 플랫폼 개발

-DES암호화 알고리즘 모듈 개발

Kyungwon University

Computer Network LAB

2011.8.19 심 재성


6290708

DES암호화 알고리즘 모듈 개발

1. 과제 개요(전체)

2. 과제 개요(개인)

3. 진행 일정 및 상황

4. 향후 일정


6290708

1. 과제 개요(전체)

  • 과제 수행의 필요성

    • 모바일 기기가 발전 모바일용 운영체제, 미들웨어, 응용프로그램 을 묶은 S/W플랫폼 안드로이드 기반 어플리케이션이 많이 개발되고 사용됨

    • 사용자 정보를 유출시켜 피해를 주는 악성 어플리케이션

    • 보안에 대한 인식 부족과 개발시 데이터 보안 고려 부족

    • OpenSSL등 어플리케이션 암호화를 하는 API는 개발 되었으나 안드로이드 기반의 데이터 암호화 플랫폼 부재

    • 어플리케이션 개발에 보안을 고려하게 되면 기본적으로 개발비용 외에 별도의 비용 발생 및 전문가 확보 어려움


6290708

1. 과제 개요(전체)

  • 과제 수행의 필요성

    • 모바일 기기가 발전 모바일용 운영체제, 미들웨어, 응용프로그램 을 묶은 S/W플랫폼 안드로이드 기반 어플리케이션이 많이 개발되고 사용됨

    • 사용자 정보를 유출시켜 피해를 주는 악성 어플리케이션

    • 보안에 대한 인식 부족과 개발시 데이터 보안 고려 부족

    • OpenSSL등 어플리케이션 암호화를 하는 API는 개발 되었으나 안드로이드 기반의 데이터 암호화 플랫폼 부재

    • 어플리케이션 개발에 보안을 고려하게 되면 기본적으로 개발비용 외에 별도의 비용 발생 및 전문가 확보 어려움


6290708

1. 과제 개요(전체)

[표-1] 내용 및 범위(전체)


6290708

1. 과제 개요(전체)

[표-2] 과제 일정(전체)


6290708

1. 과제 개요(전체)

  • 과제 해결 내용

    • 요구 분석

      • 모바일 보안 실태 분석

      • 모바일 환경의 데이터 사용 유형 분석

      • 안드로이드 보안 개발 유형 조사 및 분석

      • 암호화 알고리즘 분석

      • 요구 분석된 내용을 주 3회 정기적으로 커뮤니티 공유하고, 수정 및 보안을 계속적으로 조사.분석

    • 설계

      • 안드로이드 환경에서 데이터 암호화 시나리오 설계

      • 경량화된 암호화 알고리즘 설계

      • 안드로이드 기반 암호화 플랫폼 설계


6290708

1. 과제 개요(전체)

  • 과제 해결 내용

    • 구현

      • 안드로이드 환경에서 데이터 암호화 시나리오 구현

        • 단말 저장형 암.복호화 속도에 중점

        • 단방향전송형 암호 강도에 중점

        • 실시간전송형 빠른 키 전송 및 데이터 암.복호화 속도에 중점

      • 안드로이드 기반 암호화 플랫폼 구현

        • 설계를 기반으로 각 시나리오에 맞게 구별되는 것을 중점으로 구현

    • 테스트 및 평가

      • 구현된 데이터 암호화 플랫폼 모듈별 단위 테스트

      • 구현된 데이터 암호화 통합 테스트

      • 구현된 데이터 암호화 플랫폼 평가 및 보완

        • 입력값, 출력값, 오류발생원인, 오류발생상황 등을 상세히 기록 커뮤니티 공유


6290708

1. 과제 개요(전체)

  • 과제 해결 내용

    • 공개 S/W 커뮤니티 프로젝트 구성 및 운영

      • 초기 구성원은 관련 연구원과 전문가 그룹을 중심

      • 추가적으로는 본교 개발동아리와 연계로 구성 활동인원 증원

      • 초기 구성원으로부터 관련 정보를 획득, 커뮤니티를 통해 정보를 공유하고, 지속적인 커뮤니티 회원들과의 의사소통 유도

      • 커뮤니티를 통한 요구사항 및 기능 Feedback

      • 커뮤니티를 통한 세미나 및 소모임

      • 국내외 안드로이드 개발자 모임을 통한 커뮤니티 연계


6290708

1. 과제 개요(전체)

  • 과제 수행시 기대효과

    • 안드로이드 기반의 어플리케이션의 보안성 증대

      • 본 과제의 안드로이드 기반 데이터 암호화 플랫폼을 통해 개인 및 기업 개발자들이 활용 가능

      • 개발 어플리케이션의 보안성이 크게 증대

      • 사용자들의 개인정보 유출 예방 효과

    • 공개 S/W 커뮤니티 활성화 및 파급효과

      • 안드로이드 기반 데이터 암호화 플랫폼은 모든 소스 및 개발 과정이 공개 S/W 커뮤니티에 공개

      • 개인 및 기업 개발자 들의 적극적인 참여를 유도 공개 S/W 커뮤니티 활성화를 도모, 보안의 인식제고 등 효과 기대


6290708

1. 과제 개요(전체)

  • 과제 수행시 기대효과

    • 개발 비용의 절감

      • 현재 개인 및 기업 개발자에 의해 개발되고 있는 보안 플랫폼을 추가 하려면 보안관련 전문가의 필요와 보안 모듈개발로 인해 개발비용과 시간이 증가

      • 본 과제를 통해 개발되는 플랫폼은 공개 S/W정책을 적용 추가 개발비용과 시간적 측면에서 모두 감소

    • 보안의 인식 확대

      • 최근 발생되는 수많은 모바일 단말에서의 해킹사고 및 개인정보 노출문제 발생

      • 근본적인 개발자들의 해결의지 부족과 기본인프라 부족

      • 본 과제는 공개 S/W 커뮤니티를 통해 보안 문제 이슈 발생 및 보안 홍보 효과 증가


6290708

2. 과제 개요(개인)

  • 내용 및 범위(개인)


6290708

2. 과제 개요(개인)

  • DES 암호화 알고리즘

    (Data Encryption Standard : DEA)

    • IBM에서 개발한 대칭키 알고리즘

      • IBM의암호학자 Feistel이 만든

        블록암호의 구조가 그대로 사용됨

      • 치환과 전치의 혼합방법을 사용

    • 1977년부터 20년간 미국 표준,

      국제 표준으로 사용되었던 알고리즘

    • 현재 상용화 되어 있는 3DES, RC5,

      IDEA, BlowFish등 대칭키 암호화

      방식의 가장 기본

[그림-1] Horst Feistel


6290708

2. 과제 개요(개인)

  • DES의 특징

    • 대칭적 알고리즘을 사용하는 개인 정보 보안 네트워크

      • 작은 경우 적은 수의 비밀키 교환만 하면 되어 쉽고 간편함

      • 큰 경우 많은 수의 비밀키 교환으로 인해 안전 교환이 어려워져 비용이 비싸지고 부담스러워짐

    • 비밀키 공유로 인한 신뢰성

      • 상대방이 비밀키를 보호하고 누출 하지 않을 것에 대한 신뢰

      • 개인적이든 업무용이든 이전에 알고 있는 관계에서만 사용

    • 인증과 부인 방지

      • 비밀키가 공유되어 상대방의 행위를 증명 하지 못함

      • 데이터를 몰래 수정할 수 있으나 도용자 식별 불가


6290708

2. 과제 개요(개인)

  • DES 암·복호화

    • DES 암호화

      • 64Bit 길이의 평문 과 키값 을 입력받아암호문을 출력

      • 키 값에 입력된 값을 좌측 쉬프트하여16라운드 실행

    • DES 복호화

      • 64Bit 길이의 암호문 과 키값 을 입력받아평문을 출력

      • 키 값에 입력된 값을 우측 쉬프트하여16라운드 실행

키(56+8 bit)

키(56+8 bit)

평 문

64bit

암호문

64bit

평 문

64bit

DES

암호화

DES

복호화

[그림-2] DES 암·복호화 과정


6290708

2. 과제 개요(개인)

  • DES 암·복호화

    • 평문을순치환 후 마지막에 역치환 하여 암호문 출력

    • 암호문을 역치환 후 마지막에 순치환 하여 평문 출력

평 문

암호문

64bit

64bit

비밀키

비밀키

64bit

64bit

순 치환

역 치환

키에 의한 변환

(치환, 전치, XOR)

키에 의한 변환

(치환, 전치, XOR)

16번

반복

암호키

복호키

48bit

48bit

순 치환

역 치환

평 문

암호문

64bit

64bit

[그림-3] DES 암·복호화 알고리즘


6290708

2. 과제 개요(개인)

  • Use Case

암호화

입력

메시지

암호문

출력

송신자

단말기

복호화

[그림-4] USE CASE


6290708

2. 과제 개요(개인)

  • 단말 저장형 데이터 보관

    • 단말기 내에 저장되는 전화번호부, 스케줄 위험 노출

  • 단말기 분실 시 저장 데이터 유출

  • 외부 해킹으로 인한 저장 데이터 훼손

단말저장

데이터 보관

[그림-5] 비보호 상태의 데이터 보관


6290708

2. 과제 개요(개인)

  • 단말 저장형 데이터 보관

    • DES 암호화를 사용하여 저장데이터 보호

  • 외부로 부터의 비정상적 접근 제어

  • 비밀키 미인증접속자 대상 정보 보호

단말저장

데이터 보관

DES

비밀키

[그림-6] DES로 보호된 저장 데이터


6290708

2. 과제 개요(개인)

  • DFD

PCA,PCB

LSH, RSH

IP,IP

E, S, P

비밀키

블럭화

암호화

라운드 암호키

평문

PCA,PCB,LSH

암호키DB

암호키

사용자

암호키 생성

평문

64bit 비밀키

비밀키

복호키DB

블럭화

64bit 비밀키

암호문

복호키 생성

단말기

복호키

-1

PCA,PCB,RSH

암호문

라운드 복호키

복호화

블럭화

[그림-7] Data Flow Diagram


6290708

2. 과제 개요(개인)

  • 입력 값 분할

START

A=int(Len(input)/8)

B=0

C=Len(input)

inputM(A)

Read

Input, Space

input=input+space

B=B+1

inputM(B)=Sub(input(B,B*8))

B=A

No

Yes

STOP

21


6290708

2. 과제 개요(개인)

  • 키 생성 (1/2)

START

REK(48)(16)

TK(56)

L(28)(17)

R(28)(17)

All(56)(16)

Read

BK,ES,DS,

PCA,PCB

TK(a)=BK(PCA(a))

L(b)(0)=TK(b)

R(b)(0)=TK(28+b)


6290708

2. 과제 개요(개인)

  • 키 생성 (2/2)

c=0

  • DES 암호화

  • 배열 ES를 이용하여 진행

  • DES 복호화

  • 배열 DS를 이용하여 진행

b+ES(a-1):28

=<

>

c=b+ES(a-1)

C=0+ES(a-1)

L(b)(a)=L(c)(a-1)

L(b)(a)=R(c)(a-1)

R(b)(a)=R(c)(a-1)

R(b)(a)=R(c)(a-1)

All(b)(a-1)=L(b)(a)

All(28+b)(a-1)=R(b)(a)

c=PCB(d)

REK(d)(a-1)=All(c)(a-1)

STOP


6290708

2. 과제 개요(개인)

  • DES 알고리즘

START

EDT(16)

EBT,AT(64)

FS,RS,TS(8)(17)

ER,ERK(48)(17)

TSERK,SERK,PSERK(32)(17)

LT,RT(32)(17)

TT(64)(17)

SMOK,SNMG

Read

IP,IP ,E,S,P,BT,REK

-1

TT(a)=BT(IP(a)

  • DES 암호화 => 초기 순치환

  • DES 복호화=> 초기 역치환

LT(a)(1)=TT(a)(1)

RT(a)(1)=TT(28+a)(1)


6290708

2. 과제 개요(개인)

  • DES 알고리즘

LT(b)(a)=RT(b)(a-1)

ER(c)(a)=RT(E(c))(a-1)

+

ERK(c)(a)=ER(c)(a-1) REK(c)(a-1)

d=0

FS(e)(a)=2*RT(1+d)(a-1)+RT(6+d)(a-1)

RS(e)(a)=8*RT(2+d)(a-1)+4*RT(3+d)(a-1)

2*RT(4+d)(a-1)+RT(5+d)(a-1)

TS(e)=S(e)(FS(e)(a),RS(e)(a))

d=d+6


6290708

2. 과제 개요(개인)

  • DES 알고리즘

SMOK=TS((f)/4-1)(a)/2

SNMG=TS((f)/4)(a)-(SMOK*2)

TS((f)/4)(a)=SMOK

SERK(f-g)(a)=SNMG

+

PSERK(h)(a)=SERK(P(h))(a)

RT(h)(a)=PSERK(h)(a) LT(h)(a-1)

AT(i)=RT(i)(17)

AT(28+i)=LT(i)(17)

-1

EBT(i)=AT(IP (i))

-1

EBT(28+i)=AT(IP (i))

STOP


6290708

3. 진행 일정 및 향후 일정

  • 과제 일정(개인)

8.24


6290708

3. 진행 일정 및 상황

  • 현재 진행 상황

    • DES 암호화 알고리즘 설계(완료)

    • DES 암호화 알고리즘 구현(완료)

      • DES 암·복호화(완료)

        • 라운드키 와 XOR 연산

        • F함수 처리

      • DES 암·복호키 생성(완료)

        • 초기치환

        • 라운드별 키 생성

      • 입력 값 변환 모듈

      • 입력 값 분할 모듈

    • 문서화 작업(진행)

    • 진행 부분까지 정리하여 업로드(진행)


6290708

4. 향후 일정

  • 향후 일정

    • DES 암호화 알고리즘 문서화 작업

    • DES 암호화 알고리즘 구현 모듈 테스트

    • 단말저장형 암호화 플랫폼 산출물 조사, 분석

    • SNS를 활용한 재난상황 대처(학술대회)

      • 기존 재난전달 체계의 보완점을 조사 및 분석

      • SNS를 활용한 재난 정보 수집 및 이용 방안 제안


  • Login