Голомт Банк
  • E-Commerce
  • WC Payment Plugin
  • IPPOS
  • Instore
  • Card Gateway
  • Instore v2
  • Tokenization
  • Socialpay

›Checksum

Instore

  • Танилцуулга
  • Workflow
  • API

    • Утсаар нэхэмжлэх авах
    • QR авах
    • Deeplink-тэй QR авах
    • QR мэдээлэл авах
    • QR нэхэмжлэх төлөх
    • Instore гүйлгээний мэдээлэл шалгах
    • Нэхэмжлэх цуцлах
    • Гүйлгээ шалгах
    • Гүйлгээ буцаалт хийх
    • Гүйлгээ settlement хийх
    • Push Notification
    • Хэрэгцээт файлууд
    • Response формат

    Checksum

    • Тайлбар
    • Checksum үүсгэх

Checksum үүсгэх

Жишээ код дотор тусгагдсан key нь банк болон мерчант хоорондоо урьдчилан тохирсон түлхүүр, message нь өгөгдсөн томъёолол буюу датануудын нэгдлийн дагуу гаргасан утга байна.

Код

Java
PHP
Node.js
C#
Python
private static String encode(String key, String data) throws Exception {
byte[] bytes = Hex.decodeHex(key.toCharArray());
key = new String(bytes, StandardCharsets.UTF_8);

Mac sha256_HMAC = Mac.getInstance(HMACGenerator.HMAC_SHA256);
SecretKeySpec secret_key = new SecretKeySpec(key.getBytes(StandardCharsets.UTF_8), "HmacSHA256");
sha256_HMAC.init(secret_key);
return byteArrayToHex(sha256_HMAC.doFinal(data.getBytes(StandardCharsets.UTF_8)));
}
function hmac($key, $message){
return hash_hmac('sha256', $message, $key);
}
var crypto = require("crypto");

function hmac256(key, message) {
const buffer = Buffer.from(key, "hex");
key = buffer.toString("utf-8");

let hash = crypto.createHmac("sha256", key).update(message);
return hash.digest("hex");
}
private static string HashHMACHex(string key, string message)
{
var encoding = new ASCIIEncoding();
var hash = new HMACSHA256(encoding.GetBytes(key));
return BitConverter.ToString(hash.ComputeHash(encoding.GetBytes(message))).Replace("-", "").ToLower();
}
import hmac
import hashlib

def hmac256(key,message):
digest_maker=hmac.new(key,message, hashlib.sha256)
return digest_maker.hexdigest()
← ТайлбарNext →
Facebook Open Source
Copyright © 2024 Golomt Bank