비트컴퓨터 조현정 사장

1983년 청량리 맘모스호텔에 동안의 20대 중반 대학생이 스위트룸을 이용하겠다고 찾아왔다. 일반 객실도 아닌 귀빈용 스위트룸을 장기간 이용하겠다는 이 당찬 대학생은 이곳에서 밤낮을 바꿔가며 하루 17시간씩 일에 몰두했다. 봄이 한참 무르익은 무렵 잠시 호텔밖으로 외출을 나왔을 때 그는 계절의 변화마저 눈치채지 못해 두꺼운 겨울 코트를 걸치고 있었다.

21년동안 의료정보 소프트웨어회사의 한길을 걸어온 `비트컴퓨터`를 창업한 조현정 사장(46)은 이처럼 호텔방 한켠에서 한국 벤처의 역사를 만들었다. `대학생 벤처 1호` 라는 수식어가 따라다니는 조 사장은 인하대학교 3학년 재학 시절 직원 두 명과 함께 450만원 자본금으로 출발한 비트컴퓨터를 자본금 62억원, 연매출 200억원대의 회사로 성장시켰다.

#창업과 수성 Continue reading “비트컴퓨터 조현정 사장”

나이는 157세, 연봉은 1.41421356?

Michael Kanellos (CNET News.com)

미래의 기업 데이터베이스. 한 고객의 나이는 ‘157세’로, 수입은 1.41421356’로 기록돼 있다. 엉터리 데이터다. 하지만 이 기업은 이런 엉터리 데이터를 이용해 마케팅에 필요한 고객 분류를 정확히 해내고 있다.

IBM이 현재 연구하고 있는 기술이 바람직한 것으로 판명된다면, 앞으로 고객의 개인정보는 이처럼 알 수 없는 난수로 기록, 보존될지도 모른다.

이 회사는 현재 ‘데이터 난수화(randomization)’로 불리는 고객 정보 데이터베이스 기법을 실험 중이다. 데이터 난수화를 사용하면 고객의 과거 구매기록이나 나이, 수입, 건강정보와 같은 데이터가 해독이 난수화를 통해 변경된 채로 기업에 전송된다.

예를 들어 한 사용자가 온라인 쇼핑 사이트에 가입하면서 나이를 38세로 등록할 경우, 브라우저에 설치된 난수화 플러그인은 여기에 -25에서 112 사이의 임의의 숫자를 더한 후 이를 서버에 전송하는 것이다.

재미있는 점은 이렇게 원본에서 ‘변질된’ 데이터에 난수화의 효과를 걸러낼 수 있는 엄청난 횟수의 연산을 가함으로써 ‘전체적인 패턴’을 읽어낸다는 것이다. (데이터가 난수화될 때 사용되는 숫자의 범위는 유한하기 때문에 이 데이터들을 모아 충분히 많은 횟수의 연산을 하면 그 범위를 파악해 분포도를 뽑을 수 있게 된다는 것.)

즉, 난수화를 거친 후에는 ‘A씨는 38세’라는, 한 개인에 대한 정확한 나이는 영원히 찾을 수 없게 되지만 대신 ’38세 연령의 사용자들에게 우리 사이트가 얼마나 인기가 있나’와 같은 전체적인 패턴 정보는 매우 정확한 수준까지 파악할 수 있는 것이다.

이 연구를 이끌고 있는 IBM의 라케시 아그라왈은 “컴퓨터 과학에서는 ‘좋은 결과를 이끌어 내기 위해서는 정확한 데이터가 있어야 한다’는 것이 일반적인 관점이다. 따라서 데이터의 정확도를 고의로 변질시키는 이 기술의 기본적인 개념은 컴퓨터 과학 관점에서 일종의 이단이라고 할 수 있다”고 말했다.

데이터 난수화는 개인정보가 멋대로 유린되는 현재의 상황을 해결해줄 수 있는 하나의 방법을 제시하고 있다. 오늘날 기업과 각종 단체들이 고객의 개인정보를 수집하고 거래한다는 사실에 많은 사람들이 분노하고 있다.

사람들은 개인정보 기록과 이에 대한 추적 가능성을 불쾌하게 느끼고 있으며, 미국 연방거래위원회도 개인정보 보호에 우선순위를 둘 방침임을 밝힌 바 있다.

한편 기업들의 데이터 수집에 걸려들지 않기 위해 사람들은 자주 거짓말을 하지만, 제대로 먹히는 경우는 별로 없다고 한다. 기업들은 기본적인 데이터 패턴을 재구성할 수 있는 능력이 있다. 아그라왈은 “사람들은 거짓말에 능숙하지 못하다. 그들은 본질적으로 자신도 모르는 사이에 단서를 남긴다”고 말했다.

난수화 시스템은 베이지언(Bayesian) 확률을 이용해 서로 다른 값들 사이의 관계를 설정한다. 고객이 입력한 실제 데이터는 서버로 전송되기 전에 난수화된다.

기업에서는 전송된 데이터를 두고 원래 값에 어떤 난수 연산이 적용됐는지 알아낸다. 아그라왈은 “이러한 난수분포가 생성되기 위해 어떤 연산이 사용됐는지를 알아내는 것”이라고 말했다.

서버가 해당 데이터에 적용된 난수화 연산을 알아낸다면(예를 들어 이 데이터는 ‘원래 값에서 15에서 87 사이의 숫자를 더한 것’이라던가, ‘8에서 32 사이의 숫자를 뺀 것’이라던가 하는) 기업은 마침내 (각 개인에 대한 정보는 여전히 모른 채로) 필요한 고객 기반 정보를 정확히 보여주는 도표를 그릴 수 있게 된다.

IBM 내부에서 실행된 몇차례의 실험 결과, 재구성된 도표와 실제 데이터를 이용해 그린 도표의 차이는 2-3%에 불과했다고 한다.

아그라왈은 “다시 원본 분포로 돌아온다. 이것이 수학의 아름다움”이라며 “여기서 중요한 것은 좋은 모델을 구축하기 위해 반드시 정확한 데이터가 필요한 것은 아니라는 점”이라고 말했다.

여전히 실험이 진행되고 있는 단계지만 아그라왈은 이미 유용하게 사용될 수 있는 분야를 생각해냈다. 예를 들어 기업들은 자신이 가진 고객명단의 유출 위험 없이 데이터 풀을 구성할 수 있을 것이다.

결과적으로 네트워크 침입을 당할 경우의 위험성도 감소하게 된다.

사용자 입장에서는 개인정보를 지키기 위해 회원 가입 정보창에 거짓말을 입력하지 않아도 된다.

php.ini register_globals = OFF

만약 php.ini 파일에서 register_globals 부분이 Off로 설정되었을때는
프로그램짜는 방법이 달라지겠죠

$_POST[] , $_GET[] , $_REQUEST[] 를 사용합니다.
예전의 PHP버전이면 $HTTP_POST_VAR[] , $HTTP_GET_VAR[] 을 사용해야 합니다.
넘어온 변수는 그냥 $a 로 처리하는것이 아닌 $_POST[a] 또는 $_GET[a] 로 처리하여만 하며 POST와 GET방식에 따라 다르며 $_REQUEST[]는 두개다 사용이 가능합니다.
아래와 같이 수정하셔야 합니다.

if ( $_POST[a] == 1 ) echo “1”;
else echo “2”;

위와 같이 하여되 되고 extract() 함수를 사용하여 처리할수도 있습니다.

GET 또는 POST 뿐만 아니라 쿠키는 $_COOIE[],세션은 $_SESSION[]과 파일업로드 처리등도 예전방식으로는 안됩니다.

자세한 사항은 http://kr2.php.net/manual/kr/security.registerglobals.php 를 참조하세요..

테스트해보기
333.php
<form action=”555.php” method=”post”>
<input type=text name=thename maxlength=10 size=10>
<input type=submit value=올리기>
</form>

555.php
<? echo $_REQUEST[“thename”]; ?>