রিজার্ভের প্রমাণ

যখনই চাইবেন, আপনার অর্থ নিরাপদ থাকার প্রমাণ পাবেন।

স্ন্যাপশটের তারিখ

BTC icon

BTC

রিজার্ভ অনুপাত*

100.3%

ETH icon

ETH

রিজার্ভ অনুপাত*

101.3%

SOL icon

SOL

রিজার্ভ অনুপাত*

101.1%

USDC icon

USDC

রিজার্ভ অনুপাত*

105%+

USDT icon

USDT

রিজার্ভ অনুপাত*

105%+

XRP icon

XRP

রিজার্ভ অনুপাত*

100.6%

ADA icon

ADA

রিজার্ভ অনুপাত*

102.2%

দায়বদ্ধতা, নিয়মিত রিভিউ

Kraken-এ, আমরা আপনাকে কেবল সর্বশেষ ডিজিটাল অ্যাসেটের লেনদেনের অনুমতিই দিই না, বরং এগুলো যে ওপেন-সোর্স ব্লকচেইনগুলিতে কাজ করে তার স্বচ্ছতা বাড়ানোর জন্যও আমরা কাজ করছি।

আমাদের নিয়মিত 'প্রুফ অফ রিজার্ভস' রিভিউগুলি ক্লায়েন্টদের জন্য তাদের ইন-স্কোপ ব্যালেন্সগুলি প্রকৃত অ্যাসেট দ্বারা সমর্থিত কিনা তা যাচাই করা সহজ করে তোলে, তাদের অ্যাকাউন্টে মাত্র কয়েকটি সহজ ক্লিকের মাধ্যমে।

বিশ্বস্ত হিসাবরক্ষকদের দ্বারা নিয়মিত পরিচালিত একটি উন্নত ক্রিপ্টোগ্রাফিক হিসাবরক্ষণ পদ্ধতি, 'প্রুফ অফ রিজার্ভস' আপনাকে যাচাই করার সুযোগ দেয় যে Kraken কঠোর দায়বদ্ধতার মান পূরণ করছে এবং প্রথাগত আর্থিক প্রতিষ্ঠানের চেয়ে বেশি স্বচ্ছতা প্রদান করছে।

প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী

'প্রুফ অফ রিজার্ভস' বলতে কী বোঝায়?

'প্রুফ অফ রিজার্ভস' (PoR) রিভিউ হল একটি প্রক্রিয়া, যা একজন স্বাধীন থার্ড পার্টির হিসাবরক্ষক”সম্পাদন করেন। এর উদ্দেশ্য হল নিশ্চিত করা যে কাস্টোডিয়ান তার ক্লায়েন্টদের পক্ষে দাবি করা অ্যাসেটের মালিক। এই হিসাবরক্ষক সমস্ত ব্যালেন্সের একটি বেনামী স্ন্যাপশট নেন এবং সেগুলিকে একটি Merkle tree-তে সংগ্রহ করেন — ভালো গোপনীয়তা বজায় থাকা ডেটা কাঠামো যা সমস্ত ক্লায়েন্ট ব্যালেন্সকে ধারণ করে।

Merkle Root Hash

এরপর হিসাবরক্ষক একটি মের্কল রুট পান: যা একটি ক্রিপ্টোগ্রাফিক ফিঙ্গারপ্রিন্ট হিসেবে কাজ করে এবং স্ন্যাপশট নেওয়ার সময় এই সমস্ত ব্যালেন্সের সংমিশ্রণকে অনন্যভাবে শনাক্ত করে।

এরপর হিসাবরক্ষক Kraken-এর তৈরি ডিজিটাল সিগনেচারগুলি সংগ্রহ করেন, যা অন-চেইন অ্যাড্রেসের মালিকানা প্রমাণ করে এবং যেগুলো সর্বজনীনভাবে যাচাইযোগ্য ব্যালেন্সের সঙ্গে সম্পর্কিত। শেষে, হিসাবরক্ষক এই ব্যালেন্সগুলো মের্কল ট্রিতে থাকা ক্লায়েন্ট ব্যালেন্সের সাথে মিলিয়ে যাচাই করেন, যাতে নিশ্চিত করা যায় যে ক্লায়েন্টের সম্পদ Kraken-এর নিয়ন্ত্রণে রয়েছে।

কোনো ক্লায়েন্ট নিজেরাই মের্কল রুটের সঙ্গে কিছু নির্বাচিত ডেটা মিলিয়ে পরীক্ষা করতে পারেন যে তাদের ব্যালেন্স 'প্রুফ অফ রিজার্ভস' প্রক্রিয়ায় অন্তর্ভুক্ত আছে কি না। বাকি ডেটাতে যেকোনো পরিবর্তন, তা যত ছোটই হোক না কেন, মূল ডেটার উপর প্রভাব ফেলবে - যার ফলে টেম্পারিং স্পষ্ট হয়ে উঠবে।

আমাদের 'প্রুফ অফ রিজার্ভস' রিপোর্ট এখানে পাওয়া যেতে পারে।

'প্রুফ অফ রিজার্ভস' রিপোর্টে কী কভার করা হয়?

স্পট ব্যালেন্স

রিভিউতে স্ন্যাপশট নেওয়ার সময় আপনার সমস্ত ইন-স্কোপ অ্যাসেটের ব্যালেন্স দেখানো হবে। সর্বশেষ রিভিউ অনুযায়ী এই অ্যাসেটগুলি প্রক্রিয়ার আওতাভুক্ত: Bitcoin (BTC), Ether (ETH), Solana (SOL), USD Coin (USDC), Tether (USDT) ও Ripple (XRP).

স্টেকিং ব্যালেন্স

স্ন্যাপশটের সময় যদি আপনার কিছু ব্যালেন্স অন-চেইন স্টেকিং-এ থাকে, তবে সেই স্টেক করা ব্যালেন্সের মান আপনার সাধারণ স্পট ব্যালেন্সের সঙ্গে একত্রিত করে একটি একক ব্যালেন্সে দেখানো হবে।

মার্জিন ট্রেডিং

সেই সময় যদি আপনার মার্জিন পজিশন থাকে, তাহলে আপনার মোট ব্যালেন্স ইতিবাচক পজিশনের মান অনুযায়ী আপডেট হবে।

উদাহরণ 1

যদি আপনি @30,000 USD মার্জিনে 1 BTC/USD কিনে থাকেন এবং আপনার পজিশন খোলা থাকে, তাহলে আপনার 'প্রুফ অফ রিজার্ভস' ব্যালেন্স আপনার BTC ব্যালেন্সের সাথে একটি ইতিবাচক +1 BTC সমন্বয় দেখাবে। আপনার USD ব্যালেন্সে কোনও নেতিবাচক সমন্বয় করা হবে না। Kraken কাস্টডিতে থাকা আপনার BTC অ্যাসেট ব্যালেন্সে সেই সময়ের BTC ব্যালেন্স সহ আপনার মার্জিন পজিশনের জন্য +1 BTC ইতিবাচক সমন্বয়ও অন্তর্ভুক্ত থাকবে। আপনার USD অ্যাসেট ব্যালেন্স একই থাকবে।

উদাহরণ 2

যদি আপনি মার্জিনে 1 BTC/ETH @ 15 ETH বিক্রি করেন এবং আপনার পজিশন এখনও খোলা থাকে, তাহলে আপনার 'প্রুফ অফ রিজার্ভস' ব্যালেন্সের মধ্যে, ETH ব্যালেন্সে +15 ETH ইতিবাচক সমন্বয় দেখাবে। আপনার BTC ব্যালেন্সে কোনও নেতিবাচক সমন্বয় করা হবে না। Kraken কাস্টডিতে থাকা আপনার ETH অ্যাসেট ব্যালেন্সে সেই সময়ের ETH ব্যালেন্স সহ আপনার মার্জিন পজিশনের জন্য +15 ETH ইতিবাচক সমন্বয়ও অন্তর্ভুক্ত থাকবে। Kraken কাস্টডিতে থাকা আপনার BTC অ্যাসেট ব্যালেন্স অপরিবর্তিত থাকবে।

দ্রষ্টব্য: উপরোক্ত ফিউচারস পদ্ধতি 2023 সালের মে মাসের 'প্রুফ অফ রিজার্ভস' রিভিউ থেকে কার্যকর হবে।

ফিউচারস ব্যালেন্স

রিভিউয়ের সময় যদি আপনার ফিউচারস ওয়ালেটে ব্যালেন্স থাকে, তাহলে আপনার ফিউচারস কোল্যাটারাল ব্যালেন্সের জন্য আলাদা প্রুফ অফ রিজার্ভস রেকর্ড তৈরি হবে। আপনার ব্যালেন্স একটি একক কোল্যাটারাল ফিউচারস ট্রেডের জন্য অবাস্তব লাভ এবং ক্ষতি দ্বারা সমন্বয় করা হয়। এতে স্পট ও মার্জিনের মতো একই ইন-স্কোপ অ্যাসেট অন্তর্ভুক্ত থাকবে এবং এটি একই Merkle Tree-র অংশ হবে (নিজের Merkle Leaf আইডি সহ)। 

উদাহরণ 1

যদি আপনার ফিউচারস ওয়ালেটে 1টি BTC থাকে, এবং আপনি -0.1 BTC অবাস্তব লাভ এবং ক্ষতি সহ BTC Perp Single Collateral-এ একটি পজিশন খোলেন, তাহলে Kraken কাস্টডিতে থাকা আপনার BTC ব্যালেন্স হবে 0.9 BTC (আনরিয়ালাইজড P&L-এর জন্য -0.1 BTC দ্বারা সামঞ্জস্য করা আপনার 1 BTC)।

উদাহরণ 2

যদি আপনার ফিউচারস ওয়ালেটে 1টি BTC থাকে, এবং আপনি BTC Perp মাল্টি-কোলেটারালে একটি পজিশন খোলেন যার অবাস্তব লাভ এবং ক্ষতি -100.0 USD হয়, তাহলে Kraken কাস্টডিতে থাকা আপনার BTC ব্যালেন্স হবে 1 BTC (আপনার1 BTC আনরিয়ালাইজড P&L এর সাথে সামঞ্জস্য করা হয় না, কারণ এটি USD তে ট্র্যাক করা হয়, এবং USD এই রিভিউ জন্য একটি ইন-স্কোপ অ্যাসেট নয়)।

দ্রষ্টব্য: উপরোক্ত ফিউচারস পদ্ধতি 2023 সালের মে মাসের 'প্রুফ অফ রিজার্ভস' রিভিউ থেকে কার্যকর হবে। 

প্রুফ অফ রিজার্ভস রিভিউর মধ্যে আমার অ্যাকাউন্ট অন্তর্ভুক্ত করা হয়েছে আমি তা কীভাবে ভেরিফাই করব?

সহজ ভেরিফিকেশন

নিচের ধাপগুলো অনুসরণ করে ক্রিপ্টোগ্রাফিকভাবে যাচাই করুন যে আপনার Kraken অ্যাকাউন্টের ব্যালেন্স সাম্প্রতিকতম প্রুফ অফ রিজার্ভস রিভিউতে অন্তর্ভুক্ত আছে।

দ্রষ্টব্য: এই ভেরিফিকেশনে কেবল রিভিউয়ের সময়ের ইন-স্কোপ অ্যাসেটগুলিতে আপনার অ্যাকাউন্টের ব্যালেন্স দেখা যাবে। এতে পরবর্তী ট্রেড বা লেনদেন দেখানো হবে না এবং ইন-স্কোপ নয় এমন অ্যাসেটের ব্যালেন্সও অন্তর্ভুক্ত হবে না।

1. আপনার Kraken অ্যাকাউন্টে লগ ইন করুন এবং Kraken Pro ইন্টারফেসে (pro.kraken.com) প্রুফ অফ রিজার্ভস পেজে যান (অ্যাকাউন্ট আইকন > প্রুফ অফ রিজার্ভস)। 

Kraken Proof of Reserves review list

2. প্রুফ অফ রিজার্ভস ট্যাবটি নির্বাচন করুন। এতে আমাদের সর্বশেষ যাচাইকৃত রিজার্ভ রেশিও সহ আপনার অ্যাকাউন্ট-নির্দিষ্ট তথ্য অন্তর্ভুক্ত থাকবে। আপনার অ্যাকাউন্টে সাম্প্রতিক 'প্রুফ অফ রিজার্ভস' রিপোর্টগুলো দেখানো হবে, যেখানে আপনার অ্যাকাউন্ট ব্যালেন্স যাচাই করা হয়েছে। এতে রিপোর্টের তারিখ, প্রদানকারী এবং মূল্যায়নের পরিধিও অন্তর্ভুক্ত থাকবে। 

Kraken Proof of Reserves review list

3. তারিখ নির্বাচন করুন এবং নিজেকে ভেরিফাই করুন ক্লিক করুন। এখানে রিভিউয়ের সময়ের ব্যালেন্সের নিশ্চিতকরণ এবং আপনার তথ্য যাচাই করার নির্দেশনা পাবেন।

Kraken audit details

থার্ড-পার্টি হিসাবরক্ষকের সাহায্যে যাচাই করুন

  • আপনার Merkle Leaf ID ব্যবহার করুন - প্রথম 16টি অক্ষর কপি করে থার্ড-পার্টি অ্যাকাউন্ট্যান্টের টুলে ইনপুট করুন, যাতে আপনার ব্যালেন্স পুনরুদ্ধার করা যায় এবং Merkle Tree পথের মধ্যে আপনার আইডি রিভিউ করা যায়। থার্ড-পার্টি অ্যাকাউন্ট্যান্টের টুলটি একটি আলাদা উইন্ডোতে খুলবে। 

দ্রষ্টব্য: এটি 2023 সালের পর থেকে করা রিভিউতে উপলব্ধ করা হয়েছে। আগের রিভিউতে, ভেরিফিকেশন টুল খুঁজতে অনুগ্রহ করে আমাদের পার্টনারের ওয়েব পেজ দেখুন।

Kraken audit details

Kraken-এর মাধ্যমে ভেরিফাই করুন

  • আপনার রেকর্ড ID ভেরিফাই করুন- আপনার রেকর্ড আইডি পুনরায় তৈরি করতে নিচের ধাপগুলো অনুসরণ করুন। এই রেকর্ড আইডি আপনার অ্যাকাউন্টের বিবরণ এবং রিভিউ আইডি (প্রতিটি রিপোর্ট তারিখের জন্য আলাদা) শনাক্ত করতে ব্যবহৃত হয়।
  • আপনার Merkle Leaf ID ভেরিফাই করুন - রিভিউ স্ন্যাপশটের সময় আপনার অ্যাকাউন্টে থাকা ব্যালেন্স সহ আপনার অ্যাকাউন্টকে অনন্যভাবে শনাক্ত করতে Merkle Leaf ID পুনরায় তৈরি করার জন্য ধাপগুলো অনুসরণ করুন। 
  • Merkle Tree-তে আপনার Merkle Leaf ID কনফার্ম করুন - নিশ্চিত করুন যে আপনার আইডি মারকেল ট্রির অন্তর্ভুক্ত এবং Merkle Tree রুট পর্যন্ত পথটি যাচাই করুন, যা আমাদের থার্ড-পার্টি হিসাবরক্ষক যাচাই করেছেন এবং সব ক্লায়েন্টের সঙ্গে শেয়ার করা হয়েছে।

দ্রষ্টব্য: এটি 2023 সালের পর থেকে করা রিভিউতে উপলব্ধ করা হয়েছে। আগের রিভিউতে, ভেরিফিকেশন টুল খুঁজতে অনুগ্রহ করে আমাদের পার্টনারের ওয়েব পেজ দেখুন।

Kraken audit details
Kraken audit details
Kraken audit details

উন্নত ভেরিফিকেশন

প্রযুক্তি প্রেমী ক্লায়েন্টরা তাদের অনন্য 'Merkle Tree leaf' নোড হ্যাশগুলি নিজেরাই পুনর্গঠন করতে পারেন এবং Kraken বা থার্ড-পার্টির হিসাবরক্ষকদের প্রদত্ত ভিজ্যুয়াল টুল ব্যবহার করার পরিবর্তে 'Merkle Tree'-তে প্রোগ্রাম্যাটিকভাবে তাদের ব্যালেন্স দেখতে পারেন। 

আপনি কোডে নিম্নোক্ত ভেরিফিকেশনের পদক্ষেপগুলি সম্পাদন করতে পারেন:

  1. নিচে বর্ণিত ধাপগুলি অনুসরণ করে আপনি আপনার অ্যাকাউন্টের জন্য 'Merkle Tree Leaf ID' তৈরির বিষয়টি যাচাই করতে পারেন।  

  2. এরপর আপনি আপনার লিফ আইডির জন্য 'Merkle Tree Path' যাচাই করতে পারবেন এবং আপনার পজিশন থেকে রুট নোড পর্যন্ত পথ পুনর্গঠন করতে পারবেন। আমরা সম্পূর্ণ স্বচ্ছতা প্রদান করি এবং আপনার সিবলিং লিফ আইডিগুলোকেও অন্তর্ভুক্ত করি। 

সিউডোকোডে, আপনার অ্যাকাউন্ট কোড, Kraken IIBAN, রিভিউ আইডি এবং ব্যালেন্স থেকে রেকর্ড আইডি এবং মার্কলে লিফ পুনর্গঠনের জন্য প্রয়োজনীয় পদক্ষেপগুলি নীচে বর্ণিত হয়েছে। মনে রাখবেন যে ফলাফলগুলি ব্যালেন্সের নির্দিষ্ট স্ট্রিং ফর্ম্যাটিং এবং রিভিউ করা অ্যাসেটের ক্রম অনুসারে সংবেদনশীল, যেমনটি 'প্রুফ অফ রিজার্ভ' দেখানো হয়েছে।

  • রেকর্ড ID = SHA256(concatenate(অ্যাকাউন্টের কোড, Kraken IIBAN, রিভিউ ID))
  • ব্যালেন্স = ""
  • প্রতিটি অ্যাসেটের জন্য:
    • ব্যালেন্স = concatenate(অ্যাসেট, ":", AssetBalances[asset])
  • Merkle Hash = concatenate(রেকর্ড ID, “,”, ব্যালেন্স)
  • Merkle Leaf = substring(SHA256(Merkle Hash), 0, 16)

আপনার Merkle Leaf চিহ্নিত করা হলে, আপনি 'Merkle Tree Path' পুনর্গঠন করতে HEX মান সহ SHA256 ভেরিফিকেশন ব্যবহার করতে পারেন।

নিচের কোড স্নিপেটগুলিতে কিছু নির্দিষ্ট উদাহরণও দেখানো হয়েছে। ফলস্বরূপ ‘Merkle Leaf‘ রিভিউর বিবরণেও দেখা যায়, যাতে আপনি নিশ্চিত হতে পারেন যে এটি সঠিকভাবে পুনর্গঠন করেছেন।

python

Python

import hashlib

# Merkle Leaf ID calculation
account_code = "8dc20f34da8cea8dd0f46b001694f5123ecd30d786c5eb92ad1a013703a4f8d1"
iiban = "AB12C34DEFG5KSQI"
review_id = "PR30SEP24"
record_id = hashlib.sha256((account_code + iiban + review_id).encode('utf-8')).hexdigest()

balances = "BTC:0.00093799,ETH:0.0422125592,SOL:0.0,USDC:0.0,USDT:6.72754,XRP:0.0"

print("Record ID: {}".format(record_id))
print("Merkle Hash: {}".format((record_id + "," + balances)))
hash_result = hashlib.sha256((record_id + "," + balances).encode('utf-8')).hexdigest()
print("SHA Result: {}".format(hash_result))
print("Merkle Leaf: {}".format(hash_result[0:16]))

#Merkle Tree Path function 
def mix(x, y):
    a = bytes.fromhex(x)
    b = bytes.fromhex(y)

    d = hashlib.sha256()
    d.update(a)
    d.update(b)
    return d.hexdigest()
rust

Rust

use sha2::{Digest, Sha256};

//Merkle Leaf ID calculation
const ACCOUNT_CODE: &str = "8dc20f34da8cea8dd0f46b001694f5123ecd30d786c5eb92ad1a013703a4f8d1";
const IIBAN: &str = "AB12C34DEFG5KSQI";
const REVIEW_ID: &str = "PR30SEP24";
const BALANCES: &str = "BTC:0.00093799,ETH:0.0422125592,SOL:0.0,USDC:0.0,USDT:6.72754,XRP:0.0";

fn main() {
    let mut record_hasher: Sha256 = Default::default();

    record_hasher.update(ACCOUNT_CODE);
    record_hasher.update(IIBAN);
    record_hasher.update(REVIEW_ID);

    let record_id = format!("{:x}", record_hasher.finalize());
    let merkle_hash = format!("{},{}", record_id, BALANCES);

    let mut merkle_hasher: Sha256 = Default::default();
    merkle_hasher.update(&merkle_hash);
    let merkle_result = format!("{:x}", merkle_hasher.finalize());

    println!("Record ID: {}", record_id);
    println!("Merkle Hash: {}", merkle_hash);
    println!("SHA Result: {}", merkle_result);
    println!("Merkle Leaf: {}", &merkle_result[..16]);
}

//Merkle Tree Path function
fn mix(x: &str, y: &str) -> Result<String, hex::FromHexError> {
    let mut leaves_hasher: Sha256 = Default::default();
    let a = hex::decode(x)?;
    let b = hex::decode(y)?;
    leaves_hasher.update(&a);
    leaves_hasher.update(&b);
    Ok(hex::encode(leaves_hasher.finalize()))
}

fn main() {
    println!("{}", mix("f42372aeb1be7296", "dfcced6ec3235f5e").unwrap());
    assert_eq!(
        mix("f42372aeb1be7296", "dfcced6ec3235f5e").unwrap(),
        "ad86a5ee2f21347403ce07e365530604690454fa76787e76be9d2f6efdceeabf"
    );
}
go

Go

package main

import (
	"crypto/sha256"
	"fmt"
)

//Merkle Leaf ID Calculation
func main() {

	accountCode := "8dc20f34da8cea8dd0f46b001694f5123ecd30d786c5eb92ad1a013703a4f8d1"
	iiban := "AB12C34DEFG5KSQI"
	reviewId := "PR30SEP24"

	secret := accountCode + iiban + reviewId

	data := []byte(secret)
	hash := sha256.Sum256(data)
	recordId := string(hash[:])
	fmt.Printf("Record ID: %x\n", recordId)

	balances := "BTC:0.00093799,ETH:0.0422125592,SOL:0.0,USDC:0.0,USDT:6.72754,XRP:0.0"

	merkleHash := fmt.Sprintf("%x%s%s", recordId, ",", balances)
	fmt.Printf("Merkle Hash: %s\n", merkleHash)

	hashResult := sha256.Sum256([]byte(merkleHash))
	hashResultStr := string(hashResult[:])
	fmt.Printf("SHA Result: %x\n", hashResultStr)
	fmt.Printf("Merkle Leaf: %x\n", hashResultStr[0:8])

}

//Merkle Tree path hashing
func mix(x, y string) (string, error) {
        // Convert the hex strings to bytes
        a, err := hex.DecodeString(x)
        if err != nil {
                return "", err
        }

        b, err := hex.DecodeString(y)
        if err != nil {
                return "", err
        }

        h := sha256.New()

        h.Write(a)
        h.Write(b)

        // Get the final hash value as a byte slice
        hashed := h.Sum(nil)

        // Convert the hash to a hex string and return it
        return hex.EncodeToString(hashed), nil
}

func main() {
        result, _ := mix("f42372aeb1be7296", "dfcced6ec3235f5e")
        fmt.Println(result)
}
bash

Bash

#!/bin/bash

#Merkle Leaf ID calculation
ACCOUNT_CODE="8dc20f34da8cea8dd0f46b001694f5123ecd30d786c5eb92ad1a013703a4f8d1"
IIBAN="AB12C34DEFG5KSQI"
REVIEW_ID="PR30SEP24"
RECORD_ID=$(echo -n "${ACCOUNT_CODE}${IIBAN}${REVIEW_ID}" | sha256sum | head -c 64)
BALANCES="BTC:0.00093799,ETH:0.0422125592,SOL:0.0,USDC:0.0,USDT:6.72754,XRP:0.0"
MERKLE_HASH="${RECORD_ID},${BALANCES}"
HASH_RESULT=$(echo -n ${MERKLE_HASH} | sha256sum | head -c 64)

echo "Record ID: ${RECORD_ID}"
echo "Merkle Hash: ${MERKLE_HASH}"
echo "SHA Result: ${HASH_RESULT}"
echo "Merkle Leaf: $(echo -n ${HASH_RESULT} | head -c 16)"

#Merkle Tree Path function
hex_string1="f42372aeb1be7296"
hex_string2="dfcced6ec3235f5e"

# convert hex strings to binary, concatenate them and then hash
hash_result=$(echo -n "$(echo -n $hex_string1 | xxd -r -p)$(echo -n $hex_string2 | xxd -r -p)" | sha256sum | awk '{ print $1 }')

echo $hash_result

সীমাবদ্ধতা এবং ভবিষ্যতের উন্নতি

স্বচ্ছতাকে প্রাধান্য দেওয়ার লক্ষ্যে, আমরা 'প্রুফ অফ রিজার্ভস' প্রক্রিয়ায় কিছু সীমাবদ্ধতা শেয়ার করতে চাই যা আমরা চিহ্নিত করেছি।

  • 'প্রুফ অফ রিজার্ভস' -এর মধ্যে রিভিউর সময় অন-চেইন ফান্ডের নিয়ন্ত্রণ প্রমাণ করা জড়িত, তবে এটি ব্যক্তিগত কীগুলির একচেটিয়া দখল প্রমাণ করতে পারে না, যা তাত্ত্বিকভাবে কোনও আক্রমণকারী নকল করতে পারেন।
  • এই প্রক্রিয়াটি কোনো লুকানো বাধ্যবাধকতা শনাক্ত করতে পারে না বা প্রমাণ করতে পারে না যে ফান্ডগুলি রিভিউ পাস করার উদ্দেশ্যে ধার নেওয়া হয়নি। একইভাবে, সর্বশেষ রিভিউর পর চাবি হারিয়ে যেতে পারে অথবা টাকা চুরি হয়ে যেতে পারে।
  • হিসাবরক্ষককে দক্ষ এবং স্বাধীন হতে হবে, পরীক্ষার্থীর পক্ষ থেকে কোনো প্রতারণার ঝুঁকি বা পক্ষগুলোর মধ্যে যোগসাজশের সম্ভাবনা যাতে কমানো যায়।
  • এই সীমাবদ্ধতার কিছুটা মোকাবিলা করতে আমরা আমাদের প্রুফ অব রিজার্ভসের জন্য একটি সম্মানিত ও স্বাধীন তৃতীয় পক্ষের প্রতিষ্ঠানের সঙ্গে কাজ করি এবং নিয়মিত বিরতিতে এসব পর্যালোচনা পরিচালনা করি। এছাড়াও আমরা এই ডেটার উপর সরাসরি আমাদের ক্লায়েন্ট প্ল্যাটফর্মে আমরা স্বচ্ছতা প্রদান করি। 
অ্যাকাউন্ট তৈরি করুন

উপরে তারকা চিহ্ন (*) দিয়ে চিহ্নিত রিজার্ভ রেশিওর সংখ্যাগুলো Kraken-এর রিজার্ভের প্রুফ সংক্রান্ত রিপোর্টগুলোর মধ্যে তুলনা করার সময় উল্লেখযোগ্যভাবে পরিবর্তিত হতে পারে। এর কারণ হলো সময়ের সঙ্গে পণ্যে পরিবর্তন এবং আমাদের কাস্টডিয়াল অবকাঠামোর উন্নয়ন, যা এসব ওয়ালেটে রাখা কিছু অ্যাসেটের শ্রেণিবিন্যাসে প্রভাব ফেলতে পারে। বর্তমান প্রথার সঙ্গে সামঞ্জস্য রেখে, ব্যবহৃত রিজার্ভের প্রুফ সংক্রান্ত পদ্ধতির সুনির্দিষ্ট ব্যাখ্যা সব রিপোর্টেই অন্তর্ভুক্ত থাকে।