요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
Asymmetric Signature
====================
Asymmetric Signature Algorithm Definitions
------------------------------------------
.. kernel-doc:: include/crypto/sig.h
:functions: sig_alg
Asymmetric Signature API
------------------------
.. kernel-doc:: include/crypto/sig.h
:doc: Generic Public Key Signature API
.. kernel-doc:: include/crypto/sig.h
:functions: crypto_alloc_sig crypto_free_sig crypto_sig_set_pubkey crypto_sig_set_privkey crypto_sig_keysize crypto_sig_maxsize crypto_sig_digestsize crypto_sig_sign crypto_sig_verify
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
비대칭 서명
1-3비대칭 서명
비대칭 서명 알고리즘 정의
4-9비대칭 서명 알고리즘 정의
`include/crypto/sig.h`에 선언된 `sig_alg` 구조체의 kernel-doc 설명을 가져옵니다. 이 구조체는 비대칭 서명 알고리즘 구현이 Crypto API에 제공하는 연산과 속성을 정의합니다.
.. kernel-doc:: include/crypto/sig.h
:functions: sig_alg
비대칭 서명 API
10-18비대칭 서명 API
`include/crypto/sig.h`의 Generic Public Key Signature API 설명을 가져옵니다.
.. kernel-doc:: include/crypto/sig.h
:doc: Generic Public Key Signature API
이 API는 서명 transform의 할당과 해제, 공개 키와 개인 키 설정, 키 크기·최대 서명 크기·digest 크기 조회, digest 서명 및 서명 검증 연산을 제공합니다.
`crypto_alloc_sig()`로 transform을 할당하고 `crypto_free_sig()`로 해제합니다. `crypto_sig_set_pubkey()`와 `crypto_sig_set_privkey()`는 검증 또는 서명에 사용할 키를 설정합니다.
`crypto_sig_keysize()`, `crypto_sig_maxsize()`, `crypto_sig_digestsize()`는 각각 현재 키의 크기, 가능한 최대 서명 크기, 알고리즘이 요구하는 digest 크기를 반환합니다. `crypto_sig_sign()`은 digest에 서명하고 `crypto_sig_verify()`는 주어진 서명을 검증합니다.
.. kernel-doc:: include/crypto/sig.h
:functions: crypto_alloc_sig crypto_free_sig crypto_sig_set_pubkey crypto_sig_set_privkey crypto_sig_keysize crypto_sig_maxsize crypto_sig_digestsize crypto_sig_sign crypto_sig_verify
요약과 해설
api-sig.rst:1-18이 문서는 Linux Crypto API의 비대칭 서명 인터페이스를 연결하는 짧은 kernel-doc 색인입니다. 알고리즘 구현 측의 `sig_alg` 정의와 사용 측의 Generic Public Key Signature API를 한 페이지에서 참조합니다.
일반적인 흐름은 서명 transform 할당, 공개 키 또는 개인 키 설정, 알고리즘별 크기 확인, digest 서명 또는 서명 검증, transform 해제 순서입니다. 실제 구조체 필드와 함수 계약은 `include/crypto/sig.h`의 kernel-doc에서 생성됩니다.