복사된 텍스트를 암호화하면서 화면에 읽을 수 있게 표시하는 React 컴포넌트 구축

발행: (2025년 12월 4일 오후 01:53 GMT+9)
2 min read
원문: Dev.to

Source: Dev.to

화면에 읽을 수 있는 상태로 유지하면서 복사된 텍스트를 암호화하는 React 컴포넌트 구축 커버 이미지

작동 원리

  • 텍스트는 화면에 정상적으로 표시됩니다.
  • 사용자가 텍스트를 복사하면 클립보드에는 무작위 Vigenère 암호로 생성된 암호화된 난독화 문자열이 들어갑니다.
  • 암호화 키는 각 렌더링 시마다 새로 생성되며 절대 노출되지 않아 복호화가 불가능합니다.

사용법

import { ProtectedText } from "react-text-protect";

function App() {
  return (
    <ProtectedText>
      This text looks normal but
      copying it produces encrypted
      output that cannot be decoded.
    </ProtectedText>
  );
}

복사 출력 예시

Jeb lhag fdiax josfi kljpdy ftq ut peryuobv xvvrf

왜 이 접근 방식인가

  • 오른쪽 클릭 메뉴가 깨지거나 접근성 문제가 없습니다.
  • 브라우저의 검사 요소(Inspect Element)로 우회할 수 없습니다.
  • 사용자를 위한 일반 텍스트 동작을 유지합니다.
  • 의존성이 없으며 번들 크기가 약 2 KB에 불과합니다.

사용 사례

  • 온라인 시험 및 평가
  • AI 스크래퍼 차단
  • 독점 문서화
  • 읽을 수는 있지만 복사할 수 없어야 하는 모든 콘텐츠

설치 및 링크

npm install react-text-protect

피드백 환영합니다!

Back to Blog

관련 글

더 보기 »

Dev 커뮤니티 신규 회원

여러분 안녕하세요, 저는 dev 커뮤니티에 새로 온 사람이고 코딩 여정을 다시 시작하고 있습니다. 저는 2013년부터 2018년까지 코딩을 했었습니다. 그 이후에 새로운 기회를 탐색했고, st...