Pre-Sign String (v1)

1. Prepare Pre-Sign String

By default, the pre-sign string is the request string (brackets inclusive) within the HTTP body.

image.png

Request Structure

copy
"request": 
  ### Sign from here
  {
    "head": {
      headers
    },
    "body": {
      body
    }
  }
    ### Sign till here
    ,
    "signature": signature
}

Sample pre-sign string

Compress the JSON before creating signature.

copy
{
    "head": {
    "clientId": "4Q5Y38882Y0QQKABCDE",
    "function": "alipay.intl.oauth.auth.prepareForRedirect",
    "reserve": "{}",
    "reqTime": "q",
    "version": "2.0.0",
    "reqMsgId": "2f864a23-ddc6-40ec-8c8c-e007922baf85"
  },
  "body": {
    "authMerchantId": "2160120012345678",
    "authSite": "ALIPAY_HK",
    "merchantRedirectUrl": "https://www.alipayhk.com",
    "scopes": [
      "USER_POINTS"
    ],
    "terminalType": "WAP"
  }
}

Private key sample (Java)

copy
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCozuwZZ1H0yKleXkTceCVmDIo4+kl9b9vvOAXvJcrzJM7p1KCRvBX9HffXhvO8Bhn8/YuhNlP4OEQPgGQoy7byBoJ/CUgLg0oKMvBotq2wcf0lIYzpJy0MoCurl370L/LLJZtP953C4WrQZkcL/MIKVqNNZNVgwT6NrINWcWqHO+UbHFmRojiyXUAR9YrRULONeHu+CkwOiiQh+tcibe1ieUsiN02vC6hp/PMf9Ebd0N/uxibk8HeHIIEm9RLx7VxF2tPEDC4Yog/gYOKuzq2UYMwrlui555uyDvoYq+dNAi+zaTObeR25wlDVIU1fTNTR9IoRkgtYeVcKaHt0Eq4HAgMBAAECggEALAe84WtnnxdvxeOExpS3/IQs0WvHG2a/0Qel1Jjg9MaXCbqiHyEWAy175cWXcWWOBcUEVIpdIJNcfUaZ2WI5V6uHAiejmQ0nlL1wo39ykmFJDBRSMsY7I93rRhh/zqVrCL3IYvVNOvWc7LqgsWm+GwA6HAe++DuvWziyESwIAzmZuIAHTMnppxV5hsjqlv+BuH6Fbw93qc0JmjQgHh5KwkhneJQQ+dpprZEQFdTg9XUP+Vt6NZ1c2uajPMSmwRoYJcuXMMzUpevV5HZA5wyrhsyJtJSYDt7WepudWX+C3YQLsjvYek906oHGym5tPbpoPVb9fXxqrKxdcBB+vR62oQKBgQDQbyty5JKpvUjASNULVHY5aY6xarR5Ubp0mmDUDK0y9Sc6LHfOFSz/U983Nk4dnbWuEQiRswxMjCJHesPXXsoLOolJVCAPP495BjWLejobSD4apjybEORVSWCFJSLcr3bdEAqROeNC8jOyJ63DCg/ZW6OFtLISN7mx4mbtfP1fjwKBgQDPVMjMXatzvvhGdB3PylZ/aW2j50E8PVMvG1Q/u/NVgpGwI+k6cWnqHNB2h8gGaUKPbhZtT/gy4kKiNs/dph1ltnflAZvTzo1djK5j6l2Z0sTYnxtlADg9bn2iuzZtpsF85XNhYgkfIW7KlYgITxLHxM1lOHRiEEJp/p0GBMeOCQKBgDcjgZH2R5ohmbJMUheaM2BCvV3PxYhmh3W7NSxDYjodwk/QXa0lyu6MiHs5oXaSNvKiTOsGO5WwaI0SO+aoi7hmttSwLX77KIAylU2deuums88m9Ndso4qwS5lNVqicvkwCp1j9wFIAco6Jkp0K92BfrqV7RLQvC6+0HdhrfTefAoGAHB/KJT7HlSngj94MdTVjSmFIyCUEimFfOVKhuQuL1Jujm5sjdhQQY/uIo6uDjKsWplIupKFmb7CVjV+WDuELt9JqrRvswWyRbJE6zr7p94XJwgDDPI4tEtg8Hqj6lyE5ufF+F0WvKxPj7YMfMtFXINYnboWb8/l0qOAq+LgJQdECgYADjs7gz32hdDy2YXyLuf0fqMuJ552M7FM1A2upWFmNSLv/h6FYxxUUMOoP4UEd8QNXtLBOxmovm772opUfoT91QUkZMKBe54XbfqEL+aUdi3Svhs+02cqEzqN1kfo9U5IkUqUDSB7bM1/nUHcxbw/2Va41ggyWO8VGd3Vq/1TXsg==

Sample signature

copy
kaOjnulViGIEJKtjVimspOVgM9zI%2FNhmpgdA3ffiUwggROdOw%2FwkcBpWvXIR1K3a3zO1hleY9TwF%2B1QJohe29QUHWGFqxnMKiWhzgsW70w0Ug46D%2BxzxWTaAsadlZjatMCzNph0K%2F0i6xm1t5ACUOvBS4x7BINIBz%2B%2FnF5RYaacwk38rludlLMjLjfyYZjp35dak7vvC5J7lQnkiAxi8n40Ku6n3I%2BzqMqzNANeO%2FuwYTQjzcudKfKhU4EddoJ4%2FCIfNoN3vzx0tVIkoQ%2BnNc2El%2BR5%2F0%2BeP0MnScpnEmd7ljguf%2BNbcTcVcXwQxZtsXHMxwiONIac7FesKyhM%2FBEQ%3D%3D

2. Obtain Signature

By default, the signature is within the response body as in the request, please use the exchanged public key from AlipayHK for verification.