* 영촬 춤報 ; 혜옳第十六卷第一號 2006 年 8 月 E 비즈니스환경과암호화기법 강석호 *. 이우기 ** 目次 ) 요약 III. AES 알고리즘들의비교 I 서론 W 암호화와전자상거래 口키기반보안 V 결론 요약 본연구에서는일반적인암호화개념을 E 비즈니스환경과접목하여적용및분류하였다암호 화 (Encryption) 이슈는크게보아비밀키암호시스템과공개카암호시스템. 그리고공개키 비밀키의조합방식으로분류된다공개키암호화시스템은보안성이뛰어나지만계산속도와 효율성측띤에서난점이있고, 비밀키암호시스템은송 수신자가동일한키에의해암호화 또는복호화를하는것이며이는공개키알고리즘에비해얄고리즘이간단하므로속도가빠 르고, 소프트웨어로구현시파일의크기가작으며, 하드웨어로구현하는경우회로가간단 해지는경제적인이유로널리이용되고있으나, 키의관리에약점이있다 공개키비밀키의 조합방식은암호화와복호화과정에서서로같은커를사용하고, 그키를암호화하여키의전송및비밀보관이볼필요하게하여양자간의장점을딴이증암호화방식이다공개키만의적용은대상이한정적이며계산에막대한노력이수반되나보안성이아주뛰어난 B2B 등에적합하고, 비밀키만을적용하는데에는 C2C 가정도일것이며, 공개키비밀키의조합은전자상 거래에가장보편적인 B2C. G2C. 및 G2B 등에부합된다고보았다 주제어. 암호화 (Encryption). 복호화 (D ecryption). AES(Advanced Encryption Standard). E 비즈니스보안 서울대학교산엽공학과 인하대학교산업공학전공 - 1
* 형를 홉報옳훌홉 1. 서론 비밀키암호시스템 (private key encryption system) 은암호화 (encryption) 하고복호 화 (decryption) 하는데필요한 Key 값이같은알고리즘으로대표척으로는 DES (Data Encryption Standard) 와 AES (Advanced Encryption Standard) 가있다 상무부표준국 (NBS 현재는미국국립표준 기술연구소 (NIST) 로개편 ) 이 DES 는미국 1977 년 IBM 사의제안을바탕으로제정한데이터암호화표준규격으로, 연방정부의연방정보처리표 준 46(FIPS publication 46) 으로채택된것이다 [8, 9) 그리고 AES 는 DES 의표준기한 이 만료되는 1998 년을기점으로 NIST 에서는향후정부와상업계에서사용할수있는강한 비밀키암호화알고리즘인미국차세대암호표준 (AES) 을공모한것으로보안, 비용 1 알고 리즘및수행특성의 3 부분을평가해서채택했다 수많은암호알고리즘이공모되었고, 5 개 의우수항목이선정되었었으며, NIST 는 Rijndael 을최종선택하여 AES 로지정하였다 [1. 2) 공개키암호시스템 (public key encryption system) 은미국스탠퍼드대학의헬만 (M.H. Hellman) 등이개발한암호시스템으로, 데이터의암호화 (encryption) 에는공개키 (public key) 가사용되고복호화 (decryption) 에는비밀키 (private key) 가사용되는암호 시스랩으로비밀키암호시스템의정보교환당사자간의암호전달문제를해결한것으로, 키값의안전을꾀할수있고, 디지럴서명등에용이하게쓰일수있다대표적으로 RSA 공개키암호방식 (RSA public key crytosystem) 이있으며 RSA 는 1978 년에 MIT 공과 대학의 Rivest, Shamir, Adelman 둥 3 인이공동개발한 RSA 법 (R SA scheme) 이라는 암호화알고리즘을사용하는공개키 암호방식으로암호화조작은용이하고복호화에는방 대한조작이필요하지만어떤복호화키가주어지면용이하게역변환이가능하게되는일방향성돌따구 (trap door) 함수의개념즉, 큰수의소인수분해에는많은시간이소요되지만소인수분해의결과를알면왼래의수는곱셉에의해간단히구해지는사실에바탕을두고있다 [7) 본연구를간략히일별하연거래내역이모두전자부호 (electronic code) 로처리되는전자 상거래에서는이러한암호화문제가핵심적인과제임을인식하고상호관계와해결대안모색에주안점을두고있다는것이다 논문의구성은다음과같다우선제 2 장에서는연구배경으로서비밀키와공개키방식등을살펴보고, 제 3장에서제암호화방식들의비교를한후, 제 4 장에서전자상거래관점에서암호화방식의분류하고양자간의관계를설정하여비교하띤서결론을맺는다 2 -
E- 비즈니스환경파암호화기법 II. 키기반보안 2.1 비밀키와공개키 1) 비밀키 (private key cryptography) 암호화하고복호화하는데필요한 Key 값이똑같은알고리즘으로공개키알고리즘보다는 빠르다주로 NSA(National Security Agency) 에의해개발되었으며기밀로취급되고있 으며 80-bit 의 key를사용하는것이대부분이며, 다음과같은것들이있다 (10. 12J ROTl3(Ceasar 의암호에서유래한방법으로각각의알파뱃을그얄파뱃으로부터 13 번째 알파뱃으로대체하는방식으로. key 를사용하지않으며, 전혀안전하지않음 ). crypt( 독일의 Enigma encryption machine을모델로하여만든 UNIX 의암호화방식으로전혀안진하지않음 ). DES (Data Encrypt Standard). RC2. RC4 및 RC5 (Ronald Rivest 에의해개발되었으며. 가변길이의 key와 data block크기등으로암호화및반복이가능하다 ). IDEA(International Data Encryption Algorithm). skipjack (NSA에의해개발되었으 며기밀로취급 ). SEAL ( 빠른소프트웨어구현을목표로설계된스트림암호이며 160 비트키를사용한다. 소프트웨어적인대용량의암 / 복호화에적당한알고리즙이나인터넷응용에서는별로사용되지않는다 ) 등이있다 BLOWFISH 의경우 DES 와같은전형적인 Feistel 구조이며, 키가자주바뀌는응용에서는 Key setup time 이길어불리하며. CAST128 는 Feistel 구조이며, 키길이는 40비트부터 128 비트까지 8비트단위로지원하며키길이가 40비트이상 80비트이하일때는 12 라운드를. 88비트이상 128 비트이하일때는 16 라운드를사용하도록권고하고있다 SAFER의경우 64비트블럭길이와 64비트키길이를지원하 는얄고리즘으로 Key schedule 얄고리즘을확장하여 128비트키도사용가능하다 Knudsen 이보다강화된 Key scheduling을제안하여현재는이버전이주로사용되며 64 비트키를사용할때는 8 라운드를. 128 비트키를사용할때는 10 라운드를사용하도록권고되 고있다 이상과같은 DES 기반암호화방식보다진보된 AES 에기반한비밀키방식으로는다 음과같은것들이있다 (1. 2. 13J Rijndael: Daemen 과 Rijmen 에의해개발되었고 2000 년 10 월 AES 얄고리즘으로 최종선정되었다 SPN (Substitution-Permutation Network) 구조의가변블럭길이 를지원하는블록암호이다지왼블럭길이는 128. 192. 256 비트이며각블럭길이에 1 )
* 형營 홉報論훌 g 대해 128, 192 혹은 256비트의키를사용할수있으며라운드수는키길이에의해결정되며, 128비트블럭을사용하는경우 128, 192, 256비트키에대해각각 10, 12, 14 라운드를사용하도록권고되고았다, RC6: Rivest와 RSA사가공동개발한 AES 2차후보알고리즘으로가변길이의블럭길이, 키길이및라운드수를갖는 Parameterized block cipher이다 128비트블럭길 이에대한라운드수는 20 라운드이나학계에서는 Security margin 이 비교적작아라 운드수를좀더증가시킬것을권고하고있다 256 비트블럭길이에대해서는거의분석이이루어지지않아당분간은 128 비트블럭암 호로만사용될것으로보인다 TWOFISH: Schneier 등이 개발한 AES 2 차후보알고리즘으로 Key-dependent S-box 16 라운드의 Feistel 구조이다 응용에따라서유연성있게 Key scheduling 을 할수있도록한것이특정이다 MARS: IBM 에서제안한 AES 2 차후보알고리즘으로충분히긴가변길이의키를지 원한다 대부분의기존블럭암호의구조와는약간다른새로운구조로설계되었으나, 구 조가복잡하여분석이어렵다는지적을받고있다 SERPENT: Biham 등이제안한 AES 2 차후보알고리즘으로 256 비트까지의키길이 플지원하는 SPN 구조의 128 비트블록암호이다 Bit-slice implementation 을염두에 두고설계된암호로하드웨어구현은매우용이하나소프트웨어성능은상당히떨어지는 편이다 CAST256: CAST128 을확장하여 AES 후보알고리즘으로제안하였다 48 라운드의 직렬연산구조로인해하드워l 어나소프트웨어적으로효율성은상당히떨어지는편이다 2) 공개키 (asymmetric key cryptography) 공개키 (public key) 와개인키 (private key) 혹은비밀키가존재하여이중어느것하나로암호화 (E ncrypt) 를하면다른하나로복호화 (D ecrypt) 해야만볼수있는알고리즘이다 이는대칭키의키관리문제로대두된것으로공개키는남에게얄려주고개인키는자신이소 장함으로개인키 (private key) 의안전을꾀할수있다 [5, 7, 10J Diffie-Hellman: key 를교환하기위한체계이다 실제로 encryption 과 decryption 을 사용하는방법이아니라, 공유하고있는 private key 를교환하기위한수단이다 4
E 비즈니스환경과암호화기법 RSA: MIT 의 Ronald Rivest 와 Adi Shamir 그리고, USC 의 Leonard Adle 미 an 에 의해개발된잘알려진 public key 를이용한암호체계이다 정보를암호화시키거나전 자서명을하는데모두사용할수있다 구현에따라어떤길이의 key 도사용될수있으 며, 일반적으로긴길이의 key 가더안전하다 E1Gamal 누승법과단위계산에의한알고리즘이다 RSA 와비슷한용도로사용될수 있으며일반적으로길이가긴 key 가더안전하다 DSA (Digital Signature Algorithm): NSA 에의해계발되어 NIST 에의해 FIPS (Federal Information Processing Standard) 로채택되었다 DSA 의 key의길이에제한은없으나 NIST 에의해 512 에서 1024bit까지의 key만이채택되었다이는 encryptíon으로의사용을위한구현이가능하지만, 전자서명을위해서만쓰일수있으며 DSS로도불린다 3) 비밀카와공개키의응용 암호화시스템은크게보아비밀키암호시스템과공개키암호시스템, 그리고공개키비밀 키의조합방식으로분류된다 효율성측면에서난점이있고 1 이때공개키암호화시스템은보안성이뛰어나지만계산속도와 비밀키암호시스템은송 수신자가통일한키에의해암호화 또는복호화를하는것이며이는공개키알고리즘에비해알고리즙이매우간단하므로속도 가월등히빠르고, 소프트웨어로구현시 파일의크기가작으며. 하드웨어로구현하는경우 회로가간단해지는경제적인이유로널리이용되고있으나커의관리에결정적인약점이있 다 공개키 - 비밀키의조합방식은암호화와복호화과정에서서로같은키를사용하고, 그키 를암호화하여키의전송및비밀보관등을필요없게만든시스템으로양자간의장점을딴이중암호화방식이다비밀키및공개키시스템의대표적인것으로전자서영 (digital signature) 을들수있다 [3, 131 이는누군가의 private key로암호화된, message digest이다이암호화과정을서명 (signing) 이라고하며, 전자서명은두가지주요한기능을지닌다첫번째로. 파일이 변조되었는지얄수있으며, 둘째로그메시지에사용한사람이누구인지알수있다 전자 서영은앞에서언급했던 Public key encryption 을이용한다 예를들어어떤사람이자신 의 secret key 를이용하여문서릎 encrypt 하였다면, 그문서는그사람의 public key 를가 지고있는사람만이볼수있으며. 또한그문서를그 secret key 의주인이작성하였음을 확신할수있다반대로어떤사람이어떤문서를 public key 로 decrypt 의역함수를이용하 5
* 홈 홉報홉훌 여 encrypt 한문서는 secret key 를가진사랍만이볼수있기때문에, 그 key 의주인만이 그문서를읽을수있다 ill. AES 알고리즘들의비교 3.1 비밀키암호화알고리즘들의비교 DES와 AES 의암호화알고리즘의키값과블록사이즈속도둥을비교하면다음 Table 1 과같은데, 이결과는 (1. 2. 8J 을정리한것이다여기에서 BlockSize가 128bits 인것들은 Cast256. Mars. RC6. Ründael. Twofishs 가있는데이중에서 RC6플제외한나머시는 MaxKeySise가 256이며 RC6만제일큰 2048bits를가진다그리고속도는 Blowfish. Cast128. RC5. Ründael. Twofishs 등이빠르지만. Blowfish Y. Cast 128 그리고 RC5 의경우엔 BlockSize가너무작아서설용성이떨어진다키값의사이즈와속도를비교해볼때최근에나온 RC6 와 Ründael과 Twofishs 등의알고리즘이효용성이크다고알려져있다 [1 J Table 1. DES와 AES 의암호화알고리즘의비교 ID Name Patented MaxKeySize BlockSize Speed 05 Blowfish No 448bits 64bits 2.46mb/sec 07 Cast128 No 128bits 64bits 2.60mb/sec 15 Cast256 Yes 256bits 128bits 1. 68mb/sec 8 Gost No 256bits 64bits 1. 63mb/sec 12 IDEA Yes 128bits 64bits 0.75mb/sec 13 Mars Yes 128bits 128bits 1 38mb/sec 11 Mistyl Yes 128bits 64bits 1. 01mb/sec 01 RC2 No 1024bits 64bits 0.47mb/sec 03 RC5 Yes 2048bits 64bits 2.67mb/sec 04 RC6 Yes 2048bits 128bits 1. 66mb/sec 09 Ründael No 256bits 128bits 2. 12mb/sec 06 Twofishs No 256bits 128bits 2. 12mb/sec 6
E- 비즈니스환경과암호화기법 3.2 수행도비교 Table 2 플랫폼별암호화및복호화수행도비교 32-bit 32-bit 64-bit 8-bit 32-bit Digital (C) (Java) (C and (C and smartcard Signal assembler) assembler) (ARM) Processors MARS n n n n n n RC6 n n n Ri.i ndael n n I Serpent m m m m m m Twofish n m n m Table 3 플랫폼별키스케줄링수행도비교 32-bit 32 bit 64-bit 8-bit Digital (C) (Java) (C and (C and Signal assembler) assembler) Processors MARS n n m n n RC6 n n U m n Ri.i ndael Serpent m n n m Twofish m m m n m Table 4, 전체적수행도 Encryption/ 마 lcryptlon Key Setup MARS n n RC6 Ri.indael Serpent m n Twofish n m n 전체적으로 RC6 와 Rüindael 이암호화. 복호화에서는성능이비슷하며 Ründael 의경우 키스케률링이좀더좋다 C 로 32 비트암호화. 복호화를구현하면 RC6 가빠름을알수있 고, 32bit 의경우암호화복호화는 RC6 가더빠르다는것은입증된바이다 [2) 이를통합해보면암호화와복호화속도및키스케줄링을관점에서 RC6 와 Ründael 이적합 7
* 행흉 훔 & 論획용 한대안이될수있다고본다그러므로여기서는 32bits 의블록사이즈를사용하는것이므로 RC6 알고리즘을채택하는데무리가없읍을알수있다 N. 암호화와전자상거래 4.1 암호화방식의분류 공개키암호시스템은커 값을그냥전달시키지않고공개키로암호화한후전달된내용 을비밀키로복호화하면되므로키 관리측면에서우수하게평가되고있으며, 비밀키보다 복잡한얄고려즘을사용하기때문에일반적인보안성도높지만, 한편으로암호화 (encryption) 와복호화 (decryption) 속도가느립을알수있다이암호시스템은 EC 거래와는달리보안수 준과키관리에주안점을둘경우높은보안수준을요구하면서그렇게많지않은상대를처리 할수있는 G2G 나 G2B 에적용시킬만한수준이다 보안성은공개키비밀키모두높은수준이므로등급차이를별로주지 않았으며, 키관리 문제는비밀키의노출문제로비밀키만낮은등급을주었고, 속도는전자상거래에있어서중 요한요소이기때문에차이를두었다 Table 5. E-business 분야별암호화효율성 종합 암호화방법 보안생 커관리 속도 효율생 척용가능분야 Public Key I l III G2G, G2B Public-Private Key II I III II G2C, B2B. B2C Private Key II III II C2C 비밀키암호시스템은키 값을상대방에게전달하여야하는문제에봉착하기때문에키관 리 측면에선낮은등급을받았고, 보안성은공개키알고리즘보다는느슨함으로인해서중간 정도의등급을받았지만암호화와복호화의문제에선공개키보다는간단한알고리즘을이용하였기에실제구현시프로그램의가벼웅과암호화복호화가빠르기때문에높은등급을받았다이암호시스템은 EC 에적용시키기엔키관리의문제가너무커서 C2C 에나적함한수준이다 마지막으로공개키 - 비밀키얄고리즘은비밀키를이용해암호화한후그키 값을공개키로 8
E 비즈니스환경과암호화기법 암호화하여전달하는방식으로자체는비밀키의암호화를하므로보안성은비밀키파같고, 키 관리문제는비밀키에적용시킨키를공개키로암호화하므로공개키와같으며, 속도는비 밀키암호시스댐의속도에키 값만공개키로암호화복호화를하연되므로비밀키와비슷한 수준이다이암호시스템은 EC 중에서상당한보안수준을요구하면서많은상대를처리할 수있는 G2B, G2C, B2B, B2C 등거의모두에적용시킬만한수준이다 SET 은비자카드와마 스터카드가마이크로소프트, IBM, 넷스케이프, SAIC, GTE, 및 VeriSign 등으로부터의기술 적 지윈을바탕으로인터넷을이용한보안이보장되는카드거래를위해도입한전자상거래 표준작업중인사항이다 SET 프로토콜은 DES 와 RSA 를복합적으로사용하고또전자서병과 해시 (H ash) 기술을혼합한 1024 비트체계이다 SET 는개인키및공개키를쌍으로비대칭키로 데이터를암호화해전송한다 예를들어구매자가카드번호와주문서를입력하면카드회사는 판매업체서버로자사의공개키를알려주고고객에게도공개키와개인커를부여한다 판매업 체에서는고객정보를개인키로풀고고객공개카를이용해인증하는과정을거친다 4.2 암호화방식과 E-business 의관계전자상거래의형태를 80-20룰을기준으로나누어분석한연구에따르변, 중저가의대량의상품이현재전자상거래의주류를이룬다는것이다 [11, 6) 즉, B2C 가전자상거래의최대규모를형성하고있다는것이며한편이것은보안문제를소비자들이아직확신할수없기때문에최악의경우손해를감수할수있는금액의표준화된상품 ( 예, 아마존을통한서적의 구매 ) 에치중하고있다는것이다 [3) 따라서암호화방식에있어서현재로서는활용이미미 하지만 B2C 영역의해결이최대의과제이며이에대한효과적인대안되는공개키 비벨키의 조합접근법이현재 E 비즈니스에서의최대의과제중하나임을알수있다 현재타원곡선암 호 (Elliptic Curve Cryptosystem) 역시주목할만한기술로서타왼곡선이라고불리는수식을 기반으로암호화및복호화를수행하는방식이다특히키크기가작아서스마트카드 (l C 카드 ) 와같은기기에적용되기에매우적합하므로가능성이매우큰방식이다 V. 결론 암호화 (Encryption) 문제는전자상거래 (E-business) 를포함한인터넷응용에서현재가장핵 심적인요소의하나로인식되고있다 왜냐하면보안이보장되지않으면거래자체가시작되 지않기때문이다 암호화시스템은크게보아비벌키암호시스템과공개키암호시스템, 그리 9
* 훌營 홉報훌움훌홉 고공개키 - 비밀키의조합방식으로분류된다 이때공개키암호화시스댐은보안성이뛰어나지 만계산속도와효율성측면에서난점이있고, 비밀키암호시스템은송 수신자가동일한키에의해암호화또는복호화를하는것이며이는공개키알고리즘에비해알고리즘이매우간단하므로속도가월동히빠르고, 소프트웨어로구현시파일의크기가작으며, 하드웨어로구현하는경우회로가간단해지는경제적인이유로널리이용되고있으나키의관리에결정적인약점이있다. 공개키비밀키의조합방식은암호화와복호화과정에서서로같은키를사용하 고, 그키를암호화하여키의전송및비밀보관등을필요없게만든시스템으로양자간의 장점을딴이중암호화방식이다 본연구에서처음으로분류를시도한암호화와전자상거래와의관련성은다음과같다 우 선공개키만의적용은대상이한정적이며계산에막대한노력이수반되나보안성이아주뛰 어난 BB 혹은 GG 가적합하고, 비밀키안을적용하는데에는 C2C 가바람직하다고판단하였 고, 공개키 비밀키의조합은전자상거래에가장보편적인 B2C, G2C, 및 G2B 등에적합하다 고보았다 본연구의기대효과는이러하다 우선현재 E-business 의시장성장의병목의하나로서보 안문제가거론되고있는바, 본연구의접근법에의해 E 비즈니스관련보안문제해결을위한 방향을제시한의미가있으며, 특히 E-business 에서가장큰시장규모를차지하게될기업 일반고객 (B2C) 등의관계에적합한보안모텔에초점을두었다는점이다이러한암호화알고 리즘을통해서갈수록보안성이캉조되고 EC 의 활성화를위한장애중의하나인사용자의보 안에대한확신을줄경우 G2B(Government to Business), G2C(Government to Customer), B2B (Business to Business), B2C (Business to Customer) 등을비롯하여향후에는거의전체 적전자상거래분야로의보안문제의중요성이점차증대될것으로보인다, Acknowledgement 본연구는 1998 년도한국경영정보학회학술대회에서저자의발표사항에 질의내역을추가하여확장한것이다 참고문헌 1. AES http://www, nist,gov/aes 2. A. Ambainis, M. Jakobsson, H. Lipmaa(2004). Cryptographic Randomized Response Techniques. Public Key Cryptography, pp. 425-438 10
E 비즈니스환경과암호화기법 3. M. 8ichler, A. Segev(2001). Methodologies for the Design of Negotiation Protocols on E-markets. Computer Networks 37(2). pp. 137-152 4. J. Borst, B. Preneel, J. Vandewalle(1999). Linear Cryptanalysis of RC5 and RC6. Proc. Fast Software Encryption, pp. 16-30 5. R. P. Brent(2000). Recent Progress and Prospects for Integer Factorisation Algorithms Proc. COCOON, pp. 3-22 6. E.C. Cheng. G. Loizou(2000l. A Publish/Subscribe Framework: Push 1'echnology in E-CommerC8. BNCOD, pp. 153-170 7. W. Fischer, J. P. Seifert(2002). Note on Fast Computation of Secret RSA Exponents. Proc. ACISP, pp. 136-143 8. P. Gaudry, E. Schost (2004). Construction of Secure Random Curves of Genus 2 over Prime Fields. EUROCRYPT, pp. 239-256 9. M.E. Locasto, A.D. Keromytis(2004) Camouf1 age FS: Increasing the Effective Key Length in Cryptographic Filesystems on the Cheap ACNS, pp 1-15 10. N. Nedjah, L.M. Mourelle, M.P. Cardoso(2006). A Compact Piplined Hardware Implementation of the AES-128 Cipher. I1'NG, pp. 216-221 11. B. Schneier, Applied Cryptography, 2nd edition, John Wiley & Sons, 1996 12. Z. 1'ian, L.Y. Liu, J. Li. J. Chung, V. Guttemukkala (1 999). Business-to-Business E-Commerce with Open Buying on the Internet. WECWIS, pp. 56-62 13. C. Wagner, E. 1'urban(2002). Are Intelligent E-Commerce Agents Partners or Predators'l. Communications of the ACM 45(5) pp. 84-90 14. 1'.I. Wang, K. H. 1'sai. M. Lee(2004). A 1'wo-Layer Cryptographic Scheme for an e-service Framework Based on Mobile Agents. EEE, pp. 98-105 11