어차피 소스도 공개되어 있는거라 사실 "비밀"이라고 말하긴 뭐하지만 제목 짓기가 뭐해서;;
날개가 조금씩 알려지기 시작하면서, 인증문장에 대해서도 함께 이야기되고 있습니다. 날개에는 알파2 이후로 다른 사람의 RSS 피드를 등록해서 마치 자신의 컨텐츠인 운영하는 것을 방지하는 기능으로서 피드 인증 기능이 포함되어 있습니다.

피드 인증의 원리

트랙백은 맘먹고 덤비면 어렵지 않게 조작할 수 있는데에 비해, RSS 데이터는 원래의 컨텐츠 작성자(블로그)가 아닌 이상 새 글을 조작해서 넣을 수 없습니다. 물론, 해킹(여기서는 크래킹)의 차원으로 넘어가게 되면 이야기가 달라지지만 그 때에는 RSS 조작하는게 문제가 아닌 상황이니 논외로 합니다. 피드 인증 기능이 켜져 있는 날개에서 새 주소를 등록하게 되면 피드 인증을 요구합니다. 이 상태에서도 글은 수집이 되고, 관리자 모드에서는 확인할 수 있습니다. 그러나 외부 목록 화면에는 인증되지 않은 피드의 글은 방문자에게 보여지지 않습니다.

사용자 삽입 이미지

여기서 인증받기 버튼을 클릭하면, 아래와 같은 메세지가 뜨면서 특정한 문장을 보여줍니다.

사용자 삽입 이미지

이제 RSS 피드를 통해 이 피드를 등록한 시점 이후에 (그 이전의 날짜인 경우에는 효력이 없습니다), 주어진 문장이 내용에 포함된 글을 작성해야 합니다. RSS를 부분공개한 경우 이 문장을 글의 끝 부분에 넣게 되면 잘려나가서 인증이 되지 않겠지요. 저 문장 자체는 띄어쓰기를 포함해 중간에 다른 어떤 문자도 포함되지 않은 완전한 문장으로 주어져야 하지만, 문장의 전후에 태그를 붙여서 주석처리 하거나 출력모양을 다르게 지정해도 상관이 없고 전체적인 글의 중간에 삽입하더라도 인식할 수 있습니다.

시간이 지나면 자연적으로 해당 피드를 갱신하면서 인증 과정이 이루어지지만, 기다리기 답답한 경우 수집하기 버튼을 눌러 수동으로 업데이트를 진행하면 바로 인증이 처리될 수 있습니다. 완료되면 아래와 같이 됩니다.

사용자 삽입 이미지


인증 문장은 어떻게 만들어지나?

인증을 위해 주어지는 "신촌역 2번 출구 방향 계단에서 사만구천백삼십팔 번째 걸음을 하면 키보드가 나타난다" 같은 희안한 문장은 임의로 생성되는 문장입니다. 이전에 날개툴 알파2 : 인증 문장 꾸러미(language pack 문장 꾸러미 라고 옮겼습니다)에 대해 한번 설명한 적이 있었지요. 미리 준비해 둔 문장 형식과 단어들 중에 임의로 선택해서 무작위 조합하는 형식입니다. 특히 랜덤 숫자를 포함하는 경우 한글로 읽어서 표시하게 됩니다. 이 숫자는 100 에서 99999 사이의 숫자, 즉 3~5자리 숫자 중에 임의의 숫자로 선택합니다. 49138 이 선택되면 실제로 인증문장에는 사만구천백삼십팔 로 나타나는 거죠.

혹시 예전에 잠시 유행하던 랜덤 소설 만들기를 기억하시나요? 사용자는 글 속에 들어갈 단어(사람 이름)만 지정해서 넣으면, 미리 저장되어 있던 글 패턴 속에서 하나를 골라 입력된 이름을 채워넣어 놀 수 있었습니다. 2002년에 공부 삼아 비슷한 녀석을 만들었었는데 그 당시에도 날림으로 만들었던거지만 오랜만에 그 소스를 꺼내보니 감회가 새롭네요;

사용자 삽입 이미지
이것도 어떤 의미에서는 집단지성이었네요. 누구나 와서 패턴을 등록할 수 있고, 글 속에 인물1 인물2 인물3 이란 단어를 넣어 패턴을 넣어두면, 누군가 와서 각 인물의 이름을 넣으면 등록되어 있는 많은 글 속에 하나를 꺼내 조합하는 거죠. 그리고 그 단어들은 기억해놨다가, 인물 이름을 넣지 않고 생성을 시도하면 이전에 누군가 시도해봤던 이름 중에 아무거나 골라서 무작위로 이야기를 생성하기 때문에, 나름 쏠쏠한 재미가 있었어요.

사용자 삽입 이미지

뭐 이런 결과도 나옵니다

날개의 인증 문장 생성은 여기에서 힌트를 얻었습니다. 3명의 인물로 고정된 이야기에서, 이제는 최대 10개의 단어와 10개의 숫자가 포함될 수 있게 되었고, 을/를 이/가 (으)로 같은 부분에서 종성 유무를 판별해 보다 자연스럽고 매끄러운 문장이 생성될 수 있게 되었습니다. 숫자만으로도 완전히 동일한 숫자가 나올 확률이 1/99899 인데 여기에 단어와 문장 구조가 바뀔 확률이 추가되니, 문장 구조만 잘 만들어주면 우연의 일치로 완전히 동일한 인증용 문장이 생겨날 확률은 상당히 낮습니다. 숫자를 쓰지 않더라도 RSS 피드가 자기 피드인지 인증하는데에는 충분할 정도의 확률은 됩니다 (인증용으로 생성된 문장이 우연의 일치로 새 글에 포함될 확률..)

배포판에 포함된 "나니센스" 문장팩을 이용해 몇 가지 문장을 생성해보면 이런게 나옵니다.

- 작은 눈에 쥐포 조차 없는데 평범한 내 고등어가 뭘 그리 좋을까
- 밤 12시 술에 취한 그대의 캔디, 새벽 2시 차갑게 꺼진 노트, 아무도 샌드위치 모르죠
- 지구를 구만구천이백이십삼 걸음 걸어가면 싸이가 육만사천이백오십삼 개 나올 것이다

이건 원래 "작은 눈에 $1 조차 없는데 평범한 내 $2가 뭘 그리 좋을까", "밤 12시 술에 취한 그대의 $1, 새벽 2시 차갑게 꺼진 $2, 아무도 내 $3 모르죠" , "지구를 %1 걸음 걸어가면 $1가 %2 개 나올 것이다" 라는 문장에 임의의 단어와 숫자가 치환되면서 생겨난 문장입니다. 당연히, 새로 만들어보면 또 어떤 단어와 숫자가 들어가게 될 지는 아무도 모릅니다.

날개를 운영하신다면 관리자 모드에 들어가셔서 환경설정 - 기타 설정에서 문장꾸러미를 변경하실 수 있습니다 (파일의 위치는 language/verifier아래). 또한 인증용 문장 꾸러미는 XML 형식으로 되어 있어 쉽게 수정하실 수 있으므로 자신이 만드는 날개의 분위기나 성격에 맞추어 센스있는 새로운 인증용 문장팩을 얼마든지 만들어 쓸 수 있고, 또 배포하실 수도 있습니다.


"블로그는 게임이고, 게임은 즐거워야 한다"가 변하지 않는 제 생각입니다.
날개는 언제나 이 생각을 전제로 조금이라도 블로그 하는 재미를 더할 있는 장난감으로 만들어 나갈겁니다 :)

  1. 2007/07/24 19:48 답글수정삭제

    비밀댓글 입니다

  2. 2007/07/24 19:48 답글수정삭제

    비밀댓글 입니다

  3. 2007/07/24 19:48 답글수정삭제

    비밀댓글 입니다

  4. 나니 2007/07/25 07:13 답글수정삭제

    내 센스가 이 정도라우!! (.....도망)

  5. 유아 2007/07/26 01:07 답글수정삭제

    멋진걸요, 웰컴 투 헬!

트랙백 주소 :: http://blog.laziel.com/652/trackback/
옵션
댓글 달기