HMAC 서명 생성

Rimi

HMAC 서명을 생성하려고합니다. 신용 카드사 확인 용입니다. 다음은 HMAC 서명을 생성하는 코드입니다.

public  string APISecurityKey(Identity postParameters)
        {
            String secretAccessKey = "secretkey";
            string  data = "message";
            byte[] secretKey = Encoding.UTF8.GetBytes(secretAccessKey);
            HMACSHA256 hmac = new HMACSHA256(secretKey);
            hmac.Initialize();
            byte[] bytes = Encoding.UTF8.GetBytes(data);
            byte[] rawHmac = hmac.ComputeHash(bytes);
            return Convert.ToBase64String(rawHmac);

        }

그들은 메시지 필드를 JSON 요청으로 대체하도록 요청합니다 (제공된 JSON에는 모든 캐리지 리턴 줄 바꿈 시퀀스가 ​​공백 문자로 대체되어야 함). 내 개체는 다음과 같습니다.

 public class Identity
    {
        public List<Header> header { get; set; }
        public string firstName { get; set; }
        public string LastName { get; set; }
        public string middleName { get; set; }
        public string address { get; set; }
        public string mothersName { get; set; }
        public string DriversLic { get; set; }
        public DateTime insertTime { get; set; }
        public string Status { get; set; }
        public string city { get; set; }
        public string state { get; set; }
        public string zip { get; set; }
        public DateTime UpdatedOn { get; set; }
    }
}


 public class Header
    {
        public string tenantId { get; set; }
        public string requestType { get; set; }
        public string clientReferenceId { get; set; }
        public string expRequestId { get; set; }
        public string txnId { get; set; }
        public string messageTime { get; set; }
        public string options { get; set; }


    } 

메시지에 대해 나에게 주어진 예는 다음과 같습니다.

{"tenantId": "TENANT1","request Type": "Simulator","clientRefere
nceId": "Hunter + ProveID","expRequestId": "333","messageTim
e": "2016-08-04T22:13:07Z","options": {"workflow": "wf1","model
Type":"mt1","responseType":1,"Responses": {…}}}

tenantId, tenantId, expRequestId, options를 JSON 메시지의 일부로 포함하는 방법을 모르겠습니다. 저는 JSON을 처음 접했습니다. 이 부분 코드가 있습니다.

public static async Task createJSON( Identity postParameters)
        {
            var tmpRequest = new HttpRequestMessage();
            tmpRequest.Content = new StringContent(JsonConvert.SerializeObject(postParameters));

            tmpRequest.Content.Headers.Add("tenantId", "V123456");
            tmpRequest.Content.Headers.Add("requestType", "PreciseIdOnly");
        }

postParameters는 값이있는 내 Identity 개체입니다. APISecurityKey 메서드의 메시지에 JSON 값을 넣을 수 있도록 tenantId, tenantId, expRequestId 및 개체를 포함하는 JSON을 어떻게 만들 수 있습니까? 다음은 생성해야하는 테스트 JSON 파일입니다.

{
    "header": {
        "tenantId": "V123456",
        "requestType": "Precise",
        "clientReferenceId": "11111111",
        "RequestId": "",
        "txnId": "",
        "messageTime": "2020-05-28T00:00:02Z",
        "options": {}
    },
    "payload": {
        "control": [
            {
                "option": "SUBSCRIBER_PREAMBLE",
                "value": "wer"
            },
            {
                "option": "SUBSCRIBER_OPERATOR_INITIAL",
                "value": "WS"
            },
            {
                "option": "SUBSCRIBER_SUB_CODE",
                "value": "1111111"
            },
            {
                "option": "PID_USERNAME",
                "value": "demo"
            },
            {
                "option": "PID_PASSWORD",
                "value": "password"
            },
            {
                "option": "PRODUCT_OPTION",
                "value": "11"
            }
        ],
        "contacts": [{
            "id": "APPLICANT_CONTACT_ID_1",
            "person": {
                "typeOfPerson": "",
                "personIdentifier": "",
                "personDetails": {
                    "dateOfBirth": "1990-12-11",
                    "yearOfBirth": "",
                    "age": "",
                    "gender": "",
                    "noOfDependents": "",
                    "occupancyStatus": "",
                    "mothersMaidenName": "",
                    "spouseName": ""
                },
                "names": [{
                    "id": "",
                    "firstName": "Test1",
                    "middleNames": "D",
                    "surName": "Test2",
                    "nameSuffix": ""
                }]
            },
            "addresses": [{
                "id": "Main_Contact_Address_0",
                "addressType": "CURRENT",
                "poBoxNumber": "",
                "street": "2312 Test Drve",
                "street2": "",
                "postTown": "test",
                "postal": "49548",
                "stateProvinceCode": "CA"
            }],
            "identityDocuments": [{
                "documentNumber": "123456789",
                "hashedDocumentNumber": "",
                "documentType": "SSN"
            }]

        }]
    }
}

객체를 사용하여 C #에서 위의 샘플과 동일한 JSOn을 생성하고 싶습니다.

어떤 도움이라도 대단히 감사하겠습니다.

안 잘리

Visual Studio를 사용하는 경우 편집 메뉴로 이동하여 JSON을 클래스로 붙여 넣을 수 있습니다. 이렇게하면 모든 클래스가 생성되고 인스턴스화하여 클래스에 값을 할당 할 수 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Python에서 YubiOTP 확인 HMAC-SHA-1 서명 생성

분류에서Dev

Apigee Edge에서 Google Maps at Work API 용 HMAC 서명 생성

분류에서Dev

해시 된 "암호"로 HMAC 서명 생성

분류에서Dev

Haskell에서 HMAC :: SHA256.hexdigest 생성

분류에서Dev

Python 코드에서 Javascript로 Hmac 생성

분류에서Dev

루비 인코딩에서 hash_hmac과 같은 API 서명 생성

분류에서Dev

Python에서 HMAC-SHA1 해시 생성 문제

분류에서Dev

다른 결과를 생성하는 Java에서 Python hmac 포팅

분류에서Dev

NodeJS HMAC 해시 생성

분류에서Dev

생성자 서명 생성

분류에서Dev

API 서명 생성

분류에서Dev

API는 함수에서 생성 될 때 hmac + base64의 유효성을 검사 할 수 없습니다.

분류에서Dev

PHP 암호화를위한 HMAC 생성

분류에서Dev

PHP hmac 서명을 Java로 변환

분류에서Dev

iOS OAuth 서명 생성?

분류에서Dev

서명의 PHP 생성

분류에서Dev

장고 의존성 : hmac?

분류에서Dev

PHP / Docusign-완료된 이벤트에서 HMAC 서명 확인

분류에서Dev

sha-512로 hmac을 어떻게 생성합니까?

분류에서Dev

HMAC384를 사용하여 Nominex에 대한 요청 생성

분류에서Dev

암호를위한 Node.JS Crypto.HMac 생성

분류에서Dev

이 값에는 Terraform에서 COS HMAC 자격 증명을 사용하는 동안 속성 오류가 없습니다.

분류에서Dev

HMAC-SHA256 서명을 계산하는 JavaScipt 사용

분류에서Dev

서명 된 AWS 요청에 대한 HMAC SHA-256

분류에서Dev

파이썬에서 서명 값 생성

분류에서Dev

Angular로 AWS 서명 된 요청 생성

분류에서Dev

명령 줄 인수에서 JSON 생성

분류에서Dev

AWS 사전 서명 된 URL 생성

분류에서Dev

graphql 리졸버 서명 자동 생성