DEENESPTFRRUARHIKOZHNL

클래스 ara::crypto::cryp::PrivateKey

[SWS_CRYPT_22500] Upstream: RS_CRYPTO_02002, RS_CRYPTO_02403

class PrivateKey :         public CryptoObject {...};

Generalized Asymmetric Private Key interface.

Header-Datei#include "ara/crypto/cryp/cryobj/private_key.h"
Forwarding-Header#include "ara/crypto/crypto_fwd.h"
Scopenamespace ara::crypto::cryp
Basisklasse(n)CryptoObject

사용자 가이드AI 생성

비대칭 개인 키를 캡슐화하고 해당하는 공개 키를 제공합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: cbfbff2bb90c 출처 열린 질문 (3)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

비대칭 개인 키를 캡슐화하고 해당하는 공개 키를 제공합니다.

인터페이스 ara::crypto::cryp::PrivateKey은(는) AUTOSAR Adaptive의 비대칭 개인 키를 위한 일반 인터페이스를 정의하며 주로 공유 포인터 별칭 PrivateKey::Sptr을(를) 통해 관리됩니다[SWS_CRYPT_22501]. 이 인터페이스의 핵심 함수 GetPublicKey()은(는) 암호화 파트너 작업에 제공할 수 있도록 연관된 공개 키를 PublicKey::Sptr(으)로 검색할 수 있게 해줍니다[SWS_CRYPT_22511]. 이 검색은 표준화된 오류 코드 없이 스레드 안전 및 예외 안전으로 지정되어 있으며, 발생 가능한 모든 오류는 반환 타입 ara::core::Result을(를) 통해 구현별로 전달될 것으로 보입니다(해석). 질문 (열림)

컨텍스트

인터페이스 ara::crypto::cryp::PrivateKey은(는) AUTOSAR Adaptive Platform의 crypto 모듈 내에서 비대칭 개인 키를 위한 일반화된 인터페이스로 기능합니다. 헤더 파일 ara/crypto/cryp/cryobj/private_key.h에 선언되어 있으며 기본 인터페이스 CryptoObject에서 직접 파생됩니다. 비대칭 암호화 시스템의 핵심 컴포넌트로서 PrivateKey은(는) 디지털 서명 생성 또는 비대칭 복호화 절차와 같은 암호화 작업에 필요한 기밀 키 자료를 캡슐화합니다.

기본 클래스 CryptoObject 외에도 해당하는 공개 키 인터페이스 PublicKey 및 이를 사용하는 암호화 서비스와 애플리케이션 루틴이 주요 상호작용 파트너에 속합니다. 개인 키는 항상 비밀로 유지되어야 하지만, 인터페이스는 멤버 함수 GetPublicKey()을(를) 통해 연관된 공개 키 [SWS_CRYPT_22511]의 직접적인 제공을 가능하게 합니다. 이러한 방식으로 개인 키와 그 수학적 대응물 간의 고정된 타입 관련 관계가 실현됩니다.

PrivateKeyContext Anwendung Anwendung PrivateKey PrivateKey Anwendung->PrivateKey nutzt Sptr PublicKey PublicKey Anwendung->PublicKey empfaengt Sptr CryptoObject CryptoObject PrivateKey->CryptoObject erbt von PrivateKey->PublicKey GetPublicKey()를 통해 제공함

컨텍스트 다이어그램: 암호화 객체 모델 내 PrivateKey의 임베딩 및 해당 PublicKey와의 관계. 출처: [SWS_CRYPT_22501], [SWS_CRYPT_22511]

수명 주기

인터페이스 PrivateKey 인스턴스의 관리 및 전달은 std::shared_ptr<PrivateKey>의 타입 별칭으로 정의된 타입화된 스마트 포인터 PrivateKey::Sptr을 통해 수행됩니다 [SWS_CRYPT_22501]. 이 공유 포인터는 공유 소유권과 참조 카운팅을 통한 자동 리소스 관리를 보장하므로, 마지막 참조가 사라지는 즉시 보호된 키 자료가 해제됩니다.

PrivateKey은 GetPublicKey()과 같은 순수 가상 메서드를 포함하는 추상 인터페이스이므로 [SWS_CRYPT_22511], 애플리케이션이 클래스를 직접 인스턴스화할 수 없습니다. PrivateKey::Sptr의 구체적인 인스턴스 생성 및 제공은 아마도 Adaptive 시스템의 전문화된 팩토리, 키 관리 컴포넌트 또는 암호화 프로바이더를 통해 수행될 것으로 보입니다(해석). 질문 Q-f0f9fe2258fac168 (열림) 인터페이스 자체는 개별 내부 상태나 상태 전이를 정의하지 않습니다.

동시성과 관련하여 인터페이스는 핵심 멤버 함수 GetPublicKey()에 대해 스레드 안전성(thread-safe)을 명시적으로 규정합니다 [SWS_CRYPT_22511]. 이를 통해 여러 실행 스레드가 해당 공개 키를 얻기 위해 동일한 키 인스턴스에 동기화 없이 동시에 읽기 접근할 수 있습니다.

사용 경로

PrivateKey의 전형적인 사용 경로는 개인 키의 수신과 유효성 검사, 등록 또는 통신 목적을 위한 해당 공개 키의 후속 추출을 포함합니다:

  1. 키 획득: 소비하는 소프트웨어 컴포넌트는 PrivateKey::Sptr 형태의 비대칭 개인 키의 유효한 인스턴스를 수신합니다 [SWS_CRYPT_22501].
  2. 파트너 키 조회: 후속 워크플로를 위해 해당 공개 키가 필요한 경우 컴포넌트는 인스턴스에서 멤버 함수 GetPublicKey()을 호출합니다 [SWS_CRYPT_22511].
  3. 결과 처리: 호출은 ara::core::Result<PublicKey::Sptr>을 반환합니다 [SWS_CRYPT_22511]. 애플리케이션은 결과 객체의 성공 여부를 확인하고 성공적으로 실행된 경우 포인터 PublicKey::Sptr의 압축을 풉니다.
  4. 추가 사용: 획득한 공개 키는 이후 외부 통신 파트너에게 전송되거나 로컬 검증 루틴으로 전달될 수 있습니다. 공개 키의 파생은 내부적으로 개인 키의 수학적 키 매개변수에서 직접 수행될 것으로 보입니다(해석). 질문 Q-464000dc5d638649 (열림)

오류 시나리오

오류 없는 통합을 위해 GetPublicKey()의 오류 특성 및 경계 조건이 결정적입니다:

  • 표준화된 오류: 사양에 따르면 GetPublicKey() 함수는 표준화된 오류 코드를 정의하지 않습니다 [SWS_CRYPT_22511].
  • 오류 채널: 표준화된 오류가 정의되어 있지 않지만 반환 타입 ara::core::Result은 잠재적인 실패를 전달합니다. 내부 키 파생 또는 객체 생성 중에 오류가 발생하는 경우 결과 객체에는 기본 암호화 드라이버의 구현별 오류 코드가 포함될 것으로 보입니다(해석). 질문 Q-4af6390594d9c5e1 (열림)
  • 예외 안전성: 이 함수는 명시적으로 예외 안전(exception safe)으로 분류되어 있으며 식별자 noexcept이 부여되어 있습니다 [SWS_CRYPT_22511]. 따라서 호출자는 C++ 예외를 포착할 필요가 없습니다.
  • 사전 및 사후 조건: 성공적인 호출을 위한 사전 조건은 유효하고 해제되지 않은 PrivateKey 인스턴스입니다. 사후 조건으로서 인터페이스는 성공 시 개인 키와 수학적으로 정확히 일치하는 PublicKey::Sptr의 반환을 보장합니다 [SWS_CRYPT_22511].

이 클래스 가이드는 AUTOSAR Adaptive R25-11 사양을 기반으로 AI에 의해 생성되었습니다.

UML 클래스 다이어그램

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__crypto__cryp__PrivateKey762 PrivateKey + GetPublicKey() nara__crypto__cryp__CryptoObject679 CryptoObject nara__crypto__cryp__PrivateKey762->nara__crypto__cryp__CryptoObject679 nara__crypto__Serializable855 Serializable nara__crypto__cryp__CryptoObject679->nara__crypto__Serializable855

메서드

The interface shall return the public key correspondent to this private key.

virtual ara::core::Result< PublicKey::Sptr > GetPublicKey () const noexcept=0;

타입 별칭

Sptr 타입 별칭

shared smart pointer of the interface.

메서드 문서

함수 GetPublicKey [SWS_CRYPT_22511] Upstream: RS_CRYPTO_02108, RS_CRYPTO_02115

virtual ara::core::Result< PublicKey::Sptr > GetPublicKey () const noexcept=0;

The interface shall return the public key correspondent to this private key.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 9b62fab60fc4 출처
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

사용

ara::crypto::cryp::PrivateKey 클래스의 GetPublicKey 메서드는 개인 키에 대응하는 공개 키 [SWS_CRYPT_22511]을(를) 동기식으로 검색하는 데 사용됩니다. 호출은 PrivateKey의 기존 인스턴스에서 매개변수 없이 수행됩니다. 인터페이스는 성공적인 실행 시 연결된 PublicKey 객체에 대한 공유 포인터를 제공하는 ara::core::Result<PublicKey::Sptr>을(를) 반환 값으로 제공합니다 [SWS_CRYPT_22511].

오류 처리 및 동시성

이 메서드에 대해 사양에 표준화된 오류 코드가 정의되어 있지 않습니다 [SWS_CRYPT_22511]. 오류 처리는 ara::core::Result 유형의 반환 객체를 통해 수행됩니다. 작업이 noexcept(으)로 선언되어 있으므로 예외 안전(exception safe)한 것으로 간주됩니다 [SWS_CRYPT_22511]. 또한 이 메서드는 const(으)로 한정되어 있으며 스레드 안전(thread-safe)한 것으로 명시되어 있어 여러 스레드에 걸친 병렬 읽기 접근이 허용됩니다 [SWS_CRYPT_22511].

상호 작용

전형적인 암호화 흐름에서 GetPublicKey은(는) GeneratePrivateKey을(를) 사용한 비대칭 키 쌍 생성 후에 사용됩니다 [SWS_CRYPT_20722]. 이때 생성된 개인 키의 허용된 사용 플래그가 대응하는 공개 키로 전송됩니다(예: 서명 생성의 권한이 서명 검증으로 전달됨) [SWS_CRYPT_20722]. 이 함수는 가져온 공개 키의 압축 해제에 사용되는 ProtectedKeyImportCtx의 동명 인터페이스와 구별되어야 합니다 [SWS_CRYPT_50211].

이 사용 지침은 AUTOSAR R25-11을 기반으로 자동 생성되었습니다.

구현자 가이드 준비 중 (복잡도 I1)

Header-Datei#include "ara/crypto/cryp/cryobj/private_key.h"
Scopeclass ara::crypto::cryp::PrivateKey
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< PublicKey::Sptr >A result containing a shared pointer to the public key correspondent to this private key

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CRYPT_22511
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22511@rel:R25-11#0612bcfd
Content hash
0612bcfd
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22511
Status: valid/unmigrated Version: rel:R25-11#e5f0457b Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_22511@rel:R25-11#e5f0457b
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f0d041e72026-09-30
  • R19-11rel:R19-11#bb931c232026-10-14
  • R20-11rel:R20-11#85846a1e2026-10-14
  • R21-11rel:R21-11#85846a1e2026-10-14
  • R22-11rel:R22-11#99b114f02026-10-14
  • R23-11rel:R23-11#6fdc19552026-10-14
  • R24-11rel:R24-11#a752dbfc2026-10-14
  • R25-11rel:R25-11#e5f0457b2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

타입 별칭 문서

타입 별칭 Sptr [SWS_CRYPT_22501] Upstream: RS_CRYPTO_02306

using Sptr = std::shared_ptr<PrivateKey>;

shared smart pointer of the interface.

Header-Datei#include "ara/crypto/cryp/cryobj/private_key.h"
Scopeclass ara::crypto::cryp::PrivateKey
SymbolSptr

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CRYPT_22501
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22501@rel:R25-11#49190863
Content hash
49190863
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22501
Status: valid/unmigrated Version: rel:R25-11#48b56da1 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_22501@rel:R25-11#48b56da1
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#568a064f2026-09-30
  • R19-11rel:R19-11#c428ba2c2026-10-14
  • R20-11rel:R20-11#fb4c3bbd2026-10-14
  • R21-11rel:R21-11#fb4c3bbd2026-10-14
  • R22-11rel:R22-11#6e7979fe2026-10-14
  • R23-11rel:R23-11#d106cca42026-10-14
  • R24-11rel:R24-11#5eb65ced2026-10-14
  • R25-11rel:R25-11#48b56da12026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill