TECH 으로 돌아가기
TECH HACKER NEWS 오늘 6분 읽기 31 READS

화면과 카메라만으로 파일 전송, QR 분수코드 실험 '데시멘'

화면과 카메라만으로 파일 전송, QR 분수코드 실험 '데시멘'
SOURCE IMAGE · HACKER NEWS

두 기기 사이에 네트워크를 전혀 거치지 않고 파일을 옮기는 방법이 있다. 한쪽 화면에는 파일이 끊임없이 움직이는 QR 코드의 흐름으로 표시되고, 다른 기기는 카메라로 그 화면을 비추기만 하면 파일이 재조립된다. 개발자 에번 크롤리(Bash Alarmist)가 공개한 '데시멘 옵티컬 트랜스퍼(Decimen Optical Transfer)'는 이 단순한 아이디어를 실제 동작하는 웹 도구로 구현한 실험이다. 앱 설치도, 페어링도, 계정도 필요 없이 카메라 권한만 있으면 되며, 데이터는 말 그대로 빛을 타고 건너간다.

뒷채널 없는 링크와 분수코드

이 방식의 핵심 과제는 화면에서 카메라로 향하는 통신에 되돌아오는 경로, 즉 back-channel이 없다는 점이다. 일반적인 전송 프로토콜은 수신 측이 '몇 번 프레임을 놓쳤으니 다시 보내달라'고 요청하는 재전송 구조에 의존한다. 카메라가 화면을 바라보는 단방향 링크에서는 이런 요청이 불가능하다. 데시멘은 이 문제를 분수코드(fountain code), 구체적으로는 루비 변환(Luby transform)으로 우회한다.

분수코드의 발상은 원본을 K개의 조각으로 나눈 뒤, 조각들을 조합해 사실상 무한한 수의 인코딩 프레임을 만들어 내는 것이다. 송신 기기는 이 프레임을 끝없이 순환하며 QR로 뿌리고, 수신 기기는 순서에 상관없이 서로 다른 프레임을 약 K의 1.15배가량 모으면 원본을 복원할 수 있다. 어떤 프레임을 놓쳐도, 어떤 순서로 받아도 상관없다. 특정 프레임의 손실은 전체 시간이 약간 늘어나는 비용으로만 나타날 뿐, 결과의 정확성을 해치지 않는다. 단방향 광학 링크의 불안정성을 정면으로 받아들이면서도 신뢰성을 확보하는 설계인 셈이다.

실제로 쓸 수 있는 수준의 완성도

실험적 개념임에도 다루는 세부는 제법 실용적이다. 최대 64MB 파일 또는 붙여넣은 텍스트 조각을 전송할 수 있고, 파일 이름과 미디어 타입이 보존된다. 압축이 이득이 될 때만 gzip을 적용하고, 전송이 끝나면 SHA-256 해시로 무결성을 검증한 뒤에야 사용자에게 파일을 건넨다. 받은 영상은 페이지 안에서 바로 재생된다. 속도 면에서는 이 도구가 갈라져 나온 더 큰 실험이 폰 대 폰으로 128KB/s를 기록했고, 전송 도중 130KB/s로 파일을 끌어오는 장면도 소개됐다.

사용 방식도 간결하다. 송신 기기에서 send 페이지를 열고, 수신 폰에서는 화면에 표시된 네트워크 URL로 접속한 뒤 자체 서명 인증서를 한 번 수락하면 된다. 첫 방문 이후에는 오프라인에서도 동작하며, 원한다면 iOS와 안드로이드 양쪽 모두에서 홈 화면에 앱 형태(PWA)로 설치할 수 있다. QR 생성에는 node-qrcode, 인식에는 zxing-wasm이 쓰였다.

무엇을 얻고 무엇을 얻지 못하는가

실무자가 오해하지 말아야 할 지점은 이 도구가 제공하는 속성이 '네트워크 없음'이지 '기밀성'이 아니라는 사실이다. 두 모드 모두 암호화되지 않으며, 송신 화면에 떠 있는 내용은 그쪽으로 카메라를 겨눈 누구에게나 읽힌다. 즉 물리적으로 격리된 두 기기 사이에 파이프를 잇는 데는 유효하지만, 그 파이프 자체가 안전한 것은 아니다. 민감한 데이터를 옮길 목적이라면 전송 전에 별도로 암호화하는 절차가 전제되어야 한다.

그럼에도 이 접근이 갖는 의미는 분명하다. 서로 다른 네트워크에 묶여 있거나, 아예 네트워크가 차단된 환경, 혹은 신뢰할 수 없는 중간 경로를 거치고 싶지 않은 상황에서 화면과 카메라라는 어디에나 있는 하드웨어만으로 데이터를 건널 수 있다는 점이다. 에어갭 환경에서의 소량 데이터 반출입, 임시 기기 간 공유, 설치가 제한된 상황에서의 파일 이동 같은 틈새에서 활용을 상상해 볼 만하다.

동시에 한계도 뚜렷하다. 64MB라는 상한과 100KB/s대의 대역폭은 대용량 전송에는 부적합하고, 카메라 초점과 화면 밝기, 물리적 정렬 같은 광학 조건에 성능이 좌우된다. 크롤리 자신도 이 개념이 독립적으로 도달한 것이지만 비슷한 발상을 한 사람이 여럿 있었다고 밝혔다. 결국 데시멘은 정답이라기보다, 단방향 광학 채널이라는 제약 아래에서 분수코드가 어떻게 우아한 해법이 되는지를 보여 주는 잘 다듬어진 참고 사례로 읽는 편이 적절하다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://github.com/bashalarmistalt/decimen-optical-transfer
SHARE
처리 중...