কীভাবে .pfx ফাইলটি প্রাইভেট কী দিয়ে কীস্টোরে রূপান্তর করবেন?


107

আমাকে অ্যান্ড্রয়েড অ্যাপ্লিকেশন ( .apk) এ স্বাক্ষর করতে হবে ।
আমার কাছে .pfxফাইল আছে আমি এটা রূপান্তরিত .cerইন্টারনেট এক্সপ্লোরার মাধ্যমে ফাইল এবং তারপর রূপান্তরিত .cerকরার .keystorekeytool ব্যবহার করে। তারপরে আমি .apkজারসিগনারের সাথে সাইন ইন করার চেষ্টা করেছি তবে এটি বলে যে .কোস্টোর কোনও প্রাইভেট কীতে বিষয়বস্তু রাখে না।

আমি কি ভুল করছি?


এই উপযোগী হতে পারে: আমি কিভাবে খুঁজে পেতে এবং Windows এর জন্য keytool চালাতে পারেন stackoverflow.com/questions/5488339/...
পিটার Barbanyaga

উত্তর:


259

JDK 1.6 বা তার পরে ব্যবহার করে

জাস্টিন নীচের মন্তব্যে উল্লেখ করেছেন যে কীটল একা নিম্নলিখিত কমান্ডটি ব্যবহার করতে সক্ষম (যদিও কেবল জেডিকে ১.K এবং পরবর্তীকালে):

keytool -importkeystore -srckeystore mypfxfile.pfx -srcstoretype pkcs12 
-destkeystore clientcert.jks -deststoretype JKS

জেডিকে 1.5 বা নীচে ব্যবহার করা

ওপেনএসএসএল এটি সব করতে পারে। জেগুরুর এই উত্তরটি এখন পর্যন্ত আমি খুঁজে পাওয়া সেরা পদ্ধতি।

প্রথমে নিশ্চিত হয়ে নিন যে আপনি ওপেনএসএসএল ইনস্টল করেছেন। অনেকগুলি অপারেটিং সিস্টেম ইতিমধ্যে এটি ম্যাক ওএস এক্সের সাথে পাওয়া হিসাবে ইনস্টল করা আছে।

নিম্নলিখিত দুটি কমান্ড পিএফএক্স ফাইলটিকে জাভা পিকেসিএস 12 কী স্টোর হিসাবে খোলা যেতে পারে এমন ফর্ম্যাটে রূপান্তর করে:

openssl pkcs12 -in mypfxfile.pfx -out mypemfile.pem
openssl pkcs12 -export -in mypemfile.pem -out mykeystore.p12 -name "MyCert"

নোট করুন যে দ্বিতীয় কমান্ডে প্রদত্ত নামটি নতুন কী স্টোরের আপনার কীর নাম alias

আপনি নিম্নলিখিত কমান্ডের সাহায্যে জাভা কীটল ইউটিলিটিটি ব্যবহার করে কী স্টোরের সামগ্রীগুলি যাচাই করতে পারেন:

keytool -v -list -keystore mykeystore.p12 -storetype pkcs12

অবশেষে আপনার যদি প্রয়োজন হয় তবে উপরের তৈরি কী স্টোরটিকে নতুন কী স্টোরের মধ্যে আমদানি করে এটিকে জেকেএস কী স্টোরে রূপান্তর করতে পারেন:

keytool -importkeystore -srckeystore mykeystore.p12 -destkeystore clientcert.jks -srcstoretype pkcs12 -deststoretype JKS

28
সব তিনটি ধাপের জন্য কোন প্রয়োজন নেই, শুধু সঞ্চালন করুন: keytool -importkeystore -srckeystore mykeystore.pxf -destkeystore clientcert.jks -srcstoretype pkcs12 -deststoretype JKS
JustinMorris

আমি মনে করি কীটোলের পুরানো সংস্করণগুলি আপনাকে এটি করতে দেয় না। আমার মনে আছে 8 বছর আগে আমাকে ওপেনসেল চালাতে হবে তবে এখন ওরাকল জেডিকে 6 এবং 7-তে কীটোল সহ, এটি জাস্টিন বলেছিল ঠিক তেমন মনোমুগ্ধকর মতো কাজ করে।
ডেভিড ব্রসার্ড

2
দয়া করে নোট করুন আমি জাস্টিনের এক বছর আগে আরও বিশদ সহ একটি সহজ ফর্মের মধ্যে উত্তরটি দিয়েছিলাম।
gjpc

@gjpc প্রখ্যাত আপনার উত্তরটি খুব সম্পূর্ণ এবং প্রচুর ভোটের প্রাপ্য :)
মাইকড

এটি সত্যিই একটি দুর্দান্ত উত্তর এবং গবেষণার কয়েক দিন পরে এটি আমাকে বাঁচিয়েছে। এই উত্তরটি সত্যই আরও অনেক ধরণের দাবিদার। ধন্যবাদ জনাব.
মিথুল

22

জারসাইনার আপনার জারে সাইন ইন করার জন্য আপনার পিএফএক্স ফাইলটি কীস্টোর হিসাবে ব্যবহার করতে পারে। আপনার পিএফএক্স ফাইলটি প্রাইভেট করার সময় ব্যক্তিগত কী এবং শংসাপত্রের চেইন রয়েছে তা নিশ্চিত হয়ে নিন। অন্যান্য ফর্ম্যাটে রূপান্তর করার দরকার নেই। কৌতুক প্রাপ্ত হয় ওরফে আপনার pfx ফাইলের:

 keytool -list -storetype pkcs12 -keystore your_pfx_file -v | grep Alias

আপনার নিজের নাম রাখার পরে, স্বাক্ষর করা সহজ

jarsigner.exe -storetype pkcs12 -keystore pfx_file jar_file "your alias"

উপরের দুটি কমান্ড আপনাকে পিএফএক্স এক্সপোর্টে নির্দিষ্ট করা পাসওয়ার্ডের জন্য অনুরোধ করবে। আপনি যদি নিজের পাসওয়ার্ডটি পরিষ্কার পাঠ্যে স্থির রাখতে চান তবে- কিস্টোর স্যুইচের আগে- স্টোরপাস স্যুইচটি ব্যবহার করুন

একবার স্বাক্ষরিত হয়ে গেলে, আপনার কাজের প্রশংসা করুন:

jarsigner.exe -verify -verbose -certs  yourjarfile

1
কীস্টোর ফাইলটি রূপান্তর না করার জন্য +1 (আমার কাছে এটি ইতিমধ্যে পর্যাপ্ত ফর্ম্যাটে রয়েছে!)
ট্রেজকাজ

22

আমি এই পৃষ্ঠাটি পেয়েছি যা আপনাকে জানায় যে কীভাবে জেএসএসে (জাভা কী স্টোর) পিএফএক্স আমদানি করতে হবে:

keytool -importkeystore -srckeystore PFX_P12_FILE_NAME -srcstoretype pkcs12 -srcstorepass PFX_P12_FILE -srcalias SOURCE_ALIAS -destkeystore KEYSTORE_FILE -deststoretype jks -deststorepass PASSWORD -destalias ALIAS_NAME

3
এটি সম্পূর্ণ উত্তর হওয়া উচিত!
জাস্টাগুয়ে

আমি এর মতো একটি উত্তর
খুঁজছিলাম

আমার একটি সমস্যা আছে, পিএফএক্স এর পাসওয়ার্ড নেই, তাই -srcstorepassআমার সমস্যা। এই পিএফএক্স
ফিরুজজ্যাডের

2

আপনার পিএফএক্স ফাইলের মধ্যে এটির মধ্যে ব্যক্তিগত কী থাকা উচিত। আপনার প্রাইভেট কী এবং শংসাপত্রটি সরাসরি আপনার পিএফএক্স ফাইল থেকে রপ্তানি করুন (উদাঃ ওপেনএসএসএল ব্যবহার করে) এবং আপনার জাভা কীস্টোরে এগুলি আমদানি করুন।

সম্পাদন করা

আরো তথ্য:

  • উইন্ডোজের জন্য ওপেনএসএসএল এখানে ডাউনলোড করুন
  • প্রাইভেট কী রফতানি করুন: openssl pkcs12 -in filename.pfx -nocerts -out key.pem
  • রফতানি শংসাপত্র: openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem
  • জাভা কীস্টোর ব্যবহার করে ব্যক্তিগত কী এবং শংসাপত্র আমদানি করুন keytool

আপনি কি দয়া করে আমাকে কী কীটল ব্যবহার করে কী.পিএম এবং সার্টি.পিএম আমদানি করতে পারেন আমাকে বলতে পারেন?
সাদ আল আবদুল্লাহ

1
ছোট সংযোজন: ব্যক্তিগত
কায়

2

জাস্টিন (উপরে) সঠিক। তবে, মনে রাখবেন যে আপনি (মধ্যবর্তী সিএ, রুট সিএ জড়িত কিনা) বা পিএফএক্স কীভাবে তৈরি / রফতানি করা হয় তার কাছ থেকে আপনি শংসাপত্রটি পান তার উপর নির্ভর করে কখনও কখনও তারা শংসাপত্র শৃঙ্খলা অনুপস্থিত হতে পারে। আমদানির পরে, আপনার কাছে প্রাইভেটকিএন্ট্রি টাইপের একটি শংসাপত্র থাকবে, তবে দৈর্ঘ্যের 1 টি রয়েছে with

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

একবার রফতানি হয়ে গেলে উপরের জাস্টিন পয়েন্ট অনুসারে কীস্টোরটি আমদানি করুন। এখন, আপনার কাছে প্রাইভেটকিএন্ট্রি টাইপের শংসাপত্র এবং 1 টিরও বেশি শংসাপত্র শৃঙ্খলার দৈর্ঘ্যের সাথে একটি কীস্টোর থাকবে।

নির্দিষ্ট। নেট ভিত্তিক ওয়েব পরিষেবা ক্লায়েন্টদের ত্রুটি (আস্থা সম্পর্ক স্থাপনে অক্ষম), যদি আপনি উপরের কাজটি না করেন।


এটি আই 11 এ কাজ করবে বলে মনে হচ্ছে না। এটি বলার পরেও শংসাপত্র শৃঙ্খলা অন্তর্ভুক্ত করতে এটি ব্যর্থ। আমি জানি এটি অতীতেও কাজ করেছে।
ব্রায়ান নোব্লাউচ

0

আপনি JDK 1.5 সাথে কাজ করলে বা কীটল ইউটিলিটির নীচে কোনও -importkeystoreবিকল্প নেই ( জেডিকে 1.5 কীটল ডকুমেন্টেশন দেখুন ) এবং মাইকডের সমাধানটি কেবলমাত্র .pfxনতুন জেডিকে (1.6 বা উপরে) দিয়ে কোনও মেশিনে স্থানান্তর করেই পাওয়া যাবে ।

জেডিকে 1.5 বা তার নীচে (যদি আপনার ওরাকল ওয়েবলজিক পণ্য থাকে) এর অন্য একটি বিকল্পটি হল এই ওরাকল ডকুমেন্টের নির্দেশাবলী অনুসরণ করা: কীস্টোরগুলির সাথে পিএফএক্স এবং পিইএম শংসাপত্র ফর্ম্যাটগুলি ব্যবহার করা । এটি .pemবিন্যাসে রূপান্তরটি বর্ণনা করে , কীভাবে এই পাঠ্য বিন্যাস থেকে শংসাপত্র তথ্য বের করতে হবে এবং এটি ইউটিলিটি .jksসহ বিন্যাসে আমদানি করতে হবে java utils.ImportPrivateKey(এটি ওয়েবলজিক পণ্যের সাথে অন্তর্ভুক্ত একটি ইউটিলিটি)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.