সুচিপত্র:
ভিডিও: Arduino TOTP জেনারেটর: 3 ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:00
অনুপ্রেরণা
ক্রিপ্টোগ্রাফি এবং সুরক্ষার প্রতি আগ্রহী একজন বন্ধু থাকার কারণে, আমি জন্মদিনের জন্য নিখুঁত উপহার তৈরি করতে চেয়েছিলাম।
*এটি একটি প্রকল্প যা আমি জন্মদিনের উপহার হিসাবে তৈরি করেছি এবং কঠোর সময়ের সীমাবদ্ধতার মধ্যে তৈরি করা হয়েছে (অগোছালো কারিগরকে ক্ষমা করুন)
দ্রষ্টব্য: এই প্রকল্পে ব্যবহৃত TOTP প্রজন্ম digit ডিজিটের কোড তৈরি করে এবং ব্যবহার করে, কিন্তু আমার বর্তমান হাতের হার্ডওয়্যারের কারণে, আমি পিছনের ২ টি সংখ্যা কাটতে এবং display টি প্রদর্শন এবং ব্যবহার করার সিদ্ধান্ত নিয়েছি, যুক্তিযুক্তভাবে (কিন্তু ব্যাপকভাবে নয়) নিরাপত্তা
সাধারণ জ্ঞাতব্য
এই প্রকল্পটি প্রতি 30 সেকেন্ডে একটি পূর্বনির্ধারিত কী এবং বর্তমান সময় (যা রিয়েল-টাইম ক্লক মডিউল ব্যবহার করার ট্র্যাক রাখা হয়) ব্যবহার করে একটি নতুন কোড তৈরি করে এবং বোতাম টিপলে ডিসপ্লেতে প্রদর্শন করে। সর্বাধিক প্রচলিত ব্যবহারের ক্ষেত্রে টাইম-ভিত্তিক ওয়ান টাইম পাসওয়ার্ড (টিওটিপি) এবং প্রমাণীকরণের জন্য এইচএমএসি-ভিত্তিক ওয়ান টাইম পাসওয়ার্ড (এইচওটিপি) ভিত্তিক দ্বি-ফ্যাক্টর যাচাইকরণ হবে।
TOTP হল একটি অ্যালগরিদম যা একটি ভাগ করা গোপন কী এবং বর্তমান সময় থেকে এককালীন পাসওয়ার্ড গণনা করে। HTOP হল একটি অ্যালগরিদম যা HMAC অ্যালগরিদম ব্যবহার করে ওয়ান-টাইম পাসওয়ার্ড তৈরি করে।
গুগল, মাইক্রোসফট এবং স্টিমের মতো কোম্পানিগুলি ইতিমধ্যেই তাদের দুই-ফ্যাক্টর প্রমাণীকরণের জন্য TOTP প্রযুক্তি ব্যবহার করে
আকর্ষণীয় লিঙ্ক
ব্যবহারকারীদের প্রমাণীকরণের জন্য গুগল কীভাবে এই প্রযুক্তি ব্যবহার করে তা ব্যাখ্যা করে নিবন্ধ-https://medium.com/@tilaklodha/google-authenticator-and-how-it-works-2933a4ece8c2
HOTP এবং TOTP এর জাভাস্ক্রিপ্ট বাস্তবায়ন যা এই প্রকল্প ব্যবহার করে সফটওয়্যার তৈরির সময় ব্যবহার করা যেতে পারে -
এই প্রকল্পে ব্যবহৃত Arduino এর জন্য ক্রিটোগ্রাফিক লাইব্রেরি -
TOTP পেপার -
দক্ষতার স্তর
এই নির্দেশযোগ্য উত্সাহীদের জন্য যারা নিরাপত্তায় আগ্রহী এবং তাদের TOTP প্রজন্মের জন্য একটি চমৎকার হার্ডওয়্যার উপাদান প্রয়োগ করতে চাইতে পারে। এই নির্দেশযোগ্য একটি শ্রোতার জন্য লেখা হয়েছে যা ইলেকট্রনিক্স ডায়াগ্রাম এবং প্রাথমিক প্রোগ্রামিং ব্যাখ্যা করার মৌলিক বিষয়গুলি ইতিমধ্যেই বুঝতে পারে, কিন্তু যদি আপনি কেবল এই নির্দেশনাটি সঠিকভাবে অনুসরণ করার পরিকল্পনা করেন, যদি আপনার কোন অভিজ্ঞতা না থাকে তবে চিন্তা করবেন না এবং নির্দ্বিধায় প্রশ্ন জিজ্ঞাসা করুন মন্তব্য! তদুপরি, প্রকল্পটি আরও অভিজ্ঞ নির্মাতাদের জন্যও আকর্ষণীয় হতে পারে যেহেতু চূড়ান্ত পণ্যটি কেবল একটি চমৎকার অংশ নয় (আমার মতে), তবে বিস্তার এবং নতুন বৈশিষ্ট্যগুলির জন্য অনেক ঝামেলা ছাড়াই অনেক সম্ভাবনা রয়েছে।
সরবরাহ
উপকরণ:
- 1x আরডুইনো ন্যানো (আমাজন)
- 1x DS3231 AT24C32 রিয়েল-টাইম ক্লক (RTC) মডিউল (আমাজন)
- 1x SH5461AS সাধারণ ক্যাথোড 4 ডিজিট 7-সেগমেন্ট (আমাজন)
- 1x পুশবাটন (আমাজন)
- 1x 10k রোধকারী (আমাজন)
- 1চ্ছিক 1x 5x7cm PCB (আমাজন)
- পিসিবিতে সোল্ডারিংয়ের জন্য Wচ্ছিক তার
- পরীক্ষার জন্য 1চ্ছিক 1x ব্রেডবোর্ড (আমাজন)
ধাপ 1: সমাবেশ এবং পরীক্ষা
রুটিবোর্ডে সমস্ত উপাদান একত্রিত করুন এবং সংযুক্ত তারের চিত্র অনুযায়ী তারগুলি সংযুক্ত করুন (ফ্রিজিং ফাইলটি এখানে)।
নিশ্চিত করুন যে আপনি Arduino IDE ইনস্টল করেছেন (যদি আপনি না করেন তবে এটি অনলাইনে পাওয়া যাবে) এবং নিম্নলিখিত গ্রন্থাগারগুলি ইনস্টল করুন:
github.com/lucadentella/TOTP-Arduino
github.com/adafruit/RTClib
github.com/maniacbug/Cryptosuite
সংযুক্ত স্কেচটি ডাউনলোড করুন (এখানেও অ্যাক্সেস করা যেতে পারে: https://gist.github.com/shiv213/569f01a54988cb0207966be9a65cc5ab), এবং Arduino IDE ব্যবহার করে এটি খুলুন। এই লিঙ্কটি খুলুন (https://www.lucadentella.it/OTP/) এবং একাউন্ট নেম ফিল্ডে যেকোনো নাম ইনপুট করুন এবং নিম্নলিখিত ক্ষেত্রে একটি কাস্টম সিক্রেট কী (10 অক্ষর দীর্ঘ), এই দুটি মান সংরক্ষণ করতে ভুলবেন না। ব্যাকআপের জন্য একটি নিরাপদ স্থানে। "Arduino HEX অ্যারে:" ক্ষেত্রের বিষয়বস্তুগুলি অনুলিপি করুন, এবং Arduino সম্পাদকের কাছে ফিরে যান, 25 নং লাইন (hmacKey) এর অ্যারের পরিবর্তে আপনি সাইট থেকে কপি করেছেন।
প্রতিটি তারের সংযোগ দুবার যাচাই করার পরে, নিশ্চিত করুন যে RTC মডিউলটিতে একটি মুদ্রা কোষ আছে, এবং একটি USB মিনি কর্ড ব্যবহার করে আপনার ল্যাপটপে আরডুইনো সংযুক্ত করুন এবং সংযুক্ত স্কেচ আপলোড করুন।
আপলোড করার পরে, যখন বোতাম টিপানো হয়, একটি নম্বর স্ক্রিনে দেখা উচিত। আপনি যদি একটি স্মার্টফোনে Google প্রমাণীকরণকারী অ্যাপটি ডাউনলোড করেন এবং HEX অ্যারে তৈরি করতে ব্যবহৃত সাইটটিতে ফিরে যান, QR কোড স্ক্যান করে অথবা অ্যাপটিতে "Google প্রমাণীকরণকারী কোড" টাইপ করেন, তাহলে আপনাকে অ্যাপটিতে দেখানো একটি নম্বর দেখতে হবে। যদি সবকিছু সঠিকভাবে কাজ করে, যখন আপনি পুশ বাটন টিপবেন, তখন প্রদর্শিত 4 টি সংখ্যা স্মার্টফোন অ্যাপে দেখানো বর্তমান কোডের প্রথম 4 এর সাথে মিলবে। যদি এটি না হয়, তবে নিশ্চিত করুন যে কম্পিউটারটি Arduino কোড আপলোড করার জন্য ব্যবহৃত হচ্ছে সেটি UTC টাইমে সেট করা আছে এবং আবার চেষ্টা করুন।
ধাপ 2: PCB- এ স্থানান্তর
সবকিছু কার্যক্রমে আছে কিনা তা নিশ্চিত করার পরে, আপনি পিসিবিতে উপাদানগুলি স্থানান্তর করতে পারেন এবং সবকিছু ঠিকঠাক করে ফেলতে পারেন যদিও আপনি উপযুক্ত মনে করেন। আমি ফ্রিজিং ফাইল ছাড়াও একটি পিসিবি ডায়াগ্রাম সংযুক্ত করেছি (এখানে উপলব্ধ)। মনে রাখবেন যে আমি নান্দনিকতার জন্য বোর্ডের উপরে সমস্ত উপাদান স্থাপন করেছি, কিন্তু এটি নীচে মাউন্ট করা যেতে পারে এবং তারপর এটি পরিষ্কার করার জন্য কিছু ধরণের আবাসনে আবদ্ধ করা যেতে পারে। আমি ইউনিটের জন্য একটি অস্থায়ী বাক্স তৈরির জন্য PCB এর পাশে শার্পির সাথে রঙিন গরম আঠালো পপসিকল স্টিকগুলি কেটেছি এবং গরম করেছি। আরেকটি stepচ্ছিক পদক্ষেপ হল Arduino এর VIN এবং GND পিনের সাথে একটি 9-ভোল্টের ব্যাটারি ক্লিপ সংযুক্ত করা, এটি ব্যাটারিচালিত।
ধাপ 3: সমাপ্ত
এইভাবে আমার সম্পূর্ণ জেনারেটরটি পরিণত হয়েছে, যদি আপনি অনুসরণ করেন এবং একটি নিজে তৈরি করেন, এটি নীচে ভাগ করুন!
যদি আপনি উপযুক্ত দেখেন তবে STEM প্রতিযোগিতার জন্য আমার নির্দেশযোগ্য ভোট দিতে ভুলবেন না, এবং নীচে একটি মন্তব্য/আপনার যে কোন প্রশ্ন থাকতে পারে!
প্রস্তাবিত:
কিভাবে Arduino DDS ফ্রিকোয়েন্সি সিগন্যাল জেনারেটর AD9850: 7 টি ধাপ ব্যবহার করবেন
কিভাবে Arduino DDS ফ্রিকোয়েন্সি সিগন্যাল জেনারেটর AD9850 ব্যবহার করবেন: এই টিউটোরিয়ালে আমরা শিখব কিভাবে AD9850 মডিউল এবং Arduino ব্যবহার করে ফ্রিকোয়েন্সি সিগন্যাল জেনারেটর তৈরি করতে হয়। ভিডিও দেখুন! উচ্চ ফ্রিকোয়েন্সি সঙ্গে খারাপ
Arduino ব্যবহার করে 4-20ma জেনারেটর/পরীক্ষক: 8 টি ধাপ
আরডুইনো ব্যবহার করে 4-20 এমএ জেনারেটর/পরীক্ষক: ইবেতে 4-20 এমএ জেনারেটর পাওয়া যায়, কিন্তু আমি এক জিনিসের DIY অংশ এবং আমার কাছাকাছি থাকা অংশগুলি ব্যবহার করতে পছন্দ করি। 4-20mA যন্ত্রের আউটপুট পরীক্ষা করতে। লোয়া আছে
RDS সিগন্যাল জেনারেটর 100 KHz-600 MHZ DDS AD9910 Arduino Shield এ: 5 টি ধাপ
DDS AD9910 Arduino Shield- এ RF সিগন্যাল জেনারেটর 100 KHz-600 MHZ: কিভাবে কম শব্দ, উচ্চ নির্ভুলতা, স্থিতিশীল RF জেনারেটর (AM, FM মডুলেশন সহ) Arduino তে তৈরি করা যায়
আবহাওয়া ভিত্তিক সঙ্গীত জেনারেটর (ESP8266 ভিত্তিক মিডি জেনারেটর): 4 টি ধাপ (ছবি সহ)
আবহাওয়া ভিত্তিক মিউজিক জেনারেটর (ESP8266 ভিত্তিক মিডি জেনারেটর): হাই, আজ আমি ব্যাখ্যা করব কিভাবে আপনার নিজের সামান্য আবহাওয়া ভিত্তিক মিউজিক জেনারেটর তৈরি করা যায়। এবং হালকা তীব্রতা এটা সম্পূর্ণ গান বা জ্যোতির্বিজ্ঞান করতে আশা করবেন না
জেনারেটর - ডিসি জেনারেটর রিড সুইচ ব্যবহার করে: 3 টি ধাপ
জেনারেটর - ডিসি জেনারেটর রিড সুইচ ব্যবহার করে: সরল ডিসি জেনারেটর একটি সরাসরি বর্তমান (ডিসি) জেনারেটর একটি বৈদ্যুতিক মেশিন যা যান্ত্রিক শক্তিকে সরাসরি বর্তমান বিদ্যুতে রূপান্তরিত করে। পরিবর্তন