ios

· iOS/iOS Dev
SSL Pinning(이하 Pinning, 피닝)은? 호스트를 인증서 또는 공개키와 연결하는 프로세스입니다. 호스트의 인증서 또는 공개키를 알고 있으면 해당 호스트에 고정(Pinning)합니다. 즉, 미리 정의된 인증서 또는 공개키 중 하나 또는 몇 개를 제외한 모든 인증서를 거부하도록 앱을 구성합니다. 앱이 서버에 연결할 때마다 서버 인증서를 고정된 인증서 또는 공개키와 비교합니다. 둘이 일치하는 경우에만 앱이 서버를 신뢰하고 연결을 설정합니다. 일반적으로 개발 시 서비스의 인증서 또는 공개키를 추가합니다. 즉, 모바일 앱은 앱 번들 내에 디지털 인증서 또는 공개키를 포함해야 합니다. 공격자가 핀을 오염시킬 수 없기 때문에 이 방법이 선호됩니다. SSL 인증서 Pinning이 필요한 이유? 일반적으로 ..
· iOS/iOS Dev
CryptoKit Documentation: https://developer.apple.com/documentation/CryptoKit (WWDC19)Cryptography and your apps: https://developer.apple.com/videos/play/wwdc2019/709/ (Cryptography and your apps 세션의 Introducing Apple CryptoKit 파트의 정리) CryptoKit에서 할 수 있는 것 Hash 함수: SHA-256, SHA-384, SHA-512 Symmetric-Key Cryptography Message Authentication Code: HMAC Authenticated Encryption: AES-GCM(Chacha20Poly..
· iOS/iOS Dev
iOS의 앱에서 타 앱을 호출하는 방법으로 URLScheme(이하 scheme, 혹은 스키마)가 있습니다. 앱에서는 project파일의 target->Info 에서 URL Types 를 설정하여 외부에서 앱을 호출할 수 있는 스키마를 설정해줄 수 있습니다. +버튼을 누르면 여러개를 설정할 수도 있고, 어떤 스키마로 호출되는지에 따라 다른 동작을 하도록 구현할 수 있게 됩니다. (하나의 스키마로도 추가로 프로퍼티를 받아서 동작에 분기를 시킬 수 있기 때문에 가급적 하나의 스키마로 처리하는게 더 좋습니다) 그러면 외부 앱에서 해당앱을 호출할 수 있게 되는데요. 호출하는 쪽에서는 앱의 Info.plist에 LSApplicationQueriesSchemes (Array)항목에 호출할 앱의 스키마를 작성해줍니다...
SwiftyCody
'ios' 태그의 글 목록