C 썸네일형 리스트형 [기초] OpenSSL 해쉬 함수 사용 예제 SHA256 해쉬의 사용 예제는 다음과 같다. #include unsigned char *SHA256(const unsigned char *d, size_t n, unsigned char *md) { SHA256_CTX c; static unsigned char m[SHA256_DIGEST_LENGTH]; if (md == NULL) md = m; SHA256_Init(&c); SHA256_Update(&c, d, n); SHA256_Final(md, &c); OPENSSL_cleanse(&c, sizeof(c)); return md; } 출처 : https://github.com/openssl/openssl/blob/master/crypto/sha/sha256.c 해쉬를 할때 위처럼 데이터를 한꺼번에 .. 더보기 [기초] C/C++ 에서 에러를 최소화하는 코딩 법 C/C++에서 가장 치명적으로 작용하는 오류는 어떤 식으로든 메모리 에러일 것이다. 메모리 에러는 코드 작성시부터 조심하지 않으면 언제든지 마주칠 수 있다. 가장 기본적인 에러 해결법을 정리해보고자 한다. 1. 메모리 할당/해제는 반드시 그 블럭 내에서 쌍으로 쓰여야 한다. (육안으로 오류 상황이 금방 체크되어야 한다.) 2. 1번에 덧붙여서 메모리 할당/해제는 같은 탭 위치에서 하는 것이 좋다. 2. 배열을 new 했으면 배열을 delete 하라. (delete 시 [] 문자를 정확히 써라) 3. 문자열 배열은 반드시 원하는 길이에서 +1을 하라. (널문자 포함해야 하므로) 4. 포인터를 반복문에서 사용시 사이즈와 반복문 횟수를 체크하라. (특정값 체크 종료 조건만 사용하면 안된다) 5. 메모리 할당과.. 더보기 이전 1 다음