169====================
새로운 시작
***
중소기업이 어려운 점은 여러 가지가 있는데, 자체 브랜드를 갖기 어렵다.
더욱이 단일 제품을 가지고 세계 시장에 승부를 내는 일도 쉽지가 않다.
때문에 중소기업은 여기서부터 갈림길이 된다.
주문자 상표로 가느냐, 자체 브랜드로 가느냐 선택이다.
보통은 전자를 많이 선택한다.
이 OEM 방식이 수출 성과가 좋아서 재미가 괜찮다.
다만 언제까지 남의 제품만 만들 수는 없다. 결국 자체 브랜드를 만들게 되고, 기존 수출을 일단 스톱시킨 후에 물타기 한다.
여기에 문제가 되는 것은 역시 브랜드 광고다. 광고 비용만 해도 수십 억이 든다. 제품 재고도 신경을 쓰야 하니, 어떻게 보면 도박이 아닐 수가 없다.
다만 이렇게 해서 어느 정도 자리를 잡게 상황이 다르다.
매출이 드디어 백억 대를 돌파하게 된다.
디자인을 비롯해서 원천기술을 위한 준비를 하게 된다.
이런 현실적인 부분은 직접 경험하지 않으면 알기 어렵다.
작은 업체를 전전하다보면 자연스럽게 알게 되는 교훈이다.
이민혁 역시 다르지 않다. 그는 때문에 자체 브랜드와, 원천기술이 얼마나 중요한 지 수십 년을 걸쳐서 경험한 바 있다.
테스트 작업은 간단하지는 않지만 그에게는 그다지 익숙하지 않은 환경은 아니다.
기본적으로 테스트 보드를 활용해서 디캡핑을 해놓는다.
그 다음은 대여해온 오실로스코프를 통해서 칩의 신호를 체크한다.
함수 발생기를 이용해서 오류주입 시점을 조절한다.
제일 먼저 진행한 것은 1바이트 오류다.
칩 내부에 이미 구현한 테스트 알고리즘을 수행하면서 파형 확인을 진행한다.
실제로 파형을 측정해보면 오류 주입 시점에서 소비 전력에 우선적으로 변화가 생기는 장면이 바로 나타난다.
“여기 우측 보이지?”
소비 전력의 패턴에 변화는 우측 화면에서 신호 일부가 더 늘어지는 것처럼 나타난다. 즉 오류 신호에 따라서 알고리즘이 제대로 동작하지 않은 것이다.
“우와, 정말이네요!”
그들도 신기한 지 혀를 내둘렀다.
이제까지 이론적인 내용을 들었지만 아직도 긴가민가한 부분이 많았다.
실제로 실험 결과를 통해서야 기존에 이민혁이 말한 것이 조금씩 이해가 되었다.
이민혁도 이 부분에서 주의를 주었다.
“원래는 너희들이 하나씩 삽질하면서 해야 할 일이야. 하지만 그런 식으로 하게 되면 이 일은 적어도 1년 이상은 걸린 거다. 그러니 내가 큰 골격을 잡아줄 테니, 완벽하게 그것을 익히고 바로 따라와야 한다.”
“아, 알겠습니다.”
네 사람은 혀를 내두른 채 멍하니 대답할 뿐이었다.
이민혁은 방긋 미소 지었다.
‘역시 스스로 어렵다는 것을 알아야 해. 그나저나 이 녀석들이 잘 끝낼지 모르겠다.’
***
다음에 확인 작업은 오류 데이터에 대한 그 결과를 따로 취득하는 것이다.
헥사 값으로 바꾼 후에 이번에는 오류주입 결과에 따른 결과를 확인하는 작업이다.
이 과정을 통해서 20개의 키 중에서 무려 6바이트나 되는 오류가 나왔다.
지금 테스트 코드는 오류 주입 공격에 취약한 면이 잘 드러났다.
이민혁도 이 오류주입 공격 오류에 대한 실험을 통해서 문제점을 확실히 알았다.
‘블록 암호 알고리즘은 AES를 중심으로 해서 오류 공격에 대응은 가능해.’
이들 대응책은 바로 오류 검출 기법이나, 패리티를 이용한 방법이다. CRC 역시 많이 사용되는 방법 중에 하나이다.
하지만 이런 방법은 이미 많이 사용 된 터라 좀 한계가 있었다.
그렇다고 당장에 다른 대안을 찾을 수는 없다.
우선적으로 오류 검출 기법을 채택했다.
이 방식은 하드웨어에 비해서는 아주 심플하면서 간단하다.
장점은 바로 주입된 오류를 100% 탐지할 수가 있다.
다만 역시 중복 실행 방식이라서 오버헤드가 큰 문제가 있다.
기본적으로 암호화 알고리즘을 이용한 암호화 작업이 우선이다.
다시 평면문과 비교해서 오류를 탐지한다.
문제가 없다면 라운드 단위로 해서 다시 이 과정을 반복한다.
마지막은 세분화 과정을 거치면서 탐지 작업에 들어간다.
보통은 수 바이트 단위의 동작 레벨이 된다.
이 알고리즘 모듈은 기존의 수학 테크닉을 이용한다면 간단히 구현이 가능하다.
이민혁은 이 과정을 일사천리로 진행하면서 고심에 빠졌다.
‘이건 이미 많은 이들이 알고 있잖아. 더욱이 오류주입공격에는 소용이 없어.’
실상 시간 소요 문제가 있지만 이건 어쩔 도리가 없었다.
애초에 복호화, 암호화 과정에 들어가는 시간 때문이었다.
‘향후 안정화가 되면 칩으로 구현하면 되니, 그 문제는 생략하자.’
결국 다음 코딩 작업에 들어가면서 본 것은 역시 라운드 레벨 부분이다.
여러 가지 라운드로 이루어져서 비밀키를 입력하는 형태이다.
부가적으로 한 라운드를 더 수행해서 좋기는 하지만 역시 하드웨어 레벨에서 코드를 다 까볼 수가 있다. 따라서 이것 역시 한계가 있었다.
‘결국 코드가 드러나도 읽지 못하게 해야 하는데, 그 방법이 뭘까?’
이 부분에서는 답이 쉽게 잘 나오지 않았다.
이민혁이 이 때 보게 된 것은 세 후배 녀석이 정신없이 코딩 작업하는 것과, 한 쪽에서 엔비 코덱 디버깅에 푹 빠져 있는 강호정이었다.
그가 지금 하는 것은 바로 저주파 대역의 옮기는 작업이다.
기존 가역 주파수 대역으로 옮기는 것까지는 좋은데, 높은 파워가 들어간 음원이 문제였다. 그 부분은 다 잘려서 버린다.
보통 사람은 그다지 신경 쓰지 않지만 진정한 뮤지션은 다르다.
그들 중에는 저것까지 수정을 요구한 이들이 있었다.
결국 그 부분을 따로 보완해서 합쳐야 하는데, 그건 엔비 코덱 수정을 해야 했다. 완전히 잡일이지만 강호정은 꽤 열심히 하고 있었다.
‘잘 하고 있........’
문득 떠오른 생각이다.
바로 저주파와, 고주파 대역이다. 인간의 음원은 사람마다 다 차이가 있어서 똑같을 수가 없다. 그것은 고유의 특징일 까닭이다.
‘차라리 음성을 이용하면 어떨까?’
방법은 생각보다 간단했다. 엔비 코덱을 이용해서 그 나온 결과를 보면서 가장 많이 나오는 저파수 대역을 찾으면 된다.
일일이 음원을 다 비교하는 것은 복잡하고, 시간도 많이 걸리지만 이 소수의 주파수 대역은 다르다. 그렇게 많이 필요가 없다.
그들 중에 10가지를 추린 후에 기존 엔비 소프트 음원 DB에 들어가 있는 정보를 다 올려서 한 번 비교해 보았다.
거의 99.9999%가 일치하고 있었다.
‘빙고!’
비록 10개의 키라는 한계가 있지만 그 각각의 주파수 대역이 모두 같은 사람은 존재할 수가 없다. 더욱이 이 결과 값은 복잡한 엔비 코덱을 통해서 추출된 값이다.
그 어떤 이라도 그 공통점을 찾기는 어렵다.
이민혁은 이 값을 기준으로 해서 각 라운드에 하나씩 합쳤다.
기존 알고리즘 음성 인식을 결합시킨 새로운 형태의 보안키다.
이 방식은 음성 인식 오류 문제도 크게 신경 쓸 필요는 없다.
초기 디지털 사인을 할 때 음성 인식을 같이 추가해서 한 번에 패기지화해서 저장할 수 있기 때문이었다.
다만 문제가 있다면 인식 오류.
이건 별 다른 대안이 없었다.
“지금부터는 좀 고생해야겠다. 각오는 되어 있겠지?”
“네!”
세 사람, 아니 네 사람은 열기에 활활 불타올랐다.
그들도 처음에는 이 일을 대수롭지 않게 여겼는데, 지금 옆에서 이민혁 작업 결과를 보고는 생각을 많이 바꾸었다.
얼핏 봐서는 별 것 아닌 것 같아도 이민혁이 하는 일은 다른 보안 업체와 비교해서 크게 달라지는 것 같지 않았다.
더욱이 이론적으로 다 된 것처럼 보이는 것도 그들이 막상 확인한 결과는 아니었다.
‘나도 할 수 있어!’
일종의 긍지다.
자신이 최고라는 의식.
이민혁이 하는 일을 보고야 이제는 좀 확신한 것이었다.
이민혁은 꽤 만족스러운 지 미소를 지었다.
‘아직은 강아지 수준이지만 뭐 지금 기를 꺾을 이유는 없지.’
***
세븐 일레븐 해킹 사건은 결코 단순하게 끝날 일은 안이었다.
이 사건은 처음에도 문제였지만 시간이 갈수록 상황이 좋지가 않았다.
더 큰 문제는 역시 다른 업체다.
패스21이라는 업체에서 생체인증 솔루션을 내놓았다.
이 업체는 지금 일어난 이슈를 잘 활용해서 한빛은행과 우선적으로 전략적인 제휴했다.
시범운영이기는 하지만 각 지점에서 지문등록을 한 후에 지문 센스를 이용하면 각 PC에서 인터넷 뱅킹을 이용할 수 있게 처리했다.
이 은행은 인터넷 뱅킹 뿐만 아니라, CD, ATM, 신용 카드, 전자 상거래를 포함한 모든 금융 서비스로 확대할 예정이었다.
ID와, 비밀번호 대신에 지문과, 땀샘의 특징을 벡터 방식으로 처리한 터라, 도용과 해킹이 불가능했다.
메이버 기획팀은 역시 눈치까지 빨라서 여기에 대한 조사를 끝낸 후에 이 문제를 가지고 또 다시 이슈화 시켰다.
박호진 팀장이야 늘 깨지지만 메이버 정보 역시 예외는 아니다.
덕분에 스트레스를 가장 많이 받은 것은 이종민 수석 팀장이었다.
그는 그렇지 않아도 은근히 메이버와 합병된 후에 이전과는 달라진 환경 때문에 불편했다. 기존에는 공무원 조직과 비슷했지만 지금은 마치 사기업에 소속된 것 다르지 않았기 때문이다.
계속 위에서 쪼아대는 데, 무조건 모른 척할 수는 없었다.
그는 결국 관련 기술을 검토하면서 다른 한 가지 일도 병행했다.
바로 기존 패스21의 문제점이다.
“생체 인식이 다 좋기는 한데, 문제는 인식율입니다. 실제로 오류가 너무 많이 나서 보조적인 형태로만 사용가능합니다.”
실제로 생체 인식 시스템의 한계다.
단일화 특성을 가지고 있지만 그 덕분에 이런저런 문제가 많이 생긴다.
얼굴 인식만 해도 오류율이 꽤 높다.
따라서 이대로 했다가 인식이 안 되면 그야말로 날벼락이다.
한빛은행 측에서 하는 패스21도 어디까지나 고객에게 신뢰를 심어주기 위한 보조적인 수단일 뿐이었다.
이런 부정적인 측면으로 기획팀을 맞받아치자 그제야 조용해졌다.
‘메이버는 생각보다 순진한 애들이 많아.’
이민혁이 한 가지 특이한 솔루션을 들고 나타난 것은 바로 이 무렵이었다.
“엔비 패스입니다.”
“엔비 패스?”
그는 눈을 동그랗게 뜰 수밖에 없었다.
다른 팀원 역시 별 다르지 않았다.
다들 의아하기 짝이 없는 얼굴이었다.
하지만 그는 삭 그들 분위기를 무시한 채 직접 데모를 보여주었다.
정확히는 강호정과, 아이들에게 시선을 주었다.
“저희들이 보여드릴 것은........”
***
사람에게 가장 신뢰를 쉽게 졸 수 있는 방법은 역시 직접 보여주는 방식이다.
말로 백날 해봐야 직접 눈으로 데모를 보는 것이 가장 바람직하다.
따라서 기본적으로 필요한 것은 POS 환경, 그 다음에는 VAN이다.
각각의 시스템은 세션키 교환 모듈 형태를 두고 만들어졌다.
작동 영부와, 편의성을 위해서는 GUI 환경으로 기반으로 했다.
기존 세션키와, 변형된 세션키에 대한 것을 시작으로 했다.
변형된 세션키 암호화에는 바로 엔비 패스를 이용해서 값을 변경했다. 이 변경에서는 몇 가지 중점적인 부분을 설명했다.
“잘 아시겠지만 생체 인식 보안 솔루션이 보안 측면에서 좋기는 하지만 인식률에 문제가 있습니다. 기존 난수 방식은 비용 자체가 너무 고가입니다. 저희 회사에는 때문에 그 두 가지 절충점 형태로 해서 하이브리드 방식을 고안했습니다.”
이민혁이 옆에서 지켜보다가 한 가지를 더 거들어 주었다.
“직접 해킹까지 해볼 테니, 한 번 지켜보세요.”
제일 먼저 한 것은 기존의 VAN 사 시스템이다. 오류 주입 공격 방식을 이용해서 바로 코드 패턴을 찾아내서 보안 카드를 알아냈다.
“헐, 정말 취약하죠. 이러니 세븐 일레븐이 고 모양으로 망가지죠. 하지만 이건 그들만 해당 되지 않습니다. LH25시를 비롯해서 태반의 업체들이 다 해당 됩니다.”
몇 번 더 시범을 보여주었다.
기존의 온라인 쇼핑 보안이 얼마나 취약한 지를 잘 보여주는 결과다.
그 다음은 엔피 패스.
오실로스코프 파형으로 보면 나타나는 결과는 도저히 알 수가 없는 랜덤 변수였다. 음성 인식과 결합된 형태라서 중간에 데이터가 다 깨져버린 것이었다.
이민혁은 꽤 만족스러운 표정이었다.
“좋죠? 저도 이 업체를 고른다고 고생 많이 했습니다.”
박호진 팀장이 메이버 정보 실무자들이 다들 넋을 잃고 있자 두고 볼 수 없어서 슬며시 끼어들었다.
“혹시 어디 업체야?”
“엔비 소프트입니다.”
“엔비? 설마 그 엔비 코덱?”
“네, 저도 뒤늦게 알았는데, 이 쪽이 의외로 원천기술 쪽으로 투자를 많이 합니다. 제가 이리저리 알아볼 때 마침 이 쪽 보안 솔루션 개발 막바지 단계였습니다.”
“흐음.”
그는 잠깐 수상쩍은 시선으로 이민혁을 쳐다보았지만 고개를 내젖고 말았다. 이상하기는 했지만 딱 필요한 솔루션을 찾은 상황이다.
지금은 다른 것을 떠나서 이것을 검토하는 것이 우선이었다.
이 일은 메이버 정보에서 진행했다.
어차피 보안 쪽에 경험이 많으니, 괜찮은 것이라 보았다.
그 결과는 역시 예상대로였다.
“최고입니다.”
메이버 정보에서도 인정할 수밖에 없었다.
박호진 팀장도 큰 문제를 넘기고 나자 한 가지 문제를 그냥 넘어갈 수가 없었다.
“이 과장, 우리 이야기 좀 하자.”
“네.”
바로 엔비 소프트에 대한 의문이었다.
그의 대답은 아주 간단했다.
“사실 어떻게 보면 신생 기업이잖아요? 애들이 정말 열심히 하더라고요. 사람 마음이 그렇잖아요? 도와주고 싶다는 생각이 들었습니다.”
“그래서 도와주었다? 그게 다야?”
“네.”
그는 의외로 여기에서 잠깐 고민하더니, 더 이상 깨지 않았다.
“좋아, 그렇다고 해두자.”
“넵.”
이민혁도 여기에서 박호진 팀장 이야기가 끝나자 깨름직했다. 하지만 보다 더 큰 문제는 계속 이런 식으로 아기처럼 엔비 소프트를 키울 수는 없었다.
‘뭔가 다른 꿍수가 있는 건가? 하지만 계속 이대로 갈 수는 없겠지. 다른 회사에도 영업을 해야 할 텐데, 잘 할지 모르겠군.’
============================ 작품 후기 ============================
이민혁이 진짜 대단하죠?
a. 대종사가 정말 짱이다.
b. 대단하다.
c. 나도 회귀하면 저렇게 신중하게 갈 듯.
d. 경기 한파를 안 당해본 이는 모르지.
3. 기타.
7. 쿠폰 27장 투척.
8. 쿠폰 15장 투척.
9. 쿠폰 10장 투척.
0. 기타.