ActiveX, 기술적 채무 (technical debt)

ActiveX ?


"브라우저 밑으로 손을 뻗어 그 밑에 깔린 시스템의 기능을 만지작거릴 수 있게 하는 요물"
"웹은 웹이되 PC가 할 수 있는 모든 일을 하게끔 하는, 웹 이상으로 조작하기 위한 '만능 컨트롤' 도구"

인터넷을 쉽고 편리하게 이용하도록 Microsoft에서 개발. 기존 응용프로그램을 웹과 연결시켜 그대로 사용할 수 있게 한 기술. COM(컴포넌트 오브젝트 모델)과 OLE(객체 연결 삽입)을 적용해 WWW으로부터 다운로드받은 컨텐츠들을 이용하는 데에 적용된다. 익스플로러를 위해 고안되었으며 Sun microsystems의 Java에 대항하는 기술

ActiveX 의 무지막지한 기능으로 90년대의 프로그래머들은 ActiveX가 포함된 COM이라는 테크놀로지 조합으로 PC 웹의 전성기를 풍미했다.

국내 웹에 ActiveX가 정착되게 된 배경


미국이 자국 기술보호 등을 이유로 해외에 제공되는 웹 브라우저 보안 수준을 40비트로 제한시켰는데 이 암호기술로는 인터넷 뱅킹은 꿈도 못 꿀 일이었다. 인터넷 뱅킹을 하기 위해서는 128비트급의 암호 알고리즘이 최소한의 필수 선택이었기 때문이다. 이 무렵 나온 인터넷 익스플로러 4 버전을 예로 들면 128비트 암호화 버전은 미국에서 접속해야만 받을 수 있었고, 그 이외 지역은 40비트 암호화 버전만 다운로드 가능하도록 되어 있었다.

결국 1990년대 후반의 기술로 40비트 암호화 버전 브라우저에서 암호화가 가능한 방법을 찾아야 했다. 40비트 암호화는 1997년의 컴퓨팅 환경에서도 겨우 3.5시간 만에 깨지는 허술한 체계였고 당시의 표준이었던 DES의 56비트 암호화도 슬슬 위험해지던 시기였다. 덩달아 이게 등장하던 1990년대 후반에는 이미 PC통신으로 이루어지고 있던 홈뱅킹 서비스에서 해킹 사고가 터진 일이 여러 차례 있어서 온라인 금융의 보안에 대한 관심도 높던 시기였다. 따라서 3-DES의 112비트라도 되어야 그나마 안정성을 보장할 수 있었다.

이러한 문제를 타개하기 위해서 1999년 KISA(한국인터넷진흥원)에서는 자체적으로 128비트 키를 가지는 새로운 알고리즘 SEED를 개발했다. 이는 대칭키 암호화 알고리즘으로 블록암호 기술로 인해 DES(데이터암호화표준)나 AES(고급암호화표준)같은 암호 알고리즘과 친척뻘이다. 암호화키가 128비트라서 AES에 가깝다는 설명이 종종 있지만 알고리즘 구조와 기술적으로 DES에 더 가까운 암호 알고리즘이다.

어쨌든 급하게라도 128비트급인 SEED가 개발되어 배포되고 이를 통해서 대한민국 인터넷 뱅킹이 시작되긴 했는데, 문제는 웹 브라우저에 당연히 지원도 안 되었고 주요 TLS/SSL 라이브러리에도 없었던 것이다. 그래서 SEED를 쓰기 위한 관련 라이브러리와 프로그램 배포를 위해서 ActiveX란 놈을 어거지로 이용하였으며, 이게 대한민국의 ActiveX 역사의 시작이 되었다.

기술적 부채(technical debt)란?


사회와 각 개인들로 이루어진 소프트웨어 등의 결함이 모여 새로운 기술을 개발하는데 장애가 발생하는 것이다.

1992년 Ward Cunningham이 비 기술자들에게 문제를 전달하기 위해 사용하기 시작한 단어로, 간단히 말해 꼭 해두지 않아도 또는 프로젝트가 끝날 때 까지-심지어는 끝나고 나서도- 티가 잘 나지 않는 작업들을 지칭한다.
일반적으로 잘 알려진 기술적 부채로는 악취 나는 코드, 테스트 커버리지, 적절하지 못한 객체 모델링과 같은 작업들이 있다.
기술적 부채가 지닌 대표적인 특징은 빌린 사람과 갚는 사람이 일치 하지 않는다는 점인데, 빌린 사람은 최초 개발자에 해당하고 갚아야 하는 사람은 표면적으로는 유지 보수 개발자이고 본질적으로는 시스템 소유자(프로젝트 오너)라 볼 수 있다.
빈약한 문서, 테스트되지 않은 코드, 반복되는 수동 배포, 미뤄진 리팩토링과 같은 것들이 기술 부채의 흔한 사례다.

마치며...


ActiveX의 역사를 보면 기술적 부채의 사례가 국가적 규모로 커진 점이다.
이 시기와 맞물려, 한국의 특수 상황이 발생시킨 여러 환경들

  • 정보 기관의 지침(보안 적합성 검증)
  • 독자적인 최상위 인증기관을 운영하려는 욕구
  • 해킹 피해 발생 보도에 대한 과민 반응
    등 복합적 환경이 우리를 ActiveX의 세계로 이끌 수 밖에 없었다.
    인터넷이 일찍 퍼진 한국은 너무 급했고 너무 불안했던 것이다.

이런 막강한 ActiveX의 기능으로 업계는 웹을 임의로 컨트롤하여 변경하는 일이 그리 바람직한 일이 아님을 공감했지만, 탄력을 받은 ActiveX 내성은 누가 먼저 앞장서서 고치질 못했다.

기술적 부채의 명제

"기술적 부채는 빌린 사람과 갚는 사람이 일치 하지 않는다"

지금의 환경을 유발했던 앞선 세대의 여러요인이 - 정부, 과민한 보안사용자, 대세를 따랐던 개발업체가 - 기술적 부채를 빌린 채무자가 됐고, 금융, 쇼핑 등 온라인결제를 이용했던 모든 국민들이 갚는 채무자가 되어야만 했다.

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center