저는 최근에 HTML5 비디오 퍼즐이라는 첫 번째 웹 게임을 개발했습니다. 개발 과정은 흥미로웠습니다. 저는 프로그래밍을 좋아하지만 게임 로직을 구현한 후 흥미로운 아이디어를 얻었습니다. 코드를 숨길 수 있는 방법을 찾아보면 어떨까요? 처음에는 마우스 오른쪽 버튼을 클릭하면 페이지의 소스 코드를 볼 수 있도록 컨텍스트 메뉴를 비활성화하는 등 매우 간단한 것을 생각했습니다. 그러나 이것은 말이 되지 않습니다. 마우스 오른쪽 버튼 클릭 메뉴는 작동하지 않으며 사람들은 키보드 단축키나 메뉴 표시줄의 "소스 보기"를 통해 소스 코드를 계속 볼 수 있습니다.
사진 한 장이 천마디 말을 할 수 있습니다
사진의 크기에 따라 다릅니다. 하지만 저는 소스 코드를 암호화하여 이미지에 저장하기로 결정했습니다. HTML5 캔버스 구성 요소는 이미지 픽셀에 대한 작업을 지원하므로 이러한 종류의 작업에 매우 적합합니다. 픽셀은 빨간색, 녹색, 파란색 및 알파 채널의 네 가지 값(채널)으로 표시됩니다. 해당 값은 0에서 255까지 분포됩니다. 내 Javascript 코드는 문자이며 각 문자에는 해당 ASCII 값이 있습니다. ASCII 값의 범위도 0~255이므로 캔버스의 각 픽셀을 순회하면서 각 픽셀에 대한 3개의 코드 문자의 ASCII 값을 RGB 값으로 설정하는 것을 통해 쉽게 할 수 있습니다. charCodeAt 함수를 사용하여 이러한 문자를 제거하세요.