Notice
Recent Posts
Recent Comments
Link
투케이2K
111. (Library/Framework) [라이브러리] [Ios] JWE (JSON Web Encryption) 웹 암복호화 라이브러리 - JOSESwift 본문
Library & F.W
111. (Library/Framework) [라이브러리] [Ios] JWE (JSON Web Encryption) 웹 암복호화 라이브러리 - JOSESwift
투케이2K 2025. 4. 5. 19:43[타이틀]
구 분 : Library / 라이브러리
제 목 : [라이브러리] [Ios] JWE (JSON Web Encryption) 웹 암복호화 라이브러리 - JOSESwift
[설 명]
-----------------------------------------------------------------------------------------
[라이브러리 정보 및 환경]
-----------------------------------------------------------------------------------------
구 분 : Library / Framework
제 목 : [라이브러리] [Ios] JWE (JSON Web Encryption) 웹 암복호화 라이브러리 - JOSESwift
환 경 : Http / JWE / JSON Web Encryption
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
[설 명]
-----------------------------------------------------------------------------------------
1. JOSESwift 라이브러리는 JWE (JSON Web Encryption) JSON 웹 암호화 및 복호화를 수행하는데 사용되는 라이브러리입니다
2. JWE 은 JSON 웹 토큰 (JWT) 과 함께 사용 되어 페이로드 데이터를 보호하며, ID 토큰 (ID token) 이나 액세스 토큰 을 JWE를 사용해 암호화 하여 전송하는데 사용됩니다
3. JOSESwift 라이브러리 SPM 설치 git 주소 :
>> https://github.com/airsidemobile/JOSESwift
4. JWE 직렬화 형식 종류 추가 설명 :
>> Compact 직렬화 : JWE가 점(.)으로 구분된 다섯 개의 Base64URL로 인코딩된 부분으로 문자열 형태로 표현됩니다
- 예시 : {{header}}.{{encrypted-key}}.{{iv}}.{{ciphertext}}.{{tag}}
- header : 암호화 알고리즘과 키 관리에 대한 메타데이터를 포함합니다
- encrypted-key : 페이로드를 암호화하는 데 사용된 암호화된 콘텐츠 암호화 키 (CEK)입니다
- iv : 암호화 과정에서 사용된 초기화 벡터입니다
- ciphertext : 암호화된 페이로드 데이터입니다
- tag : 암호화된 데이터의 무결성을 검증하는 인증 태그입니다
>> JSON 직렬화 : JSON 형식으로 JWE 구조적 방법을 표시합니다
- 예시 :
{
"protected": "{{protected-header}}",
"unprotected": "{{unprotected-header}}",
"header": "{{header}}",
"encrypted_key": "{{encrypted-key}}",
"iv": "{{iv}}",
"ciphertext": "{{ciphertext}}",
"tag": "{{tag}}",
"aad": "{{additional-authenticated-data}}"
}
- protected : Base64URL로 인코딩된 보호 헤더를 포함합니다
- unprotected : JWE의 공유 보호되지 않은 헤더를 포함합니다
- header : JWE의 각 수신자별 보호되지 않은 헤더를 포함합니다
- encrypted_key : Base64URL로 인코딩된 암호화된 콘텐츠 암호화 키 (CEK)를 포함합니다
- iv : Base64URL로 인코딩된 초기화 벡터를 포함합니다
- ciphertext : Base64URL로 인코딩된 암호문 (암호화된 페이로드)을 포함합니다
- tag : Base64URL로 인코딩된 인증 태그를 포함합니다
- aad : Base64URL로 인코딩된 추가 인증된 데이터를 포함합니다
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
[참고 사이트]
-----------------------------------------------------------------------------------------
[JOSESwift 라이브러리 SPM 설치 git 주소]
https://github.com/airsidemobile/JOSESwift
[온라인 JWT 토큰 복호화 및 헤더 값 확인 참고 사이트]
https://fusionauth.io/dev-tools/jwt-decoder
[JWT (Json Web Token) 개념 설명]
https://blog.naver.com/kkh0977/222934042760?trackingCode=blog_bloghome_searchlist
[JWE (JSON Web Encryption) JSON 웹 암호화 설명]
https://blog.naver.com/kkh0977/223817878517?trackingCode=blog_bloghome_searchlist
-----------------------------------------------------------------------------------------
반응형
'Library & F.W' 카테고리의 다른 글
Comments