ব্লকচেইন মূলত চারভাবে ব্যবহার করা যায়: Public, Private, Consortium, এবং Hybrid। Consortium blockchain হলো একাধিক আর্থিক প্রতিষ্ঠান বা সংস্থার একটি গোষ্ঠী, যেখানে প্রতিটি প্রতিষ্ঠানের নিজস্ব প্রাইভেট ব্লকচেইন থাকে। এই ব্লকচেইনে একটি পূর্ব-নির্বাচিত নোডের সেট কনসেনসাস প্রক্রিয়া নিয়ন্ত্রণ করে।
এই আর্টিকেলে আমরা কনসোর্টিয়াম ব্লকচেইনের সংজ্ঞা, বৈশিষ্ট্য, কাজের প্রক্রিয়া, সুবিধা, সীমাবদ্ধতা এবং ব্যবহারের ক্ষেত্র নিয়ে বিস্তারিত আলোচনা করব। প্রতিটি টেকনিক্যাল টার্মের সাথে প্রোগ্রামিং উদাহরণ ও সিনট্যাক্স দেওয়া হয়েছে।
🔍 কনসোর্টিয়াম ব্লকচেইন কী? (What is Consortium Blockchain?)
Consortium Blockchain হলো একটি permissioned blockchain (অনুমতিপ্রাপ্ত ব্লকচেইন), যা একাধিক সংস্থা বা সত্তা যৌথভাবে পরিচালনা ও রক্ষণাবেক্ষণ করে। ব্যবহারকারীদের নেটওয়ার্কে যোগ দেওয়ার আগে অনুমতি ও অনুমোদন নিতে হয়।
ব্লকচেইন নেটওয়ার্কের রক্ষণাবেক্ষণ ও লেনদেন যাচাইয়ের কাজ অংশগ্রহণকারী গোষ্ঠীগুলোর মধ্যে ভাগ করা থাকে। একক কেন্দ্রীয় কর্তৃপক্ষের নিয়ন্ত্রণে না থেকে, সদস্য সংস্থাগুলো নোড পরিচালনা করে যারা লেনদেন যাচাই করে এবং ব্লকচেইন রক্ষা করে।
যেসব খাতে একাধিক সংস্থাকে একটি সাধারণ প্ল্যাটফর্মে একসাথে কাজ করতে হয়, কিন্তু নিজেদের ডেটা ও লেনদেনের উপর নিয়ন্ত্রণ বজায় রাখতে হয়, সেখানে এই ধরনের ব্লকচেইন ব্যবহৃত হয়।
মূল ধারণা — Member Organization Nodes
python
class ConsortiumBlockchain:
def __init__(self):
self.members = [] # অনুমোদিত সংস্থার তালিকা
self.ledger = [] # শেয়ার্ড লেজার
def add_member(self, organization):
if organization not in self.members:
self.members.append(organization)
print(f"{organization} consortium-এ যোগ দিয়েছে")
def is_member(self, organization):
return organization in self.members
# উদাহরণ
chain = ConsortiumBlockchain()
chain.add_member("Bank A")
chain.add_member("Bank B")
chain.add_member("Hospital C")
print(chain.is_member("Bank A")) # True
print(chain.is_member("Unknown")) # False
ব্যাখ্যা:
শুধুমাত্র পূর্ব-নির্বাচিত সংস্থাগুলো নেটওয়ার্কে অংশ নিতে পারে। এটি কনসোর্টিয়াম ব্লকচেইনের permissioned প্রকৃতি দেখায়।
🧩 কনসোর্টিয়াম ব্লকচেইনের বৈশিষ্ট্য (Features)
১. Data Privacy (ডেটা গোপনীয়তা)
কম নোড এবং হালকা নেটওয়ার্ক লোড ডেটা গোপনীয়তা সমর্থন করে। প্রাইভেট ব্লকচেইনের মতো, কেবল নির্বাচিত কিছু ব্যক্তি ডেটাসেটে অ্যাক্সেস পায়। কিছু নোডের অনুমতি ছাড়া নেটওয়ার্কের তথ্য পরিবর্তন করা যায় না।
সিনট্যাক্স (Solidity — Access Control)
solidity
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract ConsortiumData {
mapping(address => bool) public authorized;
string private confidential = "Shared patient record";
modifier onlyAuthorized() {
require(authorized[msg.sender], "Not authorized");
_;
}
function addAuthorized(address _addr) public {
authorized[_addr] = true;
}
function getConfidential() public view onlyAuthorized returns (string memory) {
return confidential;
}
}
ব্যাখ্যা:authorized ম্যাপিংয়ে কেবল অনুমোদিত ঠিকানা যোগ করা হয়। onlyAuthorized মডিফায়ার নিশ্চিত করে যে কেবল অনুমোদিত সদস্যরাই গোপন ডেটা পড়তে পারে।
Python উদাহরণ
python
class DataRegistry:
def __init__(self):
self.authorized = set()
self.data = {}
def grant_access(self, member):
self.authorized.add(member)
def read_data(self, member, key):
if member in self.authorized:
return self.data.get(key, "No data")
return "Access denied"
registry = DataRegistry()
registry.grant_access("Bank A")
registry.data["loan"] = "Confidential loan data"
print(registry.read_data("Bank A", "loan")) # Confidential loan data
print(registry.read_data("Outsider", "loan")) # Access denied
২. Rapid-Fire Transaction (দ্রুত লেনদেন)
কনসোর্টিয়াম ব্লকচেইনে ব্যবহারকারী সংখ্যা কম থাকে, তাই নোডগুলোর মধ্যে লেনদেন যাচাইয়ে প্রতিযোগিতা কম হয়। নিয়ন্ত্রিত ব্যবহারকারী গোষ্ঠী কনসেনসাস প্রক্রিয়া দ্রুত করতে পারে।
সিনট্যাক্স (Python — Speed Comparison)
python
import time
def simulate_validation_time(node_count):
# প্রতিটি নোডে ভ্যালিডেশন সময় (সরলীকৃত)
time_per_node = 0.005 # seconds
return node_count * time_per_node
public_nodes = 10_000
consortium_nodes = 20
public_time = simulate_validation_time(public_nodes)
consortium_time = simulate_validation_time(consortium_nodes)
print(f"Public chain validation: {public_time:.2f} seconds")
print(f"Consortium chain validation: {consortium_time:.2f} seconds")
ব্যাখ্যা:
নোড কম হওয়ায় কনসেনসাস দ্রুত সম্পন্ন হয়, ফলে লেনদেন নিশ্চিতকরণ দ্রুত হয়।
৩. Regulations and Rules (নিয়ম ও বিধি)
কনসোর্টিয়াম ব্লকচেইন একাধিক কোম্পানি ও গোষ্ঠীর জন্য তৈরি, তাই নিয়ম অত্যন্ত গুরুত্বপূর্ণ। নোডগুলোকে নেটওয়ার্কের নিয়ম মেনে চলতে হয়, যা একটি দলগত পরিবেশ তৈরি করে এবং দক্ষতা বৃদ্ধি করে।
সিনট্যাক্স (Python — Rule Engine)
python
class ConsortiumRules:
def __init__(self):
self.rules = {
"max_tx_per_block": 100,
"required_approvals": 3,
"block_time": 5 # seconds
}
def validate_compliance(self, tx_count, approvals):
if tx_count > self.rules["max_tx_per_block"]:
return False
if approvals < self.rules["required_approvals"]:
return False
return True
rules = ConsortiumRules()
print(rules.validate_compliance(80, 3)) # True
print(rules.validate_compliance(120, 2)) # False
ব্যাখ্যা:
নেটওয়ার্কের সদস্যরা পূর্বনির্ধারিত নিয়ম অনুসরণ করে, যা শৃঙ্খলা ও দক্ষতা নিশ্চিত করে।
৪. No Crime Committed (অপরাধের সুযোগ কম)
কনসোর্টিয়াম ব্লকচেইনে স্বল্প সংখ্যক পরিচিত সদস্য থাকে, তাই অপরাধমূলক কার্যকলাপের ঝুঁকি অনেক কমে যায়। একে অপরের পরিচিতি একটি চেক-অ্যান্ড-ব্যালেন্স ব্যবস্থা তৈরি করে, যা ব্যবসার জন্য নিরাপদ প্ল্যাটফর্ম।
সিনট্যাক্স (Python — Known Participants)
python
class ReputationSystem:
def __init__(self):
self.known_members = {} # member -> reputation score
def register(self, member, score):
self.known_members[member] = score
def is_trusted(self, member):
return self.known_members.get(member, 0) >= 50
rep = ReputationSystem()
rep.register("Bank A", 90)
rep.register("Bank B", 80)
print(rep.is_trusted("Bank A")) # True
print(rep.is_trusted("Unknown")) # False
ব্যাখ্যা:
পরিচিত সদস্যদের খ্যাতি যাচাই করা হয়, ফলে জালিয়াতি বা অবৈধ কাজের সুযোগ কমে।
৫. Zero Probability of 51% Attack (৫১% অ্যাটাকের সম্ভাবনা কম)
একটি পাবলিক ব্লকচেইনে ৫১% অ্যাটাক খুবই বিপজ্জনক। কনসোর্টিয়ামে একাধিক সংস্থার সদস্য থাকায় একক পক্ষের পক্ষে সংখ্যাগরিষ্ঠ নিয়ন্ত্রণ নেওয়া কঠিন। তবে সদস্যরা একসাথে ষড়যন্ত্র করলে ঝুঁকি তৈরি হতে পারে।
সিনট্যাক্স (Python — Collusion Check)
python
def is_51_attack_possible(members, attacker_controlled):
total = len(members)
if attacker_controlled > total * 0.51:
return True
return False
members = ["Bank A", "Bank B", "Bank C", "Bank D", "Bank E"]
attacker_controlled = 2 # attacker নিয়ন্ত্রিত সদস্য সংখ্যা
print(is_51_attack_possible(members, attacker_controlled)) # False
ব্যাখ্যা:
কনসোর্টিয়ামে নোডের সংখ্যা সীমিত হলেও একাধিক স্বাধীন সংস্থা থাকায় একক আক্রমণকারীর পক্ষে ৫১% নিয়ন্ত্রণ নেওয়া কঠিন।
⚙️ কনসোর্টিয়াম ব্লকচেইন কিভাবে কাজ করে? (How Does a Consortium Blockchain Work?)
কনসোর্টিয়াম ব্লকচেইনে বিভিন্ন ব্যবসা বা গোষ্ঠীর নোডগুলো নেটওয়ার্ককে আরও গোপনীয়ভাবে নিয়ন্ত্রণ করে। তারা ওয়ার্কফ্লো, স্কেলেবিলিটি ও জবাবদিহি বজায় রাখতে তথ্য বিনিময় ও পরিবর্তন করে।
ধাপসমূহ:
- সদস্য নির্বাচন: কনসোর্টিয়াম ব্লকচেইন কেবল নির্বাচিত সদস্যদের জন্য উন্মুক্ত।
- নোড পরিচালনা: নির্বাচিত সদস্যরা নোড চালায় এবং নেটওয়ার্কের পক্ষে লেনদেন যাচাই করে।
- কনসেনসাস: সাধারণত ভোটিং বা Proof-of-Stake (PoS) ব্যবহার হয়; যাদের নেটওয়ার্কে স্টেক আছে তারা লেনদেন অনুমোদন করে।
- ব্লক যোগ: যাচাইকৃত লেনদেন একটি ব্লকে গ্রুপ হয়ে শেয়ার্ড লেজারে যোগ হয়।
- ডেটা শেয়ারিং: সদস্যরা নিরাপদে ডেটা শেয়ার করে, কিন্তু বাইরের কারও অ্যাক্সেস নেই।
সিনট্যাক্স (Python — Voting Consensus)
python
class Member:
def __init__(self, name):
self.name = name
def approve(self, block):
# বাস্তবে এখানে স্মার্ট ভ্যালিডেশন হবে
return True
class Consortium:
def __init__(self, members):
self.members = members
self.required_approvals = len(members) // 2 + 1
self.ledger = []
def validate_block(self, block):
approvals = sum(1 for m in self.members if m.approve(block))
if approvals >= self.required_approvals:
self.ledger.append(block)
print(f"Block approved by {approvals}/{len(self.members)} members")
return True
print(f"Block rejected: only {approvals} approvals")
return False
# ব্যবহার
members = [Member("Bank A"), Member("Bank B"), Member("Bank C")]
consortium = Consortium(members)
consortium.validate_block("Transaction: Cross-border payment")
ব্যাখ্যা:
ব্লক যোগ করতে সংখ্যাগরিষ্ঠ সদস্যের অনুমোদন প্রয়োজন। এটি নেটওয়ার্ককে গণতান্ত্রিক ও নিরাপদ রাখে।
Proof-of-Stake Consensus উদাহরণ (Python)
python
import random
def select_validator(stakes):
total = sum(stakes.values())
r = random.uniform(0, total)
cumulative = 0
for validator, stake in stakes.items():
cumulative += stake
if r <= cumulative:
return validator
stakes = {"Bank A": 5000, "Bank B": 3000, "Bank C": 2000}
selected = select_validator(stakes)
print(f"Selected validator: {selected}")
ব্যাখ্যা:
PoS-এ বেশি স্টেক করা সদস্যের ভ্যালিডেটর হওয়ার সম্ভাবনা বেশি। এটি কনসোর্টিয়ামে লেনদেন যাচাইয়ে ব্যবহৃত হতে পারে।
✅ কনসোর্টিয়াম ব্লকচেইনের সুবিধা (Benefits)
১. Greater Efficiency (বৃহত্তর দক্ষতা)
নোড সংখ্যা সীমিত হওয়ায় লেনদেন যাচাইয়ে কম কম্পিউটেশনাল শক্তি লাগে, ফলে দ্রুত লেনদেন ও কম ফি হয়।
২. Enhanced Security (উন্নত নিরাপত্তা)
ছোট, পরিচিত ও নির্ভরযোগ্য সদস্যদের নিয়ন্ত্রণে থাকায় পাবলিক ব্লকচেইনের চেয়ে বেশি নিরাপদ। খারাপ actors পক্ষে নেটওয়ার্ক ম্যানিপুলেট করা কঠিন।
৩. Shared Costs (খরচ ভাগাভাগি)
একটি কনসোর্টিয়াম ব্লকচেইন রক্ষণাবেক্ষণে খরচ সদস্যদের মধ্যে ভাগ হয়, তাই প্রাইভেট ব্লকচেইন নির্মাণের চেয়ে কম খরচ হয়।
সিনট্যাক্স (Python — Cost Split)
python
def shared_cost(total_cost, member_count):
return total_cost / member_count
total = 100_000 # USD
members = 10
print(f"Per member cost: ${shared_cost(total, members)}")
৪. Better Data Privacy (উন্নত ডেটা গোপনীয়তা)
ছোট, নির্ভরযোগ্য সদস্যদের অ্যাক্সেস থাকায় পাবলিক ব্লকচেইনের চেয়ে গোপনীয়তা বেশি। ব্যবসায়িক ডেটার জন্য উপযুক্ত।
৫. More Control (অধিক নিয়ন্ত্রণ)
প্রতিটি অংশগ্রহণকারী নেটওয়ার্ক প্রশাসন ও লেনদেন যাচাইয়ে প্রভাব রাখতে পারে, ফলে সুশাসন ও সিদ্ধান্ত গ্রহণ ভালো হয়।
৬. Scalability (স্কেলেবিলিটি)
সীমিত অংশগ্রহণকারী থাকায় পাবলিক ব্লকচেইনের চেয়ে দক্ষভাবে স্কেল করা যায়; লেনদেন প্রক্রিয়াকরণ ক্ষমতা বাড়ানো যায় পারফরম্যান্স ক্ষতি ছাড়াই।
৭. Customizable Governance (কাস্টমাইজযোগ্য শাসন)
অংশগ্রহণকারীরা তাদের নির্দিষ্ট চাহিদা অনুযায়ী গভর্নেন্স মডেল কাস্টমাইজ করতে পারে, যা সিদ্ধান্ত গ্রহণে নমনীয়তা দেয়।
সিনট্যাক্স (JSON — Governance Config)
json
{
"governance": {
"voting_threshold": "60%",
"term_length_months": 12,
"consensus": "PBFT"
}
}
৮. Interoperability (আন্তঃকার্যক্ষমতা)
কনসোর্টিয়াম ব্লকচেইন অন্যান্য ব্লকচেইন নেটওয়ার্ক বা প্রথাগত সিস্টেমের সাথে ইন্টারঅপারেট করার জন্য ডিজাইন করা যায়, যা ব্যবসায়িক প্রক্রিয়া স্ট্রিমলাইন করে।
৯. Reduced Regulatory Burden (নিয়ন্ত্রক বোঝা হ্রাস)
নির্ভরযোগ্য অংশগ্রহণকারীদের মধ্যে সীমাবদ্ধ থাকায় নিয়ন্ত্রক সম্মতি সহজে পরিচালনা করা যায়, কমপ্লায়েন্স খরচ কমে।
১০. Collaborative Innovation (সহযোগিতামূলক উদ্ভাবন)
অংশগ্রহণকারীরা সম্পদ ও দক্ষতা ভাগ করে নতুন সমাধান ও অ্যাপ্লিকেশন তৈরি করতে পারে, যা পুরো নেটওয়ার্কের উপকারে আসে।
⚠️ কনসোর্টিয়াম ব্লকচেইনের সীমাবদ্ধতা (Limitations)
- কেন্দ্রীভূত নেটওয়ার্ক আর্কিটেকচার: নির্মম খেলোয়াড়রা নিয়ম ভাঙতে পারে।
- আপগ্রেড করা কঠিন: প্রতিটি নেটওয়ার্ক ব্যবহারকারীর সম্মতি প্রয়োজন।
- কনসোর্টিয়ামের কার্যকারিতা এখনও পরিমার্জিত হচ্ছে।
- একটি প্রতিষ্ঠান শিল্পের বৃদ্ধিতে একচেটিয়া প্রভাব ফেলতে পারে।
- নির্মাণে অনেক প্রচেষ্টা লাগে: বিভিন্ন গোষ্ঠীকে যোগাযোগ প্রোটোকল নিয়ে আলোচনা করতে হয়।
- Limited Decentralization: সম্পূর্ণ বিকেন্দ্রীভূত নয়, নির্ভরযোগ্য গোষ্ঠীর উপর নির্ভরশীল।
- Potential Conflict of Interest: সদস্যরা নিজেদের স্বার্থ নেটওয়ার্কের স্বার্থের উপরে রাখতে পারে।
- Limited Transparency: পাবলিক ব্লকচেইনের চেয়ে কম স্বচ্ছ; বহিঃস্থ পক্ষ ডেটা যাচাই করতে পারে না।
- Risk of Network Fragmentation: কোনো সদস্য চলে গেলে বা নিয়ম না মানলে নেটওয়ার্ক বিভক্ত হতে পারে।
- Governance Challenges: সদস্যদের স্বার্থ ভিন্ন হলে সুশাসন কঠিন।
সিনট্যাক্স (Python — Upgrade Consent)
python
class UpgradeProposal:
def __init__(self, members):
self.members = members
self.consents = set()
def consent(self, member):
if member in self.members:
self.consents.add(member)
def is_approved(self):
# সকল সদস্যের সম্মতি প্রয়োজন
return len(self.consents) == len(self.members)
proposal = UpgradeProposal(["A", "B", "C"])
proposal.consent("A")
proposal.consent("B")
print(proposal.is_approved()) # False (C consent দেয়নি)
ব্যাখ্যা:
আপগ্রেডের জন্য সব সদস্যের সম্মতি লাগে, যা ধীর ও জটিল হতে পারে।
💼 কনসোর্টিয়াম ব্লকচেইনের ব্যবহার (Use Cases)
১. Healthcare (স্বাস্থ্যসেবা)
বিভিন্ন স্বাস্থ্যসেবা প্রদানকারী (হাসপাতাল, ক্লিনিক, বীমা কোম্পানি) রোগীর মেডিকেল ডেটা নিরাপদে সংরক্ষণ ও শেয়ার করতে কনসোর্টিয়াম ব্লকচেইন ব্যবহার করতে পারে।
সিনট্যাক্স (Python — Patient Record Access)
python
class HealthConsortium:
def __init__(self):
self.records = {}
self.authorized = set()
def authorize(self, provider):
self.authorized.add(provider)
def store_record(self, provider, patient_id, record):
if provider in self.authorized:
self.records[patient_id] = record
def get_record(self, provider, patient_id):
if provider in self.authorized:
return self.records.get(patient_id, "No record")
return "Access denied"
২. Finance (ফাইন্যান্স)
বাণিজ্য ফাইন্যান্স, রেমিট্যান্স এবং ক্রস-বর্ডার পেমেন্ট সহজ করতে কনসোর্টিয়াম ব্লকচেইন ব্যবহৃত হয়। ব্যাংক, আর্থিক প্রতিষ্ঠান ও পেমেন্ট প্রসেসররা দ্রুত তথ্য শেয়ার করে লেনদেনের সময় ও খরচ কমায়।
৩. Identity Verification (পরিচয় যাচাই)
পরিচয় জালিয়াতি রোধে কনসোর্টিয়াম ব্লকচেইন ব্যবহার করা যায়। ব্যাংক, সরকারি সংস্থা ও ক্রেডিট ব্যুরো একত্রে ব্যক্তির পরিচয় ও ক্রেডিট ইতিহাস যাচাই করতে পারে।
৪. Real Estate (রিয়েল এস্টেট)
সম্পত্তি ক্রয়-বিক্রয় ও ভাড়া লেনদেন পরিচালনায় ব্যবহার করা যায়। রিয়েল এস্টেট এজেন্ট, প্রপার্টি ম্যানেজার ও টাইটেল কোম্পানি তথ্য শেয়ার করে জালিয়াতি কমাতে পারে।
৫. Supply Chain Management (সাপ্লাই চেইন ম্যানেজমেন্ট)
পণ্য ও পণ্য প্রবাহ ট্র্যাক করতে কনসোর্টিয়াম ব্লকচেইন ব্যবহৃত হয়। প্রস্তুতকারক, পরিবেশক, খুচরা বিক্রেতা ও লজিস্টিক কোম্পানি নিরাপদে তথ্য শেয়ার করে।
সিনট্যাক্স (JSON — Supply Chain Event)
json
{
"product_id": "P123",
"events": [
{ "stage": "manufactured", "timestamp": "2025-08-01T08:00:00Z", "actor": "Factory A" },
{ "stage": "shipped", "timestamp": "2025-08-02T10:00:00Z", "actor": "Logistics B" }
]
}
৬. Government Services (সরকারি সেবা)
ভোটিং, লাইসেন্স প্রদান, পারমিট অনুমোদনের মতো পাবলিক সেবায় ব্যবহার করা যায়। প্রযুক্তি প্রক্রিয়ার অখণ্ডতা নিশ্চিত করে এবং জালিয়াতি কমায়।
৭. Intellectual Property Management (মেধাস্বত্ব ব্যবস্থাপনা)
পেটেন্ট, কপিরাইট, ট্রেডমার্কের মতো মেধাস্বত্ব পরিচালনায় ব্যবহার করা যায়। উদ্ভাবক, কোম্পানি ও লাইসেন্সিং সংস্থা মালিকানা হস্তান্তর পরিচালনা করে।
৮. Energy Management (এনার্জি ম্যানেজমেন্ট)
এনার্জি বিতরণ ও খরচ পরিচালনায় ব্যবহার হয়। প্রযোজক, গ্রিড অপারেটর ও ভোক্তারা এনার্জি উৎপাদন, খরচ ও লেনদেন পর্যবেক্ষণ করে।
৯. Gaming Industry (গেমিং শিল্প)
ইন-গেম অ্যাসেট ও লেনদেন পরিচালনায় ব্যবহার হয়। গেম ডেভেলপার ও পাবলিশাররা ভার্চুয়াল কারেন্সি, আইটেম ও চরিত্রের মালিকানা হস্তান্তর পরিচালনা করে।
📝 এক্সারসাইজ (হিন্টসহ)
Exercise 1: Consortium Voting System
কাজ: Python-এ Member এবং Consortium ক্লাস তৈরি করো। Consortium.validate_block মেথডে সংখ্যাগরিষ্ঠ সদস্যের অনুমোদনে ব্লক গৃহীত হবে কিনা যাচাই করো।
হিন্ট:
required_approvals = len(members) // 2 + 1sum(1 for m in self.members if m.approve(block))ব্যবহার করো।
Exercise 2: Proof-of-Stake Validator Selection
কাজ: একটি ফাংশন লেখো যা স্টেক ডিকশনারি থেকে র্যান্ডমভাবে ভ্যালিডেটর নির্বাচন করবে (ওজনযুক্ত সম্ভাবনা)।
হিন্ট:
random.uniform(0, total)ব্যবহার করো।- ক্রমযোজিত স্টেক অনুযায়ী ভ্যালিডেটর বাছাই করো।
Exercise 3: Access Control for Consortium
কাজ: Solidity-তে একটি কন্ট্রাক্ট লেখো যেখানে authorized ম্যাপিং থাকবে এবং onlyAuthorized মডিফায়ার ব্যবহার করে গোপন মান রিটার্ন করবে।
হিন্ট:
mapping(address => bool) public authorized;modifier onlyAuthorized() { require(authorized[msg.sender], "Not authorized"); _; }
Exercise 4: Transaction Speed Comparison
কাজ: একটি ফাংশন লেখো যা নোড সংখ্যা নিয়ে ভ্যালিডেশন সময় বের করবে (যেমন node_count * 0.005 সেকেন্ড) এবং পাবলিক (১০,০০০), কনসোর্টিয়াম (২০) এর তুলনা করো।
হিন্ট:
- দুটি মান গণনা করে প্রিন্ট করো।
Exercise 5: Upgrade Proposal Consent
কাজ: Python-এ UpgradeProposal ক্লাস তৈরি করো, যেখানে consent মেথডে সদস্য সম্মতি দেবে এবং is_approved মেথডে সব সদস্যের সম্মতি চেক করবে।
হিন্ট:
self.consentsসেট ব্যবহার করো।len(self.consents) == len(self.members)চেক করো।
Exercise 6: Reputation System
কাজ: একটি ReputationSystem ক্লাস তৈরি করো যেখানে সদস্যদের স্কোর থাকবে এবং is_trusted মেথডে স্কোর ৫০ এর বেশি হলে True রিটার্ন করবে।
হিন্ট:
self.known_membersডিকশনারি ব্যবহার করো।return self.known_members.get(member, 0) >= 50
🧭 সমাধানের পথনির্দেশনা
- প্রথমে সদস্য মডেল করো:
Memberক্লাসে নাম ও অনুমোদনের লজিক রাখো। - কনসোর্টিয়াম ক্লাস তৈরি করো: সদস্য তালিকা, লেজার ও প্রয়োজনীয় অনুমোদনের সংখ্যা নির্ধারণ করো।
- কনসেনসাস ইমপ্লিমেন্ট করো: ভোটিং বা PoS ব্যবহার করে ব্লক যাচাই করো।
- অ্যাক্সেস কন্ট্রোল যোগ করো: অনুমোদিত সদস্যদের সেট বা ম্যাপিং রাখো।
- নিয়ম ইঞ্জিন তৈরি করো: সর্বোচ্চ ট্রানজেকশন, ব্লক টাইম ইত্যাদি নিয়ম যাচাই করো।
- আপগ্রেড প্রস্তাব মডেল করো: সব সদস্যের সম্মতি প্রয়োজন কিনা চেক করো।
- টেস্ট করো: বিভিন্ন দৃশ্যে ভোটিং, অ্যাক্সেস এবং পারফরম্যান্স যাচাই করো।
📚 সারসংক্ষেপ
কনসোর্টিয়াম ব্লকচেইন একাধিক সংস্থার মধ্যে একটি ভারসাম্যপূর্ণ সমাধান প্রদান করে—যেখানে বিকেন্দ্রীকরণ ও নিয়ন্ত্রণের সমন্বয় ঘটে। এটি ডেটা গোপনীয়তা, দ্রুত লেনদেন, ভাগ করা খরচ এবং সুশাসনের সুবিধা দেয়। তবে সম্পূর্ণ বিকেন্দ্রীকরণের অভাব এবং শাসন জটিলতা এর সীমাবদ্ধতা। স্বাস্থ্যসেবা, ফাইন্যান্স, সাপ্লাই চেইন ও সরকারি খাতে এর প্রয়োগ ক্রমশ বৃদ্ধি পাচ্ছে। উপরের সিনট্যাক্স ও এক্সারসাইজগুলো অনুশীলন করলে আপনি কনসোর্টিয়াম ব্লকচেইনের বাস্তব প্রয়োগ ও আর্কিটেকচার বুঝতে পারবেন।
এই পোস্টটি ToLearnTeam.com-এ প্রকাশের জন্য প্রস্তুত।
কোনো অংশ আরও বিস্তারিত করতে চাইলে জানাতে পারেন।
