본문 바로가기
[도서 정리] 13. 해시(Hash) - 보안의 기본 13. 해시(Hash) - 보안의 기본 * 해시란? -해시(Hash)란 어떤 데이터에 대응하는 값을 구하기 위한 방법 중 하나이다.동일한 데이터로부터 생성된 해시 값은 항상 똑같으며, 원래 데이터가 조금이라도 다르면 생성되는 해시 값도 달라진다.이러한 성질을 이용하여 예를 들어 배포 중인 프리웨어의 압축 파일이 변조되지 않았다는 것을 나타낼 수 있다. * 해시 알고리즘 -해시 알고리즘은 해시 값을 계산하기 위한 절차이다.해시 알고리즘이 다르면 데이터는 동일해도 생성되는 해시 값은 달라진다.또한 예전부터 사용되던 해시 알고리즘 중에는 안전상 문제가 있기 때문에 이제는 사용을 권장하지 않는 것도 있다. * 해시 알고리즘의 안정성 -해시 알고리즘의 안전성은 ‘충돌(collision)’이라 부르는 공격에 얼마나.. 2019. 10. 14.
[Effective Objective-C] 목차와 요약을 통해 한 눈에 알아보는 Effective Objective-C #1 ~ #8 [Effective Objective-C] 목차와 요약을 통해 한 눈에 알아보는 Effective Objective-C #1 ~ #8 #1 : Objective-C 의 기원과 친숙해져라. Objective-C는 객체 지향 기능을 추가한 C 의 확장이다. Objective-C는 동적 바인딩을 사용하는 메시징 구조를 이용한다. 동적 바인딩은 객체 타입이 실행 시간에 밝혀지는 것을 뜻한다. 메시지를 받았을 때 동작할 코드를 컴파일러가 아닌 런타임이 결정한다. C의 핵심 개념을 이해하고 있으면 Objective-C를 효과적으로 작성하는 데 도움이 된다. 특히 메모리 모델과 포인터를 잘 이해하고 있어야 한다. #2 : 헤더에 헤더를 포함하는 것을 최소화하라 항상 헤더를 포함하는 것을 최대한 미루라. 이는 보통 헤.. 2017. 8. 10.
[Effective Objective-C] #8 객체의 동등 비교를 이해하라 [Effective Objective-C] #8 객체의 동등 비교를 이해하라 출처 : Effective Objective-C -== 연산자를 사용하면 포인터 값을 비교한다.두 객체가 같은지 비교하려면 NSObject 프로토콜에 정의되어 있는 isEqual: 메서드를 사용해야 한다. -몇몇 객체는 이미 같은 클래스인지 확인된 두 객체를 비교하는 특별한 동등 확인(equality-checking) 메서드들을 제공한다. -다음 두 메서드는 NSObject 프로토콜의 핵심 동등 비교 메서드이다.- (BOOL)isEqual:(id)object;- (NSUInteger)hash; 위 두 메서드는 NSObject 클래스에 기본적인 구현이 되어 있다.구현 내용은 두 객체가 같은 객체일 뿐 아니라 포인터도 정확히 같아야.. 2017. 8. 9.
반응형