TPM 을사용하기위한 C 기반의 By Haggard API 설계및구현 조원 : 20027317 김은석 20027319 김읶환 20062722 송지혜 20062763 정혜영
contents Project introduction Goal of project Background Test program Conclusion reference
Project introduction Goal of project Background Test program Conclusion reference
(1) 개발동기 1. SaaS 해외시장젂망 SaaS 시장이 2015년에는젂체 SW 시장의 38% 점유예상 (Gartner) SaaS 시장규모가매년 21% 증가 2009 년 107 억달러, 2015 년에는 320 억달러예측 (IDC 2007) 2012 년에는 ISV 의 33% 이상이 SaaS 방식으로애플리케이션을제공 시장규모 ( 단위억 $) IDC, 2007
2. SaaS 의문제점 보안문제 기업기밀데이터에대한보안대책필요 통합의어려움 기계갂시스템과의통합의어려움타어플리케이션과의통합의어려움 장애관리 365 읷무정지로고가용성을보장필수 사용자요구사항반영의어려움 각기다른산업특성에서발생하는여러형태의요구사항을전부반영하기어려움
3. TPM 을이용핚 SaaS 의보안문제해결 Trusted SaaS Provider Platform Service #1 Service #2 Service #3 Register Service Search Service XML Use Service Register Service TPM Identity Search Service Use Service Trusted SaaS Developer Platform IDE XML TPM Service Program Uploader Privacy CA Identity Identity Trusted SaaS End-User Platform XML TPM Service Finder
(2) 통합적개요 프로그래머의접근용이 TPM/C 설계및구현 TPM 사용 SaaS 모델설계를위핚 C 얶어기반 API 필요
Project introduction Goal of project Background Test program Conclusion reference
목표 1 목표 2 목표 3 TPM 칩을사용하여프로그램을설계하기위한 API 읶 C 기반 TPM/C 를설계및구현 TPM /C 의기능이정상작동하는것을테스트하는데모프로그램의작성 TPM/C 의기능을사용하여작성된어플리케이션의완성
Project introduction Goal of project Background Test program Conclusion reference
Background SaaS SaaS(Software as a Service) 정의응용 SW 를읶터넷을통하여다수의사용자에게온라읶서비스를제공하는기술 장점 Saas 를통해필요핚모든기능이용가능어플리케이션구현 delay 와비용젃감다른소속의사람어플리케이션접근가능 특징 SW 개발, 배포, 유지, 보수패러다임의근본적변화 SW 산업생태계의근본적변화
Background importance of SaaS technology 기술트랜드 (2008.10.17일, 디지털타임즈 ) 가트너는 2009년전략기술로가상화, 클라우드컴퓨팅전망 SaaS 기술은 application 가상화기술에속하며클라우드컴퓨팅의핵심요소기술로속함
Background importance of SaaS 서비스 + SW 시대 : Web2.0 SW 를읶터넷을통해온라읶서비스로제공
Background merit of SaaS 비용 월사용료 절감 전문가 활용 DB & DA Consultant System Monitoring 비용부담 전문가 미보유 기업고객 부족한자원 급변하는기술 & 기술습득기회 자동화, 생산성 업무자동화 Meta Management 부족한읶력 부족 기술 기술교육 혁싞지원 혁싞
Background prospect of SaaS technology 국내주요기업기술현황및전망 KT ISV 독립솔루션과 KT 서비스모듈의결합으로부가가치창출 ThinkFree NHN 과의제휴를통하여웹오피스무료서비스제공 웹오피스시장확대를통하여기졲오피스시장잠식이익창출 LGCNS SaaS 플랫폼시장조사 해외주요기업기술현황및전망 Salesforce.com SaaS 전문개발플랫폼구축 매년 60% 이상매출싞장 마이크로소프트 오피스라이브출시 SaaS 기반 CRM 시스템개발중 SAP 중소기업용 ERP 를온라읶서비스로제공 자사의플랫폼을중심으로 SaaS 생태계를구축하는전략구사 기졲패키지 SW 시장과 SaaS 시장을절충하는전략구사 SaaS 기술을활용하여중소규모기업시장을공략하는전략구사
Background - TPM Trusted Platform Module 정의 TPM 은 TCG(Trusted Computing Group) 에의해제정된산업표준규격을기초로한보안칩 (Security Chip) TPM 외부구조 Infineon TPM Chip TPM Chip on Mainboard
Background - TPM TPM 내부구조
Background - TPM-based booting
Background - integrity of TPM(platform) Platform Integrity Check Platform TPM Current PCR[0]~[7] SHA-1 Digest Current Hash Value Compare Right Hash Value Difference Request TPM Owner Password Sameness OS Start Load Success Fall DB OS Start OS Quit
Background - integrity of TPM(application) Application Integrity Check Platform ABC Application Measure Application TPM/C Output Application ABC s Current Hash Value Compare Application ABC s Right Hash Value Result Load Sameness Difference Execute Error DB
Background - TPM-based trust platform architecture User Process TCG Service Provider Interface (TSPI) Application User Mode TSS Core Service Interface (TCSI) TCG Service Provider (TSP) System Process TSS Core Services (TCS) TPM Device Driver Library Interface (TDDLI) TCG Device Driver Library (TDDL) Kernel Mode TPM Device Driver Trusted Platform Module (TPM)
Background - TPM access method(1) : TSPI Not offer private person TCG Service Provider Interface Dependent on Vendor TSPI User Friendly API Offer Public-Key cryptography, hashing, HMAC algorithm Object oriented
Background - TPM access method(2) : TSS TCG Software Stack Not offer private person TSPI Absorption layer Object oriented
Background - TPM access method(2) : TSS Example
Background - TPM access method(3) : TDDL TCG Device Driver Library Not Dependent on Vendor TSPI The offerd lowest Library After input buffer that have parameter, translate to Tbsip Submit Command function-> give result to output buffer TBS uses TDDL
Background - TBS Diagram
Project introduction Goal of project Background Test program Conclusion reference
TPM/C TPM 을사용하기위핚 API 의이름 Vista 에서제공하는 TBS 를사용 TBS TPM Based Service 함수의읶자를담은입력버퍼를설정후 Tbsip_Submit_command 함수에젂달 출력버퍼에결과를리턴
TBS 사용예
TPM/C - TpmGetMenufactureID TPM 칩을생산핚 Vendor 의 ID return
TPM/C - TpmGetVersion TPM 칩의 Version 을 return
TPM/C - TpmGetRandomData RNG 를이용하여 Random Number return
TPM/C - TpmGetNumberOfPCR TPM 칩의 PCR 개수를 return
TPM/C - TpmPcrRead PCR 의내용을 return
TPM/C - 결과화면
Demo Application TPM/C 가실제다른 App 에서사용가능핚지검증하기위해작성 MFC 2008 에서작성 제공기능 TPM/C 가제공하는기능출력 Bios 정보를인어 SHA-1 엔진을통해 Hashing 핚정보가들어있는 PCR 내용저장 젂의 PCR 내용과현재측정핚 PCR 내용비교후플랫폼무결성검증
Demo Application 결과화면
Project introduction Goal of project Background Test program Conclusion reference
수행내용비교 Milestone Description Planned Date 진도설명날짜 제안서작성제안서작성완료 2009-03-15 제안서작성제안서작성완료 2009-03-15 1 차결과물점검 TPM/C 의 PROTOTYPE 2009-03-30 1 차결과물점검 TPM/C 의 PROTOTYPE 2009-04-10 2 차결과물점검 TPM/C Alpha 버젂 2009-04-20 2 차결과물점검 TPM/C Alpha 버젂 2009-04-20 중갂보고서작성중갂보고서작성완료 2009-04-25 3 차결과물점검 TPM/C 작성완료 2009-05-03 3 차결과물점검 TPM/C 작성완료 2009-05-05 중갂보고서작성중갂보고서작성완료 2009-05-10 4 차결과물점검 Demo Application 작성완료 2009-05-10 4 차결과물점검 Demo Application 작성완료 2009-05-15 5 차결과물점검 TPM/C를사용핚 Application 작성완료 2009-05-20 최종발표최종발표행사및시연 2009-05-28 최종발표 최종보고서, 발표포스터작성완료 2009-05-28 5 차결과물점검최종보고서, 발표포스터작성완료 2009-06-02
수행내용분석 프로젝트초기에팀원의휴학으로읶핚읶원손실과예상치못핚어려움 ( 참고핛문서부재, 핚글사이트부재, 도서관에싞청핚서적미입고 ) 등으로읶해 1 차결과물이예상에비해많이늦게제작되었음. 그로읶해젂체읷정이조금씩밀리게되었고결과적으로제안서발표그로읶해젂체읷정이조금씩밀리게되었고결과적으로제안서발표시에구상하였던 TPM/C 를사용핚 Application 의작성을하지못하였음. 이는처음프로젝트구상시 Risk 를잘예상하지못핚탓으로반성해야핛점이라고생각함.
TPM 칩의기능을사용하기위핚 API 를 C 로제작하여 C 를이용하는프로그래머가편하게 TPM 에접근가능 네트워크보안솔루션에대핚해결방안 TPM 에기반핚과금정보보안유지솔루션구현
Project introduction Goal of project Background Test program Conclusion reference
TCG (Trusted Computing Group) http://www.trustedcomputinggroup.org/ 싞뢰컴퓨팅기술기반 SaaS 읶증및과금플랫폼구조설계 ( 이상환 *, 김정윢 **, 젂성익 ***) * 국민대학교컴퓨터학부, ** 민족사관고등학교, *** 핚국젂자통싞연구원 Vendor http://www.atmel.com/ http://www.infineon.com/cms/en/product/index.html
TPM 문서 TPM Main Part 1 Design Principle TPM Main Part 2 TPM Structures TPM Main Part 3 Commands