KillSwitch 난독화 언어, LLM 벤치마크 최고 66.8점에 그쳐
- KillSwitch는 LLM과 코딩 에이전트를 어렵게 만들려고 설계된 스택 기반 esoteric 언어이며, 스펙에 숨은 거짓말, 문자 수 세기 규칙, 안전 가드레일을 건드리는 구문 등을 넣음
- 벤치마크 최고 점수는 Claude Opus 5의 66.8점이고, Fable 5.1과 Gemini 4 Argon은 과도한 안전 가드레일 때문에 점수가 낮음
- 벤치마크는 인터프리터 바이너리와 스펙만 제공하고 인터넷 접근은 막은 상태에서 실행됨
- 작성자는 과제가 hello world나 섭씨-화씨 변환 수준으로 단순해서 66.8점을 LLM이 코드를 이해한다는 증거로 보지 않음
- 오픈 웨이트 모델 중에서는 MiMo-V2.6-Pro가 가장 성적이 좋음
Hacker News opinions
클로드한테 Go로 디컴파일러랑 컴파일러 만들라고 시켜봤는데 예제 프로그램이 전부 돌아감. 노이즈를 씌운 것 자체는 결국 우회 가능한 거 아님?
벤치마크는 인터프리터 바이너리랑 스펙만 주고 인터넷도 막아둔 상태에서 돌리는 거임. 소스까지 주면 Rust 인터프리터 읽고 뚫을 수 있다는 건 맞는 말이라고 봄.
난독화 기법이 웹페이지에 다 정리돼 있으니까 차세대 모델한테는 이미 깨진 거나 마찬가지임.
실행 결과는 거짓말 안 함. 규칙이 전부 바이너리 레벨에 있으니까 LLM보다 사람한테 훨씬 어려울 것 같음.
LLM이 그냥 파이썬 스크립트 짜서 함정 빼고 중간 언어로 바꾸면 되는 거 아님?
그게 실제로 그렇게 됨. 어려운 건 언어 자체가 아니라 스펙 속 함정을 걸러내는 쪽임. 토크나이저 트릭 위주로 만든 esoteric 언어는 스크립트 하나로 쉽게 뚫리더라.
스트룹 테스트 생각나네. 똑똑한 LLM이면 전처리기 만들어서 일반 문법으로 작업하지 않을까 싶음.
사람도 프로그래밍은 스펙 읽고 바로 되는 게 아니라 연습하면서 실수로 배우는 거라, 결국 학습한 걸 재조합하는 것 아닌가 싶음.
사람 베이스라인은 없음? 66.8점이 이해 못 한다는 증거라는 근거도 궁금함.
사람 테스트는 자원봉사자가 필요해서 이번엔 못 했다고 함. 근거는 과제가 단순한데 어떤 모델도 100%를 못 맞췄다는 점이라고 설명함.