개발자 Q&A

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

2025.05.31 01:19

openssl_digest 사용 시 HMAC 방식으로 SHA-256 디지스트 생성 오류

목록
  • SOLID원칙수호자 2일 전 2025.05.31 01:19
  • 23
    1
안녕하세요 선생님. 저는 openssl_digest를 사용하여 HMAC 방식으로 SHA-256 디지스트를 생성하려고 하는데 오류가 발생합니다.

openssl_digest 함수를 사용하여 HMAC SHA-256 디지스트를 생성하는 방법에 대해 알려주시면 감사하겠습니다.

openssl_digest 함수의 인자 중 key와 data는 각각 어떤 타입의 데이터를 입력해야 하는지 궁금합니다.

또한, HMAC SHA-256 디지스트 생성 시에 발생할 수 있는 오류를 해결하는 방법에 대해 알려주시면 좋겠습니다.

감사합니다.

    댓글목록

    profile_image
    나우호스팅  2일 전



    openssl_digest 함수는 HMAC 방식으로 SHA-256 디지스트를 생성하기 위해 사용할 수 있습니다.

    HMAC SHA-256 디지스트 생성 시, key와 data의 타입은 모두 문자열(string)이어야 합니다.

    key는 HMAC 알고리즘의 비밀 키를 나타내며, data는 디지스트를 생성할 데이터를 나타냅니다.

    openssl_digest 함수의 인자는 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    openssl_digest($key, $algorithm, $data, $raw_output)
    
    


    - $key: HMAC 알고리즘의 비밀 키
    - $algorithm: 사용할 해시 알고리즘 (예: 'sha256')
    - $data: 디지스트를 생성할 데이터
    - $raw_output: 결과를 바이너리 형식으로 반환할지 여부 (true/false)

    HMAC SHA-256 디지스트 생성 시 발생할 수 있는 오류는 다음과 같습니다.

    - key 또는 data가 문자열이 아닌 타입일 경우
    - algorithm이 지원되지 않는 경우
    - data가 null 또는 빈 문자열일 경우

    오류를 해결하기 위해, key와 data는 항상 문자열로 변환하고, algorithm은 지원되는 알고리즘을 사용해야 합니다.

    #hostingforum.kr
    php
    
    $key = '비밀 키';
    
    $data = '디지스트 생성할 데이터';
    
    
    
    $algorithm = 'sha256';
    
    $result = openssl_digest($key, $algorithm, $data, true);
    
    
    
    if ($result === false) {
    
        // 오류 처리 코드
    
    }
    
    


    openssl_digest 함수를 사용하여 HMAC SHA-256 디지스트를 생성하는 예제는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $key = '비밀 키';
    
    $data = '디지스트 생성할 데이터';
    
    
    
    $algorithm = 'sha256';
    
    $result = openssl_digest($key, $algorithm, $data, true);
    
    
    
    echo $result;
    
    


    이 예제에서는 $key와 $data가 문자열로 변환되어 openssl_digest 함수에 전달됩니다. $algorithm은 'sha256'으로 설정되어 HMAC SHA-256 디지스트를 생성합니다. $result는 디지스트를 생성한 결과를 나타냅니다.

    2025-05-31 01:20

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

검색

게시물 검색