UserDefaults & Keychain
UserDefaults, Keychain Services, 보안 저장소, 민감한 데이터, 모범 사례
20 면접 질문·
Junior
1iOS의 UserDefaults란 무엇인가요?
1
iOS의 UserDefaults란 무엇인가요?
답변
UserDefaults는 사용자 환경설정과 같은 민감하지 않은 데이터를 영구 저장하기 위한 간단한 저장 시스템입니다. 데이터는 디스크에 plist 형식으로 저장되며 쉽게 접근할 수 있습니다. 하지만 데이터가 암호화되지 않으므로 비밀번호나 인증 토큰 같은 민감한 정보는 절대 저장하면 안 됩니다.
2iOS의 Keychain Services란 무엇인가요?
2
iOS의 Keychain Services란 무엇인가요?
답변
Keychain Services는 민감한 데이터를 암호화하여 안전하게 저장할 수 있는 보안 API입니다. 최신 기기에서는 Secure Enclave를 사용하여 데이터를 보호합니다. Keychain은 비밀번호, 토큰, 인증서 및 애플리케이션 보안에 중요한 기타 정보를 저장하는 데 권장되는 방식입니다.
3UserDefaults의 표준 인스턴스에 어떻게 접근하나요?
3
UserDefaults의 표준 인스턴스에 어떻게 접근하나요?
답변
UserDefaults.standard는 애플리케이션 전체에서 공유되는 기본 인스턴스에 접근하는 표준 방법입니다. 이 인스턴스는 데이터를 자동으로 디스크에 영구 저장합니다. init(suiteName:)을 사용하면 App Groups를 통해 앱과 확장 프로그램 간에 데이터를 공유하는 명명된 인스턴스를 생성할 수 있지만, UserDefaults.standard는 대부분의 간단한 사용 사례를 처리합니다. 데이터 불일치를 일으킬 수 있으므로 여러 표준 인스턴스를 생성하지 마세요.
4
UserDefaults는 어떤 데이터 타입을 직접 저장할 수 있나요?
5
Keychain 대신 UserDefaults를 사용하는 것이 적절한 경우는 언제인가요?
+17 면접 질문
기타 iOS 면접 주제
Swift 기초
Junior
25개 질문Swift 언어 기초
Junior
15개 질문UIKit 기초
Junior
18개 질문UIViewController 생명주기
Junior
20개 질문애플리케이션 생명 주기
Junior
20개 질문Auto Layout & Constraints
Mid-Level
24개 질문UITableView & UICollectionView
Mid-Level
25개 질문SwiftUI 기초
Mid-Level
18개 질문SwiftUI 상태 관리
Mid-Level
22개 질문SwiftUI 내비게이션
Mid-Level
18개 질문Networking & URLSession
Mid-Level
20개 질문Codable 및 JSON 파싱
Mid-Level
20개 질문Core Data
Mid-Level
22개 질문프로토콜 지향 프로그래밍
Mid-Level
20개 질문MVVM 아키텍처
Mid-Level
20개 질문푸시 알림
Mid-Level
18개 질문단위 테스트와 XCTest
Mid-Level
20개 질문UI 테스트
Mid-Level
18개 질문Xcode 및 빌드 시스템
Mid-Level
16개 질문Swift Package Manager
Mid-Level
16개 질문Memory Management & ARC
Senior
22개 질문Combine Framework
Senior
24개 질문Concurrency & async/await
Senior
26개 질문iOS Design Patterns
Senior
24개 질문성능 최적화
Senior
22개 질문보안 및 암호화
Senior
20개 질문SwiftUI Advanced
Senior
22개 질문iOS 애플리케이션 아키텍처
Senior
22개 질문