짧은 답
- 만듭니다. QR·바코드 생성기를 열고 할 일을 고른 뒤 — 링크, Wi-Fi 네트워크, 연락처 카드 — 코드가 담게 될 정확한 문자열을 확인합니다. 페이지는 그것을 숨기는 대신 보여 줍니다. 인쇄용은 SVG, 화면용은 PNG로 내보내세요.
- 한 장 인쇄합니다. 실제 크기로, 실제 종이에, 이백 장 인쇄 전에.
- 증명합니다. 교정쇄를 휴대폰으로 — 비스듬히, 그 장소의 조명에서 — 찍고, 사진을 QR·바코드 리더에 끌어다 놓습니다. 디코딩된 내용물과, 링크라면 실제로 도달하는 호스트를 보여 줍니다. 의도한 것과 일치하면 인쇄는 안전합니다.
두 도구 모두 브라우저에서 돌고 아무것도 어디로도 보내지 않습니다. Wi-Fi 코드라면, 그 안의 비밀번호가 남의 사이트에 입력된 적이 한 번도 없다는 뜻입니다.
검증이 실제로 잡아내는 것
- 오타. 가장 흔한 고장은 코드가 아니라 그 안의 URL입니다. 되읽기는 붙여 넣었다고 생각한 것이 아니라 실제로 인코딩된 것을 시험하는 유일한 점검입니다.
- 크기와 거리. 홀 건너편에서 찍는 코드는 명함 위의 코드보다 굵은 모듈이 필요합니다. 사람들이 서 있을 자리에서 교정쇄를 찍는 것이 정직한 시험이고, 생성기의 오류 보정 단계는 각 단계가 밀도로 얼마를 치르는지 소리 내어 말해 줍니다.
- 색. 밝은 바탕에 어둡게 인쇄된 코드는 찍힙니다. 대비가 낮은 브랜드 팔레트는 자주 안 찍힙니다. 이 리더는 대부분의 휴대폰보다 잘 버팁니다. 리더가 사진을 힘들어한다면, 로비의 가장 오래된 휴대폰에게는 기회가 전혀 없습니다.
- 접힘과 반사. 리드-솔로몬 보정 덕에 일부가 가려진 코드도 여전히 읽힙니다 — 여러분이 고른 단계까지는. 비바람을 맞을 포스터라면 가장 높은 단계와, 그 값으로 약간 촘촘해지는 코드를 받을 자격이 있습니다.
같은 리더를, 내 것이 아닌 코드에
검증은 남이 인쇄한 QR을 여는 안전한 방법이기도 합니다. 리더는 무엇이든 열리기 전에 전체 주소와 실제로 도달하는 호스트를 보여 주고, 링크를 위장하는 수법들의 이름을 짚어 줍니다. @ 앞의 사용자 이름, 닮은꼴 문자, 리디렉션. 주차 미터기의 스티커는 그 검사를 받을 만하고, 학회 명찰도 그렇습니다. 아무것도 대신 열리지 않고, 찍은 내용은 어디로도 전송되지 않습니다.
매주 하는 일이라면
만들기와 점검하기가 두 페이지에 사는 것은 의도된 일입니다. 각자 한 가지 일을 하고, 각자 혼자서 아무것도 컴퓨터를 떠나지 않음을 증명할 수 있습니다. 하지만 둘 다 오픈 소스입니다. MIT 라이선스, 의존성 없는 ES 모듈 — 생성기의 인코더와 리더의 리드-솔로몬 디코더, 각각을 설명하는 README와 함께.
매주 책상에서 코드가 나간다면, 코드 에이전트를 저장소로 보내, 생성하자마자 그려진 코드를 디코더에 되돌려 통과시키는 페이지를 만들어 달라고 하세요. 내보낼 때마다 자가 시험이 도는 셈입니다. 모듈은 읽히기 위해 쓰였고, 가져가는 것이야말로 라이선스가 존재하는 이유입니다.