eSigner CSC API를 사용한 원격 문서 서명

이 가이드는 SSL.com의 문서 서명 인증서 주문을 등록하는 방법을 보여줍니다. 전자 서명 서비스를 제공하고 CSC (Cloud Signature Consortium) API를 사용하여 문서 해시 및 PDF 파일에 디지털 서명합니다. 이 가이드는 다음 중 하나와 함께 사용할 수 있습니다. or 우편 집배원. Postman 사용자는 다음을 설치하는 것이 좋습니다. 데스크톱 앱 예제를 통해 작업합니다. 이 안내서의 예제는 SSL.com의 프로덕션 및 테스트 eSigner 및 eSealing 환경 모두에 적용됩니다. 프로덕션 모드와 테스트 모드 간의 명령 차이점은 다음 섹션에서 설명합니다.

이 지침을 따르려면 다음이 필요합니다.

  • 검증 된 문서 서명 인증서 주문. 읽어주세요 이 방법 주문 및 확인에 대한 전체 지침을 참조하십시오.
  • A 고객 ID (일컬어 응용 프로그램 ID. 참조하십시오 이 방법 이 자격 증명 생성에 대한 지침).

SSL.com 문서 서명 인증서 주문

이미 발급된 문서 서명 인증서가 있는 경우 이 섹션을 건너뛸 수 있습니다. 이 경우 eSigner에 인증서를 등록하는 방법을 설명하는 다음 섹션으로 진행하십시오.

프로덕션 환경에서 인증서를 주문하는 방법

생산 문서 서명 인증서를 주문하는 방법에 대한 지침은 이 가이드 문서를 참조하십시오. 코드 및 문서 서명 인증서 주문 절차

SSL.com의 Sandbox에서 테스트 인증서를 주문하는 방법

SSL.com은 위험 없는 실험 공간을 위해 라이브 SSL.com 포털과 SWS API를 미러링하는 전용 샌드박스 환경을 제공합니다. 이 "실험실" 설정을 통해 사용자는 중단을 초래하거나 실제 비용이 발생할 염려 없이 SSL.com의 서비스를 탐색하고 테스트할 수 있습니다. 

기사, 테스트 및 통합에 SSL.com 샌드 박스 사용, 샌드박스 계정 설정, 테스트 주문 시작, 샌드박스를 SWS API와 통합하는 프로세스를 탐색하는 데 도움이 됩니다.

테스트 인증서를 생성한 후 SSL.com 지원팀에 문의하여 검증을 받으십시오. 오른쪽 하단에 있는 온라인 채팅 버튼을 클릭하면 됩니다. SSL.com 웹사이트 또는 이메일로 보내기 support@ssl.com.

전자 서명 등록 및 XNUMX 단계 인증 설정

CSC API 사용을 시작하기 전에 SSL.com의 eSigner 클라우드 서명 서비스에 등록해야 합니다. 검증된 주문은 아래 지침에 따라 eSigner에 등록할 수 있습니다. 

  1. . 다음으로 이동하십시오. 주문 SSL.com 계정의 탭에서 주문을 찾습니다.
    주문 찾기
  2. 주문의 세부설명 링크를 클릭하십시오.
    세부설명
  3. 4 자리 PIN을 생성하고 확인한 다음 PIN 생성 버튼을 클릭합니다.
    전자 서명 PIN을 재설정해야하는 경우 다음을 읽어보십시오. 이 방법.
    PIN 생성
  4. QR 코드가 나타납니다.
    다음에 페이지를 다시로드하면 QR 코드가 표시되지 않습니다. eSigner QR 코드를 보거나 재설정해야하는 경우 다음을 읽어보십시오. 이 방법.
    QR 코드
  5. 다음과 같은 모바일 장치의 2 단계 인증 앱으로 코드를 스캔합니다. 구글 인증 자 or 자동. 앱은 서명 할 때 사용할 일회성 암호 (OTP)를 제공합니다. 각 OTP는 30 초 동안 유효합니다.
    Authy의 OTP
팁 : eSigner를 사용하여 팀원간에 조직 검증 (OV) 서명 인증서를 공유 할 수 있습니다. 읽어주세요 전자 서명 문서 및 EV 코드 서명 인증서를위한 팀 공유 지시 사항은

선택 사항: OV 문서 서명 인증서를 봉인 인증서로 변환합니다.

참고 : 이 섹션은 씰링을 원하는 사용자만을 위한 것입니다.. 문서 서명을 자동화하고 OTP(일회용 비밀번호) 메시지가 표시되지 않도록 사용자는 OV(조직 유효성 검사) 문서 서명 인증서를 SSL.com 계정의 봉인 인증서로 자체 변환합니다. 개별 검증(IV) 문서 서명 인증서는 봉인용으로 변환할 수 없습니다.. 봉인 변환에 대한 지침은 아래에 자세히 설명되어 있습니다.

  1. 주문 SSL.com 계정의 상단 메뉴에 있습니다. 
  2. 인증서를 찾아 다음을 클릭하세요. 다운로드 / 세부 사항 링크를 클릭하십시오.
  3. 클릭 2FA 제거 버튼을 클릭합니다.

Postman 설치 및 API 컬렉션 가져 오기

이 섹션의 지침은 Postman 사용자만을위한 것입니다. CSC API와 함께 cURL을 사용하는 경우 다음 섹션으로 이동할 수 있습니다.

  1. 다운로드 및 압축 해제 CSC API Postman 컬렉션문서 서명 API Postman 컬렉션 (참조 https://www.postman.com/sslcom 온라인 SSL.com API 컬렉션용).
    우편 배달부 컬렉션
  2. 다운로드 및 설치 Postman REST 클라이언트.
    Postman REST Client 다운로드
  3. Postman을 시작한 다음 새 Postman 계정을 만들거나 기존 계정에 로그인합니다.
    우편 배달부 로그인
  4. 클릭 수입 버튼을 클릭합니다.
    가져 오기 버튼
  5. 클릭 파일 업로드하다 버튼을 클릭하고 압축을 푼 API 컬렉션 파일 (csc-api-prod.postman_collection.jsondocument-signing-api-prod.postman_collection.json)하고 엽니 다.
    파일 업로드하다
  6. 클릭 수입 버튼을 클릭합니다.
    가져 오기 버튼 클릭
  7. 작업 할 API 요청은 이제 Collections Postman 창의 왼쪽에있는 탭.
    API 요청

액세스 토큰 검색

다음 단계는 SSL.com에서 액세스 토큰을 검색하는 것입니다. 당신은 당신의 고객 ID SSL.com 계정의 사용자 이름과 비밀번호를 사용할 수 있습니다. 액세스 토큰은 발급 후 XNUMX 시간 동안 유효합니다.

아래의 클릭 가능한 탭을 사용하여 Postman 또는 cURL에 대한 지침을 선택하십시오.

우편 배달부 지침cURL 지침
  1. CSC API 컬렉션에서 API 요청을 선택합니다.
    API 요청 선택
  2. 선택 권한 부여 탭을 선택 OAuth 2.0 인사말 타입 메뉴를 선택합니다.
    승인 탭
  3. 양식에 다음 정보를 입력하십시오.
    • 헤더 접두사 : Bearer
    • 토큰 이름 : SSLCOM CSC (또는 선호하는 다른 기억하기 쉬운 이름)
    • 부여 유형 : Authorization Code
    • 콜백 URL : https://upload.esigner.com
    • 브라우저를 사용하여 승인 : 체크
    • 인증 URL :  https://login.ssl.com/oauth2/authorize 생산 환경을 위해; https://oauth-sandbox.ssl.com/oauth2/authorize 샌드박스 환경용.
    • 액세스 토큰 URL : https://login.ssl.com/oauth2/token 생산 환경을 위해; https://oauth-sandbox.ssl.com/oauth2/token 샌드박스 환경용. 
    • 클라이언트 ID : [고객 ID]
    • 클라이언트 비밀 : [고객의 비밀]
    • 범위: service
    • 상태: [백지로 둬]
    • 클라이언트 인증 : Send as Basic Auth header

    완료되면 새로운 액세스 토큰 받기 버튼을 클릭합니다.
    새로운 액세스 토큰 받기

  4. 로그인 양식이 나타납니다. SSL.com 사용자 이름과 비밀번호를 입력 한 다음 회원 로그인 버튼을 클릭합니다.
    계정 로그인
  5. 새 액세스 토큰이 Postman에 표시되어야합니다. 액세스 토큰 텍스트를 선택하고 클립 보드에 복사 한 다음 액세스 토큰 관리 대화 상자. 액세스 토큰을 쉽게 액세스 할 수있는 텍스트 편집기에 붙여 넣으십시오. 각 액세스 토큰은 XNUMX 시간 후에 만료됩니다.
    Postman 요청에서 재사용하기 위해 토큰을 저장할 수도 있지만 토큰을 각 요청에 직접 복사하여 붙여 넣는 것이 가장 신뢰할 수 있음을 발견했습니다.
    액세스 토큰
  1. 다음 명령을 사용하여 액세스 토큰을 요청합니다. 모두 대문자로 표시된 값을 실제 값으로 바꿉니다.
    curl --location --request POST "https://login.ssl.com/oauth2/token" \ --header "Content-Type: application/json" \ --data-raw '{ "client_id": "YOUR -CLIENT-ID", "client_secret": "YOUR-CLIENT-SECRET", "grant_type": "password", "username": "YOUR-USERNAME", "password": "YOUR-PASSSWORD" }'
  2. 액세스 토큰과 새로 고침 토큰이 포함 된 JSON 개체를 받아야합니다. 액세스 토큰 값을 복사하여 API 요청에 붙여 넣습니다. 이 예제에는 새로 고침 토큰이 필요하지 않습니다.
    액세스 토큰 검색

해시 서명

이제 액세스 토큰이 있으므로 API 요청 및 서명 만들기를 시작할 수 있습니다. 이 섹션에서는 Postman CSC 컬렉션에서 사용 가능한 다섯 가지 요청을 안내하여 문서 해시에서 디지털 서명을 생성합니다.

PDF 문서의 해시를 계산하려면 SHA 256 알고리즘을 사용해야 합니다. 

  1. 해시 입력을 위해 PDF를 조작하고 나중에 PDF 문서에 PKCS#7을 포함하려면 PDF 라이브러리가 필요합니다. (예: Java의 ApachePDFBox) 
  2. eSigner API(예: Java의 BouncyCastle)에서 받은 원시 서명으로 PKCS#7을 생성하기 위한 암호화 라이브러리입니다.

CSC 정보 얻기 (선택 사항)

우편 배달부 지침cURL 지침
  1. 당신은을 사용할 수 있습니다 CSC 정보 SSL.com의 클라우드 서명 서비스에 대한 정보를 요청합니다. 컬렉션의 다른 요청과 달리이 요청에는 액세스 토큰이 필요하지 않습니다. 요청을 보내려면 CSC 정보 인사말 CSC API 컬렉션을 클릭 한 다음 전송 버튼을 클릭합니다.
    CSC 정보 요청 보내기
  2. 클라우드 서명 서비스에 대한 정보는 Postman의 JSON 객체에 나타납니다. 응답 입력란입니다.
    CSC 정보
  1. SSL.com의 CSC API 서비스에 대한 정보를 얻으려면 다음 명령을 사용하십시오. 샌드박스 환경에 있는 경우 다음을 사용하십시오. https://cs-try.ssl.com/csc/v0/info 대신. 
    curl --location --request POST "https://cs.ssl.com/csc/v0/info"\ --header "Content-Type : application / json"\ --data-raw "{}"
  2. 서비스에 대한 세부 정보가 포함 된 JSON 객체를받습니다.
    CSC 정보 얻기

CSC 자격 증명 목록

이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 CSC 자격 증명 목록 request는 나중에 API 요청에서 사용할 자격 증명을 검색합니다.

우편 배달부 지침cURL 지침
  1. 선택 CSC 자격 증명 목록 를 클릭하고 권한 부여 탭.
    승인 탭
  2. 왼쪽 메뉴에서 무기명 토큰 인사말 타입 메뉴에서 액세스 토큰을 Token 필드를 클릭 한 다음 전송 버튼을 클릭합니다.
    자격 증명 목록 요청 보내기
  3. 사용자와 연결된 자격 증명 ID 목록이있는 JSON 개체가 응답 들. 목록에는 하나의 값이 포함될 수 있습니다. 나중에 요청에 사용할 수 있도록 자격 증명 ID를 복사하여 텍스트 편집기에 붙여 넣습니다.
    자격 증명 ID
  1. 다음 명령을 입력합니다. (MY-ACCESS-TOKEN을 실제 액세스 토큰으로 바꾸십시오). 샌드박스 환경이라면 https://cs-try.ssl.com/csc/v0/credentials/list 대신 :
    curl --location --request POST "https://cs.ssl.com/csc/v0/credentials/list"\ --header "Content-Type : application / json"\ --header "Authorization : Bearer MY- 액세스 토큰 "\ --data-raw"{} "

    eseal 인증서(조직 정보만 있는 문서 서명 인증서, 무료 esigner.com 계정에 포함)를 사용하는 경우 "clientData": "DS_ESEAL"을 포함하십시오(참고: eseal은 OTP 인증이 필요하지 않음). "clientData"에 대한 다른 옵션은 EV 코드 서명의 경우 "EVCS"이고 IV 또는 IV+OV 문서 서명의 경우 "DS"(기본값)입니다.

    curl --location --request POST "https://cs.ssl.com/csc/v0/credentials/list" \ --header "콘텐츠 유형: application/json" \ --header "권한 부여: Bearer MY- ACCESS-TOKEN" \ --data-raw '{"clientData": "DS_ESEAL"}'
  2. 사용자와 관련된 자격 증명 ID 목록이있는 JSON 개체를 받아야합니다. 목록에는 하나의 값이 포함될 수 있습니다. 나중에 요청에 사용할 수 있도록 자격 증명 ID를 복사하여 텍스트 편집기에 붙여 넣습니다.
    자격 증명 ID

CSC 자격 증명 정보 (선택 사항)

이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 CSC 자격 정보 요청은 인증서 및 자격 증명 ID와 관련된 기타 정보를 반환하며 서명에는 필요하지 않습니다.

우편 배달부 지침cURL 지침
  1. 이 요청을 사용하려면 CSC 자격 정보 컬렉션에서 권한 부여 탭.
    인증 탭
  2. 왼쪽 메뉴에서 무기명 토큰 인사말 타입 메뉴를 클릭 한 다음 액세스 토큰을 Token 입력란입니다.
    토큰 붙여 넣기
  3. 선택 신체 탭을 클릭 한 다음 자격 증명 ID를 값으로 붙여 넣습니다. credentialID.
    자격 증명 ID 붙여 넣기
  4. 클릭 전송 버튼을 클릭합니다.
    전송
  5. 서명 인증서 체인 및 기타 정보가 포함 된 JSON 개체가 응답 입력란입니다.
    자격 정보
  1. 다음 명령을 입력합니다. 샌드박스 환경에 있는 경우 다음을 사용하십시오. https://cs-try.ssl.com/csc/v0/credentials/info  교체 MY-ACCESS-TOKENMY-CREDENTIAL-ID 실제 정보와 함께 :
    curl --location --request POST "https://cs.ssl.com/csc/v0/credentials/info" \ --header "콘텐츠 유형: application/json" \ --header "권한 부여: Bearer MY- ACCESS-TOKEN" \ --data-raw '{ "credentialID": "MY-CREDENTIAL-ID", "인증서": "체인", "certInfo": true, "authInfo": true }'
  2. 서명 인증서 체인 및 기타 정보가 포함 된 JSON 객체를 받아야합니다.
    CSC 자격 정보

자격 증명 승인

이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 자격 증명 승인 요청은 해시 서명을위한 권한을 검색합니다.

우편 배달부 지침cURL 지침
  1. 선택하여 시작 자격 증명 승인 컬렉션에서 권한 부여 탭.
    승인 탭
  2. 왼쪽 메뉴에서 무기명 토큰 인사말 타입 메뉴를 클릭 한 다음 액세스 토큰을 Token 입력란입니다.
    붙여 넣기 토큰
  3. 선택 신체 탭. 자격 증명 ID를 credentialID 서명하려는 문서의 값과 해시를 hash 값. 인증 앱에서 OTP를 검색하여 입력하고 다음 값으로 입력합니다. OTP다음을 클릭 전송 단추. 참고: 인증서 봉인에는 OTP가 필요하지 않습니다.
    본문 탭
  4. 서명 활성화 데이터 (SAD)가 포함 된 JSON 개체가 응답 들. 이 값을 복사하여 해시 서명 요청에 사용할 텍스트 편집기에 붙여 넣으십시오.
    SAD
  1. 다음 명령을 사용하십시오. 바꾸다 MY-ACCESS-TOKEN, MY-CREDENTIAL-IDMY-HASH 실제 정보와 함께. 2FA 애플리케이션에서 일회성 비밀번호를 가져 와서 사용하는 것이 MY-OTP. 참고: 인증서 봉인에는 OTP가 필요하지 않습니다.
    curl --location --request POST "https://cs.ssl.com/csc/v0/credentials/authorize" \ --header "콘텐츠 유형: application/json" \ --header "승인: Bearer MY- ACCESS-TOKEN" \ --data-raw '{ "credentialID": "MY-CREDENTIAL-ID", "numSignatures": 1, "해시": [ "MY-HASH" ], "OTP": "MY-OTP " }'
  2. 서명 활성화 데이터 (SAD)가 포함 된 JSON 객체를 받아야합니다. 이 값을 복사하여 해시 서명 요청에 사용할 텍스트 편집기에 붙여 넣으십시오.
    자격 증명 승인

해시 서명

이제 문서 해시에 서명 할 준비가되었습니다.

우편 배달부 지침cURL 지침
  1. 선택 해시 서명 컬렉션에서 권한 부여 탭.
    승인 탭
  2. 왼쪽 메뉴에서 무기명 토큰 인사말 타입 메뉴를 클릭 한 다음 액세스 토큰을 Token 입력란입니다.
    토큰 붙여 넣기
  3. 선택 신체 탭. 자격 증명 ID를 credentialID 귀하의 서명 활성화 데이터를 SAD 값 및 서명하려는 문서의 해시 hash 값을 클릭 한 다음 전송 버튼을 클릭합니다.
    본문 탭
  4. 서명이 포함 된 JSON 개체가 응답 입력란입니다.
    서명
  1. 다음 명령을 입력하십시오. 바꾸다 MY-ACCESS-TOKENMY-CREDENTIAL-ID, MY-SADMY-HASH 실제 정보와 함께 :
    curl --location --request POST "https://cs.ssl.com/csc/v0/signatures/signHash" \ --header "콘텐츠 유형: application/json" \ --header "권한 부여: Bearer MY- ACCESS-TOKEN" \ --data-raw '{ "credentialID": "MY-CREDENTIAL-ID", "SAD": "MY-SAD", "hash": [ "MY-HASH" ], "signAlgo": "1.2.840.113549.1.1.11" }'
  2. 서명이 포함 된 JSON 객체를 받아야합니다.
    해시 서명

PDF 서명

문서 해시에 서명하는 것 외에도 PDF 파일을 업로드하고 서명 할 수도 있습니다.

PDF에 서명 할 때 두 가지 POST 요청으로 작업하게됩니다.

  • PDF 문서 업로드
  • PDF 문서 서명

문서 서명 API 컬렉션

위에서 검색 한 자격 증명을 다시 사용할 수 있습니다. CSC 자격 증명 목록 의뢰. 또한 새 항목을 검색해야 할 수도 있습니다. 액세스 토큰.

PDF 문서 업로드

우편 배달부 지침cURL 지침
  1. 선택 PDF 문서 업로드 요청하고 권한 부여 탭.
    승인 탭
  2. 왼쪽 메뉴에서 무기명 토큰 인사말 타입 메뉴를 클릭 한 다음 액세스 토큰을 Token 입력란입니다.
    토큰 붙여 넣기
  3. 선택 헤더 탭을 누르고 자격 증명 ID를 가치관 열입니다.
    헤더 탭
  4. 선택 신체 탭을 클릭 × 옆에 hello.pdf 이 자리 표시 자 파일 이름을 제거합니다.
    예제 파일 이름 제거
  5. 클릭 파일 선택 버튼을 누른 다음 업로드 할 파일로 이동합니다.
    파일 선택
  6. 클릭 전송 버튼을 클릭합니다.
    전송
  7. 선택하고 복사하십시오. id 다음 요청에서 사용할 응답의 값입니다.
    ID
  1. 다음 명령을 사용하십시오. 바꾸다 MY-CREDENTIAL-ID, MY-ACCESS-TOKEN/PATH/TO/FILE.pdf 실제 정보와 함께 :
    curl --location --request POST "https://ds.ssl.com/v1/pdf/upload"\ --header "Credential-Id : MY-CREDENTIAL-ID"\ --header "Authorization : Bearer MY- ACCESS-TOKEN "\ --header"Content-Type : application / pdf "\ --data-binary"@ / PATH / TO / FILE.pdf "
  2. 다음에 대한 값이있는 JSON 개체를 받게됩니다. id. 다음 요청에 사용할이 값을 복사하십시오.
    PDF 업로드

참고: 가시적인 서명은 다음 HTTP 요청 헤더(/v1/pdf/upload)를 참조하십시오.

요청 헤더

상품 설명

자격 증명 ID

키에 할당된 고유 자격 증명 ID – 필수

서명 이유

서명 모양 및 서명 사전에도 추가하려면 서명 이유를 추가하십시오. 예를 들어 이 문서를 승인합니다.

서명 위치

서명 사전에 서명 위치 추가 – 선택 사항(예: 휴스턴, 텍사스)

연락처 정보

서명 사전에 연락처 정보 추가 – 선택 사항(예: 전화번호)

서명-필드-위치

시각적 서명이 표시되는 서명 필드 위치입니다. 형식은 "x, y, 너비, 높이" – 옵션

페이지 번호

서명을 그릴 페이지 번호 – 선택 사항

자필 서명

Base64로 인코딩된 손 서명의 PNG 이미지 – 선택 사항


PDF 문서 서명

이제 PDF에 서명 할 수 있습니다.

봉인 문서 서명 인증서를 사용하여 서명하는 경우 OTP 인증이 필요하지 않습니다. 봉인 문서 서명 증명서를 사용하는 경우 다음 안내서의 모든 OTP 매개변수를 무시하십시오.
우편 배달부 지침cURL 지침
  1. 선택 PDF 문서 업로드 요청하고 권한 부여 탭.
       권한 부여
  2. 왼쪽 메뉴에서 무기명 토큰 인사말 타입 메뉴를 클릭 한 다음 액세스 토큰을 Token 입력란입니다.
    토큰 붙여 넣기
  3. 본문 탭을 선택하고 id 이전 단계의 값과 인증 앱의 OTP를 입력 한 다음 전송 버튼을 클릭합니다.
    요청 보내기
  4. PDF 데이터는 응답 들. 고르다 파일에 저장 인사말 응답 저장 메뉴를 클릭 한 다음 파일 이름을 지정하십시오.
    PDF를 파일로 저장
  5. Acrobat에서 파일을 열어 파일이 서명되었는지 확인합니다.
    유효한 서명
  1. 다음 명령을 입력하십시오. 바꾸다 MY-CREDENTIAL-ID, MY-FILE-IDOUTPUT-FILENAME 실제 정보와 함께. 2FA 앱에서 일회용 암호 (OTP)를 받고 다음과 같이 입력하십시오. MY-OTP. 참고: 인증서 봉인에는 OTP가 필요하지 않습니다.
    curl --location --request POST 'https://ds.ssl.com/v1/pdf/sign'\ --header 'Content-Transfer-Encoding : application / json'\ --header 'Content-Type : application / json '\ --header'Authorization : Bearer MY-ACCESS-TOKEN '\ --data-raw'{ "id": "MY-FILE-ID", "otp": "MY-OTP"} '\- -출력 OUTPUT-FILENAME
  2. cURL은 서명 된 파일을 다운로드하고 지정한 파일 이름에 저장합니다.
    PDF 서명
  3. Acrobat 또는 Acrobat Reader에서 PDF를 열어 서명이 유효한지 확인합니다.
    유효한 서명

트위터
페이스북
링크드인
레딧
이메일

최신 정보를 얻고 보안을 유지하세요

SSL.com 사이버 보안 분야의 글로벌 리더입니다. PKI 그리고 디지털 인증서. 최신 업계 뉴스, 팁, 제품 공지 사항을 받아보려면 등록하세요. SSL.com.

우리는 귀하의 피드백을 환영합니다

설문조사에 참여하여 최근 구매에 대한 의견을 알려주세요.