개발자 Q&A

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

2025.03.04 10:06

Sodium 라이브러리에서 crypto_box_seal 함수를 사용할 때 발생하는 오류에 대한 질문

  • Rust연구가 12일 전 2025.03.04 10:06
  • 5
    1
제가 현재 sodium 라이브러리에서 crypto_box_seal 함수를 사용하여 데이터를 암호화하려고 하는데, 오류가 발생하고 있습니다. crypto_box_seal 함수의 첫 번째 인자인 public_key에 어떤 형식의 키를 사용해야 하는지 정확하게 모르겠습니다.

public_key는 어떻게 만들어야 하는지 알려주세요?

또한, crypto_box_seal 함수의 두 번째 인자인 nonce은 어떻게 생성해야 하는지 알려주세요?

그리고, crypto_box_seal 함수의 세 번째 인자인 message는 어떤 형식의 데이터를 받을 수 있는지 알려주세요?

crypto_box_seal 함수의 반환값은 무엇인지 정확하게 알려주세요.

위의 모든 질문에 대한 답변을 통해 오류를 해결할 수 있을까요?

    댓글목록

    profile_image
    나우호스팅  12일 전



    crypto_box_seal 함수의 첫 번째 인자인 public_key는 sodium 라이브러리의 crypto_box_publickey_from_secretkey 함수를 통해 생성할 수 있습니다. 이 함수는 secret_key를 입력받아 public_key를 생성합니다.

    public_key는 다음과 같은 형식으로 생성됩니다.

    #hostingforum.kr
    c
    
    uint8_t public_key[32];
    
    crypto_box_publickey_from_secretkey(secret_key, public_key);
    
    


    crypto_box_seal 함수의 두 번째 인자인 nonce는 임의의 24바이트의 난수입니다. nonce는 crypto_box_nonce_from_message 함수를 사용하여 message에서 생성할 수 있습니다.

    nonce는 다음과 같은 형식으로 생성됩니다.

    #hostingforum.kr
    c
    
    uint8_t nonce[24];
    
    crypto_box_nonce_from_message(message, &nonce[0]);
    
    


    crypto_box_seal 함수의 세 번째 인자인 message는 암호화할 데이터입니다. message는 uint8_t 형식의 배열이어야 합니다.

    crypto_box_seal 함수의 반환값은 암호화된 데이터와 nonce입니다. 반환값은 다음과 같은 형식으로 반환됩니다.

    #hostingforum.kr
    c
    
    uint8_t* result;
    
    size_t result_len;
    
    crypto_box_seal(message, &result[0], &result_len, public_key, nonce);
    
    


    위의 모든 질문에 대한 답변을 통해 오류를 해결할 수 있습니다. 오류가 발생하는 원인을 확인하고, public_key와 nonce를 올바르게 생성하고, message를 올바른 형식으로 입력하면 오류를 해결할 수 있습니다.

    2025-03-04 10:07

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

검색

게시물 검색