ক্লাউড কেএমএস (অসমমিতিক) দিয়ে ডেটা সাইন করুন এবং যাচাই করুন

1. ওভারভিউ

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

আপনি শিখবেন

  • ক্লাউড কেএমএস এপিআই কীভাবে সক্ষম করবেন
  • কিভাবে একটি কী রিং তৈরি করবেন
  • অপ্রতিসম স্বাক্ষর/যাচাইয়ের জন্য কীভাবে একটি ক্রিপ্টো কী তৈরি করবেন

2. সেটআপ এবং প্রয়োজনীয়তা

স্ব-গতিসম্পন্ন পরিবেশ সেটআপ

  1. ক্লাউড কনসোলে সাইন ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ (যদি আপনার ইতিমধ্যেই একটি Gmail বা G Suite অ্যাকাউন্ট না থাকে তবে আপনাকে অবশ্যই একটি তৈরি করতে হবে।)

dMbN6g9RawQj_VXCSYpdYncY-DbaRzr2GbnwoV7jFf1u3avxJtmGPmKpMYgiaMH-qu80a_NJ9p2IIXFppYk8x3wyymZXavjglNLJJhuXieCemXuD0pdYncY-DbaRzr2GbnwoV7jFf1u3avxJtmGPmKpMYgiaMH-qu80a_NJ9p2IIXFppYk8x3wyymZXavjglNLJJhuXieCemXuD0pdYncY5Gv3GU Zw

ci9Oe6PgnbNuSYlMyvbXF1JdQyiHoEgnhl4PlV_MFagm2ppzhueRkqX4eLjJllZco_2zCp0V0bpTupUSKji9KkQyWqj11pqit1K1faS1V6aFxLpGtQd5Q55

8-tA_Lheyo8SscAVKrGii2coplQp2_D1Iosb2ViABY0UUO1A8cimXUu6Wf1R9zJIRExL5OB2j946aIiFtyKTzxDcNnuznmR45vZ2HMoK3oK3o67gCu67jCGUJCGUX67j

প্রজেক্ট আইডিটি মনে রাখবেন, সমস্ত Google ক্লাউড প্রকল্প জুড়ে একটি অনন্য নাম (উপরের নামটি ইতিমধ্যে নেওয়া হয়েছে এবং আপনার জন্য কাজ করবে না, দুঃখিত!)। এটি পরে এই কোডল্যাবে PROJECT_ID হিসাবে উল্লেখ করা হবে।

  1. এর পরে, Google ক্লাউড সংস্থানগুলি ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে৷

এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ করা উচিত নয়, যদি কিছু থাকে। "ক্লিনিং আপ" বিভাগে যে কোনও নির্দেশাবলী অনুসরণ করতে ভুলবেন না যা আপনাকে কীভাবে সংস্থানগুলি বন্ধ করতে হবে তা পরামর্শ দেয় যাতে আপনি এই টিউটোরিয়ালের বাইরে বিলিং করতে না পারেন৷ Google ক্লাউডের নতুন ব্যবহারকারীরা $300USD ফ্রি ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷

ক্লাউড শেল শুরু করুন

এই কোডল্যাবে আপনি ক্লাউড শেল ব্যবহার করবেন, একটি বিনামূল্যের ভার্চুয়ালাইজড পরিবেশ যা Google ক্লাউডে চলছে। GCP কনসোল থেকে উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:

vezHz_9nBUSt_0pD8eMHkzgHehRa83ILgMpcztEJtGZspECiZTk47O02PYk6Zp7jyStful3AIDEZU8qcCNbiXF4WcpkUdJi2LoUbxTWg4cZKD4skDQW1BQZW1K

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

wQQCzLZ7_omk2cuoBaKVPnniKDFG6MsP8h2OA0j3Iw9LRSFQ9TkD6Ccq4dcUASPoD5UKe1Ur7bIgYn5gAh2r6BlQDnpFmgyAtv9x2Df6jfgVgXugVgVgSkUed 2 প্রশ্ন

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

3. ক্লাউড KMS পরিষেবা সক্ষম করুন৷

আপনি ক্লাউড কেএমএস ব্যবহার করার আগে, আপনাকে প্রথমে আপনার প্রকল্পে পরিষেবাটি সক্ষম করতে হবে৷ এটি শুধুমাত্র প্রতি প্রকল্পের একবার করা প্রয়োজন। ক্লাউড কেএমএস পরিষেবা সক্ষম করতে, নিম্নলিখিত কমান্ডটি চালান:

$ gcloud services enable cloudkms.googleapis.com \
    --project "${GOOGLE_CLOUD_PROJECT}"

এটি সক্ষম হতে এক মিনিট পর্যন্ত সময় লাগতে পারে৷ কমান্ডটি শেষ হলে সাফল্যের প্রতিবেদন করবে।

4. KMS কী তৈরি করুন

একটি ক্লাউড KMS কী রিং তৈরি করুন। ক্লাউড কেএমএসে, একটি কী রিং হল ক্রিপ্টোগ্রাফিক কীগুলির একটি যৌক্তিক সংগ্রহ। কী রিং-এ কীগুলি সম্পর্কে মেটাডেটা থাকে যেমন তাদের অবস্থান। global অঞ্চলে my-keyring নামে একটি কী রিং তৈরি করুন:

$ gcloud kms keyrings create "my-keyring" \
    --location "global"

এখন আপনি এইমাত্র তৈরি করা কী রিং-এর ভিতরে asymmetric-signing এর উদ্দেশ্য সহ my-asymmetric-signing-key নামে একটি ক্রিপ্টো কী তৈরি করুন।

$ gcloud kms keys create "my-asymmetric-signing-key" \
    --location "global" \
    --keyring "my-keyring" \
    --purpose "asymmetric-signing" \
    --default-algorithm "rsa-sign-pkcs1-4096-sha512"

5. সাইন ডেটা

এনক্রিপশনের বিপরীতে, একটি অসমমিত ক্লাউড কেএমএস কী ব্যবহার করে এনক্রিপ্ট করা ডেটা ডিক্রিপ্ট করার জন্য ক্লাউড কেএমএস পরিষেবাতে অনলাইন অ্যাক্সেসের প্রয়োজন হয়। gcloud কমান্ড লাইন টুল ব্যবহার করে ফাইল থেকে সাইফারটেক্সট ডিক্রিপ্ট করুন:

সাইন ইন করতে ডেটা সহ একটি ফাইল তৈরি করুন এবং ক্লাউড KMS কী দিয়ে ডেটা সাইন করতে gcloud কমান্ড লাইন টুল ব্যবহার করুন:

$ echo "my-contents" > ./data.txt
$ gcloud kms asymmetric-sign \
    --location "global" \
    --keyring "my-keyring" \
    --key "my-asymmetric-signing-key" \
    --version "1" \
    --digest-algorithm "sha512" \
    --input-file ./data.txt \
    --signature-file ./data.txt.sig

স্বাক্ষরটি ডিস্কের data.txt.sig এ সংরক্ষিত হয়। আপনি data.txt.sig ফাইলটি খুললে, আপনি লক্ষ্য করবেন যে এটিতে অদ্ভুত, অমুদ্রিত অক্ষর রয়েছে। এর কারণ হল প্রাপ্ত তথ্য বাইনারি বিন্যাসে

একটি ডাটাবেসে স্বাক্ষর সংরক্ষণ করার সময় বা HTTP অনুরোধের অংশ হিসাবে এটি প্রেরণ করার সময়, আপনাকে ডেটা এনকোড করতে হতে পারে। একটি সাধারণ এনকোডিং প্রক্রিয়া হল base64।

6. ডেটা যাচাই করুন

অ্যাসিমেট্রিক কীগুলির সাথে, ক্লাউড কেএমএস সরাসরি যাচাইকরণ করে না। পরিবর্তে, এটি একটি সর্বজনীন কী অ্যাক্সেস প্রদান করে এবং আপনি পাবলিক কী ক্রিপ্টোগ্রাফির মাধ্যমে সেই সর্বজনীন কী ব্যবহার করে ডেটা যাচাই করেন। অ্যাসিমেট্রিক কীগুলির সাহায্যে, যাচাইকরণ সম্পূর্ণরূপে অফলাইনে করা যেতে পারে এবং ক্লাউড কেএমএস বা অন্য কোনও Google ক্লাউড API-এ অ্যাক্সেসের প্রয়োজন নেই৷ openssl এর মতো ক্রিপ্টোগ্রাফিক টুল ব্যবহার করে বা পাবলিক কী ক্রিপ্টোগ্রাফি সমর্থন করে এমন একটি প্রোগ্রামিং ভাষা বা লাইব্রেরি ব্যবহার করে যাচাই করা হয়।

ক্লাউড কেএমএস থেকে পাবলিক কী ডাউনলোড করুন:

$ gcloud kms keys versions get-public-key "1" \
    --location "global" \
    --keyring "my-keyring" \
    --key "my-asymmetric-signing-key" \
    --output-file ./key.pub

openssl কমান্ড লাইন টুল ব্যবহার করে পাবলিক কী এর বিপরীতে স্বাক্ষর যাচাই করুন:

$ openssl dgst -sha256 \
    -verify ./key.pub \
    -signature ./data.txt.sig ./data.txt

কনসোল একটি সফল বার্তা প্রিন্ট করবে, যা নির্দেশ করে ডিজিটাল স্বাক্ষর বৈধ।

Verified OK

7. অভিনন্দন!

আপনি ক্লাউড কেএমএস এপিআই সক্ষম করেছেন, একটি অপ্রতিসম সাইনিং কী তৈরি করেছেন এবং স্বাক্ষরিত এবং যাচাইকৃত ডেটা! ক্লাউড কেএমএস একটি শক্তিশালী পণ্য এবং স্বাক্ষর/যাচাইকরণ শুধুমাত্র এর ক্ষমতার উপরিভাগে স্ক্র্যাচ করে।

পরিষ্কার করুন

আপনি যদি অন্বেষণ শেষ করে থাকেন, তাহলে অনুগ্রহ করে আপনার প্রকল্প মুছে ফেলার কথা বিবেচনা করুন।

  • ক্লাউড প্ল্যাটফর্ম কনসোলে যান
  • আপনি যে প্রকল্পটি বন্ধ করতে চান তা নির্বাচন করুন, তারপরে শীর্ষে "মুছুন" এ ক্লিক করুন৷ এটি মুছে ফেলার জন্য প্রকল্পের সময়সূচী।

আরও জানুন

লাইসেন্স

এই কাজটি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন 2.0 জেনেরিক লাইসেন্সের অধীনে লাইসেন্সপ্রাপ্ত।