আমি নিজে ওপেন সোর্স কোডটি স্বাক্ষর করব?


11

আমি ম্যাকোএস 10.14 ব্যবহার করি এবং আমি গিথুব-এ পাওয়া ভিমের জন্য একটি ওপেন সোর্স প্লাগইন ইনস্টল করার চেষ্টা করার সময় একটি সমস্যা দেখা দিয়েছি। আমি উত্স কোডটি ডাউনলোড করেছি এবং এটি নিজেই সংকলিত করেছি, যা ভালভাবে কাজ করেছে, কিন্তু আমি যখন এটি চালিয়েছি তখন কার্যকর করা বাধা পেয়েছিল কারণ "কোড স্বাক্ষর [কার্যকর করার যোগ্য] প্রক্রিয়াটিতে ব্যবহারের জন্য বৈধ নয়"।

এটি আমাকে অনেক প্রশ্ন দিয়েছে যা আমি মাথা ঘুরিয়ে রাখতে পারি না:

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

আমি যদি এটি না করি তবে স্বাক্ষর করা কার "দায়িত্ব"? ভান্ডার রক্ষণাবেক্ষণকারী? অবদানকারীদের? অ্যাপল ওপেন সোর্স বিকাশকারীদের সর্বদা একটি অ্যাপল বিকাশকারী আইডি রাখার প্রত্যাশা করে? বা কোড সাইন করার উদ্দেশ্যটি আমি ভুল বুঝেছি?

সম্পাদনা:

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

উত্তর:


9

অ্যাড-হক কোড স্বাক্ষর

তৃতীয় পক্ষের অ্যাপ্লিকেশন এবং বাইনারিগুলির জন্য যে আপনি নিজেকে সংকলন করেন এবং এতে কোড স্বাক্ষর প্রয়োজন , একটি অ্যাডহক কোড স্বাক্ষর ব্যবহার করুন

  • আমি ধরে নিচ্ছি আবেদনটি স্বাক্ষর ছাড়া চলবে না;
  • আমি ধরে নিচ্ছি আবেদনটি বিতরণ করা হবে না;
  • আমি ধরে নিচ্ছি যে আপনি স্বাক্ষরটি বৈধ হওয়ার পরিচয়টি সম্পর্কে চিন্তা করবেন না।

একটি অ্যাড-হক স্বাক্ষর নির্ভরযোগ্য সুরক্ষা সুবিধা সরবরাহ করে না। অ্যাপ্লিকেশন পরিবর্তন করা হয়েছে কিনা তা নির্ধারণ করতে এটি ব্যবহার করা যেতে পারে এবং এটি কোনও অ্যাপ্লিকেশনটিতে এনটাইটেলমেন্টের মতো সুরক্ষা বিধিনিষেধ প্রয়োগ করতে ব্যবহৃত হতে পারে।

একটি অ্যাড-হক স্বাক্ষর বৈধ হবে codesignতবে তা নয় spctl। বাইনারি স্বাক্ষরিত হওয়ার উপর নির্ভর করে এটি হতে পারে বা নাও পারে। অ্যাপ্লিকেশন এবং এক্সিকিউটেবলের জন্য, এটি কার্যকর হওয়ার সম্ভাবনা কম কারণ spctlস্থানীয়ভাবে তৈরি বাইনারিগুলিতে চালিত হয় না।

কোড সাইন কেন?

পরিশোধিত প্রশ্ন সম্পর্কে:

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

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

আপনি যদি কোড বা বিকাশকারীকে বিশ্বাস না করেন তবে অ্যাপ্লিকেশনটি সংকলন বা চালাবেন না।

আপনার দায়িত্ব

উত্স কোড সরবরাহকারীর প্রাক বিল্ট কোড স্বাক্ষরিত বাইনারি সরবরাহ করার কোনও দায়বদ্ধতা বা বাধ্যবাধকতা নেই। স্বয়ং সংকলিত হওয়ায় সমস্ত কোড সাইন ইন করা আপনার পছন্দ এবং দায়িত্ব।

  • অ্যাপল তাদের কোড স্টোর কোড অ্যাপ্লিকেশন স্টোর জমা দিতে প্রয়োজন

  • অ্যাপল অনুরোধ তাদের অ্যাপ স্টোর বাইরে ডেভেলপারদের তাদের কোড সাইন ইন করেন, কিন্তু এটা এখনো প্রয়োজন হয় না।

উভয় ক্ষেত্রে, শুধুমাত্র চূড়ান্ত বাইনারি স্বাক্ষরিত হয়। মূল উত্স কোড এবং সংস্থানগুলি স্বাক্ষরিত নয়।

উত্স কোড স্বাক্ষরিত নয়

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

অ্যাড-হক কোড কীভাবে ম্যাক অ্যাপ্লিকেশনটিতে স্বাক্ষর করবেন

অ্যাড-হক স্বাক্ষর সহ ম্যাকোস-এ একটি অ্যাপ্লিকেশন কোডাইন করতে, পরিচয় -sপতাকাটি এতে সেট করুন -:

codesign --force -s - </path/to/application>

codesignকমান্ডের অন্যান্য সমস্ত বিধি, প্রয়োজনীয়তা এবং আদেশগুলি একই থাকে।

--forceবিদ্যমান বিদ্যমান স্বাক্ষরটি ওভাররাইট করতে এখানে পতাকা ব্যবহার করা হয়।

আপনি যোগ করতে হবে পারে --deepপতাকা codesignচিহ্ন উপ-সম্পদগুলি যেমন অবকাঠামো ও এমবেডেড সার্ভিস হিসেবে কমান্ড।


আপনি অ্যাডহক স্বাক্ষরের সুপারিশ করেন কেন? আপনি যে উত্তরটির সাথে যুক্ত হয়েছেন তা জানিয়েছে "অভ্যাসে স্বাক্ষরিত বাইনারি তৈরির অভ্যাসটি কেবল অ্যাপল বিকাশকারীদের জন্য ব্যবহারিক মূল্য" "
Wowfunhappy

এটা আমার কোন মানে করে না। অ্যাড-হক স্বাক্ষর যুক্ত করার অর্থ স্বাক্ষর বৈধতা ব্যর্থ হবে। এটি আপনাকে মোটেও কোথাও পায় না - ঠিক একই ত্রুটি বার্তায় প্রোগ্রামটি ব্যর্থ হবে।
jksoegaard

হ্যাঁ, আমি দেখতে পাচ্ছি যে আপনি আমার উত্তরটির লিঙ্কটি অ্যাড-হক সাইনিনিগটিতে সরিয়েছেন এবং অনুমানগুলি যুক্ত করেছেন। কিন্তু এই অনুমানগুলি কি আদৌ ধারণ করে? - আপনি মনে করছেন উত্তরটি মনে হচ্ছে যেন কোনও অ্যাপ্লিকেশন চালানোর বিষয়ে প্রশ্ন। এইটা না. এটি ইতিমধ্যে স্বাক্ষরিত অ্যাপ্লিকেশনটি সম্পর্কে যা ওপি একটি প্লাগইন যুক্ত করতে চায়। অর্থাৎ প্লাগইনটির প্রধান হিসাবে স্বাক্ষরিত অ্যাপ্লিকেশন (ভিম) সহ গ্রন্থাগার বৈধতা পাস করতে হবে।
jksoegaard

মূল প্রশ্নটি সম্পাদনা করা হয়েছে। এটি বরং বিস্তৃত। প্রশ্নকর্তা তাদের জন্য কী কাজ করে তা দেখার জন্য মন্তব্যগুলি, স্পষ্ট করে এবং এই উত্তরগুলি চেষ্টা করতে পারেন। এই উত্তরটি সম্পাদিত প্রশ্নের উত্তর এবং ব্যবহারিক পদ্ধতির সরবরাহ করার চেষ্টা করে। যদি এটি সহায়তা না করে বা ভুল অনুমানগুলি রয়েছে, তবে প্রশ্নকর্তা আশাবাদী এবং তাদের উদ্দেশ্য পরিষ্কার করতে পারেন।
গ্রাহাম মিলন

1
এই উত্তর সহায়ক ছিল। আমার প্রশ্নটি বেশ সাধারণ ছিল কারণ আমি বুঝতে পেরেছিলাম অ্যাপল ডক্সটি কিছুটা বোঝা শক্ত। অ্যাড-হক সাইন ইন ব্যবহার করে আমার নির্দিষ্ট সমস্যাটি সমাধান হয়েছিল।
সিন্ট্যাক্সন

5

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

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

স্বাক্ষর করার দায়িত্ব পুরোপুরি আপনার। ওপেন সোর্স বিকাশকারী উত্স কোডটিতে স্বাক্ষর করতে পারবেন না - কেবল সংকলিত বাইনারিগুলিতে স্বাক্ষর করা সম্ভব। আপনি নিজেই সংকলিত বাইনারি তৈরি করছেন, সেগুলি সাইন ইন করার বিষয়টি আপনার উপর পড়ে।

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

আপনার প্রশ্নের এখানে অন্য উত্তরগুলি আপনাকে বাইনারি করার জন্য অ্যাড-হক সাইন ব্যবহার করার পরামর্শ দেয়। ওটা কাজ করবে না. গেটকিপারের সবচেয়ে সুরক্ষিত সেটিংয়ে বাইনারি চালানোর জন্য আপনাকে একটি বৈধ স্বাক্ষর তৈরি করতে হবে to


1

আমি নিজে ওপেন সোর্স কোডটি স্বাক্ষর করব?

আপনি যদি বিকাশকারী না হন তবে না।

সংক্ষেপে কোড সাইন ইন করা, আপনি (বিকাশকারী) কে আপনি বলেছিলেন যে আপনি এবং আপনি সর্বশেষে স্বাক্ষর করেছেন তার পরে কোডটি পরিবর্তন হয়নি বলে একটি পদ্ধতি।

"এই অ্যাপ্লিকেশনটি ইন্টারনেট থেকে ডাউনলোড করা হয়েছিল" ডায়ালগ বক্সে ইন্টারনেট থেকে কোড সাইন করার এবং অজানা বিকাশকারীদের অ্যাপ্লিকেশনগুলিকে অনুমতি দেওয়ার ক্ষেত্রে কি কোনও গুণগত পার্থক্য রয়েছে?

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

যদি আপনি আপনার ম্যাককে অ্যাপ স্টোর এবং সনাক্তকারী বিকাশকারী উভয় থেকেই সফ্টওয়্যার ইনস্টল করার অনুমতি দেন তবে আপনি এখনও পপআপটি আপনাকে সতর্ক করে দেবেন যে সফ্টওয়্যারটি ইনস্টল করা হবে

এবং যদি এটি কোনও অজ্ঞাত বিকাশকারী থেকে থাকে তবে আপনি "সতর্কতা আইকন" দিয়ে একই পপআপটি পাবেন

আপনি এখনও সফ্টওয়্যার ইনস্টল করতে পারেন। এটি কেবলমাত্র এমন একটি প্রক্রিয়া যা ব্যবহারকারীর ইন্টারঅ্যাকশনটিকে সত্যই সফ্টওয়্যার ইনস্টল করতে বাধ্য করে যা আপনাকে স্ব-ইনস্টল করা ম্যালওয়ারের বিরুদ্ধে সুরক্ষার একটি স্তর সরবরাহ করে।


আপনাকে ধন্যবাদ, এটি কিছু উত্তর দেয় কিন্তু সমস্ত প্রশ্নের উত্তর দেয় না। আমি যা বলছি তাতে আরও সুনির্দিষ্ট হওয়ার চেষ্টা করার জন্য আমি আমার প্রশ্নটি সম্পাদনা করেছি
Syntaxén
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.