জাভাস্ক্রিপ্টে AES 256-বিটস এনক্রিপশনের জন্য কি কোনও গ্রন্থাগার পাওয়া যায়?
জাভাস্ক্রিপ্টে AES 256-বিটস এনক্রিপশনের জন্য কি কোনও গ্রন্থাগার পাওয়া যায়?
উত্তর:
জেএসএইএস জাভাস্ক্রিপ্টে এএস এর শক্তিশালী প্রয়োগ implementation http://point-at-infinity.org/jsaes/
এখানে এমন একটি প্রদর্শনী পৃষ্ঠা যা ধীর গতি ব্যবহার করে।
ধীরে ধীরে ব্যবহার করা সহজ ছিল। যৌক্তিকভাবে ডিজাইন করা হয়েছে। যুক্তিসঙ্গত ওও প্যাকেজিং। IV এবং এনক্রিপশন মোডের মতো নোবস এবং লিভারগুলিকে সমর্থন করে। .NET / C # এর সাথে ভাল সামঞ্জস্য। নাম জিহ্ব-ইন-গাল; একে " ধীর AES" বলা হয় কারণ এটি সি ++ তে প্রয়োগ করা হয়নি। তবে আমার পরীক্ষায় এটি কার্যকরীভাবে ধীর ছিল না।
এটিতে ইসিবি মোড নেই। এছাড়াও একটি সিটিআর মোডের অভাব রয়েছে, যদিও আপনি খুব সহজেই একটি ইসিবি মোড দিয়ে তৈরি করতে পারেন, আমার ধারণা।
এটি সম্পূর্ণরূপে এনক্রিপশন উপর দৃষ্টি নিবদ্ধ করা হয়। একটি দুর্দান্ত পরিপূরক শ্রেণি যা জাভা স্ক্রিপ্টে আরএফসি 2898 -র সাথে অনুগামী পাসওয়ার্ড-ভিত্তিক কী ডেরাইভেশন করে, আনন্দম থেকে পাওয়া যায় । এই জুটির লাইব্রেরিগুলি এনালগ। নেট ক্লাসগুলির সাথে ভাল কাজ করে। ভাল ইন্টারপ। যদিও, স্লোএইএসের বিপরীতে, কীগুলি উত্পন্ন করার সময় জাভাস্ক্রিপ্ট পিবিকেডিএফ 2 আরএফসি 2898 ডেরিভ বাইটস শ্রেণীর চেয়ে উল্লেখযোগ্যভাবে ধীর হয় ।
এটি আশ্চর্যজনক নয় যে প্রযুক্তিগতভাবে ভাল আন্তঃবিদ্যুত রয়েছে, তবে আমার কাছে মূল বিষয়টি ছিল স্লোএইএসস দ্বারা গৃহীত মডেলটি পরিচিত এবং সহজেই ব্যবহারযোগ্য। আমি অন্য কিছু জাভাস্ক্রিপ্ট লাইব্রেরি AES এর জন্য বুঝতে এবং ব্যবহার করা কঠিন হতে পেলাম। উদাহরণস্বরূপ, তাদের কয়েকটিতে আমি আইভি, বা মোড (সিবিসি, ইসিবি, ইত্যাদি) সেট করার জায়গাটি খুঁজে পাইনি। জিনিসগুলি যেখানে আমি তাদের প্রত্যাশা করিনি। SlowAES এর মতো ছিল না। সম্পত্তিগুলি যেখানে ছিল সেগুলি ঠিক ছিল। জাভা এবং .NET ক্রিপ্টো প্রোগ্রামিং মডেলগুলির সাথে পরিচিত হয়ে আমার পক্ষে বাছাই করা সহজ ছিল।
আনন্দমের পিবিকেডিএফ 2 তেমন পর্যায়ে ছিল না। এটি ডেরিভাইটস ফাংশনে কেবলমাত্র একটি কলকে সমর্থন করেছে, সুতরাং আপনার যদি পাসওয়ার্ড থেকে কী এবং IV উভয়ই পেতে হয় তবে এই গ্রন্থাগারটি অপরিবর্তিত থাকবে না। কিছুটা সামান্য পরিবর্তন, এবং এটি সেই উদ্দেশ্যে ঠিক কাজ করছে।
সম্পাদনা : আমি একত্র করা একটি উদাহরণ প্যাকেজিং এর SlowAES এবং Anandam এর একটি পরিমার্জিত সংস্করণ PBKDF2 উইন্ডোজ স্ক্রিপ্ট উপাদান মধ্যে। পাসওয়ার্ড থেকে উদ্ভুত কী সহ এই এইএস ব্যবহার করা .NET রিজান্ডেলম্যানেজড শ্রেণীর সাথে ভাল ইন্টারপ দেখায়।
সম্পাদনা 2 : ডেমো পৃষ্ঠাটি দেখায় যে কীভাবে কোনও ওয়েব পৃষ্ঠা থেকে এই এইএস এনক্রিপশন ব্যবহার করতে হয়। .NET এ সমর্থিত একই ইনপুটগুলি (iv, কী, মোড, ইত্যাদি) ব্যবহার করা আপনাকে .NET রিজান্ডেল শ্রেণীর সাথে ভাল ইন্টারপ দেয়। সেই পৃষ্ঠার জাভাস্ক্রিপ্ট পেতে আপনি "দেখার উত্স" করতে পারেন।
EDIT3
দেরিতে সংযোজন: জাভাস্ক্রিপ্ট ক্রিপ্টোগ্রাফি ক্ষতিকারক হিসাবে বিবেচিত। পড়া মূল্যবান।
AES এনক্রিপশনের জন্য আমার অনুসন্ধানগুলিতে আমি স্ট্যান্ডফোর্ডের কিছু শিক্ষার্থীর কাছ থেকে এটি পেয়েছি। সেখানে দ্রুততম হওয়ার দাবি রয়েছে। সিসিএম, ওসিবি, জিসিএম এবং ব্লক এনক্রিপশন সমর্থন করে। http://crypto.stanford.edu/sjcl/
গুগলিং "জাভাস্ক্রিপ্ট এইএস" এর বেশ কয়েকটি উদাহরণ পাওয়া গেছে। পপ আপ করা প্রথমটিটি অ্যালগরিদম ব্যাখ্যা করার পাশাপাশি একটি সমাধান সরবরাহ করার জন্য ডিজাইন করা হয়েছে:
এই পোস্টটি এখন পুরানো, তবে ক্রিপ্টো-জেএস এখন সম্ভবত সম্পূর্ণ সম্পূর্ণ জাভাস্ক্রিপ্ট এনক্রিপশন লাইব্রেরি হতে পারে।
CryptoJS জাভাস্ক্রিপ্ট বাস্তবায়িত ক্রিপ্টোগ্রাফিক আলগোরিদিম একটি সংগ্রহ। এটিতে নিম্নোক্ত সাইফারগুলি অন্তর্ভুক্ত রয়েছে: এইএস -128, এইএস-192, এইএস-256, ডিইএস, ট্রিপল ডিইএস, খরগোশ, আরসি 4, আরসি 4 ড্রপ এবং হ্যাশার: এমডি 5, রিপেমড -160, এসএএ -16, এসএএএ -56, এসএএচএ 223, 256, 384 বা 512 বিট সহ -3।
আপনি তাদের কুইক-স্টার্ট গাইডটি দেখতে চাইতে পারেন যা নীচের নোড.জেএস পোর্টের জন্যও রেফারেন্স।
সম্প্রতি আমার জাভাস্ক্রিপ্ট এবং পাইথনের মধ্যে কিছু এনক্রিপশন / ডিক্রিপশন আন্তঃক্রিয়া সম্পাদন করার প্রয়োজন হয়েছিল।
বিশেষ করে ...
১) জাভাস্ক্রিপ্টে এনক্রিপ্ট করতে এএসএস ব্যবহার করে এবং পাইথনে ডিক্রিপ্ট করুন (গুগল অ্যাপ ইঞ্জিন) ২) জাভাস্ক্রিপ্টে এনক্রিপ্ট করতে আরএসএ ব্যবহার করে এবং পাইথনে ডিক্রিপ্ট করুন (গুগল অ্যাপ ইঞ্জিন) ৩) পাইক্রিপ্টো ব্যবহার করে
আমি ওয়েবের চারপাশে ভাসমান আরএসএ এবং এইএস এর প্রচুর এবং প্রচুর সংস্করণ পেয়েছি এবং সেগুলি তাদের পদ্ধতির মধ্যে পৃথক ছিল তবে জাভাস্ক্রিপ্ট এবং পাইথন আন্তঃআযোগিতার শেষের কোনও ভাল উদাহরণ আমি পাইনি।
অবশেষে আমি এমন কিছু একসাথে বাঁধতে সক্ষম হয়েছি যা প্রচুর পরীক্ষা এবং ত্রুটির পরেও আমার প্রয়োজন অনুসারে উপযুক্ত।
যাইহোক, আমি একটি জিএস / ওয়েব অ্যাপ্লিকেশনটির একটি গুগল অ্যাপ ইঞ্জিন হোস্টেড পাইথন সার্ভারের সাথে কথা বলার একটি উদাহরণ ছুঁড়েছি যা এইএস এবং সর্বজনীন কী এবং ব্যক্তিগত কী আরএসএ স্টাফ ব্যবহার করে।
যদিও আমি এটি লিঙ্ক দিয়ে এখানে অন্তর্ভুক্ত করব যদি এটি একই জিনিস সম্পাদন করার প্রয়োজন হয় তবে অন্যদের জন্য এটি কিছুটা কার্যকর হবে।
http://www.ipowow.com/files/aesrsademo.tar.gz
এবং দেখুন ডেমো এ RSA-AES-ডেমো বিন্দু appspot ডট কম
সম্পাদনা করুন: ব্রাউজার কনসোল আউটপুটটি দেখুন এবং ডেমোতে কী চলছে তার কিছু ইঙ্গিত এবং দরকারী বার্তা পেতে উত্স দেখুন
সম্পাদনা: উত্সটিতে খুব পুরানো এবং অবিচ্ছিন্ন লিঙ্কটি আপডেট হয়েছে
আমার নিজের অভিজ্ঞতা থেকে বিচার করে, asmcrypto.js জাভাস্ক্রিপ্টে দ্রুততম AES বাস্তবায়ন সরবরাহ করে (বিশেষত ফায়ারফক্সে যেহেতু এটি asm.js সম্পূর্ণরূপে লাভ করতে পারে)।
রিডমি থেকে:
Chrome/31.0 SHA256: 51 MiB/s (9 times faster than SJCL and CryptoJS) AES-CBC: 47 MiB/s (13 times faster than CryptoJS and 20 times faster than SJCL) Firefox/26.0 SHA256: 144 MiB/s (5 times faster than CryptoJS and 20 times faster than SJCL) AES-CBC: 81 MiB/s (3 times faster than CryptoJS and 8 times faster than SJCL)
সম্পাদনা: ওয়েব ক্রিপ্টোগ্রাফি এপিআই এখন অধিকাংশ ব্রাউজার বাস্তবায়িত ও প্রাথমিক সমাধান হিসেবে ব্যবহার করা উচিত যদি তোমরা কর্মক্ষমতা যত্নশীল। আইডি 11 মানকটির পূর্ববর্তী খসড়া সংস্করণটি প্রয়োগ করেছিল যা প্রতিশ্রুতি ব্যবহার করে নি aware
কিছু উদাহরণ এখানে পাওয়া যাবে:
ক্রিপ্টোজেএস ব্যবহার করুন
এখানে কোডটি রয়েছে: https://github.com/odedhb/AES-encrypt
এবং এখানে একটি অনলাইন কাজের উদাহরণ: https://odedhb.github.io/AES-encrypt/
ব্যবহার করে দেখুন asmcrypto.js - এটি সত্যিই দ্রুত।
পিএস: আমি একজন লেখক এবং আমি যদি আপনার কোনও প্রশ্নের উত্তর দিতে পারি। এছাড়াও আমি কিছু প্রতিক্রিয়া পেয়ে খুশি হব :)
http://www.movable-type.co.uk/scriptts/aes.html লাইব্রেরি কিছুটা সহায়ক হতে পারে।
আপনি যদি এসএসএল ব্যবহার এড়াতে জাভাস্ক্রিপ্ট ব্যবহার করার চেষ্টা করছেন তবে আবার চিন্তা করুন। অনেকগুলি অর্ধ-উপায় ব্যবস্থা রয়েছে তবে কেবল এসএসএলই সুরক্ষিত যোগাযোগ সরবরাহ করে। জাভাস্ক্রিপ্ট এনক্রিপশন লাইব্রেরিগুলি আক্রমণগুলির একটি নির্দিষ্ট সেটের বিরুদ্ধে সহায়তা করতে পারে তবে মধ্য-আক্রমণে সত্যিকারের নয়।
আপনি যদি কোনও কাস্টম ডোমেনে গুগল অ্যাপ ইঞ্জিনের জন্য এসএসএল খুঁজছেন, তবে wwwizer.com.com এ একবার দেখুন ।
নীচের পোস্টে জাভাস্ক্রিপ্টের সাহায্যে কীভাবে নিরাপদ যোগাযোগ তৈরি করা যায় এবং কীভাবে ভুল হওয়া যায় তা ব্যাখ্যা করা হয়: এসএসএল / এইচটিটিপিএসের পরিবর্তে জাভাস্ক্রিপ্ট এনক্রিপশন মডিউলটি ব্যবহার করুন
ক্রিপ্টোজের বিকল্প হিসাবে স্ট্যানফোর্ডের ফ্রি লিবও রয়েছে
অন্য সমাধান ডাব্লু / এইএস -২-support সমর্থন: https://github.com / ডিজিটালবাজার / ফোর্স
এখানে আমার জন্য কাজ করা একমাত্র সমাধান:
http://www.hanewin.net/encrypt/aes/aes.htm
এটি বেশ বেসিক, তবে ব্যবহার করা সহজ এবং ভালভাবে কাজ করে বলে মনে হচ্ছে।