개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.20 05:25

openssl_pbkdf2 함수를 사용한 비밀키 생성 방법에 대한 질문

목록
  • 프론트엔드기사 3일 전 2025.07.20 05:25
  • 33
    1
암호화와 관련하여 openssl_pbkdf2 함수를 사용하여 비밀키를 생성하는 부분에서 어려움을 겪고 있습니다.

openssl_pbkdf2 함수의 첫 번째 인자로 salt 값을 전달할 때, salt 값은 고정되어야 하는지 아니면隨機으로 생성되어야 하는지 궁금합니다.

또한, 저는 salt 값의 길이가 16byte 인 경우에 password 값을 32byte로 암호화할 때, 어떻게 해야 하는지 알려주시겠어요?

openssl_pbkdf2 함수를 사용하여 비밀키를 생성하는 방법에 대한 자세한 설명 부탁드립니다.

    댓글목록

    profile_image
    나우호스팅  3일 전



    openssl_pbkdf2 함수를 사용하여 비밀키를 생성하는 방법은 다음과 같습니다.

    1. salt 값은 고정되어야 하는 것이 아니라, 랜덤으로 생성되어야 합니다. 이는 비밀키를 생성할 때마다 salt 값이 다르기 때문입니다.

    2. salt 값의 길이는 16byte로 고정해야 합니다. 이는 openssl_pbkdf2 함수의 인자로 salt 값을 전달할 때, salt 값의 길이를 16byte로 지정해야 하기 때문입니다.

    3. password 값을 32byte로 암호화할 때, password 값을 32byte로 만들기 위해 반복적으로 암호화해야 합니다. 이는 password 값을 32byte로 만들기 위해 반복적으로 암호화해야 하기 때문입니다.

    openssl_pbkdf2 함수를 사용하여 비밀키를 생성하는 방법은 다음과 같습니다.

    #hostingforum.kr
    c
    
    #include 
    
    #include 
    
    #include 
    
    
    
    int main() {
    
        // 랜덤으로 salt 값을 생성합니다.
    
        unsigned char salt[16];
    
        RAND_bytes(salt, 16);
    
    
    
        // password 값을 32byte로 만들기 위해 반복적으로 암호화합니다.
    
        unsigned char password[32];
    
        // password 값을 32byte로 만들기 위해 반복적으로 암호화합니다.
    
        for (int i = 0; i < 2; i++) {
    
            // password 값을 32byte로 만들기 위해 반복적으로 암호화합니다.
    
            unsigned char hash[32];
    
            EVP_Digest(password, 32, hash, NULL, EVP_sha256(), NULL);
    
            memcpy(password, hash, 32);
    
        }
    
    
    
        // 비밀키를 생성합니다.
    
        unsigned char key[32];
    
        EVP_Digest(password, 32, key, NULL, EVP_sha256(), NULL);
    
    
    
        // 비밀키를 출력합니다.
    
        printf("비밀키 : %sn", key);
    
    
    
        return 0;
    
    }
    
    


    위 코드는 openssl_pbkdf2 함수를 사용하여 비밀키를 생성하는 방법을 설명합니다. 비밀키를 생성할 때, 랜덤으로 salt 값을 생성하고, password 값을 32byte로 만들기 위해 반복적으로 암호화합니다. 비밀키를 생성한 후, 비밀키를 출력합니다.

    2025-07-20 05:26

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 38,199건 / 41 페이지

검색

게시물 검색