2026년 상식닷컴 선정 식당 & 카페 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요

CryptoJS

작성: sangseek | 게시 날짜: 2025/11/12 | 조회수: 70
[ 편집불가 ]

CryptoJS는 자바스크립트로 작성된 암호화 라이브러리입니다. 브라우저와 Node.js 환경에서 대칭/비대칭 암호화 도구, 해시 함수, 인코딩 유틸리티 등을 순수 자바스크립트로 제공합니다. 주요 내용 - 목적: 문자열이나 바이너리 데이터를 암호화·복호화하고 해시값을 생성하는 등 암호학적 연산을 쉽게 수행하도록 도와줍니다. - 구현 방식: 순수 자바스크립트 구현체로, 브라우저의 네이티브 Web Crypto API(SubtleCrypto)를 사용하지 않습니다. - 지원 알고리즘(대표적 예): AES, DES, TripleDES, RC4, Rabbit(스트림 암호), MD5, SHA-1, SHA-256, SHA-512, RIPEMD160 등(구성에 따라 포함 모듈이 다를 수 있음). - 유틸리티: Base64/Hex/Utf8 인코딩, WordArray 타입 등 데이터 변환과 출력 포맷을 지원합니다. - 사용법(간단 예) - AES 암호화/복호화: var encrypted = CryptoJS.AES.encrypt("message", "secret key 123"); var decrypted = CryptoJS.AES.decrypt(encrypted, "secret key 123").toString(CryptoJS.enc.Utf8); - 해시 생성: var hash = CryptoJS.SHA256("message").toString(CryptoJS.enc.Hex); 보안 및 실무 고려사항 - 클라이언트(브라우저)에서 비밀 키를 다루는 것은 본질적으로 위험합니다. 키 관리·배포와 같은 부분은 서버 측에서 처리하는 것이 안전합니다. - CryptoJS는 순수 JS 구현이므로 네이티브 Web Crypto API보다 성능과 일부 보안 측면(예: 타이밍 공격 완화 등)에서 취약할 수 있습니다. 최신 브라우저 환경에서는 가능한 Web Crypto API 사용을 권장합니다. - 올바른 암호화 사용(안전한 모드·IV·키 길이·패딩 등)이 중요하며, 암호화 설계 자체는 전문가 검토가 필요합니다. 요약하면, CryptoJS는 자바스크립트에서 암호화와 해시 연산을 쉽게 수행하게 해 주는 오픈소스 라이브러리지만, 실제 보안 요구가 높은 환경에서는 Web Crypto API나 서버측 솔루션과 병행하여 신중히 사용해야 합니다.
내용이 부정확하다면 싫어요를 누르세요.