generate_hash_key() {
local total="$1"
local installment="$2"
local currency_code="$3"
local merchant_key="$4"
local invoice_id="$5"
local app_secret="$6"
local data="${total}|${installment}|${currency_code}|${merchant_key}|${invoice_id}"
local rand1
rand1=$(openssl rand -hex 16)
local iv
iv=$(printf "%s" "$rand1" | openssl sha1 | awk '{print $2}' | cut -c1-16)
local password
password=$(printf "%s" "$app_secret" | openssl sha1 | awk '{print $2}')
local rand2
rand2=$(openssl rand -hex 16)
local salt
salt=$(printf "%s" "$rand2" | openssl sha1 | awk '{print $2}' | cut -c1-4)
local salt_with_password
salt_with_password=$(printf "%s" "${password}${salt}" | openssl sha256 | awk '{print $2}' | cut -c1-32)
local key_hex
key_hex=$(printf "%s" "$salt_with_password" | xxd -p -c 256)
local iv_hex
iv_hex=$(printf "%s" "$iv" | xxd -p -c 256)
local encrypted_base64
encrypted_base64=$(printf "%s" "$data" | openssl enc -aes-256-cbc -K "$key_hex" -iv "$iv_hex" -base64)
local msg_encrypted_bundle="${iv}:${salt}:${encrypted_base64}"
msg_encrypted_bundle="${msg_encrypted_bundle//\//__}"
echo "$msg_encrypted_bundle"
}
total="100"
installment="1"
currency_code="TRY"
merchant_key="merchant_key"
invoice_id="invoice_id"
app_secret="app_secret"
result=$(generate_hash_key "$total" "$installment" "$currency_code" "$merchant_key" "$invoice_id" "$app_secret")
echo "$result"<!DOCTYPE html>
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="keywords" content="">
<title>Sipay</title>
<link href="https://provisioning.sipay.com.tr/brandresource/assets/brand/SP/favicon.png" rel="shortcut icon">
<link href="https://fonts.googleapis.com/css?family=Poppins:100,200,300,400,500,600,700,800,900&display=swap" rel="stylesheet">
<!-- Bootstrap core CSS -->
<link href="https://provisioning.sipay.com.tr//assets/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet"/>
<!-- Custom styles for this template -->
<link href="https://provisioning.sipay.com.tr/errorpage/style.css" rel="stylesheet">
<style>
</style>
</head>
<body class="wa_body" style="background-color:#ffffff;">
<div class="wa_body_in">
<section class="wa_pagewrapper wa_loginwrapper" style="border-radius:40px;">
<div class="wa_login error_page">
<div class="row">
<div class="col-lg-6">
<div class="error_left">
<p><img src="https://provisioning.sipay.com.tr/brandresource/assets/brand/SP/logo.png" alt="logo" width="40%" height="auto"></p>
<p>404 - Service Unavailable</p>
<h2>System Error. Please contact Support</h2>
</div>
</div>
<div class="col-lg-6">
<div class="error_right">
<img src="https://provisioning.sipay.com.tr/errorpage/error-image.png" alt="img">
</div>
</div>
</div>
</div>
</section>
</div>
<!-- Bootstrap core JavaScript -->
</body></html>