저는 일부 iOS 프로그램을 작성하려고하는 아주 새롭고 프로그래머이며, 데이터를 암호화해야하는 부분에 도달했을 때 나는 안개가 짙고 문서화되지 않은 벽을 만났습니다. 애플은 분명히 데이터를 암호화하는데 필요한 모든 툴을 제공하지만 어디서나 그것에 관해 쓰지는 않는다. 현재 나는 https://github.com/AlanQuatermain/aqtoolkit에있는 것들을 실험하고 있는데, 분명히 작동합니다. 그러나 나는 http://robnapier.net/blog/aes-commoncrypto-564에서 사용자가 선택한 암호를 암호화 키로 사용하면 안되지만이 라이브러리와 다른 사용자의 암호를 직접 사용하는 사람들의 예를 보았습니다. 이 기능이 여기에 적용됩니까? 사용하기 전에 작은 허들 경주를 통해 사용자 비밀번호를 사용해야합니까?iOS의 암호화에 대한 혼란
답변
암호 해시를 암호 키의 해시로 사용하는 것이 좋습니다. 한 가지 이유는 알고리즘마다 길이가 다른 키가 필요할 수 있고 적절한 해싱 알고리즘 (예 : AES256의 경우 SHA256)을 선택하면 적절한 길이의 키를 자동으로 가져 오는 것입니다.
빠른 답변 주셔서 감사합니다. 해시 함수의 코드 나 예제는 어디에서 찾을 수 있습니까? 아니면 내가 직접 글쓰기를해야 할 것인가? (만약 내가 정말로 어리석은 소리를 낸다면, 아마도 내가이 점에 있기 때문일 것이다.) – Serendipity
언급 한 라이브러리가 해싱을위한 쉬운 방법을 제공한다. https://github.com/AlanQuatermain/aqtoolkit/blob/master/CommonCrypto/NSData+CommonCrypto.h에서 살펴보십시오. – zlajo
"AES256EncryptedDataUsingKey : @"passwordHere "etc"로 데이터를 암호화하고 있습니다. 분명히 잘못되었지만, .h에서 해시 함수를 사용하는 데는 아무런 아이디어가 없습니다. 제발 설명 할만큼 충분히 참을성 있으십니까? – Serendipity
- 1. Bcrypt가 해싱 또는 암호화에 사용됩니까? 약간의 혼란
- 2. WCF 암호화에 대한 Winphone
- 3. MySQL 암호화에 대한 유용한 정보
- 4. 공개 키 암호화에 대한 질문
- 5. java의 공개 키 암호화에 대한 자습서가 있습니까?
- 6. iOS 블록에 대한 혼란
- 7. iPhone : NSAutoreleasePool에 대한 혼란
- 8. cvSplit 기능에 대한 혼란
- 9. C에서 포인터에 대한 혼란
- 10. git checkout에 대한 혼란
- 11. 웹 주석에 대한 혼란
- 12. javacript closure에 대한 혼란
- 13. FTP에 대한 혼란
- 14. MKOverlayView에 대한 혼란
- 15. 관계에 대한 혼란
- 16. 모노에 대한 혼란?
- 17. 파이프 구현에 대한 혼란
- 18. iOS의 이미지에 대한 CITemperatureAndTint
- 19. iOS의 매크로에 대한 오해.
- 20. 암호화에 사용되는 문자 제한
- 21. 노래 암호화에 관해서
- 22. 는 CBC 언덕 암호 암호화에
- 23. git에서 브랜치 생성에 대한 혼란
- 24. 콜백 함수 디자인에 대한 혼란
- 25. r 값 참조에 대한 혼란
- 26. 모바일 앱 개발에 대한 혼란
- 27. CoffeeScript 변수 범위에 대한 혼란
- 28. JSF 라이프 사이클에 대한 혼란
- 29. 작업자 프로세스 스레딩에 대한 혼란
- 30. 안드로이드의 'preferExternal'매니페스트 필터에 대한 혼란
아 감사합니다. 나는 그 문서를 놓쳤다. – Serendipity