마이크로소프트 워드와 온라인 글자수 계산기의 단어수 차이 원인 분석 | GoToolstack
워드와 웹 글자수 세기 도구의 차이를 분석합니다. 하이픈 연결 단어, 아포스트로피, UTF-16 이모지 바이트, 한중일(CJK) 띄어쓰기 한계 및 분당 읽기 속도(WPM) 계산법.
특수 HTML 문자를 안전한 엔티티 코드로 이스케이프하거나 역변환.
HTML 엔티티 인코더·디코더는 웹 애플리케이션의 게시판 본문, 댓글 입력 폼 및 CMS 에디터에서 사용자 입력 텍스트를 브라우저가 안전하게 렌더링할 수 있도록 특수문자를 W3C 표준 엔티티 코드로 변환해 주는 웹 보안 유틸리티입니다. 브라우저 HTML 파서가 태그 여닫기 기호(<, >)나 속성 구분자(", ')를 실행 가능한 마크업 코드로 오인하는 현상을 방지하여 크로스 사이트 스크립팅(XSS) 취약점을 사전에 차단합니다.
실제 보안 취약점 점검 시나리오에서 악의적인 스크립트 페이로드 <script>alert("관리자 세션: " + document.cookie);</script>를 입력창에 붙여넣고 엔티티 인코딩을 실행하면, 브라우저가 즉시 <script>alert("관리자 세션: " + document.cookie);</script> 형태의 78자 안전 텍스트로 0.005초 내에 치환합니다. 반대로 데이터베이스에 수용된 네임드 엔티티(&, ©, ™)를 원문 기호(&, ©, ™)로 복원하는 디코딩 작업도 무손실로 완결할 수 있습니다.
모든 엔티티 변환 처리는 브라우저 내장 DOM 요소(TextNode 및 innerHTML) 인터페이스를 활용하여 사용자 기기의 로컬 샌드박스 메모리 안에서만 실행됩니다. 외부 웹 서버나 원격 분석 플랫폼으로 입력 데이터가 송신되지 않아 보안 감사 텍스트나 사내 시스템 오류 로그를 안심하고 인코딩 및 디코딩할 수 있습니다.
안전 출력 = Text.replace(/[&<>'"/]/g, char => EntityMap[char])
HTML 5대 핵심 예약 문자(&, <, >, ", ')를 순회 탐색하여 표준 네임드 엔티티 또는 10진수/16진수 유니코드 엔티티로 치환합니다.