Rnp

Rnp (OpenPGP)

Rnp 확장은 고성능 C++ OpenPGP 라이브러리인 RNP를 사용할 수 있게 해 주는 모듈이에요. RNP는 Mozilla Thunderbird가 사용하는 라이브러리예요.

출처: PHP: Rnp - Manual

본문

⚠️ 경고: 이 확장은 실험적(EXPERIMENTAL) 이에요. 이 확장의 동작(함수 이름과 관련 문서 포함)은 향후 PHP 릴리스에서 예고 없이 바뀔 수 있어요. 이 확장은 본인의 책임 하에 사용해야 해요.

이 모듈은 RNP 라이브러리를 사용할 수 있게 해 줘요. RNP는 Mozilla Thunderbird가 사용하는 고성능 C++ OpenPGP 라이브러리예요.

주요 함수

기본·라이브러리 정보

  • rnp_ffi_create, rnp_ffi_destroy — 최상위 객체 생성/소멸
  • rnp_version_string, rnp_version_string_full — RNP 라이브러리 버전
  • rnp_backend_string, rnp_backend_version — 암호화 백엔드 이름/버전
  • rnp_supported_features — 지원 기능을 JSON으로 반환

키 관리

  • rnp_op_generate_key — 키 생성
  • rnp_load_keys, rnp_load_keys_from_path, rnp_save_keys, rnp_save_keys_to_path — 키 로드/저장
  • rnp_import_keys, rnp_import_signatures — 키/서명 가져오기
  • rnp_key_export, rnp_key_get_info, rnp_key_remove, rnp_key_revoke — 키 내보내기·조회·제거·폐기
  • rnp_list_keys, rnp_locate_key — 키 목록·검색

암호화·서명

  • rnp_op_encrypt — 메시지 암호화
  • rnp_decrypt — PGP 메시지 복호화
  • rnp_op_sign, rnp_op_sign_cleartext, rnp_op_sign_detached — 서명
  • rnp_op_verify, rnp_op_verify_detached — 서명 검증

클래스

  • RnpFFI — 라이브러리와 상호작용하기 위한 최상위 클래스

더 알아보기