SensitiveValueProtector — @gj-kit/toss-payments-postgresql
@gj-kit/toss-payments-postgresql에서 공개하는 interface입니다. package version 0.5.1의 release declaration을 그대로 표시합니다.
검증된 import 예제
섹션 제목: “검증된 import 예제”import { SensitiveValueProtector } from '@gj-kit/toss-payments-postgresql';시그니처, 매개변수, 반환 타입
섹션 제목: “시그니처, 매개변수, 반환 타입”/** * 앱이 소유하는 비동기 민감값 보호기. * * AES-GCM, envelope encryption, KMS 등을 선택할 수 있도록 crypto 의존성을 이 패키지에 * 들이지 않는다. `encrypt`는 평문과 다른, DB에 안전하게 저장 가능한 문자열을 반환해야 * 하고 `decrypt`는 같은 context에서만 원문을 복원해야 한다. 구현은 암호화 실패 메시지에 * 평문을 포함하지 않아야 한다. * * 이 패키지의 스토어가 넘기는 평문은 항상 well-formed UTF-16이다(JSON.stringify 출력 또는 * ASCII secret). 구현은 비페어 서로게이트를 조용히 바꿔 봉하지 말고 거부해야 한다 — 레퍼런스 * AES-256-GCM 보호기는 `TypeError`로 거부한다. */interface SensitiveValueProtector { encrypt(plaintext: string, context: SensitiveValueContext): Promise<string>; decrypt(ciphertext: string, context: SensitiveValueContext): Promise<string>;}이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.
Release context
섹션 제목: “Release context”- 패키지:
@gj-kit/toss-payments-postgresql - 버전:
0.5.1 - 공개 entry:
. - 소스: GitHub
구현 주석
섹션 제목: “구현 주석”앱이 소유하는 비동기 민감값 보호기.
AES-GCM, envelope encryption, KMS 등을 선택할 수 있도록 crypto 의존성을 이 패키지에
들이지 않는다. encrypt는 평문과 다른, DB에 안전하게 저장 가능한 문자열을 반환해야
하고 decrypt는 같은 context에서만 원문을 복원해야 한다. 구현은 암호화 실패 메시지에
평문을 포함하지 않아야 한다.
이 패키지의 스토어가 넘기는 평문은 항상 well-formed UTF-16이다(JSON.stringify 출력 또는
ASCII secret). 구현은 비페어 서로게이트를 조용히 바꿔 봉하지 말고 거부해야 한다 — 레퍼런스
AES-256-GCM 보호기는 TypeError로 거부한다.